Genzai:一款針對物聯網安全的多功能實用性工具套件

關于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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/17798.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/17798.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/17798.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

npm install安裝時卡死時嘗試切換npm鏡像地址

當使用npm時,為了提高下載速度和穩定性,特別是針對國內的開發者,經常需要配置國內的鏡像源,如淘寶npm鏡像。以下是如何添加淘寶源等鏡像內容的詳細步驟和說明: 1. 淘寶npm鏡像地址 淘寶npm鏡像的地址在2022年6月30日…

簡愛的思維導圖怎么做?從這三個角度

簡愛的思維導圖怎么做?《簡愛》作為夏洛蒂勃朗特的代表作,不僅是一部經典的愛情小說,也是探索女性獨立與自我成長的文學巨著。為了深入理解這部作品,制作思維導圖是一種高效的學習和分析工具。以下是三種不同的角度來創建《簡愛》…

探討開源與閉源大模型在AI領域的發展前景與挑戰

一、引言 隨著人工智能(AI)技術的飛速發展,大模型已成為推動AI技術進步的核心動力。在AI大模型的發展過程中,開源與閉源兩種不同的發展路徑各自展現出了獨特的發展前景與挑戰。本文將深入探討這兩種路徑在AI領域的發展前景&#…

在馬達驅動上的MOS產品選型分析與應用

電機的應用非常廣泛,可以說大部分動的產品內部都有電機的身影,其主要的應用領域有風機、泵、散熱風扇、電動工具、智能家居、以及汽車應用等等。隨著各國出臺了更加嚴格的用電標準,節能電機成為了市場關注的熱點,而BLDC電機具有高…

K8S集群中Yaml文件詳解

目錄 一、Yaml概述 二、Yaml基本語法 三、Yaml數據結構 四、K8S資源清單描述方法 五、api資源版本標簽 六、Yaml文件示例詳解 1.deployment.yaml文件詳解 2.Pod yaml文件詳解 3.Service yaml文件詳解 七、Yaml文件相關操作 1.試運行 2.生成yaml格式 3.生成json格式…

手搓順序表(C語言)

目錄 SeqList.h SeqList.c 頭插尾插復用任意位置插入 頭刪尾刪復用任意位置刪除 SLtest.c 測試示例 順序表優劣分析 SeqList.h //SeqList.h#pragma once#include <stdio.h> #include <assert.h> #include <stdlib.h> #define IN_CY 3typedef int S…

深入分析C#中的“編寫器”概念——代碼修改、注解與重構

文章目錄 1. 編寫器&#xff08;Writer&#xff09;的概念2. 編寫器的作用和工作原理3. 編寫器的重要性4. 寫入器常用方法5. 寫入器示例6. 編寫器示例——使用Fody進行代碼注解和重構7. 總結 在軟件開發過程中&#xff0c;代碼的維護和更新是至關重要的。C#作為一種流行的編程語…

單詞學習——不斷更新

suppress: sup - press 抑制&#xff0c;鎮壓 subtle: sub - tle 微妙的 suspend: sus - pend 延緩&#xff0c;懸掛 supplement: sup - ple - ment: 補充 suspicious: sus - pi - cious 可疑的 depress: de -press 壓抑 emit: e - mit 發出 entail: en - tail 涉及 fo…

3.00001 postgres如何初始化系統參數?

文章目錄 加載參數整體流程參數結構舉例&#xff1a;ConfigureNamesBool 初始化參數 InitializeGUCOptionsbuild_guc_variablesInitializeOneGUCOptionInitializeGUCOptionsFromEnvironment 命令行添加SelectConfigFiles配置 加載參數整體流程 我們先看下guc參數是如何管理的。…

VUE3 學習筆記(6):data數據的監聽、表單綁定、操作DOM

