Skip to content

DeviantOps/Lucifer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Lucifer4a2 — Suite d’analyse IPv4 & Base RIPE SQLite Présentation

Lucifer4a2 est une suite d’outils Python orientée analyse réseau IPv4, enrichissement DNS/SSL et consultation locale de données RIPE via SQLite.

Le projet est composé de trois scripts complémentaires :

Script Rôle Lucifer4a2.py Analyseur IPv4 multithreadé avec DNS inverse, DNSSEC, SSL/TLS et lookup RIPE local createSQLite2.py Importeur haute performance des dumps RIPE vers une base SQLite locale netx.py Générateur rapide d’adresses IPv4 pseudo-aléatoires

L’objectif du projet est de fournir une boîte à outils légère, autonome et rapide permettant :

l’analyse de listes d’adresses IPv4 ; l’enrichissement réseau hors-ligne ; la consultation locale des plages RIPE sans dépendre d’API distantes ; l’inspection DNS et TLS ; l’automatisation de workflows réseau et OSINT. Fonctionnalités Lucifer4a2.py Analyse IPv4 multithreadée Traitement parallèle configurable ; Queue thread-safe ; Progression temps réel via Rich ; Gestion propre des interruptions. DNS inverse (PTR) Résolution PTR ; Compatibilité TCP DNS ; Support transparent Tor/SOCKS5. Vérification DNS Validation DNSSEC ; Extraction des enregistrements : A AAAA MX TXT CNAME NS SOA Vérification SSL/TLS Récupération du certificat ; Détection de certificats expirés ; Inspection du protocole TLS ; Détection des protocoles obsolètes : SSLv2 SSLv3 TLSv1 TLSv1.1 Lookup RIPE local Recherche ultra-rapide en SQLite ; Fonctionnement hors-ligne ; Recherche par plage IP ; Sélection de la plage la plus précise. Support Tor Proxy SOCKS5 ; Compatible Tor local ; Résolutions DNS via TCP. Reporting avancé Interface terminal Rich ; Rapport texte exportable ; Journalisation détaillée. createSQLite2.py Import RIPE haute performance Support fichiers .gz ; Parsing intelligent des blocs inetnum ; Import transactionnel par batch ; Indexation optimisée ; Conversion IP → entier. Formats supportés Plages classiques : 192.168.0.0 - 192.168.255.255 CIDR : 192.168.0.0/24 IP unique. netx.py Génération rapide d’IPv4 Génération pseudo-aléatoire ; Préfixes personnalisables ; Génération massive.

Exemple :

python netx.py 45 12 1000

Produit :

45.12.x.x Architecture globale +-------------------+ | RIPE Dump (.gz) | +---------+---------+ | v +-------------------+ | createSQLite2.py | +---------+---------+ | v +-------------+ | ripe.db | +------+------+ | v +------------------+ | Lucifer4a2.py | +--------+---------+ | +----------------+----------------+ | | | v v v DNS PTR DNSSEC SSL/TLS | v Rapport final Installation Prérequis Python 3.10+ Linux / macOS / Windows Dépendances Python

Installation via pip :

pip install dnspython pysocks rich Dépendances détaillées Bibliothèque Utilité dnspython Résolution DNS / DNSSEC PySocks Proxy SOCKS5 / Tor rich Interface terminal avancée sqlite3 Base locale RIPE ssl Inspection TLS http.client Connexion HTTPS ipaddress Manipulation IPv4 Préparation de la base RIPE Téléchargement des données RIPE

Télécharger un dump RIPE inetnum.

Exemple :

wget https://ftp.ripe.net/ripe/dbase/split/ripe.db.inetnum.gz Création de la base SQLite python createSQLite2.py ripe.db.inetnum.gz --db ripe.db

Exemple de sortie :

Importés: 10000 entrées Importés: 20000 entrées ... Import terminé. Total: XXXXX entrées Utilisation de Lucifer4a2 Format du fichier IP

Créer un fichier _ip.lst :

1.1.1.1 8.8.8.8 9.9.9.9

Les lignes vides et commentaires sont ignorés.

Exemple :

DNS publics

