今天給大家介紹的是一款功能強大的UDP隧道工具,該工具可以利用原始套接字并通過偽造的TCP/UDP/ICMP流量來幫助研究人員繞過UDP防火墻(或不穩定的UDP環境)。

支持的平臺
Linux主機,需擁有root訪問權,其中包括桌面端Linux、Android手機/平板、OpenWRT路由器或樹莓派。
對于Windows/macOS平臺,我們發布了一個預安裝了udp2raw的虛擬鏡像,大家可以直接使用VMware/VirtualBox來加載安裝。虛擬鏡像會自動獲取IP,其中的dup2raw可以在啟動完成之后立即運行(請確定虛擬機網絡模式設置為橋接)。
功能介紹
發送/接收UDP數據包(偽造的TCP/ICMP頭)
偽造的TCP/ICMP頭可以幫助我們繞過UDP屏蔽、UDP QOS或其他不正確的UDP NAT行為。除此之外,該工具還支持包含了UDP頭的元數據包、在UDP Header模式下,它跟普通的UDP隧道一樣,你可以直接使用其他功能。
模擬TCP握手
模擬三次握手過程,包括seq和ack_seq。MSS、sackOk、TS、TS_ack、wscale等TCP選項都可以模擬。工具可以保證數據包實時傳遞,在使用OpenVPN時不存在TCP連接問題。
加密、反重放和MITM
-使用AES-128-CBC加密通信流量。
-通過MD5或CRC32保護數據完整性。
-利用反重放窗口機制防御重放攻擊,與IPSec和OpenVPN類似。
-手動認證,無中間人攻擊
工具使用
安裝
大家可以從【這里】下載源碼。
工具運行
假設你的UDP已被屏蔽,假設你的服務器IP為44.55.66.77,你有一個服務在監聽udp端口7777。
# Runat server side:
./udp2raw_amd64-s -l0.0.0.0:4096 -r 127.0.0.1:7777 -a-k "passwd" --raw-mode faketcp
# Runat client side
./udp2raw_amd64-c -l0.0.0.0:3333 -r44.55.66.77:4096 -a-k "passwd" --raw-mode faketcp
服務器端輸出

客戶端輸出

此時,已成功通過TCP端口4096在客戶端和服務器端之間建立了一條經過加密的通信隧道。在客戶端通過UDP端口3333連接,等同于在服務器端連接端口7777。
如果你需要在Android端運行的話,請參考【這篇教程】
幫助菜單
udp2raw-tunnel
version:Aug 18 2017 00:29:11
repository:https://github.com/wangyu-/udp2raw-tunnel
usage:
run as client : ./this_program -c -llocal_listen_ip:local_port -r server_ip:server_port [options]
run as server : ./this_program -s -lserver_listen_ip:server_port -r remote_ip:remote_port [options]
commonoptions, these options must be same on both side:
--raw-mode avaliable values:faketcp(default), udp,icmp
-k, --key password to gen symetric key,default:"secret key"
--cipher-mode avaliable values:aes128cbc(default),xor, none
--auth-mode avaliable values:md5(default), crc32,simple, none
-a, --auto-rule auto add (and delete)iptables rule
-g, --gen-rule generate iptables rulethen exit
--disable-anti-replay disable anti-replay, notsuggested
clientoptions:
--source-ip force source-ip for raw socket
--source-port
force source-port for raw socket,tcp/udp only
thisoption disables port changing while re-connecting
otheroptions:
--log-level 0:never 1:fatal 2:error 3:warn
|