
Fonctionnalités • Installation • Utilisation • Configuration • Exécution de découvre • Rejoignez la discorde
Découvrir est un emballage Go Utilisation d'API de moteurs de recherche bien connus pour découvrir rapidement des hôtes exposés sur Internet. Il est construit avec l'automatisation à l'esprit, vous pouvez donc l'interroger et utiliser les résultats avec vos outils de pipeline actuels.

Découvrir oblige Go1.21 pour s'installer avec succès. Exécutez la commande suivante pour obtenir le repo -
go install -v github.com/projectdiscovery/uncover/cmd/uncover@latestuncover -hCela affichera l'aide pour l'outil. Voici tous les drapeaux qu'il prend en charge:
Usage:
./uncover [flags]
Flags:
INPUT:
-q, -query string[] search query, supports: stdin,file,config input (example: -q 'example query', -q 'query.txt')
-e, -engine string[] search engine to query (shodan,shodan-idb,fofa,censys,quake,hunter,zoomeye,netlas,criminalip,publicwww,hunterhow,google) (default shodan)
SEARCH-ENGINE:
-s, -shodan string[] search query for shodan (example: -shodan 'query.txt')
-sd, -shodan-idb string[] search query for shodan-idb (example: -shodan-idb 'query.txt')
-ff, -fofa string[] search query for fofa (example: -fofa 'query.txt')
-cs, -censys string[] search query for censys (example: -censys 'query.txt')
-qk, -quake string[] search query for quake (example: -quake 'query.txt')
-ht, -hunter string[] search query for hunter (example: -hunter 'query.txt')
-ze, -zoomeye string[] search query for zoomeye (example: -zoomeye 'query.txt')
-ne, -netlas string[] search query for netlas (example: -netlas 'query.txt')
-cl, -criminalip string[] search query for criminalip (example: -criminalip 'query.txt')
-pw, -publicwww string[] search query for publicwww (example: -publicwww 'query.txt')
-hh, -hunterhow string[] search query for hunterhow (example: -hunterhow 'query.txt')
-gg, -google string[] search query for google (example: -google 'query.txt')
CONFIG:
-pc, -provider string provider configuration file (default "$CONFIG/uncover/provider-config.yaml")
-config string flag configuration file (default "$CONFIG/uncover/config.yaml")
-timeout int timeout in seconds (default 30)
-rl, -rate-limit int maximum number of http requests to send per second
-rlm, -rate-limit-minute int maximum number of requests to send per minute
-retry int number of times to retry a failed request (default 2)
OUTPUT:
-o, -output string output file to write found results
-f, -field string field to display in output (ip,port,host) (default "ip:port")
-j, -json write output in JSONL(ines) format
-r, -raw write raw output as received by the remote api
-l, -limit int limit the number of results to return (default 100)
-nc, -no-color disable colors in output
DEBUG:
-silent show only results in output
-version show version of the project
-v show verbose output Exemple d'utilisation de Discover comme bibliothèque est fourni dans le répertoire des exemples.
Le fichier de configuration du fournisseur par défaut doit être situé à $CONFIG/uncover/provider-config.yaml et a le contenu suivant à titre d'exemple.
Remarque : les touches API sont requises et doivent être configurées avant de courir.
shodan :
- SHODAN_API_KEY_1
- SHODAN_API_KEY_2
censys :
- CENSYS_API_ID_1:CENSYS_API_SECRET_1
- CENSYS_API_ID_2:CENSYS_API_SECRET_2
fofa :
- FOFA_EMAIL_1:FOFA_KEY_1
- FOFA_EMAIL_2:FOFA_KEY_2
quake :
- QUAKE_TOKEN_1
- QUAKE_TOKEN_2
hunter :
- HUNTER_API_KEY_1
- HUNTER_API_KEY_2
zoomeye :
- ZOOMEYE_API_KEY_1
- ZOOMEYE_API_KEY_2
netlas :
- NETLAS_API_KEY_1
- NETLAS_API_KEY_2
criminalip :
- CRIMINALIP_API_KEY_1
- CRIMINALIP_API_KEY_2
publicwww :
- PUBLICWWW_API_KEY_1
- PUBLICWWW_API_KEY_2
hunterhow :
- HUNTERHOW_API_KEY_1
- HUNTERHOW_API_KEY_2
google :
- GOOGLE_API_KEY_1:Google_API_CX_1
- GOOGLE_API_KEY_2:Google_API_CX_2Lorsque plusieurs clés / informations d'identification sont spécifiées pour le même fournisseur dans le fichier de configuration, la touche aléatoire sera utilisée pour chaque exécution.
Alternativement, vous pouvez également définir la clé API comme variable d'environnement dans votre profil bash.
export SHODAN_API_KEY=xxx
export CENSYS_API_ID=xxx
export CENSYS_API_SECRET=xxx
export FOFA_EMAIL=xxx
export FOFA_KEY=xxx
export QUAKE_TOKEN=xxx
export HUNTER_API_KEY=xxx
export ZOOMEYE_API_KEY=xxx
export NETLAS_API_KEY=xxx
export CRIMINALIP_API_KEY=xxx
export PUBLICWWW_API_KEY=xxx
export HUNTERHOW_API_KEY=xxx
export GOOGLE_API_KEY=xxx
export GOOGLE_API_CX=xxxLes clés API requises peuvent être obtenues en s'inscrivant sur la plate-forme suivante Shodan, Censys, Fofa, Quake, Hunter, Zoomeye, Netlas, CriminalIp, Publicwww et Google [1], [2].
Découvrir prend en charge plusieurs façons de fabriquer la requête, y compris le drapeau stdin ou q , car le moteur shodan par défaut est utilisé pour la recherche si aucun moteur n'est spécifié.
echo 'ssl:"Uber Technologies, Inc."' | uncover
__ ______ _________ _ _____ _____
/ / / / __ / ___/ __ | / / _ / ___/
/ /_/ / / / / /__/ /_/ / |/ / __/ /
__,_/_/ /_/___/____/|___/___/_/ v0.0.9
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[WRN] By using uncover, you also agree to the terms of the APIs used.
107.180.12.116:993
107.180.26.155:443
104.244.99.31:443
161.28.20.79:443
104.21.8.108:443
198.71.233.203:443
104.17.237.13:443
162.255.165.171:443
12.237.119.61:443
192.169.250.211:443
104.16.251.50:443ENCRIPTION DES ENTRÉES DE FICHIER contenant plusieurs requêtes de recherche par ligne.
cat dorks.txt
ssl:"Uber Technologies, Inc."
title:"Grafana" uncover -q dorks.txt
__ ______ _________ _ _____ _____
/ / / / __ / ___/ __ | / / _ / ___/
/ /_/ / / / / /__/ /_/ / |/ / __/ /
__,_/_/ /_/___/____/|___/___/_/ v0.0.9
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[WRN] By using uncover, you also agree to the terms of the APIs used.
107.180.12.116:993
107.180.26.155:443
104.244.99.31:443
161.28.20.79:443
104.21.8.108:443
198.71.233.203:443
2607:7c80:54:3::74:3001
104.198.55.35:80
46.101.82.244:3000
34.147.126.112:80
138.197.147.213:8086 Découvrir prend en charge plusieurs moteurs de recherche, à mesure que Shodan par défaut est utilisé, -e , le drapeau peut être utilisé pour exécuter la même requête contre tout ou tous les moteurs de recherche.
echo jira | uncover -e shodan,censys,fofa,quake,hunter,zoomeye,netlas,criminalip
__ ______ _________ _ _____ _____
/ / / / __ / ___/ __ | / / _ / ___/
/ /_/ / / / / /__/ /_/ / |/ / __/ /
__,_/_/ /_/___/____/|___/___/_/ v0.0.9
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[WRN] By using uncover, you also agree to the terms of the APIs used.
176.31.249.189:5001
13.211.116.80:443
43.130.1.221:631
192.195.70.29:443
52.27.22.181:443
117.48.120.226:8889
106.52.115.145:49153
13.69.135.128:443
193.35.99.158:443
18.202.109.218:8089
101.36.105.97:21379
42.194.226.30:2626 uncover -shodan 'http.component:"Atlassian Jira"' -censys 'services.software.product=`Jira`' -fofa 'app="ATLASSIAN-JIRA"' -quake 'Jira' -hunter 'Jira' -zoomeye 'app:"Atlassian JIRA"' -netlas 'jira' -criminalip 'Jira'
__ ______ _________ _ _____ _____
/ / / / __ / ___/ __ | / / _ / ___/
/ /_/ / / / / /__/ /_/ / |/ / __/ /
__,_/_/ /_/___/____/|___/___/_/ v0.0.9
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[WRN] By using uncover, you also agree to the terms of the APIs used.
104.68.37.129:443
162.222.160.42:443
34.255.84.133:443
52.204.121.166:443
23.198.29.120:443
136.156.180.95:443
54.194.233.15:443
104.117.55.155:443
149.81.4.6:443
54.255.218.95:443
3.223.137.57:443
83.228.124.171:443
23.202.195.82:443
52.16.59.25:443
18.159.145.227:443
104.105.53.236:443Découvrir prend en charge l'API Shodan-InternetDB pour extraire les ports disponibles pour l'entrée IP / CIDR donnée.
shodan-idb utilisé comme moteur par défaut lorsque IP / CIDR est fourni en entrée, sinon le moteur de recherche shodan est utilisé.
echo 51.83.59.99/24 | uncover
__ ______ _________ _ _____ _____
/ / / / __ / ___/ __ | / / _ / ___/
/ /_/ / / / / /__/ /_/ / |/ / __/ /
__,_/_/ /_/___/____/|___/___/_/ v0.0.9
projectdiscovery.io
[WRN] Use with caution. You are responsible for your actions
[WRN] Developers assume no liability and are not responsible for any misuse or damage.
[WRN] By using uncover, you also agree to the terms of the APIs used.
51.83.59.1:53
51.83.59.1:10000
51.83.59.2:53
51.83.59.3:25
51.83.59.3:80
51.83.59.3:389
51.83.59.3:443
51.83.59.3:465
51.83.59.3:587
51.83.59.3:993 -f, -field Indicateur de champ peut être utilisé pour indiquer les champs à retourner, actuellement, ip , port et host sont pris en charge et peuvent être utilisés pour retourner les champs souhaités.
uncover -q jira -f host -silent
ec2-44-198-22-253.compute-1.amazonaws.com
ec2-18-246-31-139.us-west-2.compute.amazonaws.com
tasks.devrtb.com
leased-line-91-149-128-229.telecom.by
74.242.203.213.static.inetbone.net
ec2-52-211-7-108.eu-west-1.compute.amazonaws.com
ec2-54-187-161-180.us-west-2.compute.amazonaws.com
185-2-52-226.static.nucleus.be
ec2-34-241-80-255.eu-west-1.compute.amazonaws.com Discover a un drapeau -f, -field qui peut être utilisé pour personnaliser le format de sortie. Par exemple, dans le cas de uncover -f https://ip:port/version , IP: Le port sera remplacé par des résultats dans la sortie tout en gardant le format défini, il peut également être utilisé pour spécifier un schéma / chemin / chemin connu / fichier afin de préparer la sortie afin qu'il puisse être immédiatement transmis comme entrée à d'autres outils du pipeline.
echo kubernetes | uncover -f https://ip:port/version -silent
https://35.222.229.38:443/version
https://52.11.181.228:443/version
https://35.239.255.1:443/version
https://34.71.48.11:443/version
https://130.211.54.173:443/version
https://54.184.250.232:443/versionLa sortie de Discover peut être encore tuée vers d'autres projets dans le workflow acceptant STDIN comme entrée, par exemple:
uncover -q example -f ip | naabu - Exécute Naabu pour la numérisation de port sur l'hôte trouvé.uncover -q title:GitLab | httpx - exécute httpx pour le serveur Web sondant le résultat trouvé.uncover -q 51.83.59.99/24 | httpx - Exécute Httpx sur l'hôte / ports obtenus à Shodan-InternetDB. uncover -q http.title:GitLab -silent | httpx -silent
https://15.185.150.109
https://139.162.137.16
https://164.68.115.243
https://135.125.215.186
https://163.172.59.119
http://15.236.10.197
https://129.206.117.248uncover -q 'org:"Example Inc."' | httpx | nuclei - exécute httpx / noyaux pour l'évaluation de la vulnérabilité. 
query prend en charge tous les filtres et les filtres pris en charge par le moteur de recherche.100 par défaut et peuvent être augmentés avec le drapeau limit .shodan-idb ne nécessite pas de clé API et fonctionne hors de la boîte.shodan-idb est utilisée comme moteur par défaut lorsque IP / CIDR est fourni en entrée.Découvrir est fait avec? par l'équipe ProjectDiscovery.