{"id":13640559,"url":"https://github.com/SilentVoid13/Silent_Packer","last_synced_at":"2025-04-20T02:34:07.927Z","repository":{"id":104398326,"uuid":"243125267","full_name":"SilentVoid13/Silent_Packer","owner":"SilentVoid13","description":"An ELF / PE binary packer written in pure C, made for fun","archived":false,"fork":false,"pushed_at":"2024-03-28T10:23:13.000Z","size":583,"stargazers_count":78,"open_issues_count":5,"forks_count":14,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-27T13:00:37.526Z","etag":null,"topics":["c","elf-packer","encryption-methods","packer","pe-packer"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SilentVoid13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.TXT","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-02-25T23:32:22.000Z","updated_at":"2024-10-23T05:25:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"e2ac38eb-1122-4d23-b48c-0285c388184b","html_url":"https://github.com/SilentVoid13/Silent_Packer","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SilentVoid13%2FSilent_Packer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SilentVoid13%2FSilent_Packer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SilentVoid13%2FSilent_Packer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SilentVoid13%2FSilent_Packer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SilentVoid13","download_url":"https://codeload.github.com/SilentVoid13/Silent_Packer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223816643,"owners_count":17207895,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","elf-packer","encryption-methods","packer","pe-packer"],"created_at":"2024-08-02T01:01:12.355Z","updated_at":"2024-11-09T10:31:23.034Z","avatar_url":"https://github.com/SilentVoid13.png","language":"C","readme":"# Silent_Packer\r\n\r\nSilent_Packer is an ELF / PE packer written in pure C.\r\n\r\nThis program can be used to obfuscate a binary. This packer supports PIE binaries.\r\n\r\n## License\r\n\r\nSilent_Packer is licensed under the GNU AGPLv3 license. Refer to [LICENSE](https://github.com/SilentVoid13/Silent_Packer/blob/master/LICENSE.txt) for more informations.\r\n\r\n## What is a packer ?\r\n\r\n\u003e Binary packers alter the original binary data, and restore it (more or less) before execution.\r\n\r\nSilent_Packer is a very basic and common packer, encrypting the code section from the binary (`.text`) and decrypting it before executing it. This technique can be used to obfuscate the binary code to bypass antiviruses or to make reverse engineering harder. Packers can also be used to compress a binary to reduce its size.\r\n\r\nYou can find a more detailed stackoverflow post [here](https://reverseengineering.stackexchange.com/questions/1779/what-are-the-different-types-of-packers).\r\n\r\n## File formats\r\n\r\nSilent_Packer currently support the following file formats :\r\n\r\n- ELF64\r\n- ELF32\r\n- PE32+\r\n- PE32\r\n\r\nI will maybe add the MACH-O file format later. You can suggest me a file format that you want me to add.\r\n\r\n## Cipher methods\r\n\r\nSilent_Packer currently support the following cipher methods :\r\n\r\n- XOR\r\n- AES-128-ECB\r\n\r\nSupport for some more secure AES modes should arrive soon (AES-128-CBC, AES-256, ...)\r\n\r\nYou can suggest me a cipher method that you want me to add.\r\n\r\n## Encryption methods\r\n\r\nSilent_Packer currently support the following encryption methods :\r\n\r\n- Section Insertion\r\n- Code Cave\r\n- Silvio Text Infection (only for ELF files)\r\n\r\nFor a basic explanation on how does these methods work, see the [METHODS](https://github.com/SilentVoid13/Silent_Packer/blob/master/METHODS.md) file.\r\n\r\n## Usage\r\n\r\n```bash\r\nUsage: Silent_Packer [-hVvd] [-f file] [-c \u003cxor, aes128_ecb\u003e] [-m \u003csection_insertion, code_cave, silvio_infection\u003e] [-o file]\r\n  -h, --help                Display this help and exit\r\n  -V, --version             Display version info and exit\r\n  -v, --verbose             Verbose output\r\n  -d, --debug               Debug mode\r\n  -f, --file=file           File to pack\r\n  -c, --cipher=\u003cxor, aes128_ecb\u003e Cipher method to use\r\n  -m, --method=\u003csection_insertion, code_cave, silvio_infection\u003e Method to pack the binary\r\n  -o, --output=file         Output file\r\n```\r\n\r\n## Building\r\n\r\nYou can either get the compiled version from the latest [release](https://github.com/SilentVoid13/Silent_Packer/releases), from the [bin](https://github.com/SilentVoid13/Silent_Packer/tree/master/bin) directory, or compile it yourself.\r\n\r\nThis project relies on [Silent_Log](https://github.com/SilentVoid13/Silent_Log) for logging messages.\r\n\r\nTo build it yourself you will need `cmake`, `gcc` and `nasm`.\r\n\r\nNo windows version is available at the moment.\r\n\r\n**On Linux**\r\n\r\n```bash\r\nmkdir build \u0026\u0026 cd build\r\ncmake ..\r\nmake\r\nmake install\r\n```\r\n\r\nThe compiled binary will be available in the **bin** directory.\r\n\r\n## Known_bugs\r\n\r\nFeel free to report any bugs, so that I can fix them.\r\n\r\nThe packer has some recurrent bugs with PE files, especially with big binaries with a lot of dynamic libs. The section insertion method has a weird behavior sometimes (adding some null bytes at the beginning of the section making the offsets wrong).\r\n\r\n## Contributing\r\n\r\nFeel free to contribute. See the [TODO](https://github.com/SilentVoid13/Silent_Packer/blob/master/TODO.md) list.\r\n\r\n## Disclaimer\r\n\r\nI am not responsible for what you do with the information and code provided. This is intended for professional or educational purposes only.\r\n","funding_links":[],"categories":["Anti Cheat",":package: Packers"],"sub_categories":["After 2010"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSilentVoid13%2FSilent_Packer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSilentVoid13%2FSilent_Packer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSilentVoid13%2FSilent_Packer/lists"}