data數據的監聽&#xff08;偵聽&#xff09; 對于data的值的監聽&#xff0c;可以用watch中與data中的參數命名一致的值做為函數進行獲取監聽變動前后的值再做邏輯判斷&#xff0c;如下圖所示。 示例代碼 <template><div><p :class"classDemo">{…

npm install 出錯,按照版本不匹配解決

一、現象 npm install npm WARN config global --global, --local are deprecated. Use --locationglobal instead. npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: panshi-main-web0.1.0 npm ERR! Found…

七大獲取免費https的方式

想要實現https訪問最簡單有效的的方法就是安裝SSL證書。只要證書正常安裝上以后&#xff0c;瀏覽器就不會出現網站不安全提示或者訪問被攔截的情況。下面我來教大家怎么去獲取免費的SSL證書&#xff0c;又如何安裝證書實現https訪問。 一、選擇免費SSL證書提供商 有多家機構提…

C#數據類型變量、常量

一個變量只不過是一個供程序操作的存儲區的名字。 在 C# 中&#xff0c;變量是用于存儲和表示數據的標識符&#xff0c;在聲明變量時&#xff0c;您需要指定變量的類型&#xff0c;并且可以選擇性地為其分配一個初始值。 在 C# 中&#xff0c;每個變量都有一個特定的類型&…

頭歌OpenGauss數據庫-I.復雜查詢第10關:換座位

任務描述 本關任務&#xff1a;改變相鄰倆學生的座位。 小美是一所中學的信息科技老師&#xff0c;她有一張 tb_Seat座位表&#xff0c;平時用來儲存學生名字和與他們相對應的座位 id。 tb_Seat表結構數據如下&#xff1a; idname1Elon2Donny3Carey4Karin5Larisa 現在小美想改變…

規則引擎 | 減少判斷嵌套

文章目錄 目前市面上具體的規則引擎產品有&#xff1a;droolsVisualRulesEasy RulesMandaraxIBM iLog其中使用最為廣泛并且開源的是drools

windows驅動開發-PCI討論(二)

認識PCI設備&#xff0c;還是要從配置空間說起&#xff0c;當PCI在ACPI和PCI復合體上電和枚舉完成后&#xff0c;PCI根復合體會從PCI設備讀出PCI設備的配置空間&#xff0c;許多信息(例如寄存器、內存空間、中斷信息等等)都是是從配置空間獲取的&#xff0c;所以接下來會詳細講…

動手學操作系統(三、通過IO接口直接控制顯卡)

動手學操作系統&#xff08;三、通過IO接口直接控制顯卡&#xff09; 在之前的學習內容中&#xff0c;我們成功編寫了MBR主引導記錄&#xff0c;在終端上進行了打印顯示&#xff0c;在這一節我們使用MBR通過IO接口來直接控制顯卡輸出字符。 文章目錄 動手學操作系統&#xff0…

PostgreSQL Windows 數據庫主從模式 熱同步

1.操作主服務器 1.1修改pg_hba.conf // 這邊就設置所有用戶&#xff0c;所有ip都可以交互 host replication all 0.0.0.0/0 md52.2 創建流復制用戶 // 創建流復制用戶replicator CREATE USER replica REPLICATION LOGIN PASSWORD replica…

邏輯回歸(頭歌)

第1關&#xff1a;邏輯回歸算法大體思想 #encodingutf8import numpy as np#sigmoid函數 def sigmoid(t):#輸入&#xff1a;負無窮到正無窮的實數#輸出&#xff1a;轉換后的概率值#********** Begin **********#result 1.0 / (1 np.exp(-t))#********** End **********#retur…

43、Flink 的 Window Join 詳解

1.Window Join a&#xff09;概述 Window join 作用在兩個流中有相同 key 且處于相同窗口的元素上&#xff0c;窗口可以通過 window assigner 定義&#xff0c;并且兩個流中的元素都會被用于計算窗口的結果。 兩個流中的元素在組合之后&#xff0c;會被傳遞給用戶定義的 Joi…