
Plateforme open-source collaborative de prise de notes pour les équipes de cybersécurité et de CTI. Extraction automatique d'IOC, export STIX 2.1, édition en temps réel, RBAC, historique des versions et journalisation d'audit. Auto-hébergé avec Docker.
Une plateforme collaborative de prise de notes en temps réel conçue pour les équipes de Renseignement sur les Menaces Cyber (CTI) et les opérations de sécurité.
ThreatPad allie la rapidité des outils de productivité modernes à des fonctionnalités spécifiques à la CTI : extraction automatique d’IOC, export STIX 2.1, modèles structurés de menaces et contrôle d’accès fin.
Démo en direct — connectez-vous avec [email protected] / password123


Nécessite Docker. C’est tout.
git clone https://github.com/bhavikmalhotra/ThreatPad.git
cd ThreatPad
docker compose -f docker-compose.prod.yml up -d --build
Ouvrez http://localhost:3000 — vous serez guidé pour créer votre compte administrateur.
Cela démarre PostgreSQL, Redis, le serveur API et l’application web. Le schéma de la base de données est appliqué automatiquement.
Nécessite Node.js 22+ et pnpm 9+.
pnpm install
cp .env.example .env
docker compose up -d # Postgres + Redis
pnpm --filter @threatpad/db push
pnpm --filter @threatpad/db seed # données de démonstration facultatives
pnpm dev
[email protected] / password123 (si ensemencé)ThreatPad utilise un système de plugins basé sur un registre. L’exportation est le premier type de plugin — d’autres sont prévus.
Créez un fichier dans apps/server/src/plugins/exporters/ :
import type { ExportPlugin } from '@threatpad/shared/types';
export const myExporter: ExportPlugin = {
key: 'myformat',
label: 'My Format',
fileExtension: '.xml',
contentType: 'application/xml',
async export({ noteId, iocs, note }) {
const xml = buildXml(iocs);
return { data: xml, contentType: 'application/xml', filename: `iocs-${noteId}.xml` };
},
};
Enregistrez-le dans apps/server/src/plugins/exporters/index.ts :
import { myExporter } from './my-exporter.js';
exportRegistry.register(myExporter);
Le frontend découvre automatiquement les nouveaux formats — aucune modification de l’interface utilisateur n’est nécessaire.
| Type de plugin | Cas d’utilisation | Statut |
|---|
| Exportation | Formats d’exportation d’IOC (STIX, CSV, MISP, OpenIOC) | Disponible |
| Enrichissement | Recherches d’IOC (VirusTotal, Shodan, AbuseIPDB) | Prévu |
| Modèles d’IOC | Types d’indicateurs personnalisés (YARA, Bitcoin, MITRE ATT&CK) | Prévu |
| Importation | Ingestion à partir de flux (TAXII, MISP, OpenCTI) | Prévu |