Engagement Manager
Engagement Manager est une application web permettant de suivre les engagements de sécurité offensive. Elle dispose d'une interface moderne, construite avec Next.js, Prisma et PostgreSQL. L'application comprend un calendrier, des engagements, des clients, des contacts, des constats et des opérateurs.

Lee Baird @discoverscripts
Jay "L1ghtn1ng" Townsend @jay_townsend1
Captures d'écran

Table des matières
Rédaction des constats et production de rapports PDF
- Espace de rédaction : ouvrez le lien Write & review d'un constat pour l'édition Markdown et un aperçu sécurisé. Les brouillons privés sont enregistrés après 15 secondes d'inactivité ou à la demande ; ils sont stockés sur le serveur, et non dans le stockage local du navigateur. Récupérez explicitement un brouillon après l'avoir rouvert. Les enregistrements en conflit préservent le texte de l'éditeur et nécessitent une comparaison avec la révision actuelle. Les révisions de texte peuvent être inspectées et restaurées ; la restauration ne restaure pas les preuves supprimées.
- Modèles réutilisables : recherchez une formulation approuvée par titre, catégorie ou sévérité. Les utilisateurs peuvent proposer des modèles ; les administrateurs les sélectionnent et les approuvent. L'application d'un modèle crée un constat d'engagement indépendant avec des observations, des hôtes affectés et des preuves vides, ce qui évite la réutilisation accidentelle de la preuve d'un autre engagement.
- Preuves : téléversez ou collez jusqu'à quatre images PNG/JPEG ensemble, ajoutez des légendes et modifiez la légende/l'ordre dans l'espace de rédaction. Les images sont décodées, dépouillées de leurs métadonnées, redimensionnées à au plus 2000 × 2000 pixels et enregistrées au format PNG. Conservez les preuves médico-légales originales séparément si les octets ou métadonnées d'origine sont nécessaires.
- Révision : faites passer les constats complets de Draft/Changes Requested à Ready. Un réviseur assigné ou un administrateur, autre que l'auteur actuel, peut approuver ou demander des modifications. Les administrateurs assignent les réviseurs. Les modifications de texte, de preuves et de révisions restaurées annulent l'approbation. La file de révision, les commentaires, la liste de contrôle de préparation et l'historique des révisions facilitent la transmission.
- Rapports PDF : choisissez un engagement dans Reports, rédigez son résumé exécutif, sélectionnez/ordonnez les constats et enregistrez les paramètres. Les brouillons de PDF sont visiblement marqués. Seuls les administrateurs peuvent émettre un PDF final, et chaque constat sélectionné doit être approuvé et passer les contrôles de préparation. Chaque version émise stocke son PDF, un instantané de contenu explicite et un condensé SHA-256 ; les modifications ultérieures ne le régénèrent pas. La suppression de l'engagement parent supprime toujours ses rapports via le cycle de vie existant.
- Imports de scanners : prévisualisez un export, sélectionnez les constats, puis confirmez. Les imports n'exécutent jamais de scans ni ne contactent les cibles. L'empreinte côté serveur ignore les constats correspondants dans le même engagement ; tous les nouveaux enregistrements commencent en Draft et doivent être vérifiés par un opérateur.
| Famille de scanner/export | Export accepté |
|---|
| Burp Suite | Issues XML, y compris la DTD de schéma interne inerte |
| Nessus / Tenable | Nessus v2 XML (.nessus) |
| Nmap | XML ; les ports ouverts et leur sortie de script deviennent des observations informatives, et non des vulnérabilités déduites |
| OpenVAS / Greenbone | Rapport XML natif ou GMP get_reports_response |
| OWASP ZAP | Rapport JSON traditionnel avec sites et alertes |
| Nuclei | JSON Lines (-jsonl) |
| Qualys | XML de résultat de scan (structure SCAN/IP), et non le format distinct de l'API de détection d'hôtes |
| Semgrep / CodeQL et autres producteurs SARIF | Exécutions, règles et résultats SARIF JSON |
Les exports sont limités à 2 Mo et 500 constats par import, avec des limites de débit par utilisateur pour la prévisualisation et la confirmation. L'application accepte au maximum 10 000 constats au total et 500 pour un même engagement, toutes sources confondues (création manuelle, modèles et imports de scanners). La liste globale Findings charge 100 lignes par page, et les requêtes de constats d'engagement/rapport sont plafonnées par la même limite par engagement. Les formats inconnus échouent visiblement plutôt que d'être silencieusement traités comme un import réussi. Les sévérités des scanners sont des suggestions : examinez leur contexte avant approbation. Les URL référencées, le HTML et les images distantes intégrées ne sont ni récupérés ni exécutés.
Les rapports autorisent 1 à 100 constats, jusqu'à 100 images de preuve (5 Mo chacune, 20 Mo d'entrée au total), 500 pages et 25 Mo de sortie. L'émission est limitée à 50 versions par engagement et à 1 Go de PDF émis pour l'ensemble de l'application. La prévisualisation et l'émission ont des limites de débit par utilisateur, et un seul rendu PDF est admis à la fois par processus d'application. Les constats conservent au maximum 1000 révisions et 500 commentaires ; atteindre une limite échoue sans écraser l'historique. Les polices DejaVu et leur licence de redistribution sont incluses dans assets/fonts ; les déploiements doivent conserver ces ressources (le traçage de sortie de Next les inclut).