码迷,mamicode.com
首页 > 其他好文 > 详细

Veil—绕过杀毒软件的payload生成器 -中国寒龙

时间:2014-12-29 00:52:32      阅读:321      评论:0      收藏:0      [点我收藏+]

标签:

程序截图:

技术分享

注意:请不要作坏事,不要向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。

技术分享

目前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 回执。

技术分享

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

技术分享

安装方法:

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/

Veil—绕过杀毒软件的payload生成器 -中国寒龙

标签:

原文地址:http://www.cnblogs.com/Hkadmin/p/4190886.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!