
Outil rapide d'énumération des noms courts IIS qui identifie les fichiers et répertoires cachés via la vulnérabilité tilde, avec résolution automatique des noms complets et correspondance basée sur des sommes de contrôle.
Un outil d'énumération de noms de fichiers courts pour IIS.
Shortscan est conçu pour déterminer rapidement quels fichiers avec des noms courts existent sur un serveur Web IIS. Une fois un nom court identifié, l'outil essaie de trouver automatiquement le nom complet.
En plus des méthodes de découverte standards, Shortscan utilise également une approche unique de correspondance par somme de contrôle pour tenter de trouver le nom long lorsque le nom court est basé sur l'algorithme de somme de contrôle propriétaire de Windows pour éviter les collisions de noms courts (plus de détails sur cette recherche à une date ultérieure).
En utilisant une version récente de go :
go install github.com/bitquark/shortscan/cmd/shortscan@latest
Pour construire (et éventuellement installer) localement :
go get && go build
go install
Shortscan est facile à utiliser avec une configuration minimale. L'utilisation de base ressemble à ceci :
$ shortscan http://example.org/
Vous pouvez également spécifier un fichier contenant une liste d'URL à analyser :
$ shortscan @urls.txt
Cet exemple définit plusieurs en-têtes personnalisés en utilisant --header/-H plusieurs fois :
shortscan -H 'Host: gibson' -H 'Authorization: Basic ZGFkZTpsMzN0'
Pour vérifier si un site est vulnérable sans effectuer d'énumération de fichiers, utilisez :
shortscan --isvuln
Les options suivantes permettent des réglages supplémentaires :
🌀 Shortscan v0.9.2 · an IIS short filename enumeration tool by bitquark
Usage: main [--wordlist FILE] [--header HEADER] [--concurrency CONCURRENCY] [--timeout SECONDS] [--output format] [--verbosity VERBOSITY] [--fullurl] [--norecurse] [--stabilise] [--patience LEVEL] [--characters CHARACTERS] [--autocomplete mode] [--isvuln] URL [URL ...]
Positional arguments:
URL url to scan (multiple URLs can be provided; a file containing URLs can be specified with an «at» prefix, for example: @urls.txt)
Options:
--wordlist FILE, -w FILE
combined wordlist + rainbow table generated with shortutil
--header HEADER, -H HEADER
header to send with each request (use multiple times for multiple headers)
--concurrency CONCURRENCY, -c CONCURRENCY
number of requests to make at once [default: 20]
--timeout SECONDS, -t SECONDS
per-request timeout in seconds [default: 10]
--output format, -o format
output format (human = human readable; json = JSON) [default: human]
--verbosity VERBOSITY, -v VERBOSITY
how much noise to make (0 = quiet; 1 = debug; 2 = trace) [default: 0]
--fullurl, -F display the full URL for confirmed files rather than just the filename [default: false]
--norecurse, -n don't detect and recurse into subdirectories (disabled when autocomplete is disabled) [default: false]
--stabilise, -s attempt to get coherent autocomplete results from an unstable server (generates more requests) [default: false]
--patience LEVEL, -p LEVEL
patience level when determining vulnerability (0 = patient; 1 = very patient) [default: 0]
--characters CHARACTERS, -C CHARACTERS
filename characters to enumerate [default: JFKGOTMYVHSPCANDXLRWEBQUIZ8549176320-_()&'!#$%@^{}~]
--autocomplete mode, -a mode
autocomplete detection mode (auto = autoselect; method = HTTP method magic; status = HTTP status; distance = Levenshtein distance; none = disable) [default: auto]
--isvuln, -V bail after determining whether the service is vulnerable [default: false]
--help, -h display this help and exit
--version display version and exit
Le projet shortscan inclut un utilitaire nommé shortutil qui peut être utilisé pour effectuer diverses opérations sur les noms de fichiers courts et pour créer des tables arc-en-ciel personnalisées à utiliser avec l'outil.
Vous pouvez créer une table arc-en-ciel à partir d'une liste de mots existante comme ceci :
shortutil wordlist input.txt > output.rainbow
Pour générer une somme de contrôle unique pour un fichier :
shortutil checksum index.html
Exécutez shortutil <command> --help pour une liste définitive des options pour chaque commande.
Shortutil v0.3 · a short filename utility by bitquark
Usage: main <command> [<args>]
Options:
--help, -h display this help and exit
Commands:
wordlist add hashes to a wordlist for use with, for example, shortscan
checksum generate a one-off checksum for the given filename
Une liste de mots personnalisée a été créée pour shortscan. Pour plus de détails, voir pkg/shortscan/resources/README.md
Recherche originale sur les noms courts IIS research par Soroush Dalili.
Recherches supplémentaires et ce projet par bitquark.