CVE-2026-112940
WysokieCVSS 7.1Streszczenie
W filelock od wersji 3.20.4 do 4.2.1 ReadWriteLock pozwala SQLite na ponowne otwieranie bazy danych i plików towarzyszących po nazwie. Na systemach POSIX atakujący z prawem do zmiany nazw w katalogu nadrzędnym bez sticky bit może podmienić te nazwy, powodując nadpisanie lub usunięcie plików; do nadpisania treści wybranej przez atakującego wymagany jest dodatkowo zapisywalny sąsiedni hot journal.
Ocena ryzyka
Lokalny atakujący może doprowadzić do nadpisania lub usunięcia plików aplikacji korzystającej z filelock, co może skutkować utratą danych lub uszkodzeniem bazy.
Rekomendacja
Zaktualizuj filelock do wersji 4.2.1 lub nowszej. Upewnij się, że katalogi nadrzędne plików bazy mają ustawiony sticky bit.
Inne podatności w filelock
Zobacz wszystkie- CVE-2026-112941Niskie
W filelock od wersji 4.1.0 do 4.2.1 klasy SoftReadWriteLock i AsyncSoftReadWriteLock buforują pomyślne sprawdzenie drzewa blokad <path>.rw i ponownie rozwiązują jego nazwy podczas późniejszych operacji zapisu, co pozwala innemu lokalnemu użytkownikowi, który może zastąpić to drzewo po pierwszym przejęciu, przekierować zapisy rekordów blokad do katalogów zapisywalnych przez użytkownika blokady.
- CVE-2026-112939Średnie
W bibliotece filelock od wersji 3.22.0 do 4.2.1 mechanizm SoftFileLock ufał sfałszowanemu identyfikatorowi procesu w znaczniku, który atakujący mógł modyfikować, ale nie usuwać. Umożliwiało to innemu procesowi tego samego konta lub rootowi działanie jako confused deputy, usunięcie aktywnego znacznika i dopuszczenie kolejnego posiadacza blokady.
- CVE-2026-112937Średnie
W bibliotece filelock od wersji 4.1.0 do 4.2.1 mechanizm ReadWriteLock mógł usuwać losowy prywatny katalog twardych dowiązań .filelock-* podczas czyszczenia. Inny lokalny użytkownik z prawem zmiany nazw w katalogu nadrzędnym bez sticky bit mógł obserwować aktywną nazwę lub sfałszować nazwę sweep i podmienić katalog siostrzany do usunięcia.
- CVE-2026-112936Średnie
W bibliotece filelock od wersji 3.20.4 do 4.0.9 mechanizmy ReadWriteLock i AsyncReadWriteLock rozwiązywały ścieżkę blokady i przekazywały ją do SQLite bez odrzucenia końcowego dowiązania symbolicznego. Inny lokalny użytkownik mogący tworzyć nazwy w katalogu blokady mógł przekierować tworzenie bazy danych lub rozdzielić wzajemne wykluczenie między celami.
- CVE-2026-112935Średnie
W bibliotece filelock od wersji 3.22.0 do 4.2.1 mechanizm SoftFileLock mógł usunąć aktywny znacznik po tym, jak atakujący zwolnił własny znacznik po odczycie stanu nieaktualnego, uczciwy konkurent utworzył następcę na ponownie użytym i-węźle, a czas modyfikacji następcy nie był nowszy niż zapisana obserwacja. Prowadziło to do usunięcia aktywnego znacznika i dopuszczenia dwóch posiadaczy.
- CVE-2026-112934Średnie
W bibliotece filelock od wersji 4.0.0 do 4.2.1 mechanizm SoftReadWriteLock odświeżał rekordy posiadaczy po nazwie. Inny lokalny użytkownik z prawem zmiany nazw w katalogu blokady mógł zastąpić rekord nazwanym potokiem i zablokować blokadę lub, przy permisywnej polityce twardych dowiązań, podlinkować osiągalny plik docelowy i spowodować zapis przez niego.
- CVE-2026-112915Średnie
W bibliotece filelock od wersji 3.20.4 do 4.2.1 mechanizm ReadWriteLock mógł otworzyć spreparowaną bazę danych blokady SQLite bez ograniczenia pracy schematu i zapytań. Inny lokalny użytkownik mogący zastąpić bazę danych mógł spowodować zawieszenie lub zablokowanie pozyskiwania blokady.
- CVE-2026-112914Średnie
W bibliotece filelock od wersji 4.1.0 do 4.2.1 mechanizm SoftFileLock mógł przywrócić nieaktualny znacznik po nazwie po jego odsunięciu. Inny lokalny użytkownik z prawem zmiany nazw w katalogu blokady bez sticky bit mógł podstawić dowiązanie symboliczne i, w środowisku podążającym za dowiązaniem oraz z celem w tym samym systemie plików, spowodować utworzenie twardego dowiązania do pliku użytkownika blokady.
- CVE-2026-112912Niskie
W filelock od wersji 3.32.6 do 4.2.1 klasa SoftFileLock może podążać za podmienionym dowiązaniem symbolicznym podczas warunkowego sprawdzenia zapisywalności os.access dla węzła bez bitu zapisu właściciela. Pozwala to innemu lokalnemu użytkownikowi na platformie i w konfiguracji katalogu, które podążają za dowiązaniem, wywnioskować na podstawie obserwowalnego wyniku przejęcia, czy wybrana ścieżka istnieje i jest zapisywalna.
- CVE-2026-112911Średnie
W bibliotece filelock od wersji 3.30.0 do 4.2.1 mechanizmy StrictSoftFileLock (od 3.30.0) i SoftReadWriteLock (od 4.0.0) mogły przyjąć katalog protokołu utworzony wcześniej przez innego lokalnego użytkownika we współdzielonym katalogu nadrzędnym. Umożliwiało to temu użytkownikowi zmianę stanu protokołu i dopuszczenie równoczesnych posiadaczy.
Oryginalny opis (angielski, źródło NVD)
filelock is a platform-independent file lock for Python. From 3.20.4 until 4.2.1, ReadWriteLock let SQLite reopen the database and side files by name; on POSIX systems an attacker with rename access in a non-sticky parent can swap those names to cause overwrite or unlink operations, while a writable adjacent hot journal is additionally required for attacker-chosen content overwrites. This issue is fixed in version 4.2.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

