{
  "id": "shieldbreak",
  "title": "What changes between the check and the use?",
  "subtitle": "A dated ShieldBreak / RoguePlanet walkthrough of defensive transfer scope.",
  "date": "2026-09-05",
  "revision": "local-draft-3",
  "generatedDate": "2026-10-07",
  "summary": "A security engine checks a file or path, then uses it with elevated privileges. This case compares three ways the value used can differ from the value checked.\n\nTwo variations come from the ShieldBreak model on the homepage: changing the file's contents, and redirecting an object path. The third comes from the related RoguePlanet case and uses a folder junction.",
  "scopeNote": "Local review draft of the 5 September 2026 type-level analysis, curated to C2 and M3/M4/N3. No external facts were refreshed, no exploit or perturbation was executed, no detector was tested, and no deployed posture was supplied. All modeled requirements are inferred.",
  "claims": [
    {
      "id": "claim-c2",
      "title": "Three records share a check-to-use pattern",
      "text": "In the archived model, M3, M4 and N3 require user-level execution and a privileged security engine working on an attacker-controlled path. Each changes the value used after a check. This is the estimated C2 pattern; the bytes, object path and junction path remain different variations.",
      "status": "inferred",
      "sourceIds": [
        "S17",
        "S10",
        "S11",
        "S12"
      ],
      "evidenceRefs": [
        "archive-yaml#invariant_cores/C2",
        "archive-yaml#records/M3",
        "archive-yaml#records/M4",
        "archive-yaml#records/N3"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "C2 has provisional identity. Its three modeled members are an observed population, not the definition of membership.",
        "No requirement or invariant was established by perturbation.",
        "Both incidents trace to one reported researcher; secondary agreement is not independent confirmation."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-transfer",
      "title": "A result confined to one variation has a confined scope",
      "text": "A change aimed only at junction-path revalidation does not, from the model alone, establish protection for the byte substitution or Object Manager path variation. A wider transfer claim needs evidence that the change acts on C2’s invariant and satisfies the relevant scope conditions.",
      "status": "inferred",
      "sourceIds": [
        "S11",
        "S12",
        "S17"
      ],
      "evidenceRefs": [
        "archive-yaml#records/M4/method_notes",
        "archive-yaml#invariant_cores/C2"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "This is a structural comparison, not a statement about current patches, affected builds, or host exposure.",
        "The archived patch association depends on search excerpts. No affected host or control was tested here.",
        "C2 has no required shared postcondition; this case does not claim response transfer across C2."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-unmeasured",
      "title": "The archive reports no measured requirements",
      "text": "The historical provenance block records zero measured elements and zero perturbation runs. A documented local correction labels authored source-based requirements asserted and keeps the inferred core and derived products separate. Neither classification establishes measurement or empirical validity.",
      "status": "supported",
      "sourceIds": [],
      "evidenceRefs": [
        "archive-yaml#provenance",
        "archive-yaml#completeness_claim"
      ],
      "provenanceKind": "asserted",
      "limitations": [
        "Supported here means documented by the supplied local archive. It does not verify the external incident or the archive’s historical test claims."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-binding",
      "title": "The formal bindings carry a pin mismatch",
      "text": "The archive uses MC-SPEC 0.4.19-draft with corpus hash be8b75136580, while its mc-core 0.4.20.1 ontology pin names 65b2c0f51cf7. The archive marks the bindings provisional. This local presentation preserves that qualification.",
      "status": "supported",
      "sourceIds": [],
      "evidenceRefs": [
        "archive-yaml#bindings"
      ],
      "provenanceKind": "asserted",
      "limitations": [
        "The underlying specification and ontology deposits were not revalidated in this task.",
        "The authoring schema and proposed display statuses are not MC normative schemas or enums."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-platform",
      "title": "An unavailable placement is different from an undeployed one",
      "text": "The archived defensive profile distinguishes a mechanism placement with no available defender-reachable defeating value from an available placement that has not been deployed. An ambient platform condition must not be credited as a defensive action.",
      "status": "inferred",
      "sourceIds": [],
      "evidenceRefs": [
        "archive-yaml#records/M4/defensive_design_profile"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "The retained typing describes the archived model; it does not prove that no present-day control can affect the condition.",
        "No deployed defensive posture is supplied."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M4"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-posture",
      "title": "Protection on a real host remains unassessed",
      "text": "This case contains no deployed posture, detection test or perturbation result. It cannot decide whether a particular host is protected, whether a candidate detector works, or whether the chain is reachable in that environment.",
      "status": "unknown",
      "sourceIds": [],
      "evidenceRefs": [
        "archive-yaml#export/altitude",
        "archive-yaml#provenance",
        "archive-yaml#enablement_graph"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "An enablement edge supplies at least one later clause; paths do not prove full availability or reachability.",
        "Frame conditions and parallel-chain interference are outside the archived model’s stated coverage."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "claim-o5",
      "title": "M5 retains both required inputs beyond the C3 core",
      "text": "The archived M5 record requires both attacker-controlled privilegedProcessInput and an attacker-chosen privilegedWriteTarget. The input clause remains a required variation beyond C3; neither supplier alone is claimed sufficient.",
      "status": "inferred",
      "sourceIds": [],
      "evidenceRefs": [
        "archive-yaml#records/M5",
        "archive-yaml#records/M5/variation_against_core",
        "archive-yaml#invariant_cores/C3"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "The residual M5 bench test has not been run. C3 is separate research context supported by two authored records, below the stated support guideline."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [],
      "outsideCuratedSelection": true
    },
    {
      "id": "claim-current",
      "title": "Current incident and patch status are outside this snapshot",
      "text": "The archive is dated 5 September 2026. No external advisory, repository, engine build or patch status was refreshed for this local draft. The case is a dated walkthrough of the model.",
      "status": "unknown",
      "sourceIds": [
        "S15",
        "S16"
      ],
      "evidenceRefs": [
        "archive-yaml#references/15",
        "archive-yaml#references/16"
      ],
      "provenanceKind": "derived",
      "limitations": [
        "The two primary registry entries were not retrieved in the archive either.",
        "Historical “no patch” and affected-build statements are not repeated as current advice."
      ],
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "This field describes a conclusion, not a tested detection."
      },
      "disputeStatus": "none-recorded",
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    }
  ],
  "sources": [
    {
      "id": "S01",
      "title": "Sheel, Vamika. \"CVE-2026-69414 ShieldBreak Zero-Day: No Patch, and CISA BOD 26-04 Gives You 14 Days.\" Qualys Blog, 25 August 2026, updated 3 September 2026.",
      "url": "https://blog.qualys.com/product-tech/2026/08/24/shieldbreak-the-windows-defender-zero-day-with-no-patch-detect-it-mitigate-it-with-qualys",
      "kind": "secondary-report",
      "retrieval": "full text retrieved 2026-09-05",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 1,
      "evidenceRefs": [
        "archive-yaml#references/1"
      ]
    },
    {
      "id": "S02",
      "title": "\"ShieldBreak: A Local Privilege Escalation Path Through Microsoft Defender.\" CyberMaxx, August 2026.",
      "url": "https://www.cybermaxx.com/resources/shieldbreak-a-local-privilege-escalation-path-through-microsoft-defender/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 2,
      "evidenceRefs": [
        "archive-yaml#references/2"
      ]
    },
    {
      "id": "S03",
      "title": "\"Microsoft Defender Patch Bypass: High Severity Zero-Day Privilege Escalation (CVE-2026-50656/RoguePlanet, ShieldBreak).\" Arctic Wolf, August 2026.",
      "url": "https://arcticwolf.com/resources/blog/cve-2026-50656-rogueplanet-shieldbreak/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 3,
      "evidenceRefs": [
        "archive-yaml#references/3"
      ]
    },
    {
      "id": "S04",
      "title": "\"ShieldBreak bypasses Microsoft's patch for earlier Defender flaw.\" Malwarebytes Labs, August 2026.",
      "url": "https://www.malwarebytes.com/blog/bugs/2026/08/shieldbreak-bypasses-microsofts-patch-for-earlier-defender-flaw",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 4,
      "evidenceRefs": [
        "archive-yaml#references/4"
      ]
    },
    {
      "id": "S05",
      "title": "\"New Microsoft Defender 'ShieldBreak' zero-day grants SYSTEM privileges.\" BleepingComputer, August 2026.",
      "url": "https://www.bleepingcomputer.com/news/security/new-microsoft-defender-shieldbreak-zero-day-grants-system-privileges/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 5,
      "evidenceRefs": [
        "archive-yaml#references/5"
      ]
    },
    {
      "id": "S06",
      "title": "\"Microsoft working on Defender patch for ShieldBreak zero-day.\" BleepingComputer, August 2026. Carries Will Dormann's confirmation that the exploit works and that Defender must be enabled.",
      "url": "https://www.bleepingcomputer.com/news/security/microsoft-working-on-defender-patch-for-shieldbreak-zero-day/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 6,
      "evidenceRefs": [
        "archive-yaml#references/6"
      ]
    },
    {
      "id": "S07",
      "title": "\"ShieldBreak Zero-Day PoC Claims Microsoft Defender Patch Bypass With SYSTEM Access.\" The Hacker News, 13 August 2026 (updated after publication).",
      "url": "https://thehackernews.com/2026/08/shieldbreak-zero-day-poc-claims.html",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 7,
      "evidenceRefs": [
        "archive-yaml#references/7"
      ]
    },
    {
      "id": "S08",
      "title": "MSNightmare. \"ShieldBreak: Windows Defender 0day vulnerability.\" GitHub repository, August 2026. Repository description only; no exploit content was read, retrieved or reproduced.",
      "url": "https://github.com/MSNightmare/ShieldBreak",
      "kind": "repository-description",
      "retrieval": "repository description only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": false,
      "archiveReferenceId": 8,
      "evidenceRefs": [
        "archive-yaml#references/8"
      ],
      "originalTitle": "MSNightmare. \"ShieldBreak \" Windows Defender 0day vulnerability.\" GitHub repository, August 2026. Repository description only; no exploit content was read, retrieved or reproduced.",
      "displayTitleNote": "Punctuation normalized for display from the archived title; original wording has not been independently checked.",
      "titleCorrection": {
        "basis": "Editorial display correction from the archived words",
        "externalVerification": "not-performed"
      }
    },
    {
      "id": "S09",
      "title": "\"CVE-2026-69414 Defender Flaw Has No Fix or Affected Builds.\" Windows Forum, 3 September 2026.",
      "url": "https://windowsforum.com/windows-news.4/cve-2026-69414-defender-flaw-has-no-fix-or-affected-builds.443144/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 9,
      "evidenceRefs": [
        "archive-yaml#references/9"
      ]
    },
    {
      "id": "S10",
      "title": "\"CVE-2026-50656: Microsoft Defender RoguePlanet Zero-Day Enables Local Privilege Escalation on Fully Patched Windows 10 and 11 Systems.\" Rescana, 18 June 2026.",
      "url": "https://www.rescana.com/post/cve-2026-50656-microsoft-defender-rogueplanet-zero-day-enables-local-privilege-escalation-on-fully-patched-windows-10-11",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": false,
      "archiveReferenceId": 10,
      "evidenceRefs": [
        "archive-yaml#references/10"
      ],
      "originalTitle": "\"CVE-2026-50656: Microsoft Defender RoguePlanet Zero-Day Enables Local Privilege Escalation on Fully Patched Windows 10 \" 11 Systems.\" Rescana, 18 June 2026.",
      "displayTitleNote": "Punctuation normalized for display from the archived title; original wording has not been independently checked.",
      "titleCorrection": {
        "basis": "Editorial display correction from the archived words",
        "externalVerification": "not-performed"
      }
    },
    {
      "id": "S11",
      "title": "\"Microsoft fixed Defender flaw RoguePlanet (CVE-2026-50656).\" Security Affairs, 9 July 2026. Source for the Windows Server mounting limitation.",
      "url": "https://securityaffairs.com/195016/security/microsoft-fixed-defender-flaw-rogueplanet-cve-2026-50656.html",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 11,
      "evidenceRefs": [
        "archive-yaml#references/11"
      ]
    },
    {
      "id": "S12",
      "title": "\"CVE-2026-50656 'RoguePlanet': Microsoft Defender Malware Protection Engine Privilege Escalation to SYSTEM.\" Threat-Modeling.com, 9 July 2026. Source for engine version 1.1.26060.3008.",
      "url": "https://threat-modeling.com/cve-2026-50656-rogueplanet-microsoft-defender-privilege-escalation/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 12,
      "evidenceRefs": [
        "archive-yaml#references/12"
      ]
    },
    {
      "id": "S13",
      "title": "\"RoguePlanet LPE Exploit CVE-2026-50656 Analysis.\" femtosec, 14 July 2026. Source for the reported five-second chain and the dark-web exploit sales.",
      "url": "https://femtosec.io/threat-intelligence/rogueplanet-cve-2026-50656-privilege-escalation",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 13,
      "evidenceRefs": [
        "archive-yaml#references/13"
      ]
    },
    {
      "id": "S14",
      "title": "\"CVE-2026-50656 RoguePlanet, Defender's Race to SYSTEM.\" Penligent, 19 June 2026. Source for the detection guidance on privileged security processes.",
      "url": "https://www.penligent.ai/hackinglabs/cve-2026-50656/",
      "kind": "secondary-report",
      "retrieval": "search excerpt only",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 14,
      "evidenceRefs": [
        "archive-yaml#references/14"
      ]
    },
    {
      "id": "S15",
      "title": "Microsoft Security Response Center. Security Update Guide entry for CVE-2026-69414. Not retrieved directly; status as reported by references 1 and 9.",
      "url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-69414",
      "kind": "primary-registry",
      "retrieval": "not retrieved",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 15,
      "evidenceRefs": [
        "archive-yaml#references/15"
      ]
    },
    {
      "id": "S16",
      "title": "CVE Program record, CVE-2026-69414.",
      "url": "https://www.cve.org/CVERecord?id=CVE-2026-69414",
      "kind": "primary-registry",
      "retrieval": "not retrieved",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 16,
      "evidenceRefs": [
        "archive-yaml#references/16"
      ]
    },
    {
      "id": "S17",
      "title": "\"ShieldBreak In-Depth Analysis.\" CRYPTRON Security GmbH, August 2026. Source for the phase sequence: detected test content served first, payload served on restart hydration, Object Manager links redirected concurrently. Direct retrieval refused by the site's robots policy; search excerpt only.",
      "url": "https://www.cryptron.ch/en/blog-detail/ShieldBreak-In-Depth-Analysis.html",
      "kind": "secondary-report",
      "retrieval": "search excerpt only, retrieval refused",
      "statusNote": "Retrieval label is copied from the 2026-09-05 archive, not a new retrieval. External content was not revisited for this local draft.",
      "archivalTitle": true,
      "archiveReferenceId": 17,
      "evidenceRefs": [
        "archive-yaml#references/17"
      ]
    }
  ],
  "maneuvers": [
    {
      "id": "M3",
      "title": "Swap the file contents during cleanup",
      "plain": "Swap the file contents while the security engine is cleaning it up.",
      "preconditions": [
        "The attacker can run code as a normal user.",
        "The attacker's process decides what the security engine reads from that file.",
        "The security engine is scanning the attacker's path as SYSTEM.",
        "The security engine does not re-check the contents before acting on them."
      ],
      "mechanism": [
        "Hand the security engine a file it will flag, so it starts cleaning it up.",
        "Hand it different contents when it reads the file again during cleanup."
      ],
      "postconditions": [
        "The security engine is now working on bytes the attacker chose, with SYSTEM rights."
      ],
      "variant": "content",
      "sourceIds": [
        "S17",
        "S01"
      ],
      "evidenceRefs": [
        "archive-yaml#records/M3"
      ],
      "provenanceKind": "asserted",
      "requirementBasis": "inferred; no perturbation",
      "formal": {
        "preconditions": [
          "executionContext ⊒ user",
          "hydrationCallbackOwner = adversary",
          "scannerAttention = onAdversaryPath",
          "contentRevalidation = absent"
        ],
        "mechanism": [
          "serve detected test content on the first hydration, so the engine enters remediation",
          "serve different content on the restart hydration that the remediation read triggers"
        ],
        "postconditions": [
          "privilegedProcessInput = adversaryControlled"
        ]
      },
      "variation": {
        "againstCore": "C2",
        "stateVariable": "contentRevalidation",
        "stillRequiredByRecord": true,
        "note": "The served bytes and their revalidation gap are the record’s required variation beyond C2."
      },
      "limitations": [
        "Type-level reconstruction of the archived reports; no deployment or successful exploit execution observed in this draft.",
        "The common mechanism is inferred; matching it does not establish an identical defect or a shared implementation."
      ],
      "provenanceCorrection": {
        "originalKind": "derived",
        "correctedKind": "asserted",
        "basis": "Authored source-based requirement declarations; their necessity remains inferred, with no measurement or fresh external validation.",
        "scope": "Authored record requirements only. Cores, graph edges and defensive profile terms retain archived derived status.",
        "executionNote": "This is a local source-level editorial correction. No reasoner or empirical test was run, and historical evidence excerpts retain the original blanket derived label.",
        "modelArtifact": "/artifacts/shieldbreak-model.yaml",
        "changesArtifact": "/artifacts/shieldbreak-model-changes.json"
      }
    },
    {
      "id": "M4",
      "title": "Redirect the privileged write through an object path",
      "plain": "Redirect where the security engine's privileged write lands.",
      "preconditions": [
        "The attacker can run code as a normal user.",
        "The security engine is working on the attacker's path as SYSTEM.",
        "A normal user can create Object Manager symbolic links in their own namespace.",
        "The security engine does not re-check the path before it writes."
      ],
      "mechanism": [
        "Change where the link points, after the security engine has checked the path and before it writes."
      ],
      "postconditions": [
        "The security engine's SYSTEM-level write lands wherever the attacker chose."
      ],
      "variant": "object-path",
      "sourceIds": [
        "S17",
        "S02",
        "S09"
      ],
      "evidenceRefs": [
        "archive-yaml#records/M4"
      ],
      "provenanceKind": "asserted",
      "requirementBasis": "inferred; no perturbation",
      "formal": {
        "preconditions": [
          "executionContext ⊒ user",
          "scannerAttention = onAdversaryPath",
          "objectSymlinkCreation ⊒ permittedToUser",
          "objectPathRevalidation = absent"
        ],
        "mechanism": [
          "rebind Object Manager symbolic links between the engine's path resolution and its use"
        ],
        "postconditions": [
          "privilegedWriteTarget = adversaryChosen"
        ]
      },
      "variation": {
        "againstCore": "C2",
        "stateVariable": "objectPathRevalidation",
        "stillRequiredByRecord": true,
        "note": "Object Manager link rebinding and its revalidation gap are the record’s required variation beyond C2."
      },
      "limitations": [
        "Type-level reconstruction of the archived reports; no deployment or successful exploit execution observed in this draft.",
        "The common mechanism is inferred; matching it does not establish an identical defect or a shared implementation."
      ],
      "provenanceCorrection": {
        "originalKind": "derived",
        "correctedKind": "asserted",
        "basis": "Authored source-based requirement declarations; their necessity remains inferred, with no measurement or fresh external validation.",
        "scope": "Authored record requirements only. Cores, graph edges and defensive profile terms retain archived derived status.",
        "executionNote": "This is a local source-level editorial correction. No reasoner or empirical test was run, and historical evidence excerpts retain the original blanket derived label.",
        "modelArtifact": "/artifacts/shieldbreak-model.yaml",
        "changesArtifact": "/artifacts/shieldbreak-model-changes.json"
      }
    },
    {
      "id": "N3",
      "title": "Redirect the privileged write through a folder junction",
      "plain": "Swap the folder link at the exact moment the security engine is using it.",
      "preconditions": [
        "The attacker can run code as a normal user.",
        "The security engine is working on the attacker's path as SYSTEM.",
        "A normal user can create NTFS junctions.",
        "The security engine does not re-check the path between checking it and writing to it."
      ],
      "mechanism": [
        "Repoint the junction in the gap between the security engine's check and its write. Retry until the timing lands."
      ],
      "postconditions": [
        "The security engine's SYSTEM-level write lands wherever the attacker chose."
      ],
      "variant": "junction-path",
      "sourceIds": [
        "S10",
        "S11",
        "S12"
      ],
      "evidenceRefs": [
        "archive-yaml#records/N3"
      ],
      "provenanceKind": "asserted",
      "requirementBasis": "inferred; no perturbation",
      "formal": {
        "preconditions": [
          "executionContext ⊒ user",
          "scannerAttention = onAdversaryPath",
          "junctionCreation ⊒ permittedToUser",
          "junctionPathRevalidation = absent"
        ],
        "mechanism": [
          "rebind an NTFS junction between the engine's path check and its quarantine write, repeating until the race is won"
        ],
        "postconditions": [
          "privilegedWriteTarget = adversaryChosen"
        ]
      },
      "variation": {
        "againstCore": "C2",
        "stateVariable": "junctionPathRevalidation",
        "stillRequiredByRecord": true,
        "note": "NTFS junction rebinding and its revalidation gap are the record’s required variation beyond C2."
      },
      "limitations": [
        "Type-level reconstruction of the archived reports; no deployment or successful exploit execution observed in this draft.",
        "The common mechanism is inferred; matching it does not establish an identical defect or a shared implementation."
      ],
      "provenanceCorrection": {
        "originalKind": "derived",
        "correctedKind": "asserted",
        "basis": "Authored source-based requirement declarations; their necessity remains inferred, with no measurement or fresh external validation.",
        "scope": "Authored record requirements only. Cores, graph edges and defensive profile terms retain archived derived status.",
        "executionNote": "This is a local source-level editorial correction. No reasoner or empirical test was run, and historical evidence excerpts retain the original blanket derived label.",
        "modelArtifact": "/artifacts/shieldbreak-model.yaml",
        "changesArtifact": "/artifacts/shieldbreak-model-changes.json"
      }
    }
  ],
  "interventions": [
    {
      "id": "intervention-revalidation",
      "title": "Define the boundary a candidate fix actually closes",
      "principle": "Keep the value used by a privileged operation bound to the value that was checked, or revalidate the value before use.",
      "capability": "Revalidation and race-resistant handling of content and resolved paths in privileged security-engine operations.",
      "implementation": "For this review exercise, map a candidate change to contentRevalidation, objectPathRevalidation and junctionPathRevalidation separately. Record which variation it defeats and test the relevant condition before claiming a result transfers across C2.",
      "limits": "This is a proposed intervention principle and validation plan. No fix was implemented or deployed here. A result on N3 alone does not establish results on M3 or M4, and no class-wide response result is claimed.",
      "claimIds": [
        "claim-c2",
        "claim-transfer",
        "claim-posture"
      ],
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "sourceIds": [
        "S11",
        "S12",
        "S17"
      ],
      "evidenceRefs": [
        "archive-yaml#records/M4/method_notes",
        "archive-yaml#records/N3/defensive_design_profile"
      ],
      "realizationStatus": "intended",
      "detectionValidation": {
        "status": "not-applicable",
        "scope": "Intervention scope review; no detector implemented."
      },
      "outsideCuratedSelection": false
    }
  ],
  "challenges": [
    {
      "id": "challenge-requirements",
      "title": "Do the inferred requirements survive controlled variation?",
      "text": "The archived model was reconstructed from reports. No test removed or varied a required element while holding the rest of the setup fixed.",
      "consequence": "Keep the requirements and C2 provisional. A contradictory experiment should revise the required set and recompute dependent cores and edges.",
      "claimIds": [
        "claim-c2",
        "claim-unmeasured"
      ],
      "evidenceRefs": [
        "archive-yaml#provenance"
      ],
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "challenge-evidence",
      "title": "How much of the registry was actually available?",
      "text": "Only one reference carries an archived full-text retrieval label; thirteen carry search-excerpt labels, one has repository-description-only access, and two were not retrieved. The excerpt for reference 17 also records refused direct retrieval.",
      "consequence": "Source count and publisher diversity cannot establish independent confirmation, full evidence access or current validity.",
      "claimIds": [
        "claim-c2",
        "claim-current"
      ],
      "evidenceRefs": [
        "archive-yaml#references"
      ],
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "challenge-reachability",
      "title": "What would establish a real defensive result?",
      "text": "A model edge carries at least one precondition clause. It does not prove all later clauses hold, nor that a deployment can reach a preventing state.",
      "consequence": "A reachability or protection claim needs a scoped posture and tests beyond this type-level graph.",
      "claimIds": [
        "claim-posture"
      ],
      "evidenceRefs": [
        "archive-yaml#enablement_graph"
      ],
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    },
    {
      "id": "challenge-m5",
      "title": "Does M5 need both suppliers?",
      "text": "The archived M5 record requires both supplier clauses. A residual experiment would vary privilegedProcessInput and observe whether SYSTEM execution still follows with the remaining conditions held.",
      "consequence": "If that clause proved incidental, the archive says M5 and N4 would have equal required sets and C3 would need withdrawal as a distinct multi-record estimate. That outcome is not claimed.",
      "claimIds": [
        "claim-o5"
      ],
      "evidenceRefs": [
        "archive-yaml#records/M5",
        "archive-yaml#records/M5/variation_against_core",
        "archive-yaml#invariant_cores/C3"
      ],
      "maneuverIds": [],
      "outsideCuratedSelection": true
    },
    {
      "id": "challenge-pins",
      "title": "Can the formal bindings be reconciled?",
      "text": "The specification corpus used by the archive differs from the ontology’s recorded specification pin.",
      "consequence": "Keep every archived ontology binding provisional until the pins are reconciled against authoritative source material.",
      "claimIds": [
        "claim-binding"
      ],
      "evidenceRefs": [
        "archive-yaml#bindings"
      ],
      "maneuverIds": [
        "M3",
        "M4",
        "N3"
      ],
      "outsideCuratedSelection": false
    }
  ],
  "versions": [
    {
      "label": "Local presentation revision",
      "value": "local-draft-3",
      "status": "authoring wrapper; generated 2026-10-07"
    },
    {
      "label": "Analysis snapshot",
      "value": "2026-09-05",
      "status": "archived; no external refresh"
    },
    {
      "label": "Record export",
      "value": "Curated formal slice · archival source 0.4.0",
      "status": "local-draft-3 curated projection; not a normative release"
    },
    {
      "label": "Specification",
      "value": "MC-SPEC 0.4.19-draft · be8b75136580",
      "status": "archived pin; not revalidated here"
    },
    {
      "label": "Ontology",
      "value": "mc-core 0.4.20.1 · spec pin 65b2c0f51cf7",
      "status": "provisional binding; pin differs from specification corpus"
    },
    {
      "label": "Fuller public model",
      "value": "local-draft-3 · archival source 0.4.0",
      "status": "source-level correction and documented redactions; not a normative release"
    }
  ],
  "story": [
    {
      "id": "story-source",
      "phase": "source",
      "title": "Start with a dated source package",
      "text": "An analyst receives reports of two local privilege-escalation incidents and an archived model dated 5 September 2026. The task is to inspect what the model can support.",
      "caption": "Archived input; no new advisory or operational assessment.",
      "claimIds": [
        "claim-current"
      ],
      "sourceIds": [
        "S01",
        "S17",
        "S10"
      ],
      "objectIds": [
        "M3",
        "M4",
        "N3"
      ]
    },
    {
      "id": "story-evidence",
      "phase": "evidence",
      "title": "Separate reported behavior from evidence access",
      "text": "The registry names 17 references, but most were available only as search excerpts. No exploit or perturbation was run in the source analysis.",
      "caption": "A bibliography is not 17 independent confirmations.",
      "claimIds": [
        "claim-unmeasured"
      ],
      "sourceIds": [
        "S01",
        "S17",
        "S15",
        "S16"
      ],
      "objectIds": [
        "challenge-evidence"
      ]
    },
    {
      "id": "story-behavior",
      "phase": "behavior",
      "title": "Follow what changes between check and use",
      "text": "M3 changes served bytes. M4 redirects an Object Manager path. N3 redirects an NTFS junction. Each authored record describes a checked value changing before a privileged use.",
      "caption": "Three distinct variations, reconstructed from the archived records.",
      "claimIds": [
        "claim-c2"
      ],
      "sourceIds": [
        "S17",
        "S10",
        "S11",
        "S12"
      ],
      "objectIds": [
        "M3",
        "M4",
        "N3"
      ]
    },
    {
      "id": "story-model",
      "phase": "model",
      "title": "Compare the common pattern and the differences",
      "text": "C2 groups the inferred check-to-use mechanism under common starting conditions. It retains different revalidation gaps and has no shared required postcondition.",
      "caption": "Provisional C2; observed members are not a membership definition.",
      "claimIds": [
        "claim-c2",
        "claim-transfer"
      ],
      "sourceIds": [
        "S17",
        "S11",
        "S12"
      ],
      "objectIds": [
        "C2",
        "M3",
        "M4",
        "N3"
      ]
    },
    {
      "id": "story-action",
      "phase": "action",
      "title": "Bound the claim before choosing an action",
      "text": "Map a candidate change to the exact value and gap it affects. Evidence that a junction variation is blocked does not, on its own, establish protection against the content or object-path variations.",
      "caption": "Proposed scope review; no deployed outcome or reachability claim.",
      "claimIds": [
        "claim-transfer",
        "claim-posture"
      ],
      "sourceIds": [
        "S11",
        "S12",
        "S17"
      ],
      "objectIds": [
        "intervention-revalidation"
      ]
    }
  ],
  "formalNote": "The curated formal slice and fuller public model are local-draft-3 projections of archival source 0.4.0, not a new normative release. The fuller model retains ontology typing, state variables, dispositions, defensive profiles and graph fields with documented public redactions. A source-level correction classifies authored requirements as asserted; their necessity remains inferred and unmeasured. The check-to-use group, graph edges and profile terms retain archived derived status. Bindings remain provisional, conceptual ratification unrun and reachability unassessed.",
  "statusContract": {
    "authority": "Local presentation vocabulary, not an MC normative enum.",
    "claimSupport": {
      "supported": "Directly documented by a cited supplied archive item; no automatic empirical or external verification.",
      "inferred": "A reconstructed model conclusion from the archived records; not measured.",
      "unknown": "Not resolved or not assessed in this task."
    },
    "provenance": "Provenance describes how a fact was supplied: authored source-based requirements are asserted; core estimates, edges and defensive profile terms retain their archived derived status. The corrected classification does not change inferred requirement basis, establish empirical truth or create a measured result. Historical excerpts retain the original blanket derived default with the correction disclosed separately.",
    "detection": "Detection validation is scoped to an implementation and test context. No detection implementation was tested here.",
    "realization": "Intended / implemented / verified records implementation state, separately from claim support."
  },
  "validation": {
    "requirements": "inferred",
    "provenanceKind": "asserted",
    "measuredElements": 0,
    "perturbationRuns": 0,
    "detectionValidation": {
      "status": "never-tested",
      "scope": "No detection implementation executed in this local rebuild; archived detection placements are proposals."
    },
    "deployedPosture": "not-supplied",
    "graphReachabilityClaim": "forbidden",
    "historicalTests": "Reported by the archive; generator and historical test suite are absent from the four supplied inputs. They were not rerun.",
    "localChecks": "Local rendering, reference integrity, publication-boundary and source-correction checks are separate from historical analysis tests and conceptual ratification.",
    "ratificationCheck": "not-run",
    "ratificationNote": "MC-SPEC §1.5: the conceptual ratification suite has not been run against the bound text. Local presentation and structural checks do not replace it.",
    "derivedOutputsProvenance": "derived"
  },
  "sourceSummary": {
    "registryEntries": 17,
    "uniqueUrls": 17,
    "uniqueHosts": 16,
    "archivedRetrievalCounts": {
      "full-text": 1,
      "search-excerpt": 13,
      "repository-description": 1,
      "not-retrieved": 2
    },
    "fullTextMaterialsIncluded": 0,
    "independenceNote": "The two incidents are attributed in the archive to one researcher. Multiple publishers and distinct URLs are not treated as independent confirmation. Retrieval statuses are historical labels, not the source texts themselves.",
    "freshExternalRetrievals": 0
  },
  "model": {
    "id": "C2",
    "title": "Change the value between check and privileged use",
    "identityStatus": "provisional",
    "provenanceKind": "derived",
    "observedMembers": [
      "M3",
      "M4",
      "N3"
    ],
    "support": 3,
    "belowSupportFloor": false,
    "membershipNote": "Observed members report the declared population; membership is a structural predicate, not an enumerated definition.",
    "preconditions": [
      "executionContext ⊒ user",
      "scannerAttention = onAdversaryPath"
    ],
    "mechanism": [
      "alter the resolved value between the check and the use"
    ],
    "postconditions": [],
    "plainPreconditions": [
      "The attacker can run code as a normal user.",
      "A privileged security engine is working on an attacker-controlled path."
    ],
    "plainMechanism": "Change the value after a check and before privileged use.",
    "transferRule": "A result transfers only within the supported scope where its placement acts on the invariant; a variation-specific result stays variation-specific.",
    "responseTransfer": "none; C2 has no required shared effect",
    "evidenceRefs": [
      "archive-yaml#invariant_cores/C2",
      "archive-yaml#completeness_claim"
    ],
    "scopeNote": "Within the archive’s declared closed scope, unasserted facts evaluate as absent. Outside that scope they remain unmodeled, never silently absent or present."
  },
  "researchContext": {
    "scope": "M5, N4 and C3 are residual research context outside the curated C2 maneuver set.",
    "C3Support": 2,
    "C3BelowSupportFloor": true,
    "residualTest": "Vary privilegedProcessInput for M5 and observe whether executionContext = SYSTEM still follows. No outcome is assumed.",
    "consequenceIfIncidental": "The archive describes equal M5/N4 required sets and withdrawal of C3 as a distinct multi-record estimate; this is conditional research, not a finding.",
    "evidenceRefs": [
      "archive-yaml#records/M5",
      "archive-yaml#invariant_cores/C3"
    ]
  },
  "assumptions": [
    "Requirements, placement availability and cores are reconstructed at type level from the supplied archive.",
    "Historical reported patch association motivates a scope comparison; it is not treated as a current threat fact.",
    "No undisclosed binary, engine internals, platform variance or post-escalation behavior was examined.",
    "Within the archive’s declared closed scope, unasserted facts evaluate as absent. Outside that scope they remain unmodeled, never silently absent or present."
  ],
  "limitations": [
    "External source texts are not included in the supplied package; archived citations and retrieval labels are preserved without fresh retrieval.",
    "The specification/ontology binding remains provisional because the recorded corpus pins differ.",
    "Graph paths do not establish full precondition satisfaction, reachability or protection.",
    "The archive leaves frame conditions and parallel-chain interference unspecified.",
    "Corpus-local extensions and source wrappers do not become normative MC terms.",
    "MC-SPEC §1.5: the conceptual ratification suite has not been run against the bound text. Local presentation and structural checks do not replace it."
  ],
  "declaredScope": {
    "closedOver": [
      "CVE-2026-69414 as reported",
      "CVE-2026-50656 as reported",
      "references 1-17"
    ],
    "notClosedOver": [
      "either exploit binary",
      "engine internals",
      "Windows 10 variance",
      "post-escalation stages"
    ],
    "unassertedWithinScope": "absent",
    "unassertedOutsideScope": "unmodeled",
    "evidenceRefs": [
      "archive-yaml#completeness_claim"
    ]
  },
  "provenanceCorrection": {
    "originalKind": "derived",
    "correctedKind": "asserted",
    "basis": "Authored source-based requirement declarations; their necessity remains inferred, with no measurement or fresh external validation.",
    "scope": "Authored record requirements only. Cores, graph edges and defensive profile terms retain archived derived status.",
    "executionNote": "This is a local source-level editorial correction. No reasoner or empirical test was run, and historical evidence excerpts retain the original blanket derived label.",
    "modelArtifact": "/artifacts/shieldbreak-model.yaml",
    "changesArtifact": "/artifacts/shieldbreak-model-changes.json"
  }
}
