From appsec
This skill should be used when the user asks to "check for identifiability", "analyze re-identification risks", "find privacy issues related to anonymization", "check for PII exposure", or mentions "identifiability" in a privacy context. Maps to LINDDUN category I.
npx claudepluginhub florianbuetow/claude-code --plugin appsecThis skill uses the workspace's default tool permissions.
Analyze source code for identifiability threats where individuals can be identified
Acquire memory dumps from live systems/VMs and analyze with Volatility 3 for processes, networks, DLLs, injections in incident response or malware hunts.
Provides x86-64/ARM disassembly patterns, calling conventions, control flow recognition for static analysis of executables and compiled binaries.
Identifies anti-debugging checks like IsDebuggerPresent, NtQueryInformationProcess in Windows binaries; suggests bypasses via patches/hooks/scripts for malware analysis, CTFs, authorized RE.
Analyze source code for identifiability threats where individuals can be identified from supposedly anonymous data. Combinations of quasi-identifiers (zip code, birth date, gender) can uniquely identify individuals. Re-identification attacks on "anonymized" data are the primary concern.
Read ../../shared/schemas/flags.md for full flag
documentation. This skill supports all cross-cutting flags.
| Flag | Identifiability-Specific Behavior |
|---|---|
--scope | Default changed. Focuses on files handling user data, anonymization logic, data exports, analytics pipelines, and API responses. |
--depth quick | Grep patterns only: scan for PII in logs, quasi-identifiers in exports, and missing anonymization. |
--depth standard | Full code read, analyze data fields returned in APIs and stored in databases for re-identification risk. |
--depth deep | Trace data flows from collection to storage to export. Assess quasi-identifier combinations across the system. |
--depth expert | Deep + re-identification risk modeling: estimate k-anonymity violations and uniqueness of attribute combinations. |
--severity | Filter output. Identifiability findings range from low (theoretical) to critical (direct PII exposure). |
--fix | Generate anonymization, generalization, and suppression replacements. |
LINDDUN I -- Identifiability
Identifiability occurs when a person can be identified from data that is supposed
to be anonymous or pseudonymous. Read
../../shared/frameworks/linddun.md for the
full LINDDUN framework reference including re-identification attack patterns and
regulatory definitions.
Privacy Property Violated: Anonymity / Pseudonymity
STRIDE Mapping: Information Disclosure (identifiability focuses specifically on re-identification of anonymized data rather than general data access)
--scope flag (default: changed).Read each scoped file and assess re-identification risk:
At --depth deep or --depth expert, model quasi-identifier combinations and
estimate uniqueness across the population.
Output findings per ../../shared/schemas/findings.md.
Each finding needs: IDENT-NNN id, title, severity (based on directness of
identification and data sensitivity), location with snippet, description of what
enables identification, impact (re-identification harm), fix (anonymization,
generalization, or suppression), and CWE/LINDDUN references.
log\.\w+\(.*email|logger\.\w+\(.*name|console\.log\(.*phone|print\(.*ssnPRIMARY KEY.*email|primary_key.*email|@Column.*email.*unique|findByEmail|findByPhonereq\.ip|request\.remote_addr|X-Forwarded-For|ip_address|ipAddress|getRemoteAddrSELECT \*.*FROM.*user|\.findAll\(|\.find\(\{\}\)|res\.json\(user\)|JSON\.stringify\(useranonymize|anonymise|deidentify|de_identify|pseudonymize|mask.*datazip_code.*birth_date|zipCode.*gender|age.*location|dateOfBirth.*addressuser-agent|userAgent|navigator\.userAgent|req\.headers\[.user-agent.\]export.*user|download.*report|csv.*user|toCSV|toJSON.*user| Regulation | Provision | Relevance |
|---|---|---|
| GDPR Recital 26 | Identifiability test | Data is personal if any means can identify the subject |
| GDPR Art. 4(5) | Pseudonymization definition | Pseudonymized data is still personal data |
| GDPR Art. 25 | Data protection by design | Anonymization must be effective by design |
| HIPAA Safe Harbor | 18 identifier categories | All 18 must be removed for de-identification |
| CCPA 1798.140(h) | Deidentified information | Reasonably cannot be linked to a consumer |
| CCPA 1798.140(o) | Personal information | Includes information that identifies or could be linked |
Use finding ID prefix IDENT (e.g., IDENT-001, IDENT-002).
All findings follow the schema in
../../shared/schemas/findings.md with:
references.cwe: CWE-359 or CWE-200 as appropriatereferences.owasp: A02:2021 (Cryptographic Failures -- weak anonymization)metadata.tool: "identifying"metadata.framework: "linddun"metadata.category: "I"Summary table after all findings:
| Identifiability Pattern | Critical | High | Medium | Low |
|-----------------------------|----------|------|--------|-----|
| Direct PII exposure | | | | |
| PII in logs | | | | |
| Quasi-identifier combos | | | | |
| Insufficient anonymization | | | | |
| Over-fetched API responses | | | | |
| IP / device tracking | | | | |
Followed by: top 3 priorities, re-identification risk assessment, and overall assessment.