docs(invariants): narrow IBT and FORTIFY scope to silent-bypass invar… - #7
Merged
Merged
Conversation
…iants Apply the same radical rewrite pattern as stack-canary.md to endbr-ibt.md and fortify-source.md: drop preconditions, level semantics, coverage lists, and project-coupled fields; keep only invariants whose violation causes a silent bypass (defense appears active but attacker overflow / control-flow hijack succeeds without trap or chk_fail). Each entry follows README.md field convention; oracle_mapping replaced by observation. Added known silent-bypass case tables and programmability screening results based on publicly verifiable evidence (LLVM #44527, D84862, GCC PR 102953/104816, FineIBT LWN, glibc dl-cet permissive, GCC PR 101836/113514, LLVM PR #110497/#112636, kernel a28a6e860c6c "Work around Clang inlining bugs", hxp 2017 hardened_flag_store, CVE-2012-0864, sourceware 24987).
Reviewer's GuideRefactors the fortify-source and endbr-IBT invariants docs to focus exclusively on invariants whose violation yields a silent bypass of the defense, removing configuration/precondition/semantics material, and rewriting them around concrete compiler/runtime bugs, landing-pad placement, and programmability screening based on public bug reports and research like FineIBT and hxp 2017. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…iants
Apply the same radical rewrite pattern as stack-canary.md to endbr-ibt.md and fortify-source.md: drop preconditions, level semantics, coverage lists, and project-coupled fields; keep only invariants whose violation causes a silent bypass (defense appears active but attacker overflow / control-flow hijack succeeds without trap or chk_fail).
Each entry follows README.md field convention; oracle_mapping replaced by observation. Added known silent-bypass case tables and programmability screening results based on publicly verifiable evidence (LLVM #44527, D84862, GCC PR 102953/104816, FineIBT LWN, glibc dl-cet permissive, GCC PR 101836/113514, LLVM PR #110497/#112636, kernel a28a6e860c6c "Work around Clang inlining bugs", hxp 2017 hardened_flag_store, CVE-2012-0864, sourceware 24987).
Summary by Sourcery
Narrow the fortify-source and endbr-ibt invariant docs to focus on silent-bypass scenarios and update terminology, structure, and known-case coverage accordingly.
Documentation:
_FORTIFY_SOURCEinvariants documentation to focus solely on invariants whose violation leads to silent fortify bypass, adding updated terminology, case tables, and programmability screening results.endbr32/endbr64) invariants documentation to cover only silent-bypass-relevant invariants, including updated placement rules, NOTRACK usage, metadata handling, and known bypass cases.