牛牛逼逼叉叉
菜单

Veil—绕过杀毒软件的payload生成器

2014年02月11日,分类《网络安全》,作者:
博客捐助

本文由网络安全攻防研究室团队译,非机器(google,baidu)翻译或抄袭 :)

程序截图:

1

注意:请不要作坏事,不要向VirusTotal提交任何payload

在几乎所有的评估中,渗透测试人员必须与杀毒软件做斗争。每次斗争的水准依赖于杀毒软件的解决方案以及其定义等。在过去的半年中,我着手于研究如何绕过杀毒软件。两月前,仔细回顾了一下自己最近的研究,以使其更加有用。下面是我设定的一些目标:

·绕过在大多数网络环境下能遇到的杀毒软件

·利用Metasploit兼容的payload,在后期版本中进行扩展

·尽可能的使每个payload文件随机化

设定这些目标后,就继续研究绕过杀毒软件的方法。因为主要想兼容Metasploit,所以使用的是metasploit尤其是msfvenom生成的shellcode。为了做到这点,我开始查找别人的研究成果,发现了一些有趣的技术,已经被一些诸如Dave Kennedy 和Debasish Mandal的人发展。从他们的研究成果中,发现了通过pyhton向内存中注入shellcode的非常有趣的方法。这些方法是接下来研究的基础。

因为我们主要的评估是在windows环境下的,所以这个工具需要在windows下可靠的工作。由于这个工具是用Python写的,就要搞明白如何打包包含有混淆shellcode的python输出文件,从而使得目标机器上不需要安装python。一种方法是使用Py2Exe。一些其他软件正是使用这种方法来把他们的python脚本转成windows上的可执行程序,同样我也这么做。使用我写的payload来测试Py2Exe ,最终在不同版本上的windows成功运行,所以我就采用了这种方法。最后一步就是发展自动化的payload生成程序,很高兴能够发布Veil。

2

目前Veil支持使用7种不同的方式生成21种不同的payload,这与具体的命令有关。Veil提供给用户两种不同的方式将pythonpayload转为可执行程序,一种是Pyinstaller ,另外一种就是Py2Exe 。使用Pyinstaller ,Veil用户只需使用Kali将他们的文件转成可执行程序而不需要虚拟机。使用Py2Exe,Veil将会生成三个文件,在生成最终的可执行程序的时候将会用到他们。这三个文件分别是:一个payload文件(Python写的),一个Py2Exe运行时需要的指令文件,一个用于将payload转换为可执行程序的批处理脚本。要生成最终的payload,把这三个文件拷到安装有Python, Py2Exe和PyCrypto的Windows主机上,然后运行批处理脚本。就会生成最终要传到目标机器上的可执行程序。这个可执行程序能够放在任何windows系统上,其需要的库都已经放在了可执行文件中。一旦放在了一个系统上并且执行,payload就会产生一个没有被杀毒软件检测到的meterpeter 回执。

3

该程序已在很多杀毒软件(MSE, 卡巴斯基, AVG, 赛门铁克, 还有 McAfee)上进行测试测试,通过率非常高,几乎能够绕过所有杀毒软件的检测。我希望,通过发布这个软件能够促进更多的人注重安全风险,花费更少的时间绕过无效的安全措施,那样并不能阻止真正的攻击者。

4

安装方法:

Kali上安装:

  1. 运行安装脚本(setup.sh),按照安装步骤继续
  2. 安装脚本完成后,删除安装脚本

Windows上安装(使用Py2Exe)

1.

  • 安装 Python 2.7- (32位系统下以测试–http://www.python.org/download/releases/2.7/)

2.安装Py2Exe – (http://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/)

3.安装 PyCrypto – (http://www.voidspace.org.uk/python/modules.shtml)

使用说明:

  1. 在Kali上运行Veil,生成payload
  2. 如果使用的是Pyinstaller,payload会转成能够直接使用的可执行程序
  3. 如果使用的是Py2Exe

◆把payload.py和两个相关的文件(应该就是上文所说的三个文件)放到windows系统(安装有python 和其他上面已要求安装的软件)上。这三个文件应该放在Python  所在安装盘符的根目录下(如: C:Python27)

◆执行批处理脚本将Pythonpayload转换成可执行程序

4.把payload放到目标机器上

 

未来方向:

◆研究新的方法加密或者混淆payload

◆研究能够直接调用windows api的语言转换payload

想使用Veil吗?随时可以。下载,复制,对它做你想做的任何事情都可以。可以在这里下载Veil: https://github.com/ChrisTruncer/Veil.

我希望它能像帮助我一样帮助别人。如果希望加入新的功能就告诉我吧。

学习如何高效的使用Veil和其他Red Team技术,在2013美国Blackhat网站上看看我们的教程吧:

https://www.blackhat.com/us-13/training/adaptive-red-team-tactics.html

还有我们的渗透测试教程:http://www.blackhat.com/us-13/training/adaptive-penetration-testing.html

参考:

Dave Kennedy – http://www.trustedsec.com/files/BSIDESLV_Secret_Pentesting_Techniques.pdf

Debasish Mandal – http://www.debasish.in/2012/04/execute-shellcode-using-python.html

Source:https://www.christophertruncer.com/veil-a-payload-generator-to-bypass-antivirus/

本文由网络安全攻防研究室(www.91ri.org)原创翻译并实验,转载请注明出处。



发表评论

电子邮件地址不会被公开。 必填项已用*标注

【上一篇】

手机应用入侵日记(下)

【下一篇】

闲谈 bypass AV