This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

The shell guard allows a recursive delete of a chain of parents: `rm -rf ../..`, `rm -rf ../../.`, `rm -rf ../../..` and `rm -rf ../../*` are an allow, while `rm -rf ..`, `rm -rf ../.` and `rm -rf ../*` warn on rm-rf-working-directory. The entry's arg_values name `.`, `..`, `../` and `../*` but no deeper chain, and foldParents reads `../../.` as `../..`, which no value names, so TestTrailingDotAfterAParentFolds pins only that the two spellings agree. A chain climbs above the working directory's parent and holds it, so it deletes at least what `..` deletes. Found by the post-tag security review of 7fb52a6b5..d94472abb (sec-postTagA, LOW); present at both ends of that range.

issueresolvedminoriss-2610021542183618

The shell guard allows a recursive delete of a chain of parents: rm -rf ../.., rm -rf ../../., rm -rf ../../.. and rm -rf ../../* are an allow, while rm -rf .., rm -rf ../. and rm -rf ../* warn on rm-rf-working-directory. The entry's arg_values name ., .., ../ and ../* but no deeper chain, and foldParents reads ../../. as ../.., which no value names, so TestTrailingDotAfterAParentFolds pins only that the two spellings agree. A chain climbs above the working directory's parent and holds it, so it deletes at least what .. deletes. Found by the post-tag security review of 7fb52a6b5..d94472abb (sec-postTagA, LOW); present at both ends of that range.

Grounds

  • pursued: every pure parent chain reaches the verdict its one-parent form does and no verdict weakens; a chain spelling that still allows, or a corpus line that moves toward allow, would show it wrong

Frontmatter

idiss-2610021542183618
typeissue
lifecycleresolved
severityminor

mentions1