NIS2 (Directive (EU) 2022/2555): TLCTC Pain Points & Fixes
Published: September 28, 2025
Scope of this post: We assess NIS2 exclusively through the Top Level Cyber Threat Clusters (TLCTC) framework and surface where implementation and supervision may under‑deliver unless authorities and entities adopt a cause‑oriented threat language (#1–#10) and attack‑path notation.
TL;DR
NIS2 is strong on who must do what and when (risk management, staged reporting, cooperation). But it does not mandate a shared, cause‑based threat taxonomy. As a result, the same attack gets labeled differently by sector and Member State, weakening situational awareness and supervision. The fix is simple and non‑disruptive: add Attack Path (TLCTC) to notifications and dashboards, and align controls by cluster across risk, reporting, and procurement.
The TLCTC lens in 30 seconds
- Strategic layer (10 clusters): #1 Abuse of Functions | #2 Exploiting Server | #3 Exploiting Client | #4 Identity Theft | #5 Man‑in‑the‑Middle | #6 Flooding Attack | #7 Malware | #8 Physical Attack | #9 Social Engineering | #10 Supply Chain Attack.
- Operational layer: Every real attack is a sequence (e.g.,
#9 → #7 → #4), not an effect (“ransomware”). - Axioms that matter for NIS2: Threats are causes, not outcomes; credentials are control elements (Axiom X), so their theft is a compromise; clusters are universal across IT/OT/IoT/cloud.
Main NIS2 pain points (from the TLCTC perspective)
-
1) No common, cause-based threat taxonomy
Problem: NIS2 requires entities to report incidents and even name the “type of threat/root cause,” but it doesn’t define a standard dictionary. Labels mix actors, effects, and tools.
TLCTC impact: Data is not comparable across sectors or borders; trend analysis and guidance degrade.
Fix: Make Attack Path (TLCTC) a mandatory line in every notification and final report; publish quarterly first‑cluster distributions.
-
2) “Significant incident” thresholds ignore first‑cluster context
Problem: Significance is gauged by impact, not by initiating cause.
Impact: Two events with the same impact but different starting points (#9 vs. #2) get the same priority—misallocating prevention budgets.
Fix: Add a cluster‑weighted triage: track and prioritize the top initiating clusters for your sector/state.
-
3) Risk management mixes logic abuse (#1) with code defects (#2/#3)
Problem: Everything is pushed into generic “vulnerability management.”
Impact: #1 Abuse of Functions (design/scope) gets treated like coding bugs, so reviews and KPIs miss the mark.
Fix: Keep separate risk sections and controls for #1 vs #2/#3 (constrained workflows, business‑rule guards, least privilege vs. SAST/DAST/patch SLAs).
-
4) Credentials treated as "data,” not system controls (#4)
Problem: Breaches due to token replay or password theft are still framed as data incidents.
Impact: Post‑incident actions focus on cleanup instead of redesigning trust.
Fix: Mandate phishing‑resistant, device‑bound credentials and PAM; treat #4 as a primary cause class in risk registers and audits.
-
5) Update/transport trust not proven (#5 MitM)
Problem: Entities claim TLS and signing but cannot show pinning, transparency logs, or device‑bound verification.
Impact: Attack paths like
#5 → #7remain viable across sectors.Fix: Require evidence for #5 controls in audits and incident post‑mortems; verify update provenance end‑to‑end.
-
6) DoS resilience (#6) under‑modeled in reporting and KPIs
Problem: Flooding and capacity abuse are often logged as generic “availability incidents.”
Impact: No learning loops on API quotas, back‑pressure, or scrubbing; same outages repeat.
Fix: Include #6 test artefacts (rate‑limit, graceful degradation) in risk files and supervisory checklists.
-
7) Execution control model missing (#7 Malware)
Problem: Patching and EDR are present, but what can execute and with what rights is undocumented.
Impact: Environments still run foreign code/LOLBAS.
Fix: Ship an explicit execution policy (allow‑listing, namespaces/jails, signed‑only modules, runtime egress controls) and attest it.
-
8) Physical surface (#8) treated as a separate domain
Problem: Physical access enables #4/#7, yet is siloed from cyber risk files.
Fix: Integrate #8 scenarios (debug ports, local extraction) into cyber risk and response testing.
-
9) Supply‑chain risk noted but not quantified (#10)
Problem: Vendors disclose SBOMs, but pipeline, signer, and distribution exposures remain opaque.
Fix: Add a #10 exposure score and attestations (isolated builds, protected signers, provenance, reproducible builds, secured CDNs).
-
10) Incident forms collect effects; attack‑paths are optional
Problem: Staged reporting exists, but cause is free text.
Fix: Add a short, mandatory Attack Path (TLCTC) line to early warning, 72‑hour update, and final report.
-
11) CSIRT analytics lack a common cluster language
Problem: National CSIRTs share data but taxonomies differ.
Fix: CSIRTs and the Cooperation Group recommend TLCTC as the baseline for incident/root cause classification and advisories.
-
12) Cross‑framework confusion (NIST, MITRE, ISO) persists
Problem: Entities struggle to connect controls (NIST CSF) and TTPs (MITRE ATT&CK) to causes.
Fix: Maintain a 10Ă—5 TLCTC Ă— NIST CSF matrix and map operational techniques back to clusters.
Common NIS2 attack‑path patterns (ready for your forms)
- Credential replay in remote access:
#9 Social Engineering → #4 Identity Theft → #1 Abuse of Functions - Remote code via server bug:
#2 Exploiting Server → #7 Malware → #4 Identity Theft - Update channel downgrade:
#5 MitM → #7 Malware - Supplier build compromise:
#10 Supply Chain → #7 Malware → #4 Identity Theft - API flood on public service:
#6 Flooding Attack
Use these to tag incidents and trend first cluster over time.
Implementation kit (drop‑in, no law changes required)
- Add Attack Path (TLCTC) to early warning, 72‑hour notification, and final report.
- Keep a TLCTC Risk Register per entity: top 3 initiating clusters, controls, and verification artefacts.
- Build a 10×5 TLCTC × NIST CSF matrix; mark “local” vs “umbrella” controls.
- Require suppliers to attest #10 exposure and cluster coverage in contracts.
- CSIRTs publish quarterly cluster distributions and targeted advisories (e.g., surge in #5 on remote management).
Closing thought: NIS2 fixes governance and scope. To translate that into measurable risk reduction, align everyone on causes. TLCTC supplies the missing common language: ten clusters and a concise attack‑path line that makes reporting, supervision, and procurement comparably smarter—across sectors and borders.