feat: add CLI for WebAssembly obfuscation#1
Open
Owanesh wants to merge 3 commits intoSKKU-SecLab:mainfrom
Open
feat: add CLI for WebAssembly obfuscation#1Owanesh wants to merge 3 commits intoSKKU-SecLab:mainfrom
Owanesh wants to merge 3 commits intoSKKU-SecLab:mainfrom
Conversation
Introduce `swamped` command-line interface that exposes all 22 perturbation strategies (structural + code-level) via argparse.
61a769e to
8159111
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a full CLI (
swamped).swamped list— lists all 22 perturbation methods grouped by categoryswamped obfuscate— applies one or more strategies to a.wasm/.wastmodule with flexible selectors (all,structural,code, individual names), exclusions (-e), and intensity control (--ratio,--alpha,--beta)Changes
cli/swamped_cli.py— CLI entry point with argparse, strategy resolution, logging, diff, strict modecli/README.md— documentation with usage examples, option reference, parameter explanationstrategies/state.py— module-level seedable RNG (set_seed()), used byget_dist/getDist-> useful for reproducibility without entropypyproject.toml— package definition andswampedconsole script.gitignore— standard Python ignoresPreview