Skip to content

MAINT BREAK: Adding Attack Technique Abstraction#1592

Merged
rlundeen2 merged 6 commits intomicrosoft:mainfrom
rlundeen2:users/rlundeen/2026_04_10_attack_technique
Apr 13, 2026
Merged

MAINT BREAK: Adding Attack Technique Abstraction#1592
rlundeen2 merged 6 commits intomicrosoft:mainfrom
rlundeen2:users/rlundeen/2026_04_10_attack_technique

Conversation

@rlundeen2
Copy link
Copy Markdown
Contributor

@rlundeen2 rlundeen2 commented Apr 11, 2026

Modifying the AttackTechnique abstraction, which contains a SeedTechniqueGroup and an attack, encapsulates the entire piece of an attack that we'll measure success with.

This PR

  • Adds an identifier to the AttackTechnique class, which is Identifiable
  • Adds the identifier to the AtomicAttackResultIdentity in AttackResult
  • Adds AttackTechnique as the way to call AtomicAttacks
  • Seed merging is added so techniques can be combined into an AttackSeedGroup
  • Scenarios are updated to use this as a pattern when creating AtomicAttacks

After this, we'll include an AttackTechniqueRegistry which can query attacks in a reusable way, and scenarios can use the shared registry for attack strategies.

Breaking:

It breaks some memory queries, but only from very recent PRs

@rlundeen2 rlundeen2 assigned rlundeen2 and unassigned rlundeen2 Apr 13, 2026
Resolved rename conflict: tests/unit/scenarios/ -> tests/unit/scenario/
for test_attack_technique.py (added on branch, directory renamed on main).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

@hannahwestra25 hannahwestra25 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So i obviously missed the addition of the seed technique group. I think this interface makes sense but I'm concerned / getting confused between all of our Seed* classes (so approving since that's not the focus of this particular PR). Can you update this: https://microsoft.github.io/PyRIT/code/memory/memory-data-types/#messagepiece and maybe this one https://microsoft.github.io/PyRIT/code/memory/seed-database/ (with identifier info) ?

@rlundeen2 rlundeen2 merged commit 8c53184 into microsoft:main Apr 13, 2026
36 checks passed
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.

2 participants