refluxfs: drop the redundant standalone verify harness
build / build (clang / debug) (push) Waiting to run
build / build (clang / default) (push) Waiting to run
build / build (gcc / debug) (push) Waiting to run
build / build (gcc / default) (push) Waiting to run
build / sanitizers (ASan + UBSan) (push) Waiting to run
build / clang-tidy (push) Waiting to run
build / drift-check (CISA KEV + Debian tracker) (push) Waiting to run
build / static-build (push) Waiting to run
build / build (clang / debug) (push) Waiting to run
build / build (clang / default) (push) Waiting to run
build / build (gcc / debug) (push) Waiting to run
build / build (gcc / default) (push) Waiting to run
build / sanitizers (ASan + UBSan) (push) Waiting to run
build / clang-tidy (push) Waiting to run
build / drift-check (CISA KEV + Debian tracker) (push) Waiting to run
build / static-build (push) Waiting to run
The own-files reachability harness tools/verify-vm/refluxfs_verify.c is superseded by the module itself: the safe default --exploit does the same own-files reachability confirmation, and --full-chain provides the stronger end-to-end proof (actual root). Remove the standalone and repoint the three doc references (MODULE.md, RELEASE_NOTES.md, targets.yaml) at the module's full-chain verification. The 4/4 own-files measurement it produced is kept as a historical data point, just without the now-deleted reproducer. No code depended on it; 148-test unit harness still green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0118iUgHY44hdRtANgyCmu7y
This commit is contained in:
@@ -205,13 +205,15 @@ qemu/KVM with 6 vCPUs — the stock GenericCloud installer layout, root on
|
||||
| Scratch cleanup | no artifacts left |
|
||||
| Build on el9 gcc | clean |
|
||||
|
||||
**The underlying bug was separately confirmed winnable on that kernel**, using a
|
||||
VM-only harness driven at the public PoC's parameters (32 writers / 8 helpers,
|
||||
60 s budget — `tools/verify-vm/refluxfs_verify.c`): **4 out of 4 runs won**, with
|
||||
the first divergence after **69, 114, 170 and 494 rounds**. A racing `O_DIRECT`
|
||||
write landed on a still-shared block and rewrote the donor's on-disk bytes —
|
||||
the arbitrary-overwrite primitive, observed directly, contained to files the
|
||||
test user owned.
|
||||
**The underlying bug was separately confirmed winnable on that kernel.** The
|
||||
`--full-chain` run above is the definitive proof — the same reflink-CoW race
|
||||
rewrote `/etc/passwd` and landed root **3/3** (1244 / 3716 / 7913 rounds). An
|
||||
earlier *non-destructive* measurement, driven at the public PoC's parameters
|
||||
(32 writers / 8 helpers, 60 s) but confined to two files the test user owned,
|
||||
won **4/4** (first divergence after **69, 114, 170 and 494 rounds**): a racing
|
||||
`O_DIRECT` write landing on a still-shared block and rewriting the donor's
|
||||
on-disk bytes — the arbitrary-overwrite primitive, observed directly, contained
|
||||
entirely to attacker-owned files.
|
||||
|
||||
Note carefully what this does and does not say. The shipped trigger **not**
|
||||
winning in 2 s on a kernel that is provably vulnerable is exactly the designed
|
||||
|
||||
Reference in New Issue
Block a user