CVE-2026-93138
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W jądrze Linuksa usunięto następującą lukę:
bpf: Napraw wyścig przygotowawczy vmlinux BTF w bpf_get_btf_vmlinux
bpf_get_btf_vmlinux() leniwie analizuje BTF vmlinux pod
bpf_verifier_lock, ale publikuje wynik za pośrednictwem zwykłego sklepu
i ponownie sprawdza go poprzez zwykły ładunek bez blokady. Nic nie nakazuje
sklepy inicjujące strukturę btf wewnątrz btf_parse_vmlinux()
przeciwko sklepowi publikującemu wskaźnik: Na słabo uporządkowanym
arch, jednocześnie dzwoniący po raz pierwszy, szybko korzystający z blokady
path może w zasadzie obserwować wskaźnik przed analizą
zawartość jest widoczna. Mutex_unlock() nie pomaga w takim przypadku
czytnik, biorąc pod uwagę, że synchronizuje się tylko z późniejszym nabyciem
ten sam zamek. Zatem opublikuj wskaźnik za pomocą smp_store_release()
i przeczytaj go w szybkiej ścieżce za pomocą smp_load_acquire().
Semantyka nabycia jest potrzebna, a nie uporządkowana według zależności
READ_ONCE(): btf_parse_vmlinux() wypełnia także globale na zewnątrz
zwrócony obiekt (np. bpf_ctx_convert.t). Adres
zależność zamawiałaby jedynie dostępy wykonywane przez
wskaźnik i nie obejmują innych globali.
>_ Referencje
- https://git.kernel.org/stable/c/2892f3f44bf865c8fb6b6c0960edec4cc91806ee
- https://git.kernel.org/stable/c/86d11c594d60b255b526fa5260f669463fb1a063
- https://git.kernel.org/stable/c/92863e678070f57c17c868e4bfa2441a5c61ad2b
- https://git.kernel.org/stable/c/978524ecfc1c539282df5858de1eec20748c6f74
- https://git.kernel.org/stable/c/a7fe72d780122eb934536f1719abad445f6afdf7
- https://git.kernel.org/stable/c/e18a10b39c994f04e1ebd7f8fc042bb1ca8ad053
- https://git.kernel.org/stable/c/eaf302628a78806f66d8224d6ba03fb4d5025de4
- https://git.kernel.org/stable/c/f32a4a40bc635be25d6816da4bd91e9e58c31bf3
Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.
This product uses the NVD API but is not endorsed or certified by the NVD.
Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.
NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org