mirror of
https://github.com/nesquena/hermes-webui.git
synced 2026-07-07 16:21:23 +00:00
0fe707b2bf
Gate-found (Codex CORE, repro'd): a hardlink at a clean *.md page name can carry an arbitrary inode (incl. one outside the wiki) through the O_NOFOLLOW + inode-identity read check — O_NOFOLLOW does not block hardlinks. Reject any page file with st_nlink > 1 in BOTH the allowlist walk and the read-path revalidation. Pre-existing on master (the inode recapture predates this PR's cache); closing it here while on the read path. +1 toothed regression test (prime cache -> hardlink listed page to outside secret -> assert 404, no leak). Co-authored-by: rodboev <rodboev@users.noreply.github.com>