
Outil CLI pour l'open source et le renseignement sur les menaces
Outil CLI OSINT / Renseignement sur les menaces.
Comme prérequis pour Harpoon, vous devez installer les prérequis de lxml, sur Debian/Ubuntu : sudo apt-get install libxml2-dev libxslt-dev python3-dev. Sur Fedora : sudo dnf install sqlite-devel automake bzip2 bzip2-devel bzip2-lib cython g++ gcc gcc-c++ kernel-devel libffi-devel libxlt libxml2 libxml2-devel libxslt libxslt-devel make openssl openssl-devel python3-dev python3-devel python3-lxml python-dev python-devel sqlite-devel.
Vous devez avoir geoipupdate installé et correctement configuré pour utiliser la géolocalisation correctement (assurez-vous d'avoir GeoLite2-Country GeoLite2-City GeoLite2-ASN comme EditionIDs).
Vous pouvez simplement installer le paquet depuis pypi avec pip install harpoon
Si les instructions d'installation ci-dessus n'ont pas fonctionné, vous pouvez compiler l'outil depuis les sources en exécutant les commandes suivantes dans le terminal (cela suppose que vous utilisez des environnements virtuels) :
git clone https://github.com/Te-k/harpoon.git
cd harpoon
pip3 install .
Vous voudrez peut-être installer harpoontools pour disposer de commandes supplémentaires utilisant les fonctionnalités de Harpoon.
Pour configurer Harpoon, exécutez harpoon config et remplissez les clés API nécessaires.
Ensuite, exécutez harpoon update pour télécharger les fichiers nécessaires. Vérifiez quels plugins sont configurés avec harpoon config -c.
Consultez le wiki pour plus d'informations.
Si vous avez installé Harpoon depuis pypi, faites simplement pip install -U harpoon.
Si vous avez installé Harpoon depuis le dépôt git, allez dans le dépôt et utilisez les commandes suivantes :
git pull origin master
pip install .
Après configuration, les plugins suivants sont disponibles dans la commande harpoon :
asn Recueillir des informations sur un ASN
binaryedge Interroger l'API BinaryEdge
cache Demander le cache de pages web de différentes sources
censys Demander des informations depuis la base de données Censys (https://censys.io/)
certspotter Obtenir des certificats depuis https://sslmate.com/certspotter
circl Interroger la base de données DNS passive du CIRCL
config Configurer Harpoon
crtsh Rechercher dans https://crt.sh/ (base de données de transparence des certificats)
cybercure Rechercher dans la base de données de renseignements de cybercure.ai pour des indicateurs spécifiques.
dns Cartographier les informations DNS pour un domaine ou une IP
dnsdb Interroger Farsight DNSDB
email Recueillir des informations sur une adresse e-mail
fullcontact Interroger l'API Full Contact (https://www.fullcontact.com/)
github Demander des informations Github via l'API
greynoise Demander des informations depuis l'API GreyNoise (choisir Community ou Enterprise via la configuration api_type)
hashlookup Interroger la base de données CIRCL Hash Lookup
help Donner de l'aide sur une commande Harpoon
hibp Interroger l'API Have I Been Pwned (https://haveibeenpwned.com/)
hunter Demander des informations hunter.io via l'API
hybrid Interroger la plateforme Hybrid Analysis
intel Recueillir des informations sur un domaine
ip Recueillir des informations sur une adresse IP
ipinfo Demander des informations ipinfo.io
ip2locationio Demander des informations IP2Location.io
koodous Interroger l'API Koodous
malshare Interroger la base de données MalShare
misp Obtenir des informations d'un serveur MISP via l'API
numverify Interroger les informations de numéro de téléphone depuis NumVerify
opencage Géocodage direct/inverse avec OpenCage
otx Demander des informations depuis AlienVault OTX
permacc Demander des informations Perma.cc via l'API
pgp Rechercher des informations dans les serveurs de clés PGP
pt Interroger la base de données Passive Total
pulsedive Interroger l'API PulseDive
quad9 Vérifier si un domaine est bloqué par Quad9
robtex Rechercher dans l'API Robtex (https://www.robtex.com/api/)
safebrowsing Vérifier si le domaine donné est dans la liste de navigation sécurisée de Google
save Sauvegarder une page web dans des plateformes de cache
securitytrails Interroger la base de données SecurityTrails
shodan Interroger l'API Shodan
spyonweb Rechercher dans SpyOnWeb via l'API
subdomains Rechercher les sous-domaines d'un domaine
telegram Demander des informations depuis Telegram via l'API
threatcrowd Interroger l'API ThreatCrowd
threatgrid Interroger l'API Threat Grid
threatminer Interroger la base de données TreatMiner https://www.threatminer.org/
tor Vérifier si une IP est un nœud de sortie Tor listé dans la liste publique
totalhash Interroger l'API Total Hash
twitter Interroger l'API Twitter
umbrella Vérifier si un domaine est dans le Top 1 million de domaines Umbrella
update Mettre à jour les données Harpoon
urlhaus Interroger l'API urlhaus.abuse.ch
urlscan Rechercher et soumettre des URLs à urlscan.io
vt Interroger l'API Virus Total
xforce Interroger l'API IBM Xforce Exchange
zetalytics Rechercher dans la base de données Zetalytics
Vous pouvez obtenir des informations sur chaque commande avec harpoon help COMMAND
api_type pour spécifier le type d'API à utiliser. Les deux nécessitent toujours une clé API pour fonctionner.Merci aux personnes qui ont contribué à améliorer Harpoon : @jakubd @marrouchi @grispan56 @christalib
Les crédits pour le logo vont à @euphoricfall et à l'équipe PulseDive
Ce code est publié sous licence GPLv3.