Skip to content

fix(crosswalk): correct eleven MITRE ATLAS technique citations - #65

Open
astrogilda wants to merge 1 commit into
GenAI-Security-Project:mainfrom
astrogilda:fix/atlas-technique-citations
Open

fix(crosswalk): correct eleven MITRE ATLAS technique citations#65
astrogilda wants to merge 1 commit into
GenAI-Security-Project:mainfrom
astrogilda:fix/atlas-technique-citations

Conversation

@astrogilda

Copy link
Copy Markdown

Applies the eleven corrections from #59, checked against the ATLAS release the issue pins, not against the issue text.

They split in two. Six are renames: the identifier is right and the label was superseded. Five are identifier errors, where the label is right and the number points somewhere else: four at a different technique, one at nothing in the release. All eleven are still live on main at 2aa707a, none has been fixed upstream, and every replacement ran through an occurrence assertion rather than a search and replace.

The source is the ATLAS 2026.07 distribution file, sha256 0e07bb07fc6423d72cdf24ddc2038a6905bcbc00ba571064153119ee1a5888d4, byte-identical to the hash #59 pins. 194 techniques parsed from it.

One is worth naming on its own. AML.T0022 is not in the pinned release at all, so the row citing it for Valid Accounts points at nothing, and it becomes AML.T0012. That absence is a real negative and not a failed search: the same grep path returns 15 hits for AML.T0021.

Two things in the diff look wrong. Neither was introduced here.

The ASI03 detail table ends with two rows citing AML.T0024 under different labels. Correction ten moves Exfiltration via AI Inference API from AML.T0016 to AML.T0024, and the neighbouring row already cited AML.T0024 as Model Inversion. That second row is wrong on both halves, since the release carries no technique called Model Inversion. It sits outside both #59 and #60, so I left it. Say the word and it goes in a follow-up diff.

The changelog carries three rows, not one. Step 5 of the contributing guide asks for one per modified file, and each row matches the existing format and author string. What has no precedent is three of them at once, since no file in the repository has ever carried a second row, so the grouping is my guess and yours to overrule.

On scope. The generate step was run as step 6 requires, which regenerated 25 entry files, the backlinks and the docs data. Two generated files were reverted, because the generator stamps the current date into them and nothing here touches their content.

Verification: validate returns 51 errors, 67 warnings and 240 passed on both main and this branch, and the two error lists are byte-identical once sorted, so the set of failures is the same one either side. They are pre-existing. I compared sets rather than positions, so this shows none appeared or disappeared, not that none moved between files.

While counting I found 124 rows in total that disagree with the pinned release, and the eleven cover 57 of them. Among the rest, three more identifiers are absent from the release entirely, AML.T0015 is recorded as LLM Capability Escalation where the release says Evade AI Model, and AML.T0056 is recorded as Adversarial Model Manipulation where it says Extract LLM System Prompt. I can open that as a second issue with the full list, or fold it in here, whichever suits you.

Six citations carry a superseded name under a correct identifier, from
the rename that moved the ATLAS matrix off "ML" wording. Five carry a
correct, current name under an identifier belonging to a different
technique. AML.T0022 appears in neither the current release nor the
deprecated 5.6.0 line.

Renames, identifier unchanged:
  AML.T0020     Poison Training Data       -> Training Data Poisoning
  AML.T0029     Denial of ML Service       -> Denial of AI Service
  AML.T0013     Discover ML Model Ontology -> Discover AI Model Ontology
  AML.T0018     Backdoor ML Model          -> Manipulate AI Model
  AML.T0025     Exfiltrate via Cyber Means -> Exfiltration via Cyber Means
  AML.T0024.000 Membership Inference       -> Infer Training Data Membership

Identifier corrections, name unchanged:
  Data from Information Repositories  AML.T0057 -> AML.T0036
  Exploit Public-Facing Application   AML.T0051 -> AML.T0049
  Craft Adversarial Data              AML.T0031 -> AML.T0043
  Exfiltration via AI Inference API   AML.T0016 -> AML.T0024
  Valid Accounts                      AML.T0022 -> AML.T0012

Applied to the markdown control tables, their summary rows and their
inline citations, since scripts/generate.js rebuilds data/entries from
the tables. The regenerated entries and the two bundles that carry a
substantive change are included so the tree is consistent.

The ASI03 summary row listed AML.T0016 and AML.T0024 separately; both
now resolve to AML.T0024, so the duplicate is dropped rather than
listed twice.

Verified against
https://atlas.mitre.org/atlas-data/dist/v6/ATLAS-2026.07.yaml
sha256 0e07bb07fc6423d72cdf24ddc2038a6905bcbc00ba571064153119ee1a5888d4
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant