Loading...

Skip to main content

Attack–Countermeasure Mapping

Attack–countermeasure table​

If you're worried about X, apply Y​

Quick lookup: attack type → recommended countermeasure(s) → relevant GCP service or technique. Abbreviations: SDP = Sensitive Data Protection; HMAC = keyed-hash message authentication code; FPE = format-preserving encryption; ARX = open-source structural anonymization tool; DP = differential privacy; QI = quasi-identifier.

AttackCountermeasureGCP / toolingKey reference
Linkage attack (external data join on quasi-identifiers)Increase k-anonymity (k ≥ 50 for external); add DP noise; reduce QI granularityARX, Privacy on Beam, PipelineDPModule 04 (k-anonymity), Module 12 (cases)
Homogeneity attack (all records in group share same sensitive value)l-diversity on sensitive attributesARXModule 04 (l-diversity)
Background knowledge attack (attacker eliminates possibilities with external info)t-closeness; differential privacyARX, Privacy on BeamModule 04 (t-closeness, DP)
Dictionary / rainbow table (precompute hashes of finite-domain inputs)Keyed HMAC (not plain hash); FPE with key rotationSDP CryptoHashConfig (HMAC), CryptoReplaceFfxFpeConfig (FPE), Cloud KMSModule 03 (hashing), Module 07 (key mgmt)
Fingerprinting / trajectory (behavioral sequence uniquely identifies)Spatial + temporal generalization; DP noise on aggregatesCustom Beam transforms, Privacy on BeamModule 11 (telco), Module 12 (mobility)
Inference attack (ML predicts sensitive attributes from QIs)Differential privacy on query/model outputsPrivacy on Beam, PipelineDPModule 04 (DP), Module 12
Reconstruction attack (rebuild records from aggregate stats)DP with budget tracking on all aggregate outputsBigQuery DIFFERENTIAL_PRIVACY clauseModule 04 (DP), Module 12
Composition attack (combine multiple independent releases)DP privacy budget tracking across releasesPrivacy on Beam (budget accounting)Module 04 (composition), Module 12
Membership inference (detect individual in training set)DP-SGD training; formal DP on synthetic generatorsDP-SGD (TensorFlow Privacy, Opacus)Module 12 (testing)
Model inversion (reconstruct training records from model outputs)DP training; output perturbation; limit confidence scoresDP-SGD (TensorFlow Privacy, Opacus)Module 08 (AI patterns), Module 12
Differencing attack (subtract overlapping aggregates)DP noise with shared budget accounting; query auditing for overlapping queriesBigQuery data clean room differential-privacy analysis rules; separate query-audit layerModule 12
Vault / key compromise (theft of token vault or crypto key)HSM-backed keys; envelope encryption; separation of duties; key rotationCloud KMS (HSM), Cloud EKMModule 07 (key management)
Insider re-identification abuse (authorized access misused)Audit logging; approval workflows; purpose limitationCloud Audit Logs, IAM ConditionsModule 09 (governance), Module 10 (ops)

Decision shortcut: which attacks does my technique face?​

TechniquePrimary attacks to test for
Plain hashing (SHA-256, MD5)Dictionary / rainbow table
HMAC / keyed hashingKey compromise, insider abuse
FPE / deterministic encryptionKey compromise, correlation on encrypted values
Vaulted tokenizationVault compromise, insider abuse
k-anonymity aloneHomogeneity, background knowledge, composition
k-anonymity + l-diversityBackground knowledge, composition
Differential privacyBudget exhaustion (if not tracked); utility loss
Synthetic dataMembership inference, model inversion
Aggregation / suppression onlyDifferencing, reconstruction (if multiple queries)
Dictionary-based pseudonymizationVault compromise, insider abuse, fingerprinting (behavioral structure intact)

The "is it really anonymized?" quick test​

  1. Can it be reversed? → If yes: pseudonymization, not anonymization
  2. Are finite-domain inputs hashed without a key? → Dictionary attack risk
  3. Are individual-level records visible with precise timestamps/locations? → Fingerprinting attack risk
  4. Has a linkage attack been simulated? → If not: unmeasured risk
  5. Have multiple releases been made about the same population? → Composition attack risk
  6. Is synthetic data used? Has membership inference been tested? → Memorization risk

Created by Claude Opus with ❤️ for the Aliz Data Engineering team.