OpenShell FS bridge reads pin and verify the opened file before returning bytes
A time-of-check/time-of-use race around OpenShell sandbox filesystem reads could let a symlink swap cause bytes outside the intended mount root to be read.
OpenShell reads now open the file with no-follow semantics where available, validate the pinned file descriptor against the canonical mount root, reject unsafe hardlink/symlink cases, and use a strict fallback ancestor walk on platforms without fd-path readback.
Thanks @VladimirEliTokarev for reporting.
{
"nvd_published_at": null,
"cwe_ids": [
"CWE-367"
],
"github_reviewed_at": "2026-05-04T21:07:36Z",
"github_reviewed": true,
"severity": "MODERATE"
}