filelock has TOCTOU race condition that allows symlink attacks during lock file creation
filelock is a platform-independent file lock for Python. In versions prior to 3.20.1, a Time-of-Check-Time-of-Use (TOCTOU) race condition allows local attackers to corrupt or truncate arbitrary user files through symlink attacks. The vulnerability exists in both Unix and Windows lock file creation where filelock checks if a file exists before opening it with O_TRUNC. An attacker can create a symlink pointing to a victim file in the time gap between the check and open, causing os.open() to follow the symlink and truncate the target file. All users of filelock on Unix, Linux, macOS, and Windows systems are impacted. The vulnerability cascades to dependent libraries. The attack requires local filesystem access and ability to create symlinks (standard user permissions on Unix; Developer Mode on Windows 10+). Exploitation succeeds within 1-3 attempts when lock file paths are predictable. The issue is fixed in version 3.20.1. If immediate upgrade is not possible, use SoftFileLock instead of UnixFileLock/WindowsFileLock (note: different locking semantics, may not be suitable for all use cases); ensure lock file directories have restrictive permissions (chmod 0700) to prevent untrusted users from creating symlinks; and/or monitor lock file directories for suspicious symlinks before running trusted applications. These workarounds provide only partial mitigation. The race condition remains exploitable. Upgrading to version 3.20.1 is strongly recommended.
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
Veritabanındaki yüz binlerce zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyin- Yayın
- 16 Ara 2025
- Güncelleme
- 17 Haz 2026
- EPSS
- %0,2 · 9. yüzdelik
- CWE
- CWE-59
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
26
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 26 / 40 · 6.5 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,2
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- hayır
- Teknik etki
- kısmi
Vulnrichment: CISA'nın karar ağacı girdileri.
CNA ile NVD puanı
- NVD
- 6,5
- CNA · GitHub_M
- 6,3
- 0,2 puan fark
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| tox-dev | filelock | cpe:2.3:a:tox-dev:filelock |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- tox-dev filelock3.20.1 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (GitHub_M) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
tox-dev filelock
- < 3.20.1etkilenir
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | python-filelock | 3.9.0-1+deb12u1 öncesi | 3.9.0-1+deb12u1 |
| Debian:13 | python-filelock | 3.18.0-1+deb13u1 öncesi | 3.18.0-1+deb13u1 |
| Debian:14 | python-filelock | 3.20.2-1 öncesi | 3.20.2-1 |
| openSUSE:Leap 16.0 | python-filelock | 3.18.0-160000.3.1 öncesi | 3.18.0-160000.3.1 |
| openSUSE:Tumbleweed | python-filelock | 3.20.2-1.1 öncesi | 3.20.2-1.1 |
| openSUSE:Tumbleweed | python-virtualenv | 20.36.1-1.1 öncesi | 20.36.1-1.1 |
| PyPI | filelock | 3.20.1 öncesi | 3.20.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP7 | python-filelock | 3.0.12-150100.3.6.1 öncesi | 3.0.12-150100.3.6.1 |
| SUSE:Linux Enterprise Module for Python 3 15 SP7 | python-filelock | 3.12.2-150400.10.8.1 öncesi | 3.12.2-150400.10.8.1 |
| SUSE:Linux Enterprise Module for Python 3 15 SP7 | python-filelock | 3.12.2-150400.10.8.1 öncesi | 3.12.2-150400.10.8.1 |
| SUSE:Linux Enterprise Server 16.0 | python-filelock | 3.18.0-160000.3.1 öncesi | 3.18.0-160000.3.1 |
Aynı üründe
tox-dev: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2026-22701filelock Time-of-Check-Time-of-Use (TOCTOU) Symlink Vulnerability in SoftFileLock21İzleyin
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| tox-dev filelock | 3.20.1 · description | Üretici (CNA) |
| debian:python-filelock | 3.9.0-1+deb12u1 · Debian:12 | Paket deposu (OSV) |
| opensuse:python-filelock | 3.12.2-150400.10.8.1 · openSUSE:Leap 15.6 | Paket deposu (OSV) |
| opensuse:python-virtualenv | 20.36.1-1.1 · openSUSE:Tumbleweed | Paket deposu (OSV) |
| PyPI:filelock | 3.20.1 | Paket deposu (OSV) |
| suse:python-filelock | 3.0.12-150100.3.6.1 · SUSE:Linux Enterprise Module for Development Tools 15 SP7 | Paket deposu (OSV) |
| suse:python-filelock | 3.12.2-150400.10.8.1 · SUSE:Linux Enterprise Module for Python 3 15 SP7 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
- CVE-2026-2270125 gün araylafilelock Time-of-Check-Time-of-Use (TOCTOU) Symlink Vulnerability in SoftFileLock21İzleyin
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Zamanlama ya da yapılandırma gibi özel koşullar gerekir.
Başarılı olursa
- Gizlilik
- düşük · veriler okunabilir
- Bütünlük
- yüksek · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Yüksek
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Düşük
- Bütünlük etkisi
- Yüksek
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-59 · Improper Link Resolution Before File Access ('Link Following')CVSS vektörü
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:H
nvd-primary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
- Obfuscated Files or Information: HTML SmugglingT1027.006
- Obfuscated Files or Information: Embedded PayloadsT1027.009
- Boot or Logon Autostart Execution:Shortcut ModificationT1547.009
- Hide Artifacts: Resource ForkingT1564.009
- Hijack Execution Flow: Executable Installer File Permissions WeaknessT1574.005
- Hijack Execution Flow: Services File Permissions WeaknessT1574.010
Değişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- github.com/tox-dev/filelock/commit/4724d7f8c3393ec1f048c93933e6e3e6ec321f0e
- github.com/tox-dev/filelock/pull/461
- github.com/tox-dev/filelock/releases/tag/3.20.1
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.