
Banc de travail OSINT local-first piloté au clavier pour le terminal, avec 28 modules couvrant les recherches de nom d'utilisateur, domaine, IP, e-mail, fuites de données et géolocalisation, ainsi qu'un stockage de dossiers SQLite.
h-osint)Un atelier OSINT local-first, piloté au clavier, pour le terminal — raccourcis clavier à la Neovim, configuration Lua, 12 thèmes, et un stockage local de dossiers SQLite. Pas de compte, pas de backend cloud, pas de télémétrie.
kitty ~ » h-osint
Dépôt :
h-osint· Binaire :h-osint· Site web : https://t-beckett.gitlab.io/h-osint/
h-osint s'exécute entièrement sur votre machine. Les notes de dossier, le suivi de sock-puppets et les résultats de chaque recherche vivent dans un seul fichier SQLite local — il n'y a aucun composant serveur, aucune synchronisation, et rien dans cet outil n'envoie vos données de dossier où que ce soit. Chaque module qui communique avec un service tiers (HaveIBeenPwned, Shodan, WiGLE, Nominatim, RDAP, crt.sh, NVD, Team Cymru, ip-api.com) le fait avec votre propre clé API lorsqu'une clé est requise, et uniquement parce que vous avez lancé cette recherche spécifique.
Parce que les bonnes références en technique OSINT (le cours OSINT Fundamentals de TCM Security, la liste de ressources OSINT de TCM) ne fournissent aucun logiciel, et que les logiciels existants sont soit un amas de scripts CLI à usage unique (Sherlock, theHarvester, ...), soit une interface graphique lourde (Maltego). h-osint emprunte les éléments de l'écosystème des applications terminal qui semblent déjà premium et construit un atelier cohérent autour des techniques bien connues :
| Emprunté à | Ce que nous avons repris |
|---|---|
| lazydocker | Disposition en panneaux, barre d'indices de raccourcis en bas, entièrement thémable |
| tuicr | Navigation modale native Vim, Rust, binaire statique unique |
| superfile | Modèle multi-onglets, 12 thèmes fournis, finition « tout semble soigné à l'extrême » |
| Sherlock / Maigret | La technique de balayage de pseudonymes multi-plateformes (réimplémentée ici, non vendue) |
| SpiderFoot / recon-ng | Orchestration de nombreuses API/outils OSINT passifs derrière une interface cohérente + pipelines d'automatisation |
Il n'est pas conçu pour, et omet délibérément, tout ce dont le seul
usage réaliste est le harcèlement, l'intimidation, l'intrusion non
autorisée, ou le travail avec des dumps d'identifiants volés — voir
docs/ETHICS.md pour savoir exactement où ces limites sont tracées et
pourquoi.
git clone https://gitlab.com/t-beckett/h-osint.git
cd h-osint
# Build prerequisites: a C compiler + linker (for the bundled SQLite and
# vendored Lua) and pkg-config. On Debian/Ubuntu:
sudo apt install build-essential pkg-config
cargo build --release
./target/release/h-osint # launches the TUI
./target/release/h-osint --help # see the scriptable subcommands
Outils externes optionnels qui débloquent davantage d'écrans de l'onglet
Tools : whois (repli pour les TLD non pris en charge par RDAP), dig
(enregistrements DNS + vérification AXFR), exiftool, nmap, openssl,
curl. L'application fonctionne très bien sans eux — elle vous indique ce
qui manque plutôt que d'échouer silencieusement.
Au premier lancement, h-osint écrit une configuration par défaut
entièrement commentée dans ~/.config/h-osint/init.lua pour vous (s'il
n'y a encore rien) — il n'y a rien à copier à la main. Ouvrez ce fichier
pour définir votre thème, vos clés API, vos thèmes personnalisés et vos
surcharges de raccourcis. Rien n'y est obligatoire ; chaque champ a une
valeur par défaut sensée et chaque module qui nécessite une clé vous le
signale au lieu d'échouer silencieusement. (Le fichier config/init.lua
fourni dans ce dépôt est exactement le modèle utilisé — lisez-le ici si
vous préférez ne pas lancer l'application d'abord.)
Les 22 capacités OSINT initialement prévues plus 6 outils étendus —
correspondance complète statut/module dans
docs/FEATURES.md :
Notes et fichiers de dossier · gestionnaire de sock puppets / personas · constructeur de dorks de moteurs de recherche · transfert vers la recherche d'images inversée · visionneuse EXIF avec aperçu en ligne via le protocole Kitty · outils de localisation physique et de géolocalisation · OSINT sur les e-mails (format/MX/Gravatar) · OSINT sur les données compromises (fuites + pastes HaveIBeenPwned) · OSINT sur les personnes · OSINT sur les numéros de téléphone · OSINT sur les pseudonymes à la Sherlock · OSINT sur les sites web (DNS, RDAP, crt.sh, Wayback, SPF/DMARC/DKIM, robots.txt/sitemap) · OSINT sur les réseaux sociaux · OSINT sur les réseaux sans fil (WiGLE) · OSINT sur les IP (géolocalisation, DNS inverse, ASN/BGP via Team Cymru, RDAP) · OSINT sur les MAC · orchestration d'outils externes · pipelines d'automatisation · rédaction de rapports Markdown · OSINT de sécurité de bas niveau (certificats TLS, en-têtes de sécurité) · plus le renseignement d'hôte Shodan, un identificateur de hash, un expanseur de redirections d'URL, une recherche CVE/NVD, un scanner de typosquatting/domaines similaires, et une vérification de mauvaise configuration de transfert de zone DNS (AXFR).
Trois modes, à la Neovim — tableau complet dans
KEYBINDINGS.md :
| Touche | Mode Normal |
|---|---|
j/k, ↑/↓ | se déplacer dans une liste |
i | entrer en mode Insertion (saisir dans le champ ciblé) |
Esc | revenir en mode Normal |
: | mode Commande (:theme nord, :open username, :case new "Acme intake", :q) — appuyez sur Tab pour parcourir les complétions du nom de commande ou de son argument |
r / Enter | exécuter l'action de l'écran courant |
Tab / Shift-Tab | changer d'onglet |
ctrl-t / ctrl-w | nouvel onglet (Home) / fermer l'onglet |
[ / ] | thème précédent / suivant |
? | basculer l'aide |
:q | quitter (c'est la seule façon de quitter — aucune liaison q seule, donc cela ne peut jamais être une touche mal saisie) |
Tout ce qui précède est surchargeable depuis init.lua. Appuyez sur ?
à tout moment pour l'aide-mémoire intégré.
:theme <name> ou définissez theme dans init.lua — tableau complet
des palettes et format des thèmes personnalisés dans
THEMES.md :
ocean-depths · forest-canopy · modern-minimalist · arctic-frost ·
botanical-garden · midnight-galaxy · nord · catppuccin-frappe ·
everforest · gruvbox · onedark · tokyonight (par défaut)
Chaque thème mappe les mêmes 12 rôles sémantiques
(bg/fg/accent/danger/...) — aucun écran ne traite jamais un thème
comme un cas particulier par son nom — et vous pouvez définir le vôtre
entièrement dans init.lua sans toucher au code Rust.