Cyber Threat Intelligence & Digital Risk Protection — OSINT / Open Web Edition
Lyra est un outil de surveillance défensive open source permettant aux équipes sécurité de détecter les mentions publiques, fuites de credentials et expositions d'infrastructure concernant leur organisation sur le web ouvert et les sources OSINT.
Cet outil est conçu exclusivement pour une utilisation défensive et légale :
- ✅ Surveiller votre propre organisation
- ✅ Utilisé par des équipes SOC, RSSI, consultants CTI mandatés
- ✅ Ne consulte que des sources publiques et des APIs légitimes
- ❌ Ne jamais utiliser sur des cibles tierces sans autorisation écrite
- ❌ Ne télécharge ni n'accède à des données volées
L'utilisation de cet outil sur des systèmes ou organisations sans autorisation peut constituer une infraction pénale (article 323-1 et suivants du Code pénal français, Computer Fraud and Abuse Act aux USA, etc.).
- Dashboard temps réel — suivi en direct de l'avancement de l'analyse
- 10 sources OSINT analysées automatiquement
- Déduplication intelligente — fusion des résultats identiques
- Scoring de criticité automatique (CRITIQUE / ÉLEVÉ / MOYEN / FAIBLE)
- Export JSON structuré avec timeline des découvertes
- Zéro dépendance externe — uniquement la bibliothèque standard Python +
requests - Rapport final avec recommandations priorisées
| Source | Type de données | API requise |
|---|---|---|
| Have I Been Pwned | Credentials dans des brèches connues | Payante (~4$/mois) |
| DeHashed | Credentials leakés | Payante (~5$/mois) |
| VirusTotal | Réputation domaines & URLs | Gratuite (limitée) |
| URLScan.io | Scans suspects de domaines | Gratuite |
| Shodan | Infrastructure exposée, ports ouverts | Payante (49$/an) |
| GitHub | Secrets & tokens dans du code public | Sans clé (limitée) |
| Paste Sites | Mentions sur Pastebin (via DuckDuckGo) | Sans clé |
| Google Dorks OSINT | Documents confidentiels indexés | Sans clé |
| Ransomware.live | Revendications ransomware publiques | Sans clé (API publique) |
| crt.sh | Sous-domaines via Certificate Transparency | Sans clé |
- Python 3.8+
- Aucune dépendance externe (stdlib uniquement)
git clone https://github.com/votre-compte/lyra-cti.git
cd lyra-ctipython3 -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # WindowsCopiez le fichier d'exemple et renseignez vos informations :
cp config.json config_monentreprise.jsonÉditez config_monentreprise.json :
{
"company": {
"name": "Acme Corp",
"domains": ["acme.com", "acme.fr"],
"brands": ["Acme", "AcmePro"],
"subsidiaries": ["Acme Digital", "Acme Labs"],
"products": ["AcmeCloud", "AcmePay"],
"emails": ["contact@acme.com", "security@acme.com"],
"keywords": ["ACMECORP", "acmecorporation"]
},
"api_keys": {
"hibp": "VOTRE_CLE_HIBP",
"virustotal": "VOTRE_CLE_VIRUSTOTAL",
"shodan": "VOTRE_CLE_SHODAN",
"urlscan": "VOTRE_CLE_URLSCAN",
"dehashed": "VOTRE_CLE_DEHASHED",
"dehashed_email": "votre@email.com"
},
"options": {
"timeout": 15,
"max_results_per_source": 20,
"output_dir": "./lyra_output"
}
}💡 Les clés API sont optionnelles. Lyra fonctionne sans elles pour les sources gratuites (GitHub, Paste Sites, Ransomware.live, crt.sh, Google Dorks).
| Service | Lien | Tarif |
|---|---|---|
| Have I Been Pwned | https://haveibeenpwned.com/API/Key | ~4$/mois |
| VirusTotal | https://www.virustotal.com (inscription gratuite) | Gratuit |
| Shodan | https://account.shodan.io/register | 49$/an |
| URLScan.io | https://urlscan.io (inscription gratuite) | Gratuit |
| DeHashed | https://dehashed.com | 5$/mois |
python3 lyra.py --config config_monentreprise.jsonpython3 lyra.py --config config_monentreprise.json --output ./rapports/rapport_acme.jsonpython3 lyra.py --help╔══════════════════════════════════════════════════════════════════╗
║ LYRA — CTI Monitor v1.0 ║
║ Cyber Threat Intelligence & Digital Risk Protection ║
╚══════════════════════════════════════════════════════════════════╝
Cible : Acme Corp
Domaines : acme.com, acme.fr
Mots-clés : 12 termes indexés
Début : 2026-06-18 10:00:00 UTC
[10:02:14] ▶ CREDENTIAL LEAK (confiance: Élevé)
Source : Have I Been Pwned
Titre : Domaine acme.com trouvé dans 3 breach(es) HIBP
URL : https://haveibeenpwned.com/DomainSearch/acme.com
Résumé : 3 brèche(s) impliquant le domaine acme.com...
[00:04:31] Sources: 8/10 [████████████░░░░░░░░] Résultats: 5 Risque: ÉLEVÉ
{
"metadata": {
"tool": "Lyra CTI v1.0",
"target": "Acme Corp",
"global_risk": "ÉLEVÉ"
},
"summary": {
"total_findings": 5,
"sources_analyzed": 10,
"by_criticality": {
"CRITIQUE": 0, "ÉLEVÉ": 2, "MOYEN": 2, "FAIBLE": 1
}
},
"findings": [ ... ],
"timeline": [ ... ]
}lyra-cti/
├── lyra.py # Script principal
├── config.json # Template de configuration
├── README.md # Documentation
├── lyra_output/ # Répertoire de sortie (créé automatiquement)
│ └── lyra_report.json
└── lyra_debug.log # Logs techniques
- Ne commitez jamais votre
config.jsonavec les clés API réelles - Ajoutez
config_*.jsonà votre.gitignore - Utilisez des variables d'environnement ou un coffre-fort de secrets en production
- Exemple
.gitignorerecommandé :
config_*.json
lyra_output/
lyra_debug.log
.env
*.key- Support proxy SOCKS5 / Tor (optionnel)
- Intégration Slack/Teams pour alertes temps réel
- Export rapport PDF
- Mode planifié (cron) avec diff des nouvelles découvertes
- Support Elasticsearch pour indexation des résultats
- Interface web légère (Flask)
Les contributions sont les bienvenues dans le respect du cadre légal et éthique défini ci-dessus.
- Forkez le dépôt
- Créez une branche (
git checkout -b feature/nouvelle-source) - Committez vos changements (
git commit -m 'Ajout source XYZ') - Poussez la branche (
git push origin feature/nouvelle-source) - Ouvrez une Pull Request
MIT License — voir LICENSE
Développé pour les équipes SOC / CTI / RSSI dans le cadre d'une surveillance défensive.
Lyra ne remplace pas une plateforme CTI professionnelle (Recorded Future, Sekoia.io, Mandiant, etc.) mais constitue un point de départ open source pour les équipes souhaitant automatiser leur veille OSINT.