Skip to content

psycore8/shencode

Repository files navigation

ShenCode

A versatile tool for working with shellcodes.

Features

Version 0.8.1

Category Module Description Docs Refs
core extract Extract a range of bytes from a file extract
core msfvenom Create payloads with msfvenom msfvenom
core output Inspect and display files in different formats output
core task Execute tasks to automate ShenCode task
encoder aes Encrypt with AES aes
encoder alphanum Alphanumeric encoder to avoid null bytes alphanum
encoder bytebert Advanced polymorphic encoder bytebert
encoder byteswap New XOR Encryption, Swapping Bytes byteswap Blog Post
encoder xor Encode payload with custom XOR key xor
encoder xorpoly Polymorphic x64 in-memory decoder xorpoly Blog Post
inject dll Inject dll into a process dll
inject injection Inject shellcode into a process injection
inject ntinjection Inject with native windows API ntinjection
inject psoverwrite Process overwriting injection psoverwrite hasherezade
obfuscate feed Hide shellcode bytes in a feed.xml file feed
obfuscate qrcode Generate QR-Code from a file qrcode
obfuscate rolhash ROR13 to custom ROL hashing rolhash
obfuscate uuid Generate UUIDs from shellcode uuid Blog Post
stager meterpreter Download a meterpreter reverse tcp stage meterpreter
stager sliver Download a sliver stage sliver

How to use

Install
git clone https://github.com/psycore8/shencode
cd shencode
pip install .
shencode -h

General usage

Check out the ShenCode Docs for more information.

Release Notes

  • general - many bugfixes
  • general - implemented tqdm bar into some modules
  • core/extract - added nargs argument --extract-range <start-byte> <end-byte>
  • core/extract - added section extraction --extract-section <section-name>
  • core/output - Null-Byte highlighting
  • core/output - Added size info
  • core/output - Highlight search --highlight "00 AF"
  • core/task - automate and pipe ShenCode commands
  • encoder/alphanum - alphanumeric encoder to avoid zero bytes
  • encoder/bytebert - module is working now, as expected: create ASM-Script, compile, extract shellcode
  • encoder/bytebert - fixed some logic errors
  • encoder/bytebert - more random registers and instructions
  • encoder/xor - fixed typo
  • stager/sliver - changed AES argument to nargs: --aes <aes-key> <aes-iv>

References

Languages