前言
firmwalker這個(gè)小工具在工作中也一直在用,正好領(lǐng)導(dǎo)說(shuō)要寫一篇這個(gè)工具的分析說(shuō)明文章,經(jīng)過(guò)詢問(wèn)可以發(fā)表博客。由于一直在用,所以末尾優(yōu)劣勢(shì)部分存在一些主觀想法。
編寫不易,如果能夠幫助到你,希望能夠點(diǎn)贊收藏加關(guān)注哦Thanks?(?ω?)?
PS:文章末尾有聯(lián)系方式,交個(gè)朋友吧~
本文鏈接:https://hollk.blog.csdn.net/article/details/129039641防爬鏈接,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載
概述
Firmwalker是一個(gè)純shell語(yǔ)言編寫的腳本工具項(xiàng)目,主要適用于物聯(lián)網(wǎng)中固件文件系統(tǒng)檢索掃描工作??梢栽趆ttps://github.com/craigz28/firmwalker中下載項(xiàng)目源碼,項(xiàng)目目錄結(jié)構(gòu)如下:
使用方法
首先下載firmwalker項(xiàng)目至本地并進(jìn)入項(xiàng)目目錄:
git clone https://github.com/craigz28/firmwalker && cd firmwalker-master
為firmwalker.sh賦予執(zhí)行權(quán)限:
chmod +x firmwalker.sh
使用格式如下:
./firmwalker.sh {被測(cè)試文件系統(tǒng)根目錄} {掃描結(jié)果輸出路徑}
例:./firmwalker.sh ~/work/squashfs-root/ ~/work/result/firmwalker.txt
功能介紹
在實(shí)際物聯(lián)網(wǎng)、車聯(lián)網(wǎng)滲透測(cè)試過(guò)程中,firmwalker主要在前期信息搜集階段進(jìn)行使用。根據(jù)在文件系統(tǒng)中進(jìn)行關(guān)鍵字檢索,獲取可能具有價(jià)值的敏感數(shù)據(jù)或文件。其中firmwalker可以實(shí)現(xiàn)的主要功能有:
檢索etc/shadow和 etc/passwd
根據(jù)data目錄中passfiles文件記錄的passwd
、shadow
、*.psk
進(jìn)行關(guān)鍵字檢索。
檢索Unix-MD5 hashes
根據(jù)firmwalker.sh中提供的正則表達(dá)式檢索文件系統(tǒng)中的Unix-MD5 hashes。
枚舉etc/ssl目錄下內(nèi)容。
根據(jù)firmwalker.sh中提供的ls命令枚舉etc/ssl目錄下內(nèi)容。
搜索 SSL相關(guān)文件,例如.pem、.crt 等。
根據(jù)data目錄中sslfiles文件記錄的*.crt
、*.pem
、*.cer
、*.p7b
、*.p12
、*.key
進(jìn)行關(guān)鍵字檢索。
搜索 SSH相關(guān)文件
根據(jù)data目錄中sshfiles文件記錄的authorized_keys
、 *authorized_keys*
、host_key
、*host_key*
、id_rsa
、*id_rsa*
、id_dsa
、*id_dsa*
、*.pub
進(jìn)行關(guān)鍵字檢索。
搜索配置文件
根據(jù)data目錄中files文件記錄的*.conf
、*.cfg
、*.ini
進(jìn)行關(guān)鍵字檢索。
尋找數(shù)據(jù)庫(kù)文件
根據(jù)data目錄中dbfiles文件記錄的*.db
、*.sqlite
、*.sqlite3
進(jìn)行關(guān)鍵字檢索。
尋找腳本文件
根據(jù)firmwalker.sh中提供的*.sh
作為關(guān)鍵字進(jìn)行檢索。
搜索其他 .bin文件
根據(jù)firmwalker.sh中提供的*.bin
作為關(guān)鍵字進(jìn)行檢索。
查找關(guān)鍵字,例如 admin、password、remote 等
根據(jù)data目錄中patterns文件記錄的upgrade
、admin
、root
、password
、passwd
、pwd
、dropbear
、ssl
、private key
、telnet
、secret
、pgp
、gpg
、token
、api key
、oauth
進(jìn)行關(guān)鍵字檢索。
搜索物聯(lián)網(wǎng)設(shè)備上使用的常見(jiàn)網(wǎng)絡(luò)服務(wù)器
根據(jù)data目錄中webservers文件記錄的apache
、lighttpd
、alphapd
、httpd
進(jìn)行關(guān)鍵字檢索。
搜索常見(jiàn)的二進(jìn)制應(yīng)用,例如 ssh、tftp、dropbear等
根據(jù)data目錄中binaries文件記錄的ssh
、sshd
、scp
、sftp
、tftp
、dropbear
、busybox
、telnet
、telnetd
、openssl
進(jìn)行關(guān)鍵字檢索。
搜索 URL、電子郵件地址和 IP地址
根據(jù)firmwalker.sh中提供的正則表達(dá)式進(jìn)行檢索URL、電子郵件地址和IP地址。
支持使用 Shodan CLI調(diào)用 Shodan API(實(shí)驗(yàn)性)
優(yōu)劣勢(shì)(主觀)
優(yōu)勢(shì)
通過(guò)在實(shí)際工作中對(duì)firmwalker的使用,得出如下四點(diǎn)優(yōu)勢(shì)說(shuō)明:
l 可移植性強(qiáng)
由于firmwalker項(xiàng)目是純shell腳本,因此具備多平臺(tái)可移植性特點(diǎn)。在無(wú)法獲取固件文件系統(tǒng)的情況下,firmwalker可以直接拷貝至設(shè)備內(nèi)部終端使用。
l 體積小
去除不必要的eslintrc擴(kuò)展json文件、項(xiàng)目logo、README文件,主體功能文件僅占86k存儲(chǔ)空間,如果將/data/目錄下匹配字段寫進(jìn)firmwalker.sh主執(zhí)行文件中,整體存儲(chǔ)空間占比可以壓縮至更小。在存儲(chǔ)空間有限的物聯(lián)網(wǎng)設(shè)備中,小體積工具更容易在設(shè)備終端中直接運(yùn)行。
l 速度快
由于firmwalker為腳本工具,因此不需要調(diào)用復(fù)雜的動(dòng)態(tài)鏈接庫(kù)進(jìn)行功能實(shí)現(xiàn),大部分工作僅依靠系統(tǒng)命令直接完成,因此掃描整個(gè)文件系統(tǒng)的速度很快。
l 正常情況下敏感數(shù)據(jù)文件檢索相對(duì)全面
在firmwalker.sh工具中集成了多種敏感文件的檢索功能,相比于手動(dòng)逐個(gè)敏感文件檢索,firmwalker檢索范圍更加全面??梢栽谲嚶?lián)網(wǎng)滲透測(cè)試中的系統(tǒng)安全以及數(shù)據(jù)安全部分發(fā)揮巨大作用。
遇到的問(wèn)題
Firmwalker在具備如上四點(diǎn)優(yōu)勢(shì)的同時(shí),也存在一下五點(diǎn)劣勢(shì)點(diǎn):
l 非正常情況下存在漏報(bào)
Firmwalker從技術(shù)實(shí)現(xiàn)的角度來(lái)看,主要原理是對(duì)關(guān)鍵字匹配。當(dāng)關(guān)鍵字被開(kāi)發(fā)者有意修改為其他字符時(shí),firmwalker由于沒(méi)有啟發(fā)式算法協(xié)助,將無(wú)法對(duì)修改后的關(guān)鍵字進(jìn)行掃描檢索,導(dǎo)致漏報(bào)。
當(dāng)關(guān)鍵字在二進(jìn)制文件中不以字符串?dāng)?shù)組形式存儲(chǔ),而是以字符拼接形式存儲(chǔ)的情況下,firmwalker無(wú)法檢索完整關(guān)鍵字,導(dǎo)致漏報(bào)。
l 存在誤報(bào)情況
Firmwalker常用grep命令進(jìn)行關(guān)鍵字檢索,當(dāng)非敏感二進(jìn)制文件的字符串表中存在部分關(guān)鍵字時(shí),firmwalker仍判定該二進(jìn)制為敏感文件,導(dǎo)致誤報(bào)。
l 部分功能雞肋
Firmwalker具備靜態(tài)代碼分析功能,但靜態(tài)分析的主體功能并不是在腳本中,而是調(diào)用eslint工具進(jìn)行實(shí)現(xiàn)。在設(shè)備終端中可能沒(méi)有足夠容納eslint的空間,如果可以容納eslint,安裝和執(zhí)行的限制都很大,這和firmwalker輕量化的特點(diǎn)背道而馳。并且有更加強(qiáng)大的開(kāi)源工具可以替代執(zhí)行靜態(tài)分析功能,例如FACT。
l 檢索IP、URL、Email時(shí)間過(guò)長(zhǎng)
由于IP、URL、Email是根據(jù)正則表達(dá)式進(jìn)行檢索,匹配速度低,導(dǎo)致整體掃描時(shí)間增加。個(gè)人在車聯(lián)網(wǎng)測(cè)試過(guò)程中會(huì)將這三項(xiàng)掃描注釋掉。
l 無(wú)單項(xiàng)敏感數(shù)據(jù)文件操作功能
在單獨(dú)增加、修改、刪除/data/目錄下某文件中的關(guān)鍵字后,無(wú)法對(duì)操作的關(guān)鍵字進(jìn)行單獨(dú)檢索掃描,只能整體執(zhí)行一遍。當(dāng)然,可以通過(guò)注釋的方式去掉不需要檢索掃描的部分來(lái)縮短掃描時(shí)間,但實(shí)際上增加了工作量。
總結(jié)
Firmwalker作為一個(gè)腳本工具,具備輕量化、多平臺(tái)適配、檢索敏感文件全面等特點(diǎn)。雖然存在一些小問(wèn)題,但也都是在極特殊情況下才會(huì)顯現(xiàn)而出。整體來(lái)開(kāi),firmwalker在車聯(lián)網(wǎng)滲透測(cè)試中,可以大大縮減工作量,從而快速定位敏感數(shù)據(jù)文件,在系統(tǒng)安全以及數(shù)據(jù)安全方面具有獨(dú)特的作用。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-810627.html
交個(gè)朋友吧~
掃描下方二維碼,一起討論研究??????文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-810627.html
到了這里,關(guān)于【工具篇】Firmwalker車聯(lián)網(wǎng)安全實(shí)用小工具介紹的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!