1.1.1.1 8.8.8.8 Exemples d’utilisation Scan simple python Lucifer4a2.py --input ips.txt Scan DNS python Lucifer4a2.py --input ips.txt --dns Scan SSL/TLS python Lucifer4a2.py --input ips.txt --ssl Scan complet python Lucifer4a2.py
--input ips.txt
--dns
--ssl
--ripe
--ripe-db ripe.db Utilisation avec Tor python Lucifer4a2.py
--input ips.txt
--tor
--threads 10 Paramètres CLI Lucifer4a2.py Argument Description --input Fichier contenant les IPs --tor Active SOCKS5/Tor --dns Active les vérifications DNS --ssl Active les vérifications TLS --ripe Active les lookups RIPE --ripe-db Chemin vers la base SQLite --threads Nombre de threads --output Rapport texte exporté createSQLite2.py Argument Description ripe_file Dump RIPE source --db Base SQLite cible netx.py Argument Description a Premier octet b Second octet count Nombre d’IP à générer Exemple de workflow complet

  1. Génération d’IPs python netx.py 45 12 500 > ips.txt
  2. Construction de la base RIPE python createSQLite2.py ripe.db.inetnum.gz --db ripe.db
  3. Analyse enrichie python Lucifer4a2.py
    --input ips.txt
    --dns
    --ssl
    --ripe
    --threads 20 Structure de la base SQLite Table ripe_networks Champ Type id INTEGER inetnum TEXT netname TEXT descr TEXT country TEXT admin_c TEXT tech_c TEXT status TEXT mnt_by TEXT created TEXT last_modified TEXT source TEXT first_ip INTEGER last_ip INTEGER Optimisations techniques SQLite

Le script d’import applique plusieurs optimisations :

PRAGMA journal_mode = MEMORY; PRAGMA synchronous = OFF;

Objectifs :

accélérer les insertions ; réduire les I/O disque ; maximiser le débit d’import. Indexation CREATE INDEX idx_ripe_range ON ripe_networks (first_ip, last_ip)

Permet :

recherches rapides ; scans minimisés ; matching efficace des plages. Threading

Lucifer4a2.py utilise :

queue.Queue() ; workers daemonisés ; verrou mutex ; progression temps réel. Exemple de sortie Interface console ▶ 8.8.8.8 dns.google ↳ DNS inverse : dns.google ✔ DNS : DNSSEC validé ✔ SSL : SSL valide, configuration sécurisée Rapport texte === 8.8.8.8 === Hostname : dns.google DNS : VALIDE — DNSSEC validé SSL : VALIDE — SSL valide, configuration sécurisée Gestion des erreurs

Le projet gère :

timeouts ; connexions refusées ; erreurs DNS ; erreurs SSL ; IP invalides ; erreurs SQLite ; interruptions clavier.

Toutes les erreurs sont journalisées dans :

lucifer.log Logs Exemple 2026-01-01 12:00:00 [INFO] Traitement : 8.8.8.8 2026-01-01 12:00:01 [DEBUG] DNS inverse 8.8.8.8 Performance

Les performances dépendent principalement :

du nombre de threads ; de la latence DNS ; des vérifications SSL ; des accès disque SQLite.

En environnement standard :

Threads Débit estimé 5 Léger 10 Moyen 20+ Intensif Sécurité Recommandations utiliser un environnement isolé ; limiter le nombre de threads ; surveiller les requêtes réseau ; utiliser Tor si nécessaire. Cas d’usage Inventaire réseau enrichissement IP ; audit d’exposition ; cartographie réseau. Recherche OSINT attribution réseau ; corrélation DNS ; identification d’infrastructures. Analyse TLS détection de configurations faibles ; certificats expirés ; protocoles obsolètes. Recherche RIPE hors-ligne consultation rapide ; environnement air-gapped ; automatisation locale. Arborescence recommandée project/ │ ├── Lucifer4a2.py ├── createSQLite2.py ├── netx.py ├── ripe.db ├── _ip.lst ├── lucifer.log ├── lucifer_report.txt └── README.md Compatibilité OS Support Linux Oui Windows Oui macOS Oui Limitations connues IPv6 non supporté ; dépendance DNS externe ; validation DNSSEC dépendante du resolver ; SSL dépendant de l’accessibilité du port 443. Améliorations possibles support IPv6 ; export JSON/CSV ; dashboard web ; cache DNS ; support WHOIS natif ; support ASN ; multiprocessing ; intégration GeoIP. Bonnes pratiques construire régulièrement la base RIPE ; limiter les scans massifs ; surveiller les logs ; utiliser un timeout raisonnable. Dépannage Erreur : No module named dns

Installer :

pip install dnspython Erreur : SOCKS5 connection failed

Vérifier :

que Tor est lancé ; que le port 9050 est ouvert. Erreur SQLite

Supprimer puis reconstruire :

rm ripe.db python createSQLite2.py ripe.db.inetnum.gz Licence

À compléter selon votre choix :

MIT GPLv3 Apache 2.0 BSD Disclaimer

Ce projet est fourni à des fins :

éducatives ; d’administration système ; de recherche réseau ; d’analyse d’infrastructure.

L’utilisateur est seul responsable de l’usage effectué du logiciel.

Crédits

Bibliothèques utilisées :

Rich dnspython PySocks SQLite Auteur

Projet développé en Python.

About

Bulk IP infos grabber

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages