Linux Kernel bis 6.0.9 switch.c dsa_tree_free Pufferüberlauf

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 6.6 | $0-$5k | 0.00 |
Zusammenfassung
In Linux Kernel bis 6.0.9 wurde eine Schwachstelle ausgemacht. Sie wurde als kritisch eingestuft. Dies betrifft die Funktion dsa_tree_free der Datei switch.c. Mit der Manipulation mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden.
Diese Verwundbarkeit ist als CVE-2022-49808 gelistet. Es existiert kein Exploit.
Ein Upgrade der betroffenen Komponente wird empfohlen.
Details
In Linux Kernel bis 6.0.9 wurde eine kritische Schwachstelle entdeckt. Betroffen ist die Funktion dsa_tree_free der Datei switch.c. Durch Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-416. Dies hat Einfluss auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:
In the Linux kernel, the following vulnerability has been resolved:
net: dsa: don't leak tagger-owned storage on switch driver unbind
In the initial commit dc452a471dba ("net: dsa: introduce tagger-owned
storage for private and shared data"), we had a call to
tag_ops->disconnect(dst) issued from dsa_tree_free(), which is called at
tree teardown time.
There were problems with connecting to a switch tree as a whole, so this
got reworked to connecting to individual switches within the tree. In
this process, tag_ops->disconnect(ds) was made to be called only from
switch.c (cross-chip notifiers emitted as a result of dynamic tag proto
changes), but the normal driver teardown code path wasn't replaced with
anything.
Solve this problem by adding a function that does the opposite of
dsa_switch_setup_tag_protocol(), which is called from the equivalent
spot in dsa_switch_teardown(). The positioning here also ensures that we
won't have any use-after-free in tagging protocol (*rcv) ops, since the
teardown sequence is as follows:
dsa_tree_teardown
-> dsa_tree_teardown_master
-> dsa_master_teardown
-> unsets master->dsa_ptr, making no further packets match the
ETH_P_XDSA packet type handler
-> dsa_tree_teardown_ports
-> dsa_port_teardown
-> dsa_slave_destroy
-> unregisters DSA net devices, there is even a synchronize_net()
in unregister_netdevice_many()
-> dsa_tree_teardown_switches
-> dsa_switch_teardown
-> dsa_switch_teardown_tag_protocol
-> finally frees the tagger-owned storageBereitgestellt wird das Advisory unter git.kernel.org. Die Verwundbarkeit wird seit dem 01.05.2025 als CVE-2022-49808 geführt. Sie gilt als leicht ausnutzbar. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Ein Exploit zur Schwachstelle wird momentan etwa USD $0-$5k kosten (Preisberechnung vom 07.11.2025).
Ein Aktualisieren auf die Version 6.0.10 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 5809fb03942dbac25144db5bebea84fa003ecaca/4e0c19fcb8b5323716140fa82b79aa9f60e60407 lösen. Dieser kann von git.kernel.org bezogen werden. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Produkt
Typ
Hersteller
Name
Version
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 6.8VulDB Meta Temp Score: 6.6
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍
NVD Base Score: 5.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: PufferüberlaufCWE: CWE-416 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physisch: Teilweise
Lokal: Ja
Remote: Teilweise
Verfügbarkeit: 🔍
Status: Nicht definiert
EPSS Score: 🔍
EPSS Percentile: 🔍
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Kernel 6.0.10
Patch: 5809fb03942dbac25144db5bebea84fa003ecaca/4e0c19fcb8b5323716140fa82b79aa9f60e60407
Timeline
01.05.2025 🔍01.05.2025 🔍
01.05.2025 🔍
07.11.2025 🔍
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2022-49808 (🔍)
GCVE (CVE): GCVE-0-2022-49808
GCVE (VulDB): GCVE-100-306937
Eintrag
Erstellt: 01.05.2025 17:26Aktualisierung: 07.11.2025 22:28
Anpassungen: 01.05.2025 17:26 (59), 07.11.2025 22:28 (12)
Komplett: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.