Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !
stride-gpt — Un outil de modélisation des menaces alimenté par l'IA qui utilise les modèles GPT d'OpenAI pour générer des modèles de menaces pour une application donnée basée sur la méthodologie STRIDE. | Kitploit
Un outil de modélisation des menaces alimenté par l'IA qui utilise les modèles GPT d'OpenAI pour générer des modèles de menaces pour une application donnée basée sur la méthodologie STRIDE.
STRIDE GPT est un outil de modélisation des menaces alimenté par l'IA qui exploite les grands modèles de langage (LLMs) pour générer des modèles de menaces et des arbres d'attaque pour une application donnée, basés sur la méthodologie STRIDE. Les utilisateurs fournissent des détails sur l'application, tels que le type d'application, les méthodes d'authentification, et si l'application est accessible via Internet ou traite des données sensibles. Le modèle génère ensuite sa sortie en fonction des informations fournies.
Si vous trouvez STRIDE GPT utile, envisagez de soutenir le projet :
⭐ Mettez une étoile au dépôt sur GitHub pour aider plus de personnes à découvrir l'outil
☕ Offrez-moi un café pour soutenir le développement et la maintenance continus
Fonctionnalités
Analyse agentique du code source : Pointez la CLI vers un code source et obtenez un modèle de menaces STRIDE autonome et approfondi — l'agent planifie, explore et synthétise les résultats à travers les sous-systèmes
CLI et REPL interactif : Expérience terminal complète avec complétion par tabulation, historique et progression en temps réel — aucun navigateur requis
Interface web Streamlit simple et conviviale
Génère des modèles de menaces basés sur la méthodologie STRIDE
Support de l'IA agentique : Modélisation des menaces spécialisée pour les systèmes d'IA agentique avec intégration de l'OWASP Top 10 pour les applications agentiques (ASI)
Support de l'IA générative : Modélisation des menaces pour les applications GenAI avec intégration de l'OWASP LLM Top 10
Correspondance MITRE ATT&CK et ATLAS : Les menaces sont annotées avec des identifiants standardisés de techniques adverses (MITRE ATT&CK Enterprise pour les attaques d'infrastructure traditionnelles, ATLAS pour les attaques spécifiques au ML/LLM) — présentées sous forme de colonnes en markdown, de pillules liées en HTML et de propriétés mitre_attack en SARIF
Détection de motifs architecturaux : Détecte automatiquement les pipelines RAG, les systèmes multi-agents, les environnements d'exécution de code, les écosystèmes d'outils, etc. à partir des descriptions d'application (inspiré par CSA MAESTRO)
Éditeur de diagrammes draw.io intégré : Créez et modifiez des diagrammes d'architecture directement dans STRIDE-GPT à l'aide de l'éditeur intégré diagrams.net — aucun outil externe nécessaire. Les diagrammes sont analysés en XML pour extraire les composants, les connexions et les limites de confiance, fournissant un contexte bien plus riche pour la génération de modèles de menaces que la simple analyse d'image. Le flux de travail existant pour le téléchargement d'images reste inchangé. Par défaut, l'éditeur se charge depuis embed.diagrams.net hébergé ; pour les déploiements auto-hébergés ou isolés, pointez-le vers votre propre draw.io via la variable d'environnement STRIDE_GPT_DRAWIO_URL.
Déploiement en entreprise
Vous souhaitez personnaliser STRIDE-GPT pour votre organisation ? Consultez notre Guide d'opérationnalisation complet pour apprendre comment :
🎯 Injecter des contrôles et des normes de sécurité organisationnels
📋 Personnaliser les modèles de menaces selon vos exigences de conformité
🔧 Forker et déployer STRIDE-GPT en interne
📊 Obtenir des modèles de menaces contextualisés et exploitables, spécifiques à votre environnement
Le guide comprend des instructions étape par étape, des exemples de code et des modèles de déploiement pour les organisations souhaitant étendre la modélisation des menaces alimentée par l'IA à travers leurs équipes.
Conférence à l'Open Security Summit
En janvier 2024, j'ai donné une conférence sur STRIDE GPT à l'Open Security Summit. Au cours de cette conférence, j'ai discuté de la genèse du projet, de ses fonctionnalités principales, des mises à jour récentes et de quelques plans futurs. Vous pouvez regarder la présentation complète ci-dessous :
Cette vidéo est une excellente ressource pour toute personne intéressée par la compréhension du fonctionnement de STRIDE GPT et de la manière dont il peut être utilisé pour améliorer la modélisation des menaces.
Journal des modifications
Version 0.19 (dernière)
Option --version (#161) : stride-gpt --version affiche désormais la version installée et se termine, et la bannière TUI interactive affiche la version en cours afin que vous puissiez confirmer en un coup d'œil ce que vous utilisez.
Gestion des dépendances consolidée sur uv (closes #155) : uv.lock est désormais la source unique de vérité pour toutes les dépendances. Les fichiers requirements.txt redondants sont retirés ; l'image Docker de l'interface et le workflow de scan de sécurité installent à partir de uv.lock via uv export, de sorte que ce qui est livré et ce qui est scanné ne peut plus dériver de ce qui est verrouillé. Aucun changement pour les utilisateurs de pip install stride-gpt.
Documentation : Ajout d'un exemple de sortie markdown de modèle de menaces (#151) et d'une aide-mémoire du REPL interactif (#163) dans le README.
Version 0.18
Éditeur de diagrammes draw.io intégré (#132, #138) : L'onglet Modèle de menaces de Streamlit intègre désormais l'éditeur diagrams.net afin que vous puissiez esquisser un diagramme d'architecture dans l'application ; lors de la sauvegarde, le XML du diagramme est analysé (composants, connexions, limites de confiance) et intégré dans l'invite du modèle de menaces. L'analyse GitHub, le téléchargement d'images, l'éditeur de diagrammes et un générateur guidé assisté par IA sont unifiés dans une seule section à onglets "décrivez votre application" sur un canevas de description unique, de sorte que les entrées optionnelles ne concurrencent plus le champ de description principal. Le générateur guidé appelle désormais le modèle sélectionné pour rédiger une description et suggérer des détails manquants pertinents pour la sécurité, remplaçant le modèle statique précédent et les vérifications de couverture. Pour les déploiements auto-hébergés ou isolés, l'hôte de l'éditeur est configurable via STRIDE_GPT_DRAWIO_URL (par défaut embed.diagrams.net), l'origine postMessage de l'iframe lui est limitée, et le XML de diagramme non fiable est analysé avec defusedxml.
Prise en charge du fournisseur DeepSeek (closes #133) : DeepSeek est désormais un fournisseur de modèles de première classe dans l'assistant de configuration CLI et l'interface Streamlit, offrant deepseek-v4-pro et deepseek-v4-flash. Les appels sont acheminés via l'intégration native deepseek/ de LiteLLM (point de terminaison hébergé, pas d'URL de base personnalisée nécessaire) ; définissez votre clé via .
Version 0.17
Intégration MITRE ATT&CK et ATLAS (closes #36) : Les menaces émises par /analyze et /quick peuvent désormais comporter des identifiants standardisés de techniques adverses provenant de MITRE ATT&CK Enterprise (v17.1) et MITRE ATLAS (2026.05). Deux nouvelles fiches de référence à divulgation progressive (mitre_enterprise, mitre_atlas) demandent à l'agent d'utiliser uniquement les identifiants et noms catalogués, éliminant les hallucinations d'identifiants. Les fiches sont régénérées à partir des STIX/YAML en amont via scripts/refresh_mitre_cards.py plutôt que d'être écrites à partir de la mémoire du modèle. Les techniques s'affichent sous forme de colonne MITRE ATT&CK dans les tableaux markdown, de pillules cliquables teintées de ciel en HTML, et de tableaux properties.mitre_attack en SARIF.
Rapport HTML compagnon : /analyze et /quick émettent désormais un rapport HTML autonome consultable dans un navigateur aux côtés des sorties markdown / JSON / SARIF, adapté au partage avec les parties prenantes.
Anthropic Claude Opus 4.8 : Ajout du support pour claude-opus-4-8, le dernier modèle de pointe d'Anthropic, aux côtés de l'Opus 4.7 existant. Chacun peut être sélectionné comme modèle architecte ou travailleur.
Version 0.16
CLI autonome : Première version de STRIDE-GPT en tant que CLI pip install stride-gpt, séparée de l'interface web Streamlit héritée. Deux commandes principales : /analyze (analyse agentique autonome du code source avec un planificateur, des boucles d'agents utilisant des outils par sous-système, et une passe de synthèse transversale) et /quick (modèle de menaces unique à partir d'une description d'application écrite).
Fiches de référence à divulgation progressive : Les fiches genai (OWASP LLM Top 10), agentic (OWASP ASI Top 10) et insider_threat s'auto-décrivent via un frontmatter YAML ; l'agent les découvre via list_references et récupère les corps via load_reference.
Routage de modèles à deux niveaux : Répartition architecte + modèle de travail pour une analyse rentable, avec des modèles de classe frontière réservés à la planification et à la synthèse.
REPL interactif : Expérience terminal complète avec complétion par tabulation, historique, progression en temps réel et ligne de statut.
Sortie multi-format : Markdown, JSON et SARIF (importable dans GitHub, GitLab, Azure DevOps, IDE).
Correctif 0.16.1 : Augmentation du niveau de log de LiteLLM à ERROR dans stride_gpt/__init__.py afin que les avertissements de préchargement Bedrock/SageMaker n'apparaissent pas sur les nouvelles installations dépourvues de .
Cliquez pour voir les notes de version des versions antérieures (0.15 et plus anciennes).
Version 0.15
Support de l'IA agentique : Ajout d'un support complet pour la modélisation des menaces des systèmes d'IA agentique avec intégration de l'OWASP Top 10 pour les applications agentiques (ASI01-ASI10). Sélectionnez simplement "Application IA agentique" et décrivez votre système - le LLM détecte automatiquement les motifs architecturaux et applique les catégories de menaces pertinentes. Chaque risque ASI est mappé à la catégorie STRIDE appropriée pour une analyse cohérente des menaces.
Support de l'IA générative : Ajout du support pour la modélisation des menaces des applications GenAI avec intégration de l'OWASP LLM Top 10 (LLM01-LLM10). Sélectionnez "Application IA générative" et décrivez votre système pour recevoir une analyse des menaces spécifiques aux LLM adaptée. Les applications d'IA agentique incluent à la fois les catégories de risques LLM et ASI pour une couverture complète.
Détection de motifs architecturaux inspirée de MAESTRO : Analyse des menaces agentique améliorée avec détection automatique des motifs architecturaux à partir des descriptions d'application, inspirée par le cadre MAESTRO de la Cloud Security Alliance. Le LLM identifie et applique désormais des menaces spécifiques aux motifs pour :
Systèmes multi-agents : Usurpation d'agent, falsification de messages inter-agents, compromissions en cascade
Environnements d'exécution de code : Évasion de bac à sable, sortie de conteneur, génération de code malveillant
Écosystèmes d'outils/MCP : Fournisseurs d'outils malveillants, attaques de la chaîne d'approvisionnement, vulnérabilités de député confus
Mémoire persistante : Empoisonnement de la mémoire, fuite inter-sessions, manipulation d'état
Opérations autonomes : Persistance d'agent malveillant, contournement de la supervision humaine, boucles incontrôlées
Analyse des menaces inter-couches : Les modèles de menaces incluent désormais des chaînes d'attaque inter-composants qui montrent comment une compromission dans une couche architecturale peut permettre des attaques sur d'autres (par exemple, empoisonnement RAG → détournement des objectifs de l'agent → mauvais usage des outils → exfiltration de données).
- **Prise en charge de la série GPT-5** : Ajout d'un support complet pour les modèles de la série GPT-5 d'OpenAI (gpt-5, gpt-5-mini, gpt-5-nano) dans toutes les fonctionnalités de modélisation des menaces. Ces modèles de raisonnement avancés offrent des capacités analytiques améliorées avec une allocation appropriée des jetons pour le raisonnement interne et la génération de sortie.
- **Intégration d'Anthropic Claude 4** : Ajout du support pour les derniers modèles Claude 4 d'Anthropic (claude-opus-4-1-20250805, claude-opus-4-20250514 et claude-sonnet-4-20250514) avec des capacités améliorées.
- **Prise en charge de GitHub Enterprise** : Ajout du support pour les dépôts GitHub Enterprise. L'outil détecte et configure désormais automatiquement le point de terminaison API approprié en fonction de l'URL du dépôt, ce qui facilite l'analyse des dépôts hébergés sur des instances privées de GitHub Enterprise. (Merci à @danielpops pour la contribution !)
- **Intégration améliorée des modèles de raisonnement** : Mise à jour de la gestion des paramètres pour utiliser `max_completion_tokens` au lieu de `max_tokens` (obsolète) pour GPT-5 et les autres modèles de raisonnement d'OpenAI, garantissant la compatibilité avec les dernières exigences de l'API OpenAI.
- **Affichage amélioré de l'évaluation DREAD** : Suppression des limites de troncature dans les descriptions de scénarios d'évaluation DREAD, permettant aux utilisateurs de visualiser les scénarios de menace complets dans le tableau d'évaluation des risques au lieu de versions abrégées avec "...".
- **Mises à jour de sécurité** : Mise à jour des dépendances pour corriger les vulnérabilités de sécurité identifiées par Snyk, y compris les mises à jour de anyio, zipp, tornado, requests et urllib3.
- **Mises à jour des modèles Mistral** : Ajout du support pour les derniers modèles Mistral, notamment Magistral Medium/Small (modèles de raisonnement), Mistral Medium et Ministral 8B.
- **Mises à jour des modèles Groq** : Mise à jour de la sélection des modèles Groq avec les modèles OpenAI GPT-OSS (120B, 20B), conservation de Llama 3.3 70B et 3.1 8B, maintien de DeepSeek R1, et ajout de Moonshot Kimi K2 et Qwen3 32B.
- **Mise à jour Google Gemini 2.5 GA** : Mise à jour vers les versions de disponibilité générale des modèles Gemini 2.5 (Pro, Flash, Flash Lite) en remplacement des versions préliminaires précédentes.
- **Soutenir le projet** : Ajout d'un bouton « Offrez-moi un café » dans la barre latérale pour permettre aux utilisateurs de soutenir le développement et la maintenance continus de STRIDE GPT.
Version 0.13
Nouveaux modèles OpenAI : Ajout du support pour les derniers modèles d'OpenAI : gpt-4.1, o3 et o4-mini tout en conservant le support pour o3-mini. Ces modèles de raisonnement offrent des capacités d'analyse détaillées.
Migration vers le nouveau SDK Google GenAI : Migration complète vers le nouveau SDK Google GenAI, supprimant toute dépendance à l'ancienne bibliothèque Google Generative AI. Refonte de l'intégration des modèles Gemini (Google AI) dans tous les modules pour une meilleure cohérence et performance.
Support amélioré des modèles de raisonnement : Extension du cadre de raisonnement pour fonctionner avec tous les modèles de raisonnement d'OpenAI (o1, o3, o3-mini, o4-mini) dans toutes les fonctionnalités de modélisation des menaces, y compris la génération de modèles de menaces, les arbres d'attaque, les mesures d'atténuation et les évaluations DREAD.
Augmentation des limites de jetons : Mise à jour des limites de jetons pour les nouveaux modèles afin de tirer parti de leurs contextes étendus, en particulier pour gpt-4.1 qui prend en charge 1 million de jetons et o4-mini qui prend en charge 200 000 jetons.
Support multimodal amélioré : Le téléchargement et l'analyse d'images fonctionnent désormais avec davantage de modèles, y compris Gemini 2.5, Claude 3 et Claude 4. Extension du support pour l'analyse de divers formats d'images sur tous les modèles capables de vision.
Mise à jour vers les derniers modèles Preview Gemini : Transition vers l'utilisation des dernières versions des modèles preview Gemini pour des performances et capacités améliorées.
Version 0.12
Intégration de Claude 3.7 : Ajout d'un support complet pour les modèles Claude 3.7 d'Anthropic dans toutes les fonctionnalités de modélisation des menaces, y compris le « mode réflexion » innovant qui fournit un raisonnement plus détaillé lors de l'analyse.
Analyse améliorée des dépôts GitHub : Amélioration significative de la fonction d'analyse des dépôts GitHub avec sélection intelligente des fichiers, meilleur support des langages de programmation et suivi de la progression pendant l'analyse.
Support de l'aperçu GPT-4.5 : Ajout du support pour le modèle d'aperçu GPT-4.5 d'OpenAI avec une meilleure sélection des modèles et des descriptions améliorées.
Optimisations des performances : Amélioration des performances globales de l'application avec un meilleur suivi de l'utilisation des jetons et des systèmes d'avertissement pour approcher les limites de jetons.
Version 0.11
Prise en charge du serveur LM Studio : Ajout du support pour l'utilisation du serveur LM Studio en tant que fournisseur de modèles, permettant aux utilisateurs d'exécuter leurs propres LLM locaux avec des points de terminaison compatibles avec l'API OpenAI.
Prise en charge des arbres d'attaque Google Gemini : Ajout du support pour la génération d'arbres d'attaque à l'aide des modèles Google Gemini, élargissant les options disponibles pour les utilisateurs.
Prise en charge de nouveaux modèles : Ajout du support pour les modèles de raisonnement (o1 et o3-mini d'OpenAI, DeepSeek R1 via l'API Groq) et du modèle Google Gemini 2.0 Flash récemment publié pour une inférence plus rapide.
Génération améliorée des arbres d'attaque : Amélioration de la génération des arbres d'attaque avec un parsing JSON robuste et une conversion en diagrammes Mermaid, rendant la sortie plus fiable et visuellement attrayante.
Découverte dynamique des modèles : Ajout de la découverte automatique des modèles pour le serveur LM Studio, permettant aux utilisateurs de sélectionner parmi les modèles disponibles dans leurs instances locales.
Amélioration de la génération de modèles de menaces : Amélioration des directives et des invites pour la génération de modèles de menaces afin de produire des résultats plus complets et exploitables.
Prise en charge des sorties structurées : Amélioration de la gestion des sorties JSON pour tous les fournisseurs de modèles afin de garantir une génération fiable des modèles de menaces et des évaluations DREAD.
Améliorations de l'interface utilisateur : Mise à jour de l'interface utilisateur pour intégrer les nouvelles configurations de modèles et amélioration des messages d'avertissement concernant les limitations des LLM locaux.
Version 0.10
Analyse des dépôts GitHub : STRIDE GPT prend désormais en charge l'analyse automatique des dépôts GitHub. Les utilisateurs peuvent fournir une URL de dépôt GitHub, et l'outil analysera le README et les fichiers clés pour générer un modèle de menaces plus complet.
Prise en charge des variables d'environnement : Ajout du support pour le chargement des clés API et d'autres configurations à partir des variables d'environnement, améliorant la sécurité et la facilité de déploiement.
Amélioration de la gestion des erreurs : Amélioration de la gestion des erreurs et des mécanismes de nouvelle tentative pour les appels API, améliorant la fiabilité.
Améliorations de l'interface utilisateur : Mise à jour de l'interface utilisateur pour intégrer les nouvelles fonctionnalités et améliorer l'expérience utilisateur globale.
Version 0.9
Points forts de la version :
Client Mistral v1.0 : STRIDE GPT utilise désormais la version 1.0 du client Mistral, qui résout les changements cassants introduits dans la dernière version de l'API Mistral. Cela garantit que les utilisateurs de STRIDE GPT peuvent continuer à utiliser l'API Mistral pour les tâches de modélisation des menaces.
Version 0.8.1
Cette version ajoute la prise en charge des modèles suivants :
GPT4o mini : J'ai ajouté le support du modèle GPT4o mini récemment publié par OpenAI. GPT4o mini est un petit modèle rentable qui fournit tout de même des réponses de haute qualité pour les tâches de modélisation des menaces.
Gemini 1.5 Pro (stable) : Les utilisateurs peuvent désormais choisir entre les versions stable ou preview du modèle Gemini 1.5 Pro.
Version 0.8
Points forts de la version :
Score de risque DREAD : STRIDE GPT prend désormais en charge le score de risque DREAD, permettant aux utilisateurs d'attribuer des scores de risque aux menaces identifiées sur la base du modèle DREAD. Cette fonctionnalité fournit une évaluation des menaces plus complète et aide à prioriser les efforts d'atténuation.
Cas de test Gherkin : Les utilisateurs peuvent désormais générer des cas de test Gherkin basés sur les menaces identifiées. Cette fonctionnalité aide à combler le fossé entre la modélisation des menaces et les tests, garantissant que les considérations de sécurité sont intégrées dans le processus de test.
Améliorations de l'interface utilisateur : J'ai rafraîchi l'interface utilisateur pour la rendre plus facile à naviguer et à interagir avec l'application et ses fonctionnalités.
Version 0.7
Points forts de la version :
Modélisation des menaces multimodale : STRIDE GPT prend désormais en charge la modélisation des menaces multimodale à l'aide des modèles GPT-4o et GPT-4-Turbo d'OpenAI. Les utilisateurs peuvent fournir une image d'un diagramme d'architecture, d'un organigramme ou d'autres représentations visuelles de leur application pour améliorer le processus de modélisation des menaces.
Intégration Google AI : J'ai ajouté le support de Gemini 1.5 Pro via l'API Google AI. Veuillez noter que Gemini ne génère pas systématiquement une sortie JSON, vous devrez donc peut-être réessayer certaines demandes. De plus, les arbres d'attaque ne peuvent pas être générés à l'aide des modèles Google AI en raison des restrictions de sécurité de Google.
Refonte du code : J'ai refactoré certaines parties du code pour améliorer la maintenabilité et la lisibilité. Cela devrait faciliter l'ajout de nouvelles fonctionnalités et améliorations dans les futures versions.
Corrections de bogues : Corrections de bogues mineurs et améliorations de la gestion des erreurs.
Version 0.6
Points forts de la version :
Intégration de l'API Mistral : Les utilisateurs peuvent désormais choisir d'utiliser les LLM fournis par Mistral AI pour générer des modèles de menaces, des arbres d'attaque et des suggestions d'atténuation. Cela offre une alternative aux modèles GPT d'OpenAI, offrant une plus grande flexibilité et de choix pour les utilisateurs.
Invites affinées : Avec davantage de personnes utilisant STRIDE GPT pour le travail, j'ai mis à jour les modèles d'invite de modélisation des menaces pour encourager les LLM à générer des résultats plus complets. Les utilisateurs devraient désormais voir plusieurs menaces identifiées dans chaque catégorie STRIDE.
Feuille de route publique : J'ai créé une feuille de route publique pour offrir une visibilité sur les fonctionnalités et améliorations à venir.
Améliorations de l'interface utilisateur : J'ai apporté quelques mises à jour mineures à l'interface utilisateur pour intégrer la nouvelle intégration de l'API Mistral et améliorer l'expérience utilisateur globale.
Version 0.5
Points forts de la version :
Image de conteneur Docker : Pour faciliter le déploiement de STRIDE GPT sur les clouds publics et privés, l'outil est désormais disponible en tant qu'image de conteneur Docker sur Docker Hub.
Version 0.4
Points forts de la version :
Intégration des nouveaux modèles GPT : L'application prend désormais en charge les derniers modèles "gpt-4-1106-preview" et "gpt-3.5-turbo-1106", offrant des capacités avancées et des réponses plus précises pour la modélisation des menaces et la génération d'arbres d'attaque.
Appels API directs à OpenAI : STRIDE GPT effectue désormais des appels directs à l'API OpenAI afin de profiter du mode JSON récemment introduit. Cela devrait réduire considérablement la probabilité d'erreurs de syntaxe lors de la génération de modèles de menaces.
Génération affinée des arbres d'attaque : Le processus de génération des arbres d'attaque a été repensé pour être plus fiable, minimisant les erreurs de syntaxe lors de la génération de diagrammes Mermaid et améliorant la qualité globale des visualisations.
Nouveau logo et nouvelle palette de couleurs : Une palette de couleurs rafraîchie et un nouveau logo (généré par DALL·E 3).
Corrections de bogues et améliorations des performances : J'ai apporté un petit nombre de mises à jour supplémentaires pour corriger les bogues existants et optimiser l'application pour de meilleures performances, garantissant une expérience utilisateur plus fluide et plus efficace.
Version 0.3
Points forts de la version :
Atténuations des menaces : STRIDE GPT peut désormais suggérer des atténuations potentielles pour les menaces identifiées lors de la phase de modélisation des menaces. Cela aide les utilisateurs à développer des stratégies pour prévenir ou minimiser l'impact des menaces identifiées.
Sortie téléchargeable : Les utilisateurs peuvent désormais télécharger le modèle de menaces, l'arbre d'attaque et les atténuations générés sous forme de fichiers Markdown directement depuis l'application. Cela facilite le partage et la documentation des résultats générés.
Amélioration de l'interface utilisateur : J'ai encore affiné l'interface utilisateur pour offrir une expérience utilisateur plus fluide et intuitive. La disposition de l'application a été optimisée pour une meilleure lisibilité et convivialité.
Modèles GPT mis à jour : STRIDE GPT prend désormais en charge les dernières versions 0613 des modèles GPT-3.5-turbo et GPT-4. Ces modèles mis à jour offrent des performances améliorées et un meilleur contrôle sur la sortie générée.
Corrections de bogues et améliorations des performances : J'ai corrigé plusieurs bogues et apporté des améliorations de performances pour garantir une application plus stable et réactive.
Version 0.2
Points forts de la version :
Génération d'arbres d'attaque : En plus de générer des modèles de menaces, STRIDE GPT peut désormais générer des arbres d'attaque pour vos applications en fonction des détails fournis. Cela aide les utilisateurs à mieux comprendre les chemins d'attaque potentiels pour leurs applications.
Visualisation des arbres d'attaque : Il s'agit d'une fonctionnalité expérimentale qui permet aux utilisateurs de visualiser l'arbre d'attaque généré directement dans l'application à l'aide de Mermaid.js. Cela offre une expérience plus interactive au sein de l'interface STRIDE GPT.
Prise en charge du modèle GPT-4 : STRIDE GPT prend désormais en charge l'utilisation du modèle GPT-4 d'OpenAI, à condition que l'utilisateur ait accès à l'API GPT-4. Cela permet aux utilisateurs de tirer parti des dernières avancées de la technologie GPT pour générer des modèles de menaces et des arbres d'attaque plus précis et complets.
Amélioration de la disposition et de l'organisation : J'ai réorganisé la disposition de l'application pour la rendre plus facile à naviguer et à utiliser. Les sections clés, telles que le modèle de menaces et l'arbre d'attaque, sont désormais organisées en sections pliables pour une expérience utilisateur plus propre et plus intuitive.
Version 0.1
Première publication de l'application.
Installation
Option 1 : pip (CLI uniquement)```bash
pip install stride-gpt
root@kitploit:~
Ceci installe la commande `stride-gpt`. La CLI et l'interface web Streamlit sont désormais des produits distincts — `pip install stride-gpt` vous donne la CLI légère sans empreinte Streamlit. Pour exécuter l'interface web à partir des sources, voir l'Option 2 ci-dessous.
### Option 2 : À partir des sources
1. Clonez le dépôt :
```bash
git clone https://github.com/mrwadams/stride-gpt.git
cd stride-gpt
```
2. Installez avec [uv](https://docs.astral.sh/uv/) (recommandé — `uv.lock` est la source unique de vérité pour les dépendances) : ```bash
# CLI plus the Streamlit web UI deps
uv sync
Ou installez simplement la CLI avec pip : ```bash
pip install -e .
Modifiez .env pour ajouter vos clés API — ou configurez-les plus tard en exécutant stride-gpt et en utilisant la commande /config dans le REPL interactif, ou via l'interface Streamlit.
Option 3: Docker (web UI)
L'interface web Streamlit est livrée sous forme d'image Docker :```bash
docker pull mrwadams/stridegpt:latest
root@kitploit:~
Pour la CLI, utilisez `pip install stride-gpt` — il n'y a pas d'image CLI séparée. Si vous avez besoin d'une CLI isolée, créez la vôtre à partir d'une image de base Python minimale.
## Organisation du dépôt
STRIDE-GPT est organisé comme un petit monorepo : une bibliothèque Python partagée, une ou plusieurs applications qui la consomment.```
stride-gpt/
├── stride_gpt/ # shared library + Python CLI (core, agent loop, prompts, schemas, models)
├── apps/
│ └── web/ # Streamlit web UI
├── tests/ # pytest suite
└── pyproject.toml # single project file; web UI deps live in the `web` dependency-group
Le répertoire apps/ est l'emplacement pour des frontends supplémentaires déployables — par exemple, un futur CLI Node/TypeScript résiderait aux côtés de apps/web/. Le CLI Python lui-même reste dans stride_gpt/cli.py car il est étroitement lié à la bibliothèque partagée.
Utilisation
CLI
Analyse agentique de la base de code — l'agent explore de manière autonome une base de code, planifie son analyse et produit un modèle de menace STRIDE :```bash
Analyze the current directory
stride-gpt analyze .
Specify a model and auto-approve the analysis plan
> Chaque analyse sauvegarde également automatiquement un compagnon JSON et HTML dans `~/.stride-gpt/reports/analyze/`, de sorte que la vue consultable dans le navigateur soit toujours à un clic, même lorsque vous exécutez sans `-o`.
> **Note sur le coût :** L'analyse agentique est approfondie — l'agent effectue de nombreux appels LLM et lit de nombreux fichiers en explorant. L'utilisation de jetons et le coût augmentent avec la taille du codebase et le modèle choisi, et une exécution complète sur un grand dépôt avec un modèle de pointe peut être coûteuse. Définissez des limites de dépenses dans le tableau de bord de votre fournisseur avant de lancer l'analyse, et envisagez des modèles plus rapides/moins chers pour les premiers passages.
**Mode rapide en un coup** — générer un modèle de menace à partir d'une description textuelle (comme l'interface Streamlit, mais dans le terminal) :```bash
# Read description from a file
stride-gpt quick -i app-description.txt
# Pipe from stdin
echo "A web API that processes payments..." | stride-gpt quick
REPL interactif — lancez une session interactive avec complétion par tabulation et historique :```bash
stride-gpt
root@kitploit:~
Dans le REPL, tapez `/help` pour voir les commandes et options disponibles. La version est affichée sous la bannière ASCII au démarrage. Consultez la [Aide-mémoire du REPL interactif](#aide-mémoire-du-repl-interactif) ci-dessous pour connaître la liste complète des commandes et raccourcis.
#### Aide-mémoire du REPL interactif
Lancez le REPL avec `stride-gpt` (sans arguments), puis utilisez ces commandes et raccourcis.
**Commandes** — tapez une commande slash à l'invite :
| Commande | Action |
|----------|--------|
| `/analyze [chemin]` | Analyser une base de code pour les menaces STRIDE (un chemin de répertoire simple fonctionne aussi) |
| `/quick` | Modèle de menace rapide à partir d'une description textuelle |
| `/reports` | Lister les rapports d'analyse précédents (`/reports <n>` en affiche un) |
| `/config` | Afficher ou modifier les paramètres (modèle, fournisseur, clés API) |
| `/help` | Afficher les commandes, options et exemples disponibles |
| `/quit` | Quitter (alias : `/exit`, `/q`) |
`/analyze`, `/quick` et `/reports` acceptent les options : `-o`/`--output <chemin>`, `-f`/`--format <markdown\|json\|sarif\|html>`, `-y`/`--yes`, et `-i`/`--input <chemin>` (`/quick`). Tapez `/help` pour la liste complète.
**Raccourcis clavier :**
| Touche | Action |
|--------|--------|
| `Tab` | Compléter les commandes slash et les chemins de fichiers |
| `↑` / `↓` | Parcourir l'historique des commandes |
| `→` / `Fin` | Accepter la suggestion d'historique grisée |
| `Ctrl+L` | Effacer l'écran et le défilement arrière |
| `Ctrl+C` / `Ctrl+D` | Quitter le REPL |
**Vérifiez la version installée :**```bash
stride-gpt --version # prints e.g. "stride-gpt 0.19.0" and exits
Drapeaux courants :
Chaque niveau accepte également --worker-api-key / --worker-api-base / --worker-max-tokens (et les équivalents --architect-*). Exécutez stride-gpt analyze --help ou stride-gpt quick --help pour la liste complète.
Intermédiaires structurés — lorsque -o <chemin> est utilisé, trois fichiers JSON frères sont écrits à côté du rapport afin que l'exécution puisse être auditée ou consommée par des outils en aval :
Le drapeau de format (-f) contrôle uniquement l'artefact du rapport ; les fichiers frères sont toujours en JSON. Les chemins de fichiers dans le manifeste et les résultats sont masqués (./… lorsqu'ils sont sous le répertoire de travail, ~/… lorsqu'ils sont sous $HOME) afin qu'un manifeste puisse être partagé en toute sécurité. L'archive automatique dans ~/.stride-gpt/reports/{analyze,quick}/ n'est pas affectée — les fichiers frères ne sont émis que lorsque vous passez -o.
Voir les rapports précédents :```bash
stride-gpt reports # List recent reports
stride-gpt reports 1 # View report #1
stride-gpt reports 1 -o r.json -f json # Export a report
root@kitploit:~
### Interface Web Streamlit
L'interface web est une application distincte de la CLI. Lancez-la avec :```bash
streamlit run apps/web/main.py
Ouvrez l'URL fournie dans votre navigateur et suivez les instructions à l'écran.
Docker```bash
docker run -p 8501:8501 --env-file .env mrwadams/stridegpt
root@kitploit:~
## Exemple de sortie
Chaque exécution de `stride-gpt analyze` et `stride-gpt quick` produit par défaut un rapport markdown (avec JSON, SARIF et une vue HTML autonome disponibles via `-f`). Le markdown regroupe les menaces par sous-système dans des tableaux STRIDE, ajoute une section transversale pour les menaces couvrant plusieurs composants, et se termine par un résumé de l'exécution. Les colonnes optionnelles (OWASP LLM/ASI, Catégorie Insider, MITRE ATT&CK) n'apparaissent que lorsqu'une exécution les remplit.
Ci-dessous se trouve le markdown d'une exécution contre une API de paiements fictive, afin que vous puissiez voir la forme de la sortie avant d'exécuter l'outil. Il s'agit d'un rendu réel du moteur de rapport, pas d'une maquette.
<details>
<summary>Exemple de modèle de menace en markdown (cliquer pour développer)</summary>````markdown
# STRIDE Threat Model: acme-payments-api
> Generated by STRIDE-GPT on 2026-07-16T09:42:00Z
## Overview
A Python FastAPI service that accepts card payments, stores customer profiles in PostgreSQL, and calls a third-party payment processor. Authentication is handled by JWT bearer tokens issued by an internal auth service; the API is internet-facing behind an API gateway.
## Data Flow Diagram
```mermaid
flowchart LR
Client[Client App] -->|HTTPS + JWT| Gateway[API Gateway]
Gateway --> API[Payments API]
API -->|SQL| DB[(PostgreSQL)]
API -->|HTTPS| Processor[Payment Processor]
Authentication & Authorization
Files Analyzed
app/auth/jwt.py
app/auth/dependencies.py
Threats
Threat Type
Scenario
Potential Impact
MITRE ATT&CK
Spoofing
An attacker forges a JWT using a weak or leaked signing secret to impersonate another customer.
Recommendations
Enforce role checks on every privileged route via a shared dependency, not per-handler logic.
Rotate and store the JWT signing secret in a managed secrets store rather than an env file.
Payments & Data Storage
Files Analyzed
app/payments/routes.py
app/db/models.py
Threats
Threat Type
Scenario
Potential Impact
MITRE ATT&CK
Information Disclosure
Full card numbers are logged in request debug logs when a payment fails.
PCI-DSS violation and exposure of cardholder data to anyone with log access.
Recommendations
Redact PANs before logging and route logs through a PCI-scoped sink.
Derive the charge amount from the server-side order record, never the request body.
Cross-Cutting Threats
Threat Type
Scenario
Potential Impact
MITRE ATT&CK
Affected Subsystems
Denial of Service
No rate limiting on the payment endpoint lets an attacker exhaust the processor quota and DB connections.
Legitimate payments fail during the attack; possible processor throttling.
T1499 (Endpoint Denial of Service)
Authentication & Authorization, Payments & Data Storage
Summary
Total threats identified: 5
Subsystems analyzed: 2
Cross-cutting threats: 1
LLM calls: 34
Tool calls: 58
Architect model: OpenAI API/gpt-5.4
Worker model: Anthropic API/claude-sonnet-4-6
root@kitploit:~
</details>
`stride-gpt quick` produit la même forme de tableau à partir d'une description écrite, condensée en un seul sous-système **Application** au lieu de résultats par sous-système.
## Bonnes pratiques de sécurité
STRIDE GPT est conçu pour un déploiement local et mono-utilisateur. Lors de l'utilisation de l'outil :
### Protection de vos clés API
**Vos clés API sont des informations d'identification sensibles qui peuvent entraîner des frais sur votre compte.**
✅ **À FAIRE :**
- Saisir les clés API via l'interface utilisateur (elles restent dans votre session de navigateur)
- Utiliser un fichier `.env` pour plus de commodité sur votre machine personnelle
- Définir des limites de dépenses dans le tableau de bord de votre fournisseur LLM
- Examiner régulièrement votre utilisation et vos coûts API
- Effacer la session lorsque vous utilisez un ordinateur partagé
❌ **À NE PAS FAIRE :**
- Commiter les fichiers `.env` dans le système de contrôle de version (déjà dans `.gitignore`)
- Partager des captures d'écran avec des clés API visibles
- Exécuter STRIDE GPT sur des systèmes non fiables ou compromis
- Partager vos clés API avec d'autres personnes
- Ignorer des frais API inattendus
### Considérations relatives à la confidentialité des données
Lorsque vous générez des modèles de menaces, STRIDE GPT envoie des données à votre fournisseur LLM choisi :
- Détails de l'application (type, méthodes d'authentification, architecture)
- Descriptions de l'architecture système
- Diagrammes/images d'architecture téléchargés
- Modèles de menaces et mesures d'atténuation générés
**Ce que cela signifie :**
- OpenAI, Anthropic, Google, etc. peuvent journaliser ces données conformément à leurs politiques de confidentialité
- Envisagez d'utiliser des détails génériques/fictifs pour les démonstrations
- Consultez les politiques de conservation des données et de confidentialité de votre fournisseur LLM
- Pour les systèmes sensibles, envisagez :
- L'utilisation de modèles locaux (LM Studio)
- L'utilisation de fournisseurs avec des garanties de confidentialité plus strictes
- La désinfection des descriptions système avant de les saisir
### Pour les déploiements en équipe/organisation
Si vous déployez STRIDE GPT pour plusieurs utilisateurs (pas le cas d'utilisation par défaut) :
- Ajoutez une authentification/autorisation (non inclus par défaut)
- Utilisez un service de gestion de secrets pour les clés API
- Déployez derrière un VPN ou un réseau interne
- Consultez le document [SECURITY.md](https://github.com/mrwadams/stride-gpt/blob/HEAD/SECURITY.md) pour des considérations supplémentaires
- Tenez compte des exigences de résidence des données et de conformité
- Mettez en œuvre des contrôles d'accès appropriés pour les modèles de menaces générés
### Sécurité des dépendances
Nous maintenons les dépendances et surveillons les vulnérabilités :
- Les dépendances sont mises à jour régulièrement via Dependabot
- Une analyse de sécurité automatisée est effectuée à chaque commit
- Les avis de sécurité sont suivis dans l'onglet Sécurité de GitHub
- Exécutez `pip-audit` pour vérifier les vulnérabilités connues localement
Voir [SECURITY.md](https://github.com/mrwadams/stride-gpt/blob/HEAD/SECURITY.md) pour des informations de sécurité complètes, y compris l'analyse de sécurité automatisée, le signalement des vulnérabilités et les pratiques de développement sécurisé.
### Signaler des problèmes de sécurité
Vous avez trouvé un problème de sécurité ? Veuillez le signaler de manière responsable :
- Créez un avis de sécurité via le [signalement privé de vulnérabilité](https://github.com/mrwadams/stride-gpt/security/advisories/new) de GitHub
- Ne publiez pas les problèmes de sécurité publiquement
- Nous accuserons réception sous 48 heures
- Les correctifs seront priorisés et publiés rapidement
## Contribuer
Les pull requests sont les bienvenues. Pour des modifications majeures, veuillez d'abord ouvrir une issue pour discuter de ce que vous souhaitez changer.
## Licence
[MIT](https://choosealicense.com/licenses/mit/)
Multimodal : Utilisez des diagrammes d'architecture, des organigrammes, etc. comme entrées pour la modélisation des menaces sur tous les modèles compatibles avec la vision.
Diagrammes de flux de données (DFD) : Générez des DFD à partir de votre description d'application (ou analysez une image DFD téléchargée), modifiez la source Mermaid en direct, et réinjectez le diagramme confirmé dans les invites du modèle de menaces et de l'arbre d'attaque en tant que modèle système faisant autorité. La CLI /analyze émet également un DFD au niveau du système avec ses résultats.
Génère des arbres d'attaque pour énumérer les chemins d'attaque possibles
Suggère des mesures d'atténuation possibles pour les menaces identifiées
Prend en charge l'évaluation des risques DREAD pour les menaces identifiées
Génère des cas de test Gherkin basés sur les menaces identifiées
Analyse de dépôt GitHub pour une modélisation complète des menaces (y compris le support GitHub Enterprise)
Plusieurs formats de sortie : Markdown, JSON, SARIF (importable dans GitHub, GitLab, Azure DevOps, IDE), et une vue HTML autonome pour le partage avec les parties prenantes.
Support des modèles de raisonnement avancés (séries OpenAI GPT-5.4/5.5, Anthropic Claude 4.6/4.8 avec Extended Thinking, Google Gemini 3, série Mistral Magistral)
Prise en charge complète des fournisseurs de LLM via LiteLLM : OpenAI, Anthropic, Google AI, Mistral, Groq, DeepSeek, plus hébergement local via LM Studio Server
Aucun stockage de données ; les détails de l'application ne sont pas sauvegardés
Disponible en tant qu'image de conteneur Docker pour un déploiement facile
Prise en charge des variables d'environnement pour une configuration sécurisée
DEEPSEEK_API_KEY
Prise en charge des diagrammes de flux de données (DFD) (closes #56) : Nouvel onglet "Diagramme de flux de données" dans l'interface Streamlit qui génère des DFD à partir de la description de l'application, analyse les images DFD téléchargées via des modèles capables de vision, et affiche un panneau source Mermaid éditable avec un aperçu en direct. Cochez "Utiliser ce DFD pour le modèle de menaces" pour stocker le diagramme confirmé dans l'état de la session et l'intégrer dans les invites ultérieures du modèle de menaces et de l'arbre d'attaque en tant que modèle système faisant autorité — fermant ainsi la boucle description → DFD → révision → modèle de menaces raffiné demandée par l'issue. L'agent /analyze de la CLI produit également un DFD au niveau du système après la synthèse, rendu sous forme de bloc Mermaid dans le rapport markdown, transporté dans le champ JSON data_flow_diagram, et affiché dans la vue HTML via un runtime Mermaid chargé depuis un CDN. La génération de DFD est encapsulée de sorte qu'un mauvais diagramme ne fasse jamais échouer un bon rapport.
Gestion élégante des erreurs d'analyse de dépôt GitHub (closes #92) : L'interface Streamlit intercepte désormais les échecs de l'API GitHub lors de l'analyse du dépôt au lieu d'afficher une trace de pile brute, avec des messages exploitables pour les erreurs 404 (y compris le périmètre des PAT à granularité fine, qui provoque des 404 même sur les dépôts publics), 401, 403/limite de débit et les erreurs réseau. Les URL de dépôt sont normalisées (barre oblique finale et suffixe .git supprimés) avant l'analyse afin que .../repo/ et .../repo.git ne provoquent plus de 404 intempestifs.
Intermédiaires structurés à côté des rapports (closes #122) : Lorsque -o <chemin> est passé à /analyze ou /quick, des fichiers JSON frères sont écrits à côté du rapport — <racine>.plan.json (le AnalysisPlan), <racine>.findings.json (résultats des sous-systèmes, menaces transversales et diagramme de flux de données), et <racine>.run.json (un RunManifest enregistrant les modèles, le hachage de configuration, la version, le timing, les fiches de référence effectivement chargées, et un run_summary indiquant si l'exécution s'est terminée ou si un plafond d'appels l'a tronquée). Les manifestes excluent les clés API et les points de terminaison et masquent les chemins de système de fichiers, ils sont donc sûrs à valider ou à joindre à un ticket. Le flag de format -f ne régit que l'artefact du rapport ; les fichiers frères sont toujours en JSON.
Récupération des identifiants MITRE ATT&CK séparés par des virgules (closes #134) : Lorsqu'un modèle de travail renvoie MITRE_ATTACK sous forme de chaîne séparée par des virgules (par exemple "T1190, T1059, AML.T0053") au lieu de la forme de liste canonique, les identifiants de technique sont désormais récupérés plutôt que supprimés. Auparavant, les rapports markdown/HTML affichaient la colonne "MITRE ATT&CK" mais laissaient chaque cellule vide, et l'export SARIF perdait complètement les identifiants. Tous les moteurs de rendu (markdown, pillules HTML, SARIF) et la vérification de visibilité des colonnes passent désormais par un normalisateur unique, et le texte libre qui n'est pas un identifiant de technique est filtré afin que la colonne ne soit jamais remplie de faux positifs.
Correctif 0.18.1 (closes #159) : Correction des appels à LM Studio qui échouaient avec The api_key client option must be set lorsqu'aucune clé de fournisseur cloud n'était présente dans l'environnement. LM Studio est acheminé via le préfixe openai/ de LiteLLM, et le SDK OpenAI refuse de construire un client sans clé même lorsque api_base pointe vers localhost, donc la CLI transmet désormais un espace réservé pour les fournisseurs qui ne s'authentifient pas. Parallèlement, l'analyse d'environnement de dernier recours du niveau de travail ne s'applique plus à ces fournisseurs : une clé ANTHROPIC_API_KEY ou OPENAI_API_KEY configurée était auparavant envoyée à l'hôte nommé par api_base, ce qui masquait ce bug et mettait une vraie clé sur le fil. Si vous utilisez LM Studio et avez une telle clé définie, elle n'est plus transmise à votre point de terminaison.
Consolidation des images de l'interface : La configuration Docker à double espace de noms (mrwadams/stridegpt-ui) a disparu ; l'interface web Streamlit réside désormais uniquement sur mrwadams/stridegpt. Les utilisateurs de la CLI doivent pip install stride-gpt plutôt que de tirer un conteneur.
Hygiène des dépendances : Suppression du paquet mistralai inutilisé (l'accès à Mistral passe déjà par LiteLLM). Actualisation de la base python:3.12-slim pour l'image de l'interface et suppression de curl, éliminant 21 alertes CVE de niveau moyen/élevé dans les PR #113–#115.
Nettoyage de la qualité du code : Suppression des alertes CodeQL de note (imports inutilisés, except nu, code mort) (#116).
botocore
Suggestions d'amélioration renforcées : Pour les applications agentiques, les suggestions d'amélioration demandent désormais des détails architecturaux spécifiques tels que le cadre de l'agent, les protocoles de communication inter-agents, les mécanismes de bac à sable et les implémentations de disjoncteur.
Mises à jour des modèles OpenAI : Mise à jour vers les modèles de la série GPT-5.2 (gpt-5.2, gpt-5.2-pro, gpt-5-mini, gpt-5-nano, gpt-5, gpt-4.1). Suppression des modèles obsolètes (gpt-4o, gpt-4o-mini, o3, o3-mini, o4-mini).
Modèles Anthropic Claude 4.5 : Mise à jour vers la série Claude 4.5 (claude-sonnet-4-5, claude-haiku-4-5, claude-opus-4-5). Ajout de la case à cocher "Activer la pensée étendue" pour des capacités de raisonnement améliorées sur tout modèle Claude. Augmentation des tokens max à 32k (standard) et 48k (mode pensée).
Aperçu Google Gemini 3 : Ajout des modèles d'aperçu Gemini 3 (gemini-3-pro-preview, gemini-3-flash-preview) aux côtés des modèles Gemini 2.5. Support du mode pensée étendue pour les modèles Gemini 3.
Mises à jour des modèles Mistral : Mise à jour vers les derniers modèles Mistral versionnés, y compris Mistral Large 3, Medium 3.1, Small 3.2, Ministral 3 (8B/14B) et Magistral 1.2 (Moyen/Petit).
Nouveau logo du projet : Image de marque rafraîchie avec un design minimaliste plus épuré de bouclier + réseau neuronal.
Correction de bug : Correction d'un problème où la sortie du modèle de menaces disparaissait après avoir cliqué sur le bouton de téléchargement.
Version 0.14.1
Infrastructure de sécurité : Ajout d'une analyse de sécurité automatisée complète et d'un durcissement, comprenant :
Workflows GitHub Actions pour Bandit (sécurité Python), CodeQL (détection de vulnérabilités), pip-audit (analyse des dépendances), Safety (vulnérabilités des paquets), Gitleaks (détection de secrets) et Trivy (analyse d'images Docker)
SECURITY.md avec processus de signalement des vulnérabilités (SLA d'accusé de réception de 48 heures) et bonnes pratiques de sécurité
Configuration Docker renforcée avec durcissement de la sécurité, limites de ressources et fichier docker-compose.yml prêt pour la production
Configuration Dependabot pour des mises à jour automatiques hebdomadaires des dépendances
Guide de gestion des secrets prêt pour la production (secrets Docker Swarm, gestionnaires de secrets cloud)
Guide d'opérationnalisation pour l'entreprise : Ajout d'un guide complet pour personnaliser STRIDE-GPT avec le contexte organisationnel, y compris les contrôles de sécurité, les exigences de conformité, les piles technologiques approuvées et les modèles de déploiement pour une utilisation en entreprise.
Version 0.14
Drapeau
Description
--version
Affiche la version installée (stride-gpt <version>) et quitte
-o, --output
Enregistre le rapport dans un fichier
-f, --format
Format de sortie : markdown (par défaut), json, sarif, html
-i, --input
Lit la description de l'application depuis un fichier (quick uniquement)
-y, --yes
Approuve automatiquement le plan d'analyse (analyze uniquement)
--worker-model
Modèle de niveau par défaut traitant la majorité des appels (ex. anthropic/claude-sonnet-4-6). Utilise la configuration sauvegardée si omis.
--architect-model
Modèle plus puissant pour la planification/synthèse (ex. openai/gpt-5.4). Utilise la configuration sauvegardée si omis.
--no-architect
Ignore le niveau architecte pour cette exécution ; le worker gère tous les appels.
--app-type
Remplace le type d'application détecté par le planificateur (analyze uniquement) : auto (par défaut), web, genai, agentic.
--max-llm-calls
Plafonne le nombre total d'appels LLM sur les deux niveaux (analyze uniquement ; 0 = illimité).
--max-tool-calls
Plafonne le nombre total d'exécutions d'outils (analyze uniquement ; 0 = illimité).
Fichier
Contenu
<stem>.plan.json
Le AnalysisPlan produit par l'architecte — sous-systèmes, domaines d'intérêt, type d'application détecté (analyze uniquement).
<stem>.findings.json
Liste SubsystemFinding par sous-système, menaces transversales et diagramme de flux de données au niveau système (analyze uniquement).
<stem>.run.json
Un RunManifest — modèles, empreinte de la requête + de la configuration, références effectivement chargées par l'agent, SHA git, version, timing. Émis à la fois pour analyze et quick.
Full account takeover and unauthorized access to stored payment methods.
T1550.001 (Application Access Token)
Elevation of Privilege
A standard user calls an admin-only refund endpoint that only checks authentication, not role.
Unauthorized refunds and financial loss.
T1068 (Exploitation for Privilege Escalation)
T1552.001 (Credentials In Files)
Tampering
The payment amount is taken from a client-supplied field and not re-validated server-side against the order.
A user pays less than the order total by editing the request body.