Conduct LINDDUN privacy threat modeling across all seven categories: Linking, Identifying, Non-repudiation, Detecting, Data Disclosure, Unawareness, and Non-compliance. Includes DFD-based analysis, threat trees, privacy-specific mitigation strategies, and integration with STRIDE security threat modeling.
Installs into .claude/skills of the current project.
Are you the author of Linddun Threat Model?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/thomasmoreai-linddun-threat-model)
---
name: linddun-threat-model
title: LINDDUN Privacy Threat Modeling
description: 'Conduct LINDDUN privacy threat modeling across all seven categories: Linking, Identifying, Non-repudiation, Detecting, Data Disclosure, Unawareness, and Non-compliance. Includes DFD-based analysis, threat trees, privacy-specific mitigation strategies, and integration with STRIDE security threat modeling.'
author: mukul975
author_url: https://github.com/mukul975/Privacy-Data-Protection-Skills/tree/main/skills/privacy/linddun-threat-model
license: Apache-2.0
version: 0.1.1
execution_mode: open
jurisdiction: general
practice: data-protection
language: en
sources:
- title: Standards
path: references/standards.md
- title: Workflows
path: references/workflows.md
---
# LINDDUN Privacy Threat Modeling
## Overview
LINDDUN is a systematic privacy threat modeling methodology developed by the DistriNet research group at KU Leuven. It provides a structured approach to identify and mitigate privacy threats in software systems. The acronym represents seven privacy threat categories that map to violations of privacy properties defined in ISO/IEC 29100.
## The Seven LINDDUN Threat Categories
### L — Linking
**Definition**: The ability to associate two or more data items or actions with an individual or group, beyond what is intended by the data subject.
**Privacy Property Violated**: Unlinkability
**Threat Scenarios**:
- Cross-referencing anonymized datasets to re-identify individuals
- Correlating browsing behavior across websites using fingerprinting
- Linking social media profiles to real identities through metadata
- Combining location data points to infer home/work addresses
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Data minimization | Collect only necessary attributes | Review each data field against stated purpose |
| Pseudonymization | Replace identifiers with tokens | Use cryptographic pseudonymization with key separation |
| Mix networks | Obscure communication patterns | Route messages through anonymity networks |
| Aggregation | Present only group-level data | Enforce minimum group size (k>=5) for any query result |
| Session unlinkability | Prevent cross-session tracking | Rotate session tokens, avoid persistent identifiers |
### I — Identifying
**Definition**: The ability to identify a data subject from a set of data items, connecting them to a known individual.
**Privacy Property Violated**: Anonymity
**Threat Scenarios**:
- Direct identification from unmasked PII in logs
- Quasi-identifier attacks (combining age, ZIP code, gender)
- Facial recognition from images in datasets
- Voice identification from audio recordings
- Writing style analysis (stylometry) in anonymous forums
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Anonymization | Remove direct identifiers | Strip names, emails, SSNs before processing |
| k-Anonymity | Generalize quasi-identifiers | Ensure each record shares attributes with k-1 others |
| Differential privacy | Add calibrated noise | Apply epsilon-differential privacy to query responses |
| Data masking | Obscure identifying fields | Replace with realistic synthetic values |
| Access control | Restrict who can see raw data | Implement need-to-know access with purpose verification |
### N — Non-repudiation
**Definition**: The inability of a data subject to deny having performed an action, even when such denial would be desirable for privacy.
**Privacy Property Violated**: Plausible deniability
**Threat Scenarios**:
- Immutable audit logs linking users to actions
- Digital signatures proving authorship of documents
- Non-repudiable transaction records
- Email delivery confirmations and read receipts
- Blockchain-based records that cannot be denied or deleted
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Deniable encryption | Enable plausible deniability | Use deniable encryption schemes for sensitive data |
| Group signatures | Hide individual identity in group | Implement group signature schemes for authenticated actions |
| Minimal logging | Log only what is legally required | Review and minimize audit trail scope |
| Aggregate reporting | Report actions at group level | Aggregate activity reports rather than individual-level |
| Configurable receipts | Let users control acknowledgments | Allow opt-out of read receipts and delivery confirmations |
### D — Detecting
**Definition**: The ability to determine whether a data subject has been involved in an action or is present in a dataset, even without identifying them specifically.
**Privacy Property Violated**: Undetectability
**Threat Scenarios**:
- Traffic analysis revealing communication patterns
- Database membership inference attacks
- Timing attacks revealing user activity
- Side-channel attacks revealing data access patterns
- Presence detection through network metadata
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Traffic padding | Mask communication patterns | Generate dummy traffic to obscure real patterns |
| Steganography | Hide data within other data | Embed sensitive communications in innocuous content |
| Constant-time operations | Prevent timing analysis | Implement constant-time algorithms for sensitive operations |
| Oblivious RAM | Hide access patterns | Use ORAM protocols for privacy-critical data access |
| Differential privacy | Provide membership privacy | Apply differential privacy to prevent membership inference |
### D — Data Disclosure
**Definition**: Unauthorized exposure of personal data to parties who should not have access.
**Privacy Property Violated**: Confidentiality
**Threat Scenarios**:
- SQL injection exposing database contents
- Misconfigured cloud storage buckets
- Insider threats with excessive access privileges
- Man-in-the-middle attacks on unencrypted channels
- API responses returning excessive data fields
- Backup media loss or theft
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Encryption | Protect data at rest and in transit | AES-256 at rest, TLS 1.3 in transit |
| Access control | Enforce least privilege | RBAC with regular access reviews |
| Input validation | Prevent injection attacks | Parameterized queries, input sanitization |
| API field filtering | Return only requested fields | Implement field-level access control in APIs |
| DLP | Detect and prevent data exfiltration | Deploy DLP at network egress and endpoints |
### U — Unawareness
**Definition**: Data subjects being insufficiently aware of data processing activities, their rights, or the consequences of providing or withholding data.
**Privacy Property Violated**: Transparency, Intervenability
**Threat Scenarios**:
- Hidden data collection through tracking pixels
- Opaque algorithmic decision-making
- Buried privacy policies with complex legal language
- Undisclosed data sharing with third parties
- Lack of notification when processing purposes change
- No mechanism for data subjects to exercise rights
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Layered notices | Progressive disclosure | Short notice + full policy + just-in-time |
| Privacy dashboards | Centralized visibility | User-facing dashboard showing all data held |
| Consent management | Granular, informed consent | Purpose-specific consent with clear descriptions |
| Explainable AI | Algorithmic transparency | Provide meaningful explanations of automated decisions |
| Right facilitation | Easy rights exercise | Self-service portal for access, correction, deletion |
### N — Non-compliance
**Definition**: Processing personal data in ways that violate applicable laws, regulations, standards, or organizational policies.
**Privacy Property Violated**: Policy and consent compliance
**Threat Scenarios**:
- Processing without valid legal basis
- Failing to honor data subject rights within deadlines
- Cross-border transfers without adequate safeguards
- Retaining data beyond the stated retention period
- Processing children's data without parental consent
- Failing to conduct required impact assessments
**Mitigation Strategies**:
| Strategy | Technique | Implementation |
|----------|-----------|----------------|
| Compliance mapping | Map processing to legal bases | Document legal basis per processing activity per jurisdiction |
| Automated enforcement | Technical compliance controls | Automated retention enforcement, consent verification |
| DPIA process | Impact assessment for high-risk processing | Mandatory DPIA before deploying new high-risk processing |
| Regulatory monitoring | Track legal developments | Subscribe to regulatory updates, conduct periodic gap analysis |
| Audit program | Verify ongoing compliance | Annual compliance audits with corrective action tracking |
## DFD-Based Threat Analysis Process
### Step 1: Create Privacy-Annotated Data Flow Diagram
```
[Data Subject] ---(personal data)--> [Web Application]
^ |
| v
[Notice] [Application Server]
|
+-------------+-------------+
| | |
v v v
[User Database] [Analytics DB] [Third-Party API]
(encrypted) (pseudonymized) (data sharing)
```
Annotate each element with:
- Data types flowing through (PII categories)
- Trust boundaries crossed
- Storage locations and durations
- Processing purposes
- Access controls in place
### Step 2: Map Threats to DFD Elements
| DFD Element | L | I | N | D(etect) | D(isclose) | U | N(on-comply) |
|-------------|---|---|---|----------|------------|---|-------------|
| Data flows | X | X | | X | X | | |
| Data stores | X | X | | | X | | X |
| Processes | X | X | X | X | X | X | X |
| External entities | | X | | X | X | X | X |
### Step 3: Build Threat Trees
For each applicable threat category per DFD element, construct a threat tree:
```
Identifying Threat to User Database
├── Direct identifier exposure
│ ├── SQL injection reveals raw PII
│ ├── Backup media contains unencrypted PII
│ └── Admin access to production database
├── Quasi-identifier attack
│ ├── Combination of age + ZIP + gender
│ └── Temporal correlation of records
└── Inference attack
├── Aggregate query with small group size
└── Differential attack across query results
```
### Step 4: Prioritize and Mitigate
Use a risk matrix to prioritize identified threats:
| Likelihood / Impact | Negligible | Limited | Significant | Maximum |
|---------------------|-----------|---------|-------------|---------|
| Very Likely | Medium | High | Critical | Critical |
| Likely | Low | Medium | High | Critical |
| Possible | Low | Medium | Medium | High |
| Unlikely | Low | Low | Medium | Medium |
| Rare | Low | Low | Low | Medium |
## LINDDUN and STRIDE Integration
| LINDDUN Category | Related STRIDE Category | Overlap Area |
|-------------------|----------------------|--------------|
| Data Disclosure | Information Disclosure | Both address unauthorized data exposure |
| Non-compliance | Tampering | Integrity of consent records |
| Detecting | Information Disclosure | Metadata leakage |
| Identifying | Information Disclosure | PII exposure |
| Non-repudiation | Repudiation | Opposing perspectives on the same property |
## Practical Application at Cipher Engineering Labs
### Threat Modeling Workshop Agenda (4 hours)
1. **System Overview** (30 min): Present the system architecture and data flows
2. **DFD Construction** (45 min): Collaboratively build privacy-annotated DFD
3. **Threat Identification** (90 min): Walk through each LINDDUN category per DFD element
4. **Prioritization** (30 min): Score threats on risk matrix
5. **Mitigation Planning** (45 min): Identify controls for high and critical risks
### Deliverables
- Privacy-annotated Data Flow Diagram
- LINDDUN Threat Register (all identified threats with risk scores)
- Mitigation Plan (prioritized controls for high/critical threats)
- Residual Risk Statement
## References
- Deng, M., Wuyts, K., Scandariato, R., Preneel, B., and Joosen, W. "A Privacy Threat Analysis Framework: Supporting the Elicitation and Fulfillment of Privacy Requirements." Requirements Engineering, 16(1):3-32, 2011.
- Wuyts, K. and Joosen, W. "LINDDUN Privacy Threat Modeling: A Tutorial." CW Reports, KU Leuven, 2015.
- LINDDUN GO — Lightweight approach: linddun.org
- ISO/IEC 29100:2011 — Information Technology — Security Techniques — Privacy Framework
- OWASP Privacy Risks Project