Le GrassMarlin moderne.
Topologie OT/ICS passive, découverte d'actifs et triage par les intervenants, dans un atelier web partagé que toute l'équipe d'engagement peut utiliser en même temps. Construit sur les bases que la NSA a publiées en 2017 ; reconstruit pour la façon dont les intervenants travaillent réellement aujourd'hui.
Du GrassMarlin de la NSA à un successeur maintenu et multi-utilisateur.
GrassMarlin était la contribution open source de l'Information Assurance Directorate de la NSA à la visibilité OT/ICS : analyse passive de captures de paquets qui construisait la topologie et identifiait les protocoles industriels sans envoyer une seule sonde. Neutre vis-à-vis des fournisseurs, passif uniquement, gratuit. La bonne idée.
- Passif uniquement, paquets en entrée, zéro en sortie
- Couverture des protocoles OT-natifs
- Inférence Purdue + empreintes fournisseurs
- Neutre, gratuit, open source (AGPL-3.0)
- Atelier web multi-utilisateur (au lieu de Java desktop)
- Déployable Docker (au lieu d'installation JAR)
- Contrat de rapport JSON portable (au lieu de session)
- Bilingue EN / FR · sévérité contextuelle · lentille ATT&CK
- Maintenance active, versions taguées
- Pas de risque XXE, le moteur livre du code récent
- Récupération en cours de scan, concurrence du run-store
- Une équipe derrière le rôle, engagée dessus
Atelier centré sur la carte, graphe relationnel multi-lentilles.
Un canevas de carte persistant avec une barre de lentilles en haut, un inspecteur ancrable à droite, et un tiroir coulissant avec sept onglets de tableaux en bas. Six lentilles re-rendent la carte : Comms, Constats, IOC, ATT&CK, Baseline et Pairs, toutes dérivées d'une seule taxonomie 12 entités / 12 relations.
Ce que MarlinSpike garantit.
Six principes non négociables issus des réalités de l'analyse OT/ICS passive sur de vrais hôtes d'engagement. Ils façonnent chaque version.
Natif OT, non adapté
Atelier partagé, pas mono-utilisateur
Le rapport est le contrat
Empreinte déployable sur le terrain
Bilingue par défaut
Trois missions pour lesquelles MarlinSpike a été conçu.
Reconstruction de topologie, triage pour intervenant, et baselines d'actifs longitudinales, dans un seul atelier partagé, alimenté par des captures passives.
Reconstruction de topologie
Triage pour intervenant
Baselines longitudinales
L'essentiel à comprendre
MarlinSpike n'est pas un analyseur desktop. C'est un atelier temporaire sur site pour les engagements OT, déposez-le sur un hôte d'engagement, partagez l'URL, triez ensemble, transmettez le rapport JSON.
Quatre surfaces qui transforment l'atelier a trouvé quelque chose en quelque chose d'actionnable.
La ligne v3.x est conçue pour combler l'écart entre l'analyse et l'action. Chaque version ajoute un nouveau maillon dans la boucle repéré→ouvert.
Défilement temporel + extraction sous-PCAP
- Histogramme adaptatif de débit de paquets sous la barre d'outils de l'atelier
- Glissez une fenêtre temporelle, chaque volet de conversation filtre en direct sur cette plage
- Le bouton Extraire par ligne appelle tshark + editcap et télécharge le pcap
- De repère à ouvert dans Wireshark en deux clics
Contexte d'actifs et sévérité contextuelle
- Étiquetez chaque actif avec propriétaire, criticité, zone, fonction métier, notes en texte libre
- Scope par projet, clé MAC en priorité / repli IP
- MEDIUM sur un contrôleur de sécurité peut dépasser CRITICAL sur un serveur d'impression
- Notes par constat (statut + corps) voyagent avec le projet entre les rapports
Chasse IOC sur tous les rapports
/iocs est un flux coller-et-balayer. L'import STIX / MISP est sur la feuille de route ; le MVP liste-collée est en ligne.
- Import en masse par collage avec auto-détection IPv4/v6, MAC, OUI, sha256, md5, domaines
- Balayage des rapports du projet : parcourt chaque rapport, nœuds, conversations, c2, DNS, constats malware
- Récapitulatifs de sévérité par IOC et localisations de correspondances par rapport
- Listes scopées par projet, persistées entre les exécutions
Matrice ATT&CK en direct depuis les observations passives
- Grille de techniques groupées par tactique (domaines ICS + Enterprise)
- Alimentée par la sortie du plugin marlinspike-mitre, pas curée manuellement
- Sous-techniques, mesures d'atténuation et recommandations de réponse par constat
- Cliquez sur une technique : pivotez vers les constats qui l'ont déclenchée
Atelier bilingue, d'autres langues à venir
- Chaque écran bascule entre English et Français, y compris les catégories de constats, descriptions et remédiations émises par le moteur
- Sélecteur de langue dans la nav, persiste en session, avec repli Accept-Language
- Couche i18n JSON-dictionnaire maison, sans nouvelle dépendance pip
- Langues supplémentaires prévues ; la structure du dictionnaire rend les nouvelles langues additives, pas un refactor
Conçu pour ceux qui font vraiment le triage.
MarlinSpike est le noyau open-source derrière Fathom. Il existe pour être utile aux intervenants OT/ICS en activité, pas seulement aux programmeurs systèmes.
Aux intervenants
Aux ingénieurs OT
Aux intégrateurs
pip install marlinspike expose create_app et db. Trois surfaces d'extension formelles : moteurs Rust, plugins Python, packs de règles YAML.
Commencez par le wiki, déployez une stack Docker, partagez une URL.
Pas de danse de licence, pas d'appel d'intégration fournisseur. Cinq minutes de git clone à un atelier fonctionnel sur 127.0.0.1:5001.