mirror of
https://github.com/jehna/humanify.git
synced 2026-04-27 01:26:00 +03:00
[GH-ISSUE #260] control flow obfuscation, dynamic code generation, highly nested functions, and some closure functions #62
Labels
No labels
bug
enhancement
pull-request
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/humanify#62
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @zhangyupy on GitHub (Dec 30, 2024).
Original GitHub issue: https://github.com/jehna/humanify/issues/260
Currently, the functionality can only handle simple variable name obfuscation, but it is not applicable to common obfuscation techniques such as complex control flow obfuscation, dynamic code generation, highly nested functions, and some closure functions.
@jehna commented on GitHub (Dec 30, 2024):
Obfuscation is now handled by the package webcrack, which is a direct dependency of this project. If you need any further deobfuscation capabilities, please open an issue at the webcrack side – any new features will automatically be included in the future Humanify releases.
If you have any ideas on how to implement these features using LLMs, then I'd be happy to try to implement them at Humanify side.
@Acters commented on GitHub (Jan 5, 2025):
Since the LLMs are used to rename and "humanify" variables and function and the like.
It would be nice if it can rename "Labeled statements" that is used for while or for loops. As of right now, they remain untouched. This feature might be a bit complex to do as I do notice some obfuscated JS files have the labels repeated for separate while loops or the same name reused in a lambda(due to it being a separate namespace it does not affect the label or redefined the variable)
Lambda functions are also have their variables untouched, too. though it might be also complex due to them being used in
.reduce( )statements often in obfuscated code.otherwise this is a great project and keeps it simple and clean. Most other forms of obfuscation should be directed towards the webcrack team.