Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
smbcrawler — smbcrawler est un outil sans fioritures qui prend des identifiants et une liste d'hôtes et 'crawle' (ou 'spiderise') ces partages. | Kitploit
Outils/GitHubGitHub/syss-research/smbcrawler
ReconnaissanceAnalyse des VulnérabilitésExfiltration de DonnéesCollecte d'InformationsSécurité RéseauTests d'Intrusion
GitHubsyss-research/smbcrawler

smbcrawler

smbcrawler est un outil sans fioritures qui prend des identifiants et une liste d'hôtes et 'crawle' (ou 'spiderise') ces partages.

Voir le dépôt
1892668il y a 14 joursVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

SmbCrawler

SmbCrawler est un outil sans fioritures qui prend des identifiants et une liste d'hôtes et 'explore' (ou 'araignée') ces partages. Fonctionnalités :

  • accepte les noms d'hôtes, les adresses IP, les plages IP ou un fichier xml nmap en entrée
  • vérifie les permissions (la vérification des permissions d'écriture est facultative, car elle nécessite la création d'un répertoire vide sur le partage)
  • la profondeur d'exploration est personnalisable
  • produit des résultats dans des formats lisibles par machine ou sous forme de rapport HTML interactif
  • support du pass-the-hash
  • téléchargement automatique des fichiers intéressants
  • signale les secrets potentiels
  • multithreadé
  • mettable en pause
  • ignorer interactivement des partages et hôtes individuels

Installation

Si vous avez besoin d'instructions sur la façon d'installer un paquet Python, je vous recommande de vous assurer que vous avez pipx installé et d'exécuter pipx install smbcrawler.

SmbCrawler peut automatiquement convertir certains fichiers binaires comme PDF, XLSX, DOCX, ZIP, etc. en texte brut en utilisant MarkItDown. Comme ce paquet tire beaucoup de dépendances, il est marqué comme un extra. Cependant, il est fortement recommandé pour obtenir les meilleurs résultats. Si vous souhaitez convertir automatiquement des binaires, installez SmbCrawler comme ceci :

pipx install 'smbcrawler[binary-conversion]'

L'ajout de la complétion shell est fortement recommandé. En tant qu'application Python utilisant la bibliothèque click, vous pouvez ajouter la complétion par tabulation à bash, zsh et fish en utilisant le mécanisme habituel.

Exemple

Exécutez-le comme ceci (10 threads, profondeur maximale 5) :

$ smbcrawler crawl -i hosts.txt -u pen.tester -p iluvb0b -d contoso.local -t 10 -D 5

Changements majeurs dans la version 1.0

SmbCrawler a subi une refonte majeure. Les changements les plus significatifs sont :

  • Nous avons nettoyé la CLI et introduit un mécanisme de 'profil' pour orienter le comportement de l'explorateur
  • La sortie est maintenant une base de données sqlite au lieu de fichiers JSON éparpillés
  • Les permissions sont maintenant signalées de manière plus granulaire

Les anciens arguments de la CLI concernant les 'fichiers intéressants', les 'partages ennuyeux' etc. étaient lourds et confus. Nous utilisons désormais des 'profils' ; voir ci-dessous pour plus de détails.

Aussi, j'ai réalisé que j'avais essentiellement réinventé les bases de données relationnelles, mais très mal, alors pourquoi ne pas utiliser sqlite directement ? L'approche sqlite nous permet de produire un joli rapport HTML interactif avec de bonnes performances. Vous pouvez toujours exporter les résultats dans divers formats si vous devez utiliser les données dans un pipeline d'outils.

L'ancienne façon dont SmbCrawler signalait les permissions n'était parfois pas très utile. Par exemple, il n'est pas rare d'avoir des permissions de lecture dans le répertoire racine du partage, mais tous les sous-répertoires sont protégés, par exemple pour les profils utilisateurs. SmbCrawler signalera désormais jusqu'à quelle profondeur il a pu lire l'arborescence des répertoires d'un partage et s'il a atteint le maximum ou s'il aurait pu aller plus loin si vous aviez fourni une valeur plus élevée pour l'argument de profondeur maximale.

