天天看點

Portforge:一款功能強大的輕量級端口混淆工具

作者:FreeBuf

關于Portforge

Portforge是一款功能強大的輕量級端口混淆工具,該工具使用Crystal語言開發,可以幫助廣大研究人員防止網絡映射,這樣一來,他人就無法檢視到你裝置正在運作(或沒有運作)的服務和程式了。簡而言之,該工具是一個抵禦網絡偵查的強大工具。

Portforge:一款功能強大的輕量級端口混淆工具

Portforge可以在我們的裝置上按需求打開大量套接字(1024-65535之間),低于1024的端口也可以實作,但必須要使用到root使用者權限。

技術細節

Portforge.cr腳本使用了Crystal編譯器的一種名為Fibers的内置技術,這種技術類類似于系統線程,但Fibers更加輕量級,且可以通過程序來管理執行。

我們所選擇的端口号範圍越大,腳本執行加載每個套接字所需的時間就越長,但腳本總共執行時間也就是幾分鐘,具體取決于作業系統和配置。

工作機制

該工具的運作分為兩個步驟:

1、它首先會在系統上執行掃描,以識别已經打開了的端口資訊,然後将已打開的端口存儲在一個清單中,并将關閉的端口存儲到另外一個清單中;

2、打開關閉的端口,是以該腳本會選擇清單中所有關閉的端口,并在每個端口上打開一個套接字;

當主Fiber在每一個端口上打開一個套接字時,會調用其他的Fiber,并監聽傳入的連接配接。這個過程會不斷重複進行,直到腳本中斷執行為止。

工具要求

工具下載下傳

由于該工具基于Crystal語言開發,是以我們首先需要在本地裝置上安裝并配置好Crystal編譯器環境。

接下來,廣大研究人員可以直接使用下列指令将該項目源碼克隆至本地:

git clone https://github.com/Beyarz/Portforge.git           

工具運作

./portforge IP startport endport           

工具使用示範

下圖顯示為Portforge的運作界面:

Portforge:一款功能強大的輕量級端口混淆工具

下圖顯示的是Nmap的掃描結果,我們可以看到,Nmap會認為我們的裝置運作了下圖所示的所有服務,但實際上我們隻是運作了Portforge:

Portforge:一款功能強大的輕量級端口混淆工具

許可證協定

本項目的開發與釋出遵循授權許可協定。

項目位址

Portforge:https://github.com/Beyarz/Portforge

參考資料

https://crystal-lang.org/reference/installation/

繼續閱讀