Malware

HellBunny : Advanced Shellcode Loader For EDR Evasio

HellBunny is a malleable shellcode loader written in C and Assembly utilizing direct and indirect syscalls for evading EDR hooks. It can be built as EXE, DLL, or XLL and offers a variety of QoL features that make it more adaptable.

The purpose of this research project was to develop a comprehensive understanding of the architecture and internals of the Windows operating system, including the Native API, the Process and Thread Environment Block, and the PE file format, while also exploring the techniques used by EDR software to collect telemetry and detect malware at runtime.

Features

  • System Calls
    • call the NtAPI directly
    • perform direct system calls
    • perform indirect system calls in ntdll.dll
    • perform indirect system calls in win32u.dll
    • System Service Number (SSN) resolving through Hell’s Gate and Halo’s Gate + an early hook detection (JMP opcode)
  • Compile as
    • EXE
    • DLL
    • XLL
  • CRT Independence
  • Shellcode Encryption:
    • AES-256-CTR
    • XChaCha20
  • Custom DLL Entrypoint Name ( for sideloading attacks )
  • IAT Camouflage
  • Custom Module and Function Resolving from PEB (for hiding function imports)
  • supports local and remote injection. design is open for implementation of additional injection methods
  • String Hashing Algorithms:
    • CRC32B
    • FNV1A32B
    • DJB2
  • String Encryption: Strings are XOR encrypted using a single byte key to obfuscate them within the binary
  • shellcode is downloaded from a remote webserver
  • commandline arguments are erased if executed by rundll32
Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

groupdel Command in Linux: Remove a Group and Audit Files

The groupdel command in Linux removes a group from the system. It deletes the group's entry from /etc/group and /etc/gshadow,…

12 hours ago

wc Command in Linux: Count Lines, Words, Characters, and Bytes

The wc command in Linux counts lines, words, characters, and bytes in files or standard input. It…

12 hours ago

top Command in Linux: Monitor Processes and Resource Usage

The top command in Linux provides a real-time view of running processes and system resource usage. From…

12 hours ago

usermod Command in Linux: Modify User Accounts and Groups

The usermod command in Linux modifies existing user account attributes. You can use it to manage group…

12 hours ago

sort Command in Linux: Sort Text, Numbers, Columns, and More

The sort command in Linux reads lines from files or standard input and writes them to standard…

2 days ago

wall Command in Linux: Broadcast Messages to Logged-In Users

The wall command in Linux sends a message to the terminals of all currently logged-in users. The…

2 days ago