
Il progetto OWASP Subtractive Security Top 10 è un'iniziativa volta a identificare, documentare e promuovere le opportunità a più alto impatto per ridurre il rischio informatico attraverso l'eliminazione dei percorsi di attacco.
# OWASP Subtractive Security Top 10 Project


## Panoramica
L'OWASP Subtractive Security Top 10 Project è un'iniziativa volta a identificare, documentare e promuovere le opportunità ad alto impatto per ridurre il rischio informatico attraverso l'eliminazione dei percorsi di attacco.
A differenza delle indicazioni di sicurezza tradizionali che si concentrano principalmente sull'aggiunta di controlli, il Subtractive Security Top 10 enfatizza la rimozione della superficie di attacco non necessaria, delle relazioni di fiducia, dei protocolli, dei privilegi, dei servizi e dei percorsi di comunicazione che consentono all'avversario di progredire.
Il progetto si fonda sul principio che il controllo di sicurezza più efficace è spesso la completa rimozione di un percorso di attacco, anziché tentare di monitorarlo o gestirlo.
La visione a lungo termine del progetto è quella di stabilire l'eliminazione dei percorsi di attacco come disciplina fondamentale dell'ingegneria della sicurezza, supportata da risultati misurabili attraverso lo standard Path Erasure Rate (PER).
## Principio guida
Gli attaccanti possono percorrere solo i percorsi che esistono.
L'obiettivo della Subtractive Security è eliminare o limitare sistematicamente tali percorsi finché l'attività dell'avversario non può più tradursi in un impatto materiale sul business.
<img width="1536" height="1024" alt="EraseRoads" src="https://github.com/user-attachments/assets/a6b1a1cd-d6cb-4c43-b081-7d32291e71c5" />
## Scopo
Lo scopo di questo progetto è fornire indicazioni pratiche e basate sull'evidenza per identificare ed eliminare i percorsi di attacco comuni attraverso sistemi operativi, piattaforme cloud, sistemi di identità e ambienti aziendali.
Ciascuna Top 10 si concentra sui percorsi di attacco la cui rimozione produce riduzioni sproporzionate del rischio, minimizzando al contempo l'impatto operativo.
Il progetto cerca di rispondere a una semplice domanda:
> Cosa si può rimuovere per rendere un attacco materialmente più difficile o impossibile?
## Relazione con lo standard Path Erasure Rate (PER 1.0)
L'OWASP Subtractive Security Top 10 Project è allineato con lo standard Path Erasure Rate (PER) Engineering Standard (https://github.com/cfrenz/Path-Erasure-Engine/blob/main/PER-1.0_Engineering_Specification.md) e con lo standard Path Erasure Precedence (https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/PathErasurePrecedence.md)
PER fornisce una metodologia per misurare l'efficacia dei miglioramenti della sicurezza quantificando la riduzione dei percorsi di attacco accessibili all'avversario.
$$\text{PER} = \frac{|P_{\text{erased}}|}{|P_{\text{eligible}}|}$$
Dove **$P_{\text{eligible}}$** rappresenta i percorsi di attacco validi e concretamente sfruttabili identificati nell'ambito di applicazione, e **$P_{\text{erased}}$** rappresenta il sottoinsieme in cui gli archi eseguibili sono stati rimossi strutturalmente.
PER funge da framework di misurazione quantitativa per la Subtractive Security.
Il Subtractive Security Top 10 identifica i percorsi di attacco ad alto valore la cui eliminazione dovrebbe produrre riduzioni significative delle capacità dell'avversario, mentre PER fornisce il meccanismo per convalidare e misurare tali riduzioni.
Insieme, essi stabiliscono un processo ingegneristico ripetibile per la scoperta, la prioritizzazione, l'eliminazione e la misurazione dei percorsi di attacco.
- Identificare i percorsi di attacco
- Misurare l'esposizione ai percorsi di attacco
- Rimuovere o limitare i percorsi di attacco
- Misurare la riduzione risultante
- Migliorare continuamente l'architettura di sicurezza
Un'implementazione di riferimento su come calcolare il PER è disponibile all'indirizzo (https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/tree/main/PER).
## Gerarchia dell'efficacia
Il progetto si basa sul principio che i controlli di sicurezza non forniscono livelli uguali di riduzione del rischio.
La gerarchia riflette un semplice principio:
Cancellazione architetturale > Vincolo architetturale > Monitoraggio
Ogni volta che un percorso di attacco può essere eliminato, l'eliminazione è preferibile. Se l'eliminazione non è fattibile, il percorso dovrebbe essere limitato. Il monitoraggio è riservato ai percorsi residui che non possono essere rimossi o limitati a sufficienza.
La Subtractive Security dà priorità a:
### 1. Eliminazione architetturale
Rimuovere completamente i percorsi di attacco.
Esempi:
- Rimuovere protocolli legacy
- Rimuovere privilegi non necessari
- Rimuovere l'esposizione pubblica
- Rimuovere identità inattive
- Rimuovere relazioni di fiducia non necessarie
### 2. Vincolo architetturale
Limitare i percorsi di attacco che non possono essere eliminati.
Esempi:
- Segmentazione
- Confini di autorizzazione
- Accesso condizionale
- Endpoint privati
- Restrizioni sui privilegi
### 3. Monitoraggio e rilevamento
Monitorare il rischio residuo che non può essere eliminato o limitato.
Esempi:
- Logging
- Alerting
- SIEM
- IDS/IPS
- Rilevamento sugli endpoint
Questa gerarchia riflette la convinzione del progetto che l'eliminazione di un percorso di attacco sia generalmente più efficace del rilevarne l'utilizzo, come descritto nel [Principio dell'Onere delle Assunzioni](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/HierarchyOfEfficacy.md).
## Provenienza e lignaggio
Il framework Subtractive Hardening e la metrica Path Erasure Rate (PER) tracciano la loro discendenza formale attraverso una progressione ininterrotta e con marca temporale di ricerca peer-reviewed, test in ambienti di produzione e divulgazioni pubbliche che va dal 2015 a oggi.
Per consultare il registro pubblico con marca temporale, le fondamenta peer-reviewed e lo sviluppo storico del framework, fare riferimento a [**Lineage & Prior Art (Lineage.md)**](https://github.com/OWASP/OWASP-Subtractive-Hardening-Top-10/blob/main/Lineage.md).
# Struttura del progetto
L'OWASP Subtractive Hardening Top 10 è una famiglia di standard di ingegneria della sicurezza specifici per piattaforma che operano sotto un insieme comune di leggi architetturali universali.
Alla base del framework vi è l'OWASP Universal Subtractive Security Laws Top 10, che definisce principi di riduzione dei percorsi di attacco indipendenti dalla piattaforma, applicabili a sistemi operativi, piattaforme cloud, sistemi di identità, ambienti SaaS, reti, dispositivi embedded e futuri domini tecnologici.
Gli standard specifici per ambiente forniscono implementazioni di riferimento di queste leggi universali all'interno di particolari stack tecnologici.
## Fondamento universale
- ([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))
## Standard di governance
Il progetto OWASP Subtractive Security Top 10 include standard di governance che rendono operativa la riduzione dei percorsi di attacco all'interno dei programmi di sicurezza.
Questi standard forniscono indicazioni per gestire il rischio laddove i percorsi di attacco non possono ancora essere eliminati, per dare priorità alle attività di remediation in base alla riduzione delle capacità dell'attaccante e per governare le relazioni esterne che introducono nuovi percorsi di attacco.
Standard di governance pubblicati:
- ([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))
Insieme, questi standard trasformano la riduzione dei percorsi di attacco da un framework architetturale in un modello operativo di sicurezza pratico.
## Standard di piattaforma pubblicati
- ([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))
## Standard pianificati e futuri
- 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
- Ulteriori standard man mano che emergono nuovi domini architetturali
## Modello operativo di sicurezza
Il progetto OWASP Subtractive Security Top 10 è più di una raccolta di guide di hardening.
Il progetto combina:
- Leggi universali della sicurezza
- Path Erasure Rate (PER)
- Standard di hardening delle piattaforme
- Standard di governance
in un modello operativo di ingegneria della sicurezza ripetibile.
Gli standard delle piattaforme identificano i percorsi di attacco che dovrebbero essere rimossi.
Gli standard di governance determinano come vengono prioritizzati i percorsi di attacco, come vengono gestiti i percorsi residui e come vengono governate le relazioni con terze parti.
Insieme, questi standard forniscono un framework completo per ridurre la disponibilità dei percorsi di attacco attraverso un miglioramento architetturale misurabile.
## Relazione architetturale
```text
Universal Security Laws
↓
Path Erasure Rate (PER)
↓
Platform Standards + Governance Standards
↓
Implementation Controls
↓
Measured Risk Reduction
```
Ogni standard di piattaforma applica gli stessi principi architetturali di fondo:
- Ridurre la raggiungibilità non necessaria.
- Ridurre le relazioni di fiducia non necessarie.
- Ridurre l'esposizione delle credenziali.
- Ridurre la propagazione dei privilegi.
- Ridurre i percorsi di attacco eseguibili.
- Ridurre l'esposizione del control-plane.
- Ridurre l'area della superficie d'attacco.
- Imporre comunicazioni deterministiche.
- Limitare i percorsi di attacco residui.
- Misurare il miglioramento strutturale tramite PER.
I dettagli implementativi variano in base alla piattaforma, ma le leggi architetturali di fondo restano coerenti.
Questi standard sono progettati per l'adozione parallela e la distribuzione a strati. Se composti insieme, forniscono una riduzione dei percorsi di attacco a livello aziendale attraverso ambienti endpoint, server, identità, cloud, SaaS, rete e sistemi embedded.
## Composizione dello Stack e Adozione Parallela
La famiglia OWASP Subtractive Hardening Top 10 è progettata per un'esecuzione componibile e parallela.
Le singole pubblicazioni Top 10 non sono pensate per essere implementate in isolamento. I sistemi aziendali moderni sono composti da molteplici livelli tecnologici, ciascuno dei quali contribuisce con percorsi di attacco, relazioni di fiducia e opportunità di progressione dell'avversario unici.
Proteggere un asset aziendale richiede l'applicazione simultanea di controlli sottrattivi specifici per piattaforma su tutti i livelli pertinenti.
Esempi includono:
- 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
I percorsi di attacco non rispettano i confini architetturali.
Un workload cloud compromesso può sfruttare percorsi di attacco del sistema operativo. Una workstation compromessa può sfruttare percorsi di attacco dell'identità. Un'identità compromessa può sfruttare percorsi di attacco del control-plane cloud.
La Subtractive Security promuove quindi la riduzione parallela dei percorsi di attacco su tutti i livelli applicabili dello stack tecnologico.
### Difesa in Profondità tramite Cancellazione Stratificata dei Percorsi
La Subtractive Security riconosce che tutti i controlli, inclusi quelli sottrattivi, possono fallire a causa di errori di configurazione, deriva operativa, implementazione incompleta o requisiti aziendali in evoluzione. La Subtractive Security estende quindi il concetto tradizionale di difesa in profondità enfatizzando la rimozione dei percorsi di attacco attraverso molteplici livelli architetturali.
Anziché affidarsi esclusivamente a tecnologie indipendenti di monitoraggio o prevenzione, le organizzazioni dovrebbero cercare di eliminare, ridurre o limitare lo stesso percorso di attacco ovunque esso compaia all'interno dello stack.
Esempi includono:
- Ridurre la fiducia amministrativa all'interno di Linux segmentando contemporaneamente il movimento laterale a livello di rete.
- Limitare le relazioni di fiducia delle identità cloud eliminando i percorsi di escalation dei privilegi a livello di sistema operativo.
- Imporre il determinismo dell'egress a livello di endpoint, rete e control-plane cloud.
Questo approccio crea molteplici confini indipendentemente non conduttivi che gli attaccanti devono superare. Il risultato è una difesa in profondità tramite cancellazione stratificata dei percorsi anziché rilevamento stratificato.
L'obiettivo non è semplicemente rafforzare i singoli componenti.
L'obiettivo è ridurre la conduttività totale dei percorsi di attacco del sistema nel suo complesso.
<img width="1536" height="1024" alt="Flammability" src="https://github.com/user-attachments/assets/18b9d839-fba6-4d5b-9ae4-c84ed4e8e07f" />
## Obiettivi del Progetto
- Promuovere l'eliminazione dei percorsi di attacco come strategia di sicurezza primaria.
- Incoraggiare un miglioramento misurabile della sicurezza tramite PER.
- Fornire indicazioni attuabili per ridurre l'esposizione architetturale.
- Stabilire un vocabolario comune per l'ingegneria della sicurezza sottrattiva.
- Migliorare i risultati di sicurezza tramite processi decisionali basati sull'evidenza.
- Far progredire la sicurezza come disciplina ingegneristica fondata su una riduzione misurabile del rischio.
## Ambito
Questo progetto si concentra sui miglioramenti architetturali che riducono le opportunità di raggiungibilità, privilegio, mobilità e persistenza dell'avversario.
Da una prospettiva di teoria dei grafi, il progetto si concentra sulla riduzione della raggiungibilità dell'avversario eliminando o limitando gli archi eseguibili all'interno dei grafi di attacco.
L'obiettivo è ridurre il numero di percorsi in grado di comporsi in un impatto materiale sul business. Le raccomandazioni vengono selezionate in base al loro potenziale di eliminare o limitare materialmente i percorsi dell'attaccante, piuttosto che alla loro popolarità, al valore di conformità o alla visibilità operativa.
## Contribuire
Il progetto OWASP Subtractive Security Top 10 accoglie contributi da professionisti della sicurezza, ricercatori, architetti, ingegneri cloud, ingegneri di piattaforma e difensori interessati ad avanzare le metodologie di riduzione dei percorsi di attacco.
Sono incoraggiati feedback della comunità, ricerca empirica, esperienze di implementazione e tecniche proposte per la rimozione dei percorsi di attacco.
## Per saperne di più
- 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'efficacia della sicurezza è massimizzata quando i percorsi di attacco vengono rimossi, non semplicemente osservati."*
## Licenza
Questo progetto è open-source e rilasciato sotto la [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0). Tutta la documentazione, le specifiche e il codice sono liberi di essere utilizzati, modificati e distribuiti per scopi commerciali e non commerciali secondo i termini della licenza.
## Responsabili del progetto
- **Christopher Frenz** — Fondatore del progetto e autore principale