
firmwalker
Un simple script bash pour rechercher dans le système de fichiers de firmware extrait ou monté.
Il parcourra le système de fichiers de firmware extrait ou monté à la recherche d'éléments intéressants tels que :
- etc/shadow et etc/passwd
- lister le répertoire etc/ssl
- rechercher les fichiers liés à SSL tels que .pem, .crt, etc.
- rechercher les fichiers de configuration
- chercher les fichiers de script
- rechercher d'autres fichiers .bin
- rechercher des mots-clés tels que admin, password, remote, etc.
- rechercher les serveurs web courants utilisés sur les appareils IoT
- rechercher les binaires courants tels que ssh, tftp, dropbear, etc.
- rechercher des URL, des adresses email et des adresses IP
- Support expérimental pour effectuer des appels à l'API Shodan en utilisant la CLI Shodan
Utilisation
- Si vous souhaitez utiliser la partie d'analyse statique du code du script, veuillez installer eslint :
npm i -g eslint
./firmwalker {path to root file system} {path for firmwalker.txt}
- Exemple :
./firmwalker linksys/fmk/rootfs ../firmwalker.txt
- Un fichier
firmwalker.txt sera créé dans le même répertoire que le fichier du script, sauf si vous spécifiez un nom de fichier différent comme second argument.
- Ne placez pas le fichier firmwalker.sh à l'intérieur du répertoire à rechercher, cela amènerait le script à se rechercher lui-même ainsi que le fichier qu'il crée.
chmod 0700 firmwalker.sh
- squashfs-root.zip - contient des fichiers provenant d'un firmware de routeur extrait aléatoire. Firmwalker peut être exécuté sur ce système de fichiers.
- rt-ac66u.txt - fichier de sortie de firmwalker
- xc.txt - fichier de sortie de firmwalker d'un appareil Ubiquiti
Script créé par Craig Smith et enrichi par :
- Athanasios Kostopoulos
- misterch0c
Liens