
Le projet OWASP Subtractive Security Top 10 est une initiative visant à identifier, documenter et promouvoir les opportunités à plus fort impact pour réduire le cyber-risque grâce à l'élimination des chemins d'attaque.
# Projet OWASP Subtractive Security Top 10


## Vue d'ensemble
Le projet OWASP Subtractive Security Top 10 est une initiative visant à identifier, documenter et promouvoir les opportunités à plus fort impact pour réduire le risque cyber par l'élimination des chemins d'attaque.
Contrairement aux recommandations de sécurité traditionnelles qui se concentrent principalement sur l'ajout de contrôles, le Subtractive Security Top 10 met l'accent sur la suppression de la surface d'attaque, des relations de confiance, des protocoles, des privilèges, des services et des chemins de communication inutiles qui permettent la progression de l'attaquant.
Le projet repose sur le principe selon lequel le contrôle de sécurité le plus efficace est souvent la suppression complète d'un chemin d'attaque plutôt que la tentative de le surveiller ou de le gérer.
La vision à long terme du projet est d'établir l'élimination des chemins d'attaque comme une discipline fondamentale d'ingénierie de la sécurité, soutenue par des résultats mesurables grâce au standard Path Erasure Rate (PER).
## Principe directeur
Les attaquants ne peuvent parcourir que les chemins qui existent.
L'objectif du Subtractive Security est d'éliminer ou de contraindre systématiquement ces chemins jusqu'à ce que l'activité de l'attaquant ne puisse plus se composer en un impact métier significatif.
<img width="1536" height="1024" alt="EraseRoads" src="https://github.com/user-attachments/assets/a6b1a1cd-d6cb-4c43-b081-7d32291e71c5" />
## Objectif
L'objectif de ce projet est de fournir des recommandations pratiques et fondées sur des preuves pour identifier et éliminer les chemins d'attaque courants sur les systèmes d'exploitation, les plateformes cloud, les systèmes d'identité et les environnements d'entreprise.
Chaque Top 10 se concentre sur des chemins d'attaque dont la suppression produit des réductions de risque disproportionnées tout en minimisant l'impact opérationnel.
Le projet cherche à répondre à une question simple :
> Que peut-on supprimer pour rendre une attaque matériellement plus difficile ou impossible ?
## Relation avec le standard Path Erasure Rate (PER 1.0)
Le projet Subtractive Security Top 10 est aligné sur la norme d'ingénierie Path Erasure Rate (PER) (https://github.com/cfrenz/Path-Erasure-Engine/blob/main/PER-1.0_Engineering_Specification.md) et sur le standard Path Erasure Precedence (https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/PathErasurePrecedence.md)
PER fournit une méthodologie pour mesurer l'efficacité des améliorations de sécurité en quantifiant la réduction des chemins d'attaque accessibles à l'attaquant.
$$\text{PER} = \frac{|P_{\text{erased}}|}{|P_{\text{eligible}}|}$$
Où **$P_{\text{eligible}}$** représente les chemins d'attaque valides et exploitables identifiés dans le périmètre, et **$P_{\text{erased}}$** représente le sous-ensemble dont les arêtes exécutables ont été structurellement supprimées.
PER sert de cadre de mesure quantitative pour le Subtractive Security.
Le Subtractive Security Top 10 identifie les chemins d'attaque à forte valeur dont l'élimination devrait produire des réductions significatives de la capacité de l'attaquant, tandis que PER fournit le mécanisme de validation et de mesure de ces réductions.
Ensemble, ils établissent un processus d'ingénierie reproductible pour la découverte, la priorisation, l'élimination et la mesure des chemins d'attaque.
- Identifier les chemins d'attaque
- Mesurer l'exposition aux chemins d'attaque
- Supprimer ou contraindre les chemins d'attaque
- Mesurer la réduction obtenue
- Améliorer continuellement l'architecture de sécurité
Une implémentation de référence pour le calcul du PER est disponible à l'adresse (https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/tree/main/PER).
## Hiérarchie d'efficacité
Le projet repose sur le principe selon lequel les contrôles de sécurité ne fournissent pas des niveaux égaux de réduction des risques.
La hiérarchie reflète un principe simple :
Suppression architecturale > Contrainte architecturale > Surveillance
Chaque fois qu'un chemin d'attaque peut être éliminé, l'élimination est préférée. Si l'élimination n'est pas réalisable, le chemin doit être contraint. La surveillance est réservée aux chemins résiduels qui ne peuvent être supprimés ou suffisamment contraints.
Le Subtractive Security priorise :
### 1. Suppression architecturale
Supprimer entièrement les chemins d'attaque.
Exemples :
- Supprimer les protocoles hérités
- Supprimer les privilèges inutiles
- Supprimer l'exposition publique
- Supprimer les identités dormantes
- Supprimer les relations de confiance inutiles
### 2. Contrainte architecturale
Contraindre les chemins d'attaque qui ne peuvent pas être éliminés.
Exemples :
- Segmentation
- Frontières de permissions
- Accès conditionnel
- Points de terminaison privés
- Restrictions de privilèges
### 3. Surveillance et détection
Surveiller le risque résiduel qui ne peut être supprimé ni contraint.
Exemples :
- Journalisation
- Alertes
- SIEM
- IDS/IPS
- Détection sur les points de terminaison
Cette hiérarchie reflète la conviction du projet selon laquelle l'élimination d'un chemin d'attaque est généralement plus efficace que la détection de son utilisation, comme décrit dans le [Principe de charge de l'hypothèse](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/HierarchyOfEfficacy.md).
## Provenance et filiation
Le cadre de durcissement soustractif et la métrique du taux d'effacement des chemins (PER) retracent leur filiation formelle à travers une progression ininterrompue et horodatée de recherches évaluées par les pairs, de tests en environnement de production et de divulgations publiques allant de 2015 à aujourd'hui.
Pour consulter l'historique public horodaté, les fondements évalués par les pairs et le développement historique du cadre, reportez-vous à [**Filiation et antériorité (Lineage.md)**](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/Lineage.md).
# Structure du projet
L'OWASP Subtractive Hardening Top 10 est une famille de normes d'ingénierie de sécurité spécifiques à chaque plateforme, fonctionnant sous un ensemble commun de lois architecturales universelles.
Au fondement du cadre se trouve l'OWASP Universal Subtractive Security Laws Top 10, qui définit des principes de réduction des chemins d'attaque indépendants de la plateforme, applicables aux systèmes d'exploitation, aux plateformes cloud, aux systèmes d'identité, aux environnements SaaS, aux réseaux, aux dispositifs embarqués et aux futurs domaines technologiques.
Les normes spécifiques à chaque environnement fournissent des implémentations de référence de ces lois universelles au sein de piles technologiques particulières.
## Fondation universelle
- ([Universal Subtractive Security Laws Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/UniversalSubtractiveLaws.md))
- ([Attack Paths as Failure Modes](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/AttackPathFailureModes.md))
- ([Architectural Kerckhoffs Test](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/ArchitecturalKerckhoffsTest.md))
## Normes de gouvernance
Le projet OWASP Subtractive Security Top 10 inclut des normes de gouvernance qui opérationnalisent la réduction des chemins d'attaque au sein des programmes de sécurité.
Ces normes fournissent des orientations pour gérer le risque là où les chemins d'attaque ne peuvent pas encore être éliminés, pour prioriser les travaux de remédiation en fonction de la réduction des capacités de l'attaquant, et pour gouverner les relations externes qui introduisent de nouveaux chemins d'attaque.
Normes de gouvernance publiées :
- ([Subtractive Exception & Security Debt Management Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveExceptionHandling.md))
- ([Subtractive Vulnerability & Path Erasure Management Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveVulnerabilityManagement.md))
- ([Subtractive Third-Party Risk & Integration Governance Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveTPRM.md))
- ([Subtractive Control Validation Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveControlValidation.md))
- ([Subtractive Baselining Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveBaselines.md))
- ([Subtractive Herd Immunity Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveHerdImmunity.md))
- ([Subtractive Alert RCA Standard](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveAlertRCA.md))
- ([Security Vendor Assessment](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SecurityVendorAssessment.md))
- ([Subtractive Threat Modeling](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SubtractiveThreatModeling.md))
Ensemble, ces normes transforment la réduction des chemins d'attaque d'un cadre architectural en un modèle opérationnel de sécurité concret.
## Normes de plateforme publiées
- ([Active Directory Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/ActiveDirectorySubtractiveTop10.md))
- ([AI Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/AISubtractiveTop10.md))
- ([Application Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/ApplicationSubtractiveTop10.md))
- ([AWS Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/AWSSubtractiveTop10.md))
- ([CI/CD Pipeline Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/CICDPipelineSubtractiveTop10.md))
- ([Datastore Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/DatastoreSubtractiveTop10.md))
- ([HPC Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/HPCSubtractiveTop10.md))
- ([IoT Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/IoTSubtractiveTop10.md))
- ([Linux Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/LinuxSubtractiveTop10.md))
- ([macOS Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/macOSSubtractiveTop10.md))
- ([Microsoft 365 Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/M365SubtractiveTop10.md))
- ([Network Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/NetworkSubtractiveTop10.md))
- ([Physical Security Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/PhysicalSubtractiveTop10.md))
- ([Salesforce Security Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/SalesforceSubtractiveTop10.md))
- ([Windows Subtractive Hardening Top 10](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/WindowsSubtractiveTop10.md))
## Normes planifiées et futures
- Identity & Access Management (IAM) Subtractive Hardening Top 10
- Azure Subtractive Hardening Top 10
- Google Cloud Platform (GCP) Subtractive Hardening Top 10
- Container & Kubernetes Subtractive Hardening Top 10
- Medical Device Subtractive Hardening Top 10
- Normes supplémentaires à mesure que de nouveaux domaines architecturaux émergent
## Modèle opérationnel de sécurité
Le projet OWASP Subtractive Security Top 10 est bien plus qu'une collection de guides de durcissement.
Le projet combine :
- Lois universelles de sécurité
- Path Erasure Rate (PER)
- Normes de durcissement des plateformes
- Normes de gouvernance
en un modèle opérationnel d'ingénierie de sécurité reproductible.
Les normes de plateforme identifient les chemins d'attaque qui doivent être supprimés.
Les normes de gouvernance déterminent comment les chemins d'attaque sont priorisés, comment les chemins résiduels sont gérés et comment les relations avec des tiers sont encadrées.
Ensemble, ces normes fournissent un cadre complet pour réduire la disponibilité des chemins d'attaque grâce à une amélioration architecturale mesurable.
## Relation architecturale
```text
Universal Security Laws
↓
Path Erasure Rate (PER)
↓
Platform Standards + Governance Standards
↓
Implementation Controls
↓
Measured Risk Reduction
```
Chaque standard de plateforme applique les mêmes principes architecturaux sous-jacents :
- Réduire l'accessibilité réseau superflue.
- Réduire les relations de confiance superflues.
- Réduire l'exposition des identifiants.
- Réduire la propagation des privilèges.
- Réduire les chemins d'attaque exécutables.
- Réduire l'exposition du plan de contrôle.
- Réduire la surface d'attaque.
- Imposer des communications déterministes.
- Contraindre les chemins d'attaque résiduels.
- Mesurer l'amélioration structurelle via le PER.
Les détails d'implémentation varient selon la plateforme, mais les lois architecturales sous-jacentes restent cohérentes.
Ces standards sont conçus pour une adoption parallèle et un déploiement en couches. Lorsqu'ils sont combinés, ils permettent une réduction des chemins d'attaque à l'échelle de l'entreprise sur les environnements de poste de travail, de serveur, d'identité, de cloud, de SaaS, de réseau et de systèmes embarqués.
## Composition de la pile et adoption parallèle
La famille OWASP Subtractive Hardening Top 10 est conçue pour une exécution composable et parallèle.
Les publications individuelles du Top 10 ne sont pas destinées à être mises en œuvre de manière isolée. Les systèmes d'entreprise modernes sont composés de multiples couches technologiques, chacune contribuant à des chemins d'attaque, des relations de confiance et des opportunités de progression de l'attaquant qui lui sont propres.
Sécuriser un actif d'entreprise nécessite d'appliquer des contrôles soustractifs spécifiques à chaque plateforme de manière simultanée sur toutes les couches pertinentes.
Exemples :
- AWS Subtractive Hardening + Linux Subtractive Hardening
- Active Directory Subtractive Hardening + Windows Subtractive Hardening
- Kubernetes Subtractive Hardening + Linux Subtractive Hardening
- SaaS Subtractive Hardening + Identity and Access Management Subtractive Hardening
- Azure Subtractive Hardening + Active Directory Subtractive Hardening
Les chemins d'attaque ne respectent pas les frontières architecturales.
Une charge de travail cloud compromise peut exploiter des chemins d'attaque au niveau du système d'exploitation. Un poste de travail compromis peut exploiter des chemins d'attaque liés à l'identité. Une identité compromise peut exploiter des chemins d'attaque au niveau du plan de contrôle cloud.
La Sécurité Soustractive promeut donc une réduction parallèle des chemins d'attaque sur toutes les couches applicables de la pile technologique.
### Défense en profondeur par effacement des chemins en couches
La Sécurité Soustractive reconnaît que tous les contrôles, y compris les contrôles soustractifs, peuvent échouer en raison d'une mauvaise configuration, d'une dérive opérationnelle, d'une implémentation incomplète ou de l'évolution des exigences métier. La Sécurité Soustractive étend donc le concept traditionnel de défense en profondeur en mettant l'accent sur la suppression des chemins d'attaque sur plusieurs couches architecturales.
Plutôt que de s'appuyer uniquement sur des technologies indépendantes de surveillance ou de prévention, les organisations devraient chercher à éliminer, réduire ou contraindre le même chemin d'attaque partout où il apparaît dans la pile.
Exemples :
- Réduire la confiance administrative sous Linux tout en segmentant simultanément les mouvements latéraux au niveau réseau.
- Restreindre les relations de confiance des identités cloud tout en éliminant les chemins d'élévation de privilèges au niveau du système d'exploitation.
- Imposer le déterminisme de sortie (egress) au niveau du poste de travail, du réseau et du plan de contrôle cloud.
Cette approche crée de multiples frontières indépendamment non conductrices que les attaquants doivent franchir. Le résultat est une défense en profondeur par effacement des chemins en couches plutôt que par détection en couches.
L'objectif n'est pas simplement de durcir des composants individuels.
L'objectif est de réduire la conductivité totale des chemins d'attaque du système dans son ensemble.
<img width="1536" height="1024" alt="Flammability" src="https://github.com/user-attachments/assets/18b9d839-fba6-4d5b-9ae4-c84ed4e8e07f" />
## Objectifs du projet
- Promouvoir l'élimination des chemins d'attaque comme stratégie de sécurité primaire.
- Encourager une amélioration mesurable de la sécurité via le PER.
- Fournir des recommandations exploitables pour réduire l'exposition architecturale.
- Établir un vocabulaire commun pour l'ingénierie de la sécurité soustractive.
- Améliorer les résultats de sécurité grâce à une prise de décision fondée sur des preuves.
- Faire progresser la sécurité en tant que discipline d'ingénierie ancrée dans une réduction mesurable des risques.
## Périmètre
Ce projet se concentre sur les améliorations architecturales qui réduisent l'accessibilité, les privilèges, la mobilité et les opportunités de persistance de l'attaquant.
D'un point de vue de la théorie des graphes, le projet vise à réduire l'accessibilité de l'adversaire en éliminant ou en contraignant les arêtes exécutables au sein des graphes d'attaque.
L'objectif est de réduire le nombre de chemins susceptibles de se composer en un impact métier significatif. Les recommandations sont sélectionnées en fonction de leur potentiel à éliminer ou à contraindre matériellement les chemins de l'attaquant, plutôt que de leur popularité, de leur valeur de conformité ou de leur visibilité opérationnelle.
## Contribution
Le projet OWASP Subtractive Security Top 10 accueille favorablement les contributions de praticiens de la sécurité, de chercheurs, d'architectes, d'ingénieurs cloud, d'ingénieurs de plateforme et de défenseurs intéressés par l'avancement des méthodologies de réduction des chemins d'attaque.
Les retours de la communauté, les recherches empiriques, les expériences de mise en œuvre et les techniques proposées pour l'élimination des chemins d'attaque sont encouragés.
## En savoir plus
- Path Erasure Rate (PER) Engineering Standard (https://github.com/cfrenz/Path-Erasure-Engine/blob/main/PER-1.0_Engineering_Specification.md)
- Evidence-Based Security (https://subtractivesecurity.substack.com/p/the-cyber-falsifiability-crisis-and)
- Subtractive Security Engineering Framework (https://subtractivesecurity.substack.com/p/the-law-of-subtractive-risk-moving)
- Subtractive Security Substack (https://subtractivesecurity.substack.com/)
---
*« L'efficacité de la sécurité est maximisée lorsque les chemins d'attaque sont supprimés, et non simplement observés. »*
## Licence
Ce projet est open-source et publié sous la [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). Toute la documentation, les spécifications et le code sont libres d'utilisation, de modification et de distribution à des fins commerciales et non commerciales selon les termes de la licence.
## Responsables du projet
- **Christopher Frenz** — Fondateur du projet et auteur principal