Si vous préférez l'ancienne version, elle est toujours disponible sur PyPI et installable avec pipx install smbcrawler==0.2.0, par exemple.

Utilisation

Pendant l'exécution, vous pouvez utiliser les touches suivantes :

  • p : mettre en pause l'explorateur et ignorer des hôtes ou partages individuels
  • <space> : afficher la progression actuelle
  • s : afficher une mise à jour de statut plus détaillée

Pour plus d'informations, exécutez smbcrawler -h.

Notes

Même dans des réseaux de taille moyenne, SmbCrawler trouvera des tonnes de données. Le défi est de réduire les faux positifs.

Notes sur les permissions

Il est important de réaliser que les permissions peuvent s'appliquer au niveau du service et au niveau du système de fichiers. Le service SMB distant peut vous permettre de vous authentifier et votre compte utilisateur peut avoir des permissions de lecture en principe, mais il pourrait manquer ces permissions sur le système de fichiers.

SmbCrawler signalera si vous avez les permissions de :

  • vous authentifier contre une cible en tant qu'invité et lister les partages
  • vous authentifier contre une cible avec les identifiants utilisateur
  • accéder à un partage en tant qu'invité
  • accéder à un partage avec les identifiants utilisateur
  • créer un répertoire dans le répertoire racine du partage
  • le niveau de répertoire le plus profond d'un partage qui a pu être accédé (limité par l'argument --depth)

Comme il n'est pas trivial de vérifier les permissions des partages SMB sans tenter l'action en question, SmbCrawler tentera de créer un répertoire sur chaque partage. Son nom est smbcrawler_DELETEME_<8 caractères aléatoires> et sera supprimé immédiatement, mais soyez-en conscient.

[!WARNING] Parfois, vous avez la permission de créer des répertoires, mais pas de les supprimer, vous laisserez donc un répertoire vide.

Profils

Pour décider quoi faire avec certains partages, fichiers ou répertoires, SmbCrawler a une fonctionnalité appelée 'profils'. Jetez un œil au profil par défaut.

Les profils sont chargés à partir de fichiers avec les extensions *.yml ou *.yaml depuis ces emplacements :

  • Le profil par défaut intégré
  • $XDG_DATA_HOME/smbcrawler/ (~/.local/share/smbcrawler par défaut)
  • Le répertoire supplémentaire défini par --extra-profile-directory
  • Les fichiers supplémentaires définis par --extra-profile-file

Les profils de chaque emplacement remplacent les définitions précédentes.

La valeur regex détermine si un profil correspond, et le dernier profil correspondant sera utilisé. Toutes les expressions régulières sont insensibles à la casse, reflétant le comportement le plus courant dans le monde Windows.

Comme il peut être déroutant de comprendre comment les profils de différentes sources fonctionnent ensemble, assurez-vous d'utiliser le paramètre --dry-run. Il vous montre la configuration effective et ne fait rien de plus.

Regardons chaque section, qui est toujours une liste de dictionnaires. Chaque clé du dictionnaire est une étiquette arbitraire et chaque valeur est à nouveau un dictionnaire avec différentes propriétés.

Fichiers

  • comment : Une chaîne utile décrivant ce profil
  • regex : Une expression régulière qui définit à quels fichiers ce profil s'applique. La dernière regex qui correspond est celle qui compte.
  • regex_flags : Un tableau de drapeaux qui seront passés à la fonction match de la regex
  • high_value (défaut : false) : Si un fichier est de 'haute valeur', sa présence sera signalée, mais il ne sera pas nécessairement téléchargé (pensez aux disques durs virtuels - importants, mais trop gros pour être téléchargés automatiquement)
  • download (défaut : true) : Si true, les premiers 200KiBi seront téléchargés (ou le fichier entier si high_value=true) et analysés pour trouver des secrets

Partages et répertoires

  • comment, regex, regex_flags : Identique à ci-dessus
  • high_value : sa présence sera signalée et la profondeur d'exploration changée à l'infini
  • crawl_depth : Explorez ce partage ou répertoire jusqu'à une profondeur différente de celle définie par l'argument --depth

Secrets

Télécharger l’outil