Add in-process known-bad fixtures for remaining ASM T-01–T-10
Each Canon test now has a fixture-asm registration that fails known-bad and passes known-good in-process. Live asm-tNN targets stay pending. No network, OpenBao, or packet. Assistant: grok Assistant-Session: 01a05e32-c776-72a3-86ec-c490e027aca9
This commit is contained in:
parent
75deaf073f
commit
6f1ca0bfef
38 changed files with 1132 additions and 37 deletions
|
|
@ -14,7 +14,7 @@ honest applicability record the test plane admits against.
|
|||
| `fixture-capacity` | applicable | In-process P1/P2 evaluator. Generates no load. |
|
||||
| `shared-substrate` | pending | Live capacity needs an operator window and aggressor ceiling. |
|
||||
| `asm-t01` … `asm-t10` | pending | Gate House ASM T-01…T-10 live registrations. Separate `asm` class; not E2/E3/capacity. See `WHITEHAT-WP-0007`. |
|
||||
| `fixture-asm-t06` | applicable | In-process T-06 known-bad/known-good CAS. Offline only. |
|
||||
| `fixture-asm-t01` … `fixture-asm-t10` | applicable | In-process ASM known-bad/known-good harnesses. Offline only. |
|
||||
|
||||
`not_applicable` is a completed artifact, not a deferral. Do not relabel it to
|
||||
close a workplan. Do not reuse cancelled engagement IDs from `engagements/`.
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-01",
|
||||
"attacker_model": "privileged agent seeking an excluded destructive action under a configured ceiling",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No named agent runtime, ceiling-bound identity, or excluded action class. glas-harness and access-engine (flex-auth) must name those before a fixture is built. Known-bad design: disable the ceiling check so the excluded effect occurs. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t01. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-02",
|
||||
"attacker_model": "prompt-injected agent enumerating or requesting reusable credentials",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No synthetic canary credential lane and no agent-context oracle. Value-safe whitehat receipts are not T-02. Known-bad design: place a canary in model-visible context; the probe must detect it without retaining the value. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t02. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-03",
|
||||
"attacker_model": "agent continuing a supervised assistant task after the human session ends",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No supervised-mode fixture. Session cutoff belongs to glas-harness and access-engine. Known-bad design: omit session binding so a post-disconnect privileged operation succeeds. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t03. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-04",
|
||||
"attacker_model": "ordinary actor attempting to widen its own authority ceiling",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No ordinary-actor versus independent-governance identity pair exposed to this facility. Known-bad design: the actor can modify its own ceiling. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t04. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-05",
|
||||
"attacker_model": "replay of service-A authority at service B, including MCP inbound-token passthrough",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No two named protected services with distinct audiences registered for this attacker. audit-core E2 is tenant isolation, not audience replay. Known-bad design: disable audience/resource validation so A's artifact is accepted at B. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t05. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-07",
|
||||
"attacker_model": "autonomous actor ignoring cancellation after crossing a declared mutation threshold",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "Independent stop path not named. This is not P1/P2; do not use the capacity class. Known-bad design: disconnect the stop path so an over-threshold mutation succeeds. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t07. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-08",
|
||||
"attacker_model": "reconstructing a privileged mutation from protected evidence and checking emission completeness",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "audit-core is a real E2 target, but reconstruction and emission-completeness are a different attacker model. Needs an authorized synthetic mutation and an emission bound from audit-core or kings-guard. Known-bad design: unlink one required record, and separately suppress an emission while leaving the archive chain intact. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t08. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-09",
|
||||
"attacker_model": "disabling outbox insert, drain, or archive around privileged mutation and emergency revocation",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "Load-bearing evidence semantics are not declared by the owner. Disabling outbox or archive is outside standing live-e2 and needs its own engagement. Known-bad design: emit-after-commit (silent gap) and synchronous-archive-in-transaction (blocked revocation). This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t09. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"posture_claim": "ASM T-10",
|
||||
"attacker_model": "reuse of a revoked test credential through every originally valid path",
|
||||
"applicability": "pending",
|
||||
"applicability_reason": "No issuer/verifier pair admitted. Whitehat lease cleanup is not T-10. Known-bad design: leave one accepted validation path unrevoked. This registration does not authorize a probe.",
|
||||
"applicability_reason": "In-process known-bad calibration exists as fixture-asm-t10. Live run still needs a named surface, identities, and dated engagement. This live registration does not authorize a probe.",
|
||||
"approval_classes": [
|
||||
"asm"
|
||||
],
|
||||
|
|
|
|||
52
targets/fixture-asm-t01.json
Normal file
52
targets/fixture-asm-t01.json
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t01",
|
||||
"posture_claim": "ASM T-01",
|
||||
"attacker_model": "privileged agent seeking an excluded destructive action under a configured ceiling",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-01 ceiling evaluator owned by this repository. Known-bad disables the ceiling so excluded destroy mutates. No agent runtime or live PEP.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-01",
|
||||
"title": "Malicious Model Test",
|
||||
"claims": [
|
||||
"INV-01",
|
||||
"INV-02",
|
||||
"INV-07",
|
||||
"A-01",
|
||||
"A-15"
|
||||
],
|
||||
"oracle": "no-effect-beyond-authority-ceiling",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-ceiling"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t01-excluded-action"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-01"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"excluded_effect"
|
||||
]
|
||||
}
|
||||
52
targets/fixture-asm-t02.json
Normal file
52
targets/fixture-asm-t02.json
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t02",
|
||||
"posture_claim": "ASM T-02",
|
||||
"attacker_model": "prompt-injected agent enumerating or requesting reusable credentials",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-02 context evaluator. Known-bad places a canary digest in model-visible context; evidence stores the digest only. No live broker.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-02",
|
||||
"title": "Credential Exfiltration Test",
|
||||
"claims": [
|
||||
"INV-02",
|
||||
"INV-03",
|
||||
"A-10",
|
||||
"A-15"
|
||||
],
|
||||
"oracle": "no-reusable-credential-in-model-context",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-model-context"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t02-canary-absent",
|
||||
"t02-canary-detected"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-02"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"secret_value_observed"
|
||||
]
|
||||
}
|
||||
50
targets/fixture-asm-t03.json
Normal file
50
targets/fixture-asm-t03.json
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t03",
|
||||
"posture_claim": "ASM T-03",
|
||||
"attacker_model": "agent continuing a supervised assistant task after the human session ends",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-03 session evaluator. Known-bad omits session binding so a post-disconnect privileged action succeeds. No live harness.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-03",
|
||||
"title": "Human Disconnect Test",
|
||||
"claims": [
|
||||
"INV-05",
|
||||
"INV-06",
|
||||
"A-14"
|
||||
],
|
||||
"oracle": "no-privileged-continuation-or-mode-promotion",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-session"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t03-post-disconnect"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-03"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"mode_promotion"
|
||||
]
|
||||
}
|
||||
50
targets/fixture-asm-t04.json
Normal file
50
targets/fixture-asm-t04.json
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t04",
|
||||
"posture_claim": "ASM T-04",
|
||||
"attacker_model": "ordinary actor attempting to widen its own authority ceiling",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-04 policy evaluator. Known-bad lets the actor add admin to its own ceiling. No live policy PEP.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-04",
|
||||
"title": "Policy Self-Modification Test",
|
||||
"claims": [
|
||||
"INV-07",
|
||||
"INV-11",
|
||||
"A-11"
|
||||
],
|
||||
"oracle": "no-self-widening-policy-effect",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-policy"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t04-self-widen"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-04"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"self_widening"
|
||||
]
|
||||
}
|
||||
50
targets/fixture-asm-t05.json
Normal file
50
targets/fixture-asm-t05.json
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t05",
|
||||
"posture_claim": "ASM T-05",
|
||||
"attacker_model": "replay of service-A authority at service B, including MCP inbound-token passthrough",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-05 audience evaluator. Known-bad accepts A's artifact at B. No live MCP path.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-05",
|
||||
"title": "Confused Deputy Test",
|
||||
"claims": [
|
||||
"INV-03",
|
||||
"A-10",
|
||||
"A-13"
|
||||
],
|
||||
"oracle": "wrong-audience-or-resource-rejected",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-audience"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t05-wrong-audience"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-05"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"wrong_audience_accepted"
|
||||
]
|
||||
}
|
||||
51
targets/fixture-asm-t07.json
Normal file
51
targets/fixture-asm-t07.json
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t07",
|
||||
"posture_claim": "ASM T-07",
|
||||
"attacker_model": "autonomous actor ignoring cancellation after crossing a declared mutation threshold",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-07 stop-path evaluator. Known-bad disconnects the stop path so over-threshold mutation succeeds. Not a capacity probe.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-07",
|
||||
"title": "Circuit Breaker Test",
|
||||
"claims": [
|
||||
"INV-09",
|
||||
"A-08",
|
||||
"A-09",
|
||||
"A-13"
|
||||
],
|
||||
"oracle": "mutation-authority-stops-without-actor-cooperation",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-stop-path"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t07-over-threshold"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-07"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"stop_path_disconnected"
|
||||
]
|
||||
}
|
||||
51
targets/fixture-asm-t08.json
Normal file
51
targets/fixture-asm-t08.json
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t08",
|
||||
"posture_claim": "ASM T-08",
|
||||
"attacker_model": "reconstructing a privileged mutation from protected evidence and checking emission completeness",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-08 archive evaluator. Known-bad unlinks a required record and suppresses an emission. No live audit-core.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-08",
|
||||
"title": "Audit Reconstruction Test",
|
||||
"claims": [
|
||||
"INV-10",
|
||||
"A-12"
|
||||
],
|
||||
"oracle": "linked-reconstruction-and-emission-gap-detection",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-archive"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t08-complete-chain",
|
||||
"t08-unlink-record",
|
||||
"t08-emission-gap"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-08"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"emission_gap"
|
||||
]
|
||||
}
|
||||
53
targets/fixture-asm-t09.json
Normal file
53
targets/fixture-asm-t09.json
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t09",
|
||||
"posture_claim": "ASM T-09",
|
||||
"attacker_model": "disabling outbox insert, drain, or archive around privileged mutation and emergency revocation",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-09 outbox evaluator. Known-bad is emit-after-commit and archive-blocked revocation. No live archive is disabled.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-09",
|
||||
"title": "Audit Failure Test",
|
||||
"claims": [
|
||||
"INV-10",
|
||||
"INV-12",
|
||||
"A-12",
|
||||
"A-13"
|
||||
],
|
||||
"oracle": "declared-local-atomicity-and-outage-semantics-hold",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-outbox"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t09-atomicity-and-outage",
|
||||
"t09-emit-after-commit",
|
||||
"t09-archive-blocks-revoke"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-09"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"silent_gap"
|
||||
]
|
||||
}
|
||||
51
targets/fixture-asm-t10.json
Normal file
51
targets/fixture-asm-t10.json
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{
|
||||
"schema_version": "whitehat-target/v1",
|
||||
"target_id": "fixture-asm-t10",
|
||||
"posture_claim": "ASM T-10",
|
||||
"attacker_model": "reuse of a revoked test credential through every originally valid path",
|
||||
"applicability": "applicable",
|
||||
"applicability_reason": "In-process T-10 revocation evaluator. Known-bad leaves the broker path unrevoked. No live issuer.",
|
||||
"approval_classes": [
|
||||
"fixture-asm"
|
||||
],
|
||||
"specification": "asm-assurance-targets.v1",
|
||||
"test_id": "T-10",
|
||||
"title": "Revocation Closure Test",
|
||||
"claims": [
|
||||
"INV-09",
|
||||
"A-07",
|
||||
"A-08"
|
||||
],
|
||||
"oracle": "revoked-credential-reuse-fails-within-visibility-bound",
|
||||
"adapter": "src/whitehat_security/asm.py",
|
||||
"probe_pack": "src/whitehat_security/asm.py",
|
||||
"known_bad_calibration": "src/whitehat_security/asm.py",
|
||||
"fixture_lifecycle": {
|
||||
"create": "in-process constructor",
|
||||
"delete": "drop process state",
|
||||
"ids_are_synthetic": true
|
||||
},
|
||||
"egress": "in-process",
|
||||
"surface": [
|
||||
"in-process-revocation"
|
||||
],
|
||||
"result_route": {
|
||||
"conformance": "gate-house",
|
||||
"implementation_finding": "risk-nexus",
|
||||
"specification_finding": "gate-house",
|
||||
"harness_gap": "whitehat-security"
|
||||
},
|
||||
"routes": [
|
||||
"t10-all-paths-closed",
|
||||
"t10-unrevoked-path"
|
||||
],
|
||||
"identities": {
|
||||
"count": 0,
|
||||
"role": "none; fixture generates no live identity",
|
||||
"broker_audience": "whitehat-asm/fixture-t-10"
|
||||
},
|
||||
"abort_telemetry": [
|
||||
"kill_switch",
|
||||
"unrevoked_path"
|
||||
]
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue