關于Genzai
Genzai是一款針對物聯網安全的多功能實用性工具套件,該工具旨在識別與物聯網相關的儀表盤,并掃描它們以查找默認密碼和安全問題,廣大研究人員可以使用該工具來檢測和提升物聯網設備的安全性。

Genzai支持用戶以輸入的形式提供一個或多個掃描目標,工具會對目標執行掃描,然后嘗試識別目標物聯網設備相關聯的儀表盤。接下來,工具就會根據路徑和版本信息來掃描它們以查找默認密碼問題和潛在的安全漏洞。
比如說,你現在有一個可以通過互聯網訪問的家庭自動化設備,這個設備帶有儀表盤。此時,該工具首先會根據項目signatures.json文件中的簽名來識別物聯網產品,然后根據識別到的產品信息和工具數據庫中相關的模版(項目中的vendor-logins.json和vendor-vulns.json),掃描以查找供應商特定的默認密碼,如admin:admin,同時查找任何潛在的安全漏洞。
當前版本的Genzai支持對超過20款基于物聯網設備的儀表盤進行指紋識別,并擁有相同數量的模板來查找它們存在的默認密碼問題。除此之外,Genzai還提供了10種漏洞模版,之后還會繼續添加模板類型。
功能介紹
當前版本的Genzai支持對下列類型的設備進行安全掃描:
1、無線路由器;
2、監控攝像頭;
3、HMI或人機界面;
4、智能電源控制系統;
5、建筑訪問控制系統;
6、溫度控制系統;
7、工業自動化系統;
8、家庭自動化系統;
9、水資源處理系統;
10、...
工具安裝
由于該工具基于Go語言開發,因此我們首先需要在本地設備上安裝并配置好最新版本的Go環境。
接下來,廣大研究人員可以直接使用下列命令將該項目源碼克隆至本地:
git clone https://github.com/umair9747/Genzai.git
然后切換到項目目錄中,使用下列命令完成項目代碼構建即可:
go build
工具使用
基礎使用
該工具的使用非常簡單直接,我們只需要將目標作為輸入參數提供給Genzai,剩下的事情Genzai都會幫我們完成。
下列命令可以針對單個目標執行安全測試:
./genzai http://1.1.1.1/
下列命令可以對多個目標執行安全測試,目標可以直接在命令行接口中作為參數輸入:
./genzai http://1.1.1.1/ http://8.8.8.8/
下列命令可以對多個目標執行安全測試,目標可以直接以文件形式作為參數提供給Genzai:
./genzai targets.txt
輸出數據
如果你需要將Genzai的分析數據存儲到文件中,可以直接使用-save命令。該命令會將日志信息記錄到一個名為output.json的文件中,在命令后加文件名稱可以修改存儲的文件名。
下列命令可以將日志信息記錄到一個指定的文件中:
./genzai http://1.1.1.1 -save myfile.json
下列命令會將日志信息存儲到默認的output.json文件中:
./genzai http://1.1.1.1 -save
Genzai輸出的分析數據格式樣例如下:
{"Response": {"Results": [{"Target": "","IoTidentified": "","category": "","Issues": [{"IssueTitle": "","URL": "","AdditionalContext": ""}]}],"Targets": []}}
Results數組中包含了Genzai成功掃描和識別出的跟目標相關的所有物聯網資產信息,Target字段包含了資產的URL地址,IoTidentified字段包含了產品名稱,category字段包含了目標物聯網產品所屬的準確類目,Issues數組中包含了該工具所識別出的目標物聯網資產的潛在安全漏洞和默認密碼問題。
最后的Targets數組包含了工具掃描過的所有目標列表,無論這些目標是否被識別為物聯網資產。
下面給出的是該工具的運行和輸出結果實例:
./genzai http://1.1.1.1/:::::::: ??:::::::::: :::: ???::: ::::::::: ????::: ????::::::::::::+: ???:+: :+: ???????:+:+: ??:+: ?????:+: ???:+: :+: ??????:+: ????+:+ ???????+:+ ???????:+:+:+ ?+:+ ????+:+ ???+:+ ??+:+ ?????+:+ ????:#: ???????+#++:++# ??+#+ +:+ +#+ ???+#+ ???+#++:++#++: ????+#+ ????+#+ ??+#+# +#+ ???????+#+ ?+#+#+# ??+#+ ????+#+ ????+#+ ????+#+ ????#+# ???#+# #+# ???????#+# ??#+#+# ?#+# ?????#+# ????#+# ????#+# ????######## ?########## ### ???#### ######### ### ????### ###########The IoT Security Toolkit by Umair Nehri (0x9747)2024/03/30 23:19:47 Genzai is starting...2024/03/30 23:19:47 Loading Genzai Signatures DB...2024/03/30 23:19:47 Loading Vendor Passwords DB...2024/03/30 23:19:47 Loading Vendor Vulnerabilities DB...2024/03/30 23:19:47 Starting the scan for http://1.1.1.1/2024/03/30 23:19:49 IoT Dashboard Discovered: TP-Link Wireless Router2024/03/30 23:19:49 Trying for default vendor-specific [ TP-Link Wireless Router ] passwords...2024/03/30 23:19:51 http://1.1.1.1/ [ TP-Link Wireless Router ] is vulnerable with default password - ?TP-Link Router Default Password - admin:admin2024/03/30 23:19:51 Scanning for any known vulnerabilities from the DB related to TP-Link Wireless Router2024/03/30 23:19:57 http://1.1.1.1/ [ TP-Link Wireless Router ] is vulnerable ?- ?TP-LINK Wireless N Router WR841N Potentially Vulnerable to Buffer Overflow - CVE-2020-84232024/03/30 23:20:45 No file name detected to log the output. Skipping to printing it!{"Results": [{"Target": "http://1.1.1.1/","IoTidentified": "TP-Link Wireless Router","category": "Router","Issues": [{"IssueTitle": "TP-Link Router Default Password - admin:admin","URL": "http://1.1.1.1/userRpm/LoginRpm.htm?Save=Save","AdditionalContext": "The resulting body had matching strings from the DB."},{"IssueTitle": "TP-LINK Wireless N Router WR841N Potentially Vulnerable to Buffer Overflow - CVE-2020-8423","URL": "http://1.1.1.1/","AdditionalContext": "The resulting headers matched with those in the DB."}]}],"Targets": ["http://1.1.1.1/"]}
工具運行截圖

許可證協議
本項目的開發與發布遵循Apache-2.0開源許可協議。
項目地址
Genzai:【GitHub傳送門】
參考資料
All releases - The Go Programming Language