{"id":"ghsa-ghsa-v4x8-3wr5-3wq8","seq":661301,"kind":"advisory","title":"filelock ReadWriteLock: SQLite reopens the lock database by name, so a planted symlink or journal file makes the lock user's process overwrite or unlink its own files","url":"https://github.com/advisories/GHSA-v4x8-3wr5-3wq8","permalink":"https://vulnpulse.app/items/ghsa-ghsa-v4x8-3wr5-3wq8","summary":"影響: pip:filelock >= 3.20.4, <= 4.2.0 → 4.2.1\nReadWriteLock and AsyncReadWriteLock (the SQLite-backed reader/writer lock) hand SQLite a name they do not control. On Linux the lock validates its database through a descriptor (the number the kernel gives a process for an open file). It then connects SQLite to /proc/self/fd/ , a Linux path that names the process's own open file n. SQLite turns that path back into a plain path and reopens it by name, following symlinks (a symlink is a file that points at another path). On every POSIX route SQL…","severity":"high","techs":["python","sqlite"],"cves":["CVE-2026-112940"],"tags":["GHSA-v4x8-3wr5-3wq8","filelock"],"source":{"id":"ghsa","name":"GitHub Advisory Database"},"published_at":"2026-10-23T21:59:08.000Z","fetched_at":"2026-10-24T04:50:51.468Z"}