Odebrany

CVE-2026-98289

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

af_unix: Ujednolicenie scc_index podczas finalizowania SCC w __unix_walk_scc().

Zatwierdź bfdb01283ee8 („af_unix: Przypisz unikalny indeks do SCC.”)
zmieniono algorytm Tarjana, aby aktualizował lowlink za pomocą lowlink,
który nazywany jest dolnym punktem (unix_vertex.scc_index).

unix_vertex_dead() zakłada, że wszystkie wierzchołki w SCC mają taki sam udział
najniższy punkt, ale nie zawsze jest to prawdą, jeśli SCC ma dwa lub więcej
tylne krawędzie, w zależności od kolejności DFS.

Na przykład poniższy wykres ma dwie tylne krawędzie od B do A
i od C do B.

A --> B --> C
^ | ^ |
`----' `----'

Jeśli DFS przejdzie przez A -> B -> C -> B (-> C -> B) -> A (-> B -> A),
każdy indeks i scc_index zostaną zaktualizowane w następujący sposób.

A --> B --> C C = (3, 3) (indeks, scc_index)
B = (2, 2)
ZA = (1, 1)

A... B... do C = (3, 2)<-.
^ | B = (2, 2) -'
`----' A = (1, 1)

A ... B ... C C = (3, 2)
^ | . . B = (2, 1)<-.
`----' .... A = (1, 1) -'

Następnie unix_vertex_dead() uważa, że B jest przekazywane innemu
SCC z scc_index 2, a SCC nie jest usuwany.

Nie dzieje się tak, jeśli DFS przebiega w innej kolejności niż poniżej
lub zaczyna się od B.

1 3
A --> B --> C
^ | ^ |
`----' `----'
2 4

Ujednoliczmy scc_index w całym SCC podczas jego finalizowania.

Zauważ, że aktualizacja v->index została wcześniej wykonana w unix_scc_dead(),
po wywołaniu z __unix_walk_scc(), tylko po to, aby zapisać jedną pętlę. Od
__unix_walk_scc() i tak teraz wykonuje iterację po SCC, aktualizacja jest taka
przeniesiono z powrotem do __unix_walk_scc() i argument „szybki” został usunięty.

>_ Referencje

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