Linux Kernel bis 6.12.100/6.18.41/7.1.5/7.2-rc4 Type-C Connector igc_main.c connector_unbind Pufferüberlauf

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 7.8 | $0-$5k | 0.44- |
Zusammenfassung
Es wurde eine Schwachstelle in Linux Kernel bis 6.12.100/6.18.41/7.1.5/7.2-rc4 gefunden. Sie wurde als sehr kritisch eingestuft. Hierbei geht es um die Funktion connector_unbind der Datei drivers/net/ethernet/intel/igc/igc_main.c der Komponente Type-C Connector. Durch Manipulation mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden.
Diese Verwundbarkeit ist als CVE-2026-68372 gelistet. Die Umsetzung des Angriffs hat dabei lokal zu erfolgen. Es existiert kein Exploit.
Details
In Linux Kernel bis 6.12.100/6.18.41/7.1.5/7.2-rc4 wurde eine Schwachstelle gefunden. Sie wurde als sehr kritisch eingestuft. Betroffen ist die Funktion connector_unbind der Datei drivers/net/ethernet/intel/igc/igc_main.c der Komponente Type-C Connector. Dank der Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-416. Auswirken tut sich dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:
In the Linux kernel, the following vulnerability has been resolved:
usb: core: port: Deattach Type-C connector on component unbind
connector_unbind() is the mirror of connector_bind(), but it is missing
the symmetric call to typec_deattach() that connector_bind() makes via:
if (port_dev->child)
typec_attach(port_dev->connector, &port_dev->child->dev);
When a Thunderbolt dock is unplugged, two teardown paths race:
1. The component framework calls connector_unbind() first, which sets
port_dev->connector = NULL without calling typec_deattach(). This
leaves port->usb2_dev/port->usb3_dev in struct typec_port pointing at
the USB device that is about to be freed.
2. usb_disconnect() then calls typec_deattach(port_dev->connector, ...),
but port_dev->connector is already NULL, so the call is a no-op and
port->usb2_dev is never cleared.
3. Concurrently, UCSI detects a PD partner-disconnect event and calls
typec_unregister_partner(), which reads port->usb2_dev (now a dangling
pointer to freed memory) and passes it to typec_partner_unlink_device()
-> sysfs_remove_link() -> dev_name() on the freed device, corrupting
the typec/UCSI partner state.
This corruption leaves the Thunderbolt tunnel in an inconsistent state on
the next dock hot-plug. On affected hardware the dock's I225/igc NIC fails
to enumerate: AER fires a slot reset while the igc driver is still
initialising ("PCIe link lost"), and the subsequent igc_reset attempt hits
igc_rd32 on an already-detached device:
igc 0000:2e:00.0 eth0: PCIe link lost, device now detached
igc: Failed to read reg 0x0!
WARNING: CPU: 9 PID: 129 at drivers/net/ethernet/intel/igc/igc_main.c:7005
igc_rd32+0xa4/0xc0 [igc]
Call Trace:
igc_disable_pcie_master+0x16/0xa0 [igc]
igc_reset_hw_base+0x14/0x170 [igc]
igc_reset+0x63/0x110 [igc]
igc_io_slot_reset+0x9e/0xd0 [igc]
report_slot_reset+0x5d/0xc0
pcie_do_recovery+0x209/0x400
aer_isr_one_error_type+0x235/0x430
aer_isr+0x4e/0x80
irq_thread+0xf4/0x1f0
4. UCSI later handles the PD partner-disconnect and calls
typec_unregister_partner(), which still sees the stale port->usb2_dev
and tries to remove its sysfs link a second time:
kernfs: can not remove 'typec', no directory
WARNING: CPU: 6 PID: 55 at fs/kernfs/dir.c:1706 kernfs_remove_by_name_ns+0xe9/0xf0
Workqueue: events ucsi_handle_connector_change [typec_ucsi]
Call Trace:
sysfs_remove_link+0x19/0x50
typec_unregister_partner+0x6e/0x120 [typec]
ucsi_unregister_partner+0x107/0x150 [typec_ucsi]
ucsi_handle_connector_change+0x3ec/0x490 [typec_ucsi]
process_one_work+0x18e/0x3e0
worker_thread+0x2e3/0x420
kthread+0x10a/0x230
ret_from_fork+0x121/0x140
ret_from_fork_asm+0x1a/0x30
With worse timing the same stale pointer is dereferenced after the
backing memory is freed, turning the warning into a use-after-free.
Fix the asymmetry: call typec_deattach() before clearing
port_dev->connector, matching what connector_bind() does on the bind side.
typec_partner_deattach() is already protected by port->partner_link_lock,
so it serialises safely with the concurrent typec_unregister_partner() path.Das Advisory findet sich auf git.kernel.org. Die Verwundbarkeit wird seit dem 30.07.2026 als CVE-2026-68372 geführt. Sie ist leicht auszunutzen. Der Angriff muss lokal angegangen werden. Eine Ausnutzung erfordert, dass das Opfer eine spezifische Handlung durchführt. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Die Beschaffenheit der Schwachstelle lässt vermuten, dass ein Exploit momentan zu etwa USD $0-$5k gehandelt werden wird (Preisberechnung vom 10.08.2026).
Ein Aktualisieren auf die Version 6.12.101, 6.18.42, 7.1.6 oder 7.2-rc5 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 78d361e60caf1999d51bda0e1b1004f5d39fcfbc/7714fb896ed308cf13d32d317040adc4f200b8e4/e00109b5adf71635919248e9ab6300a662e6a3e8/e0b291fe117964037e0ba382eff4bb365d531c3a lösen.
Be aware that VulDB is the high quality source for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
- 6.0
- 6.1
- 6.2
- 6.3
- 6.4
- 6.5
- 6.6
- 6.7
- 6.8
- 6.9
- 6.10
- 6.11
- 6.12.100
- 6.18.0
- 6.18.1
- 6.18.2
- 6.18.3
- 6.18.4
- 6.18.5
- 6.18.6
- 6.18.7
- 6.18.8
- 6.18.9
- 6.18.10
- 6.18.11
- 6.18.12
- 6.18.13
- 6.18.14
- 6.18.15
- 6.18.16
- 6.18.17
- 6.18.18
- 6.18.19
- 6.18.20
- 6.18.21
- 6.18.22
- 6.18.23
- 6.18.24
- 6.18.25
- 6.18.26
- 6.18.27
- 6.18.28
- 6.18.29
- 6.18.30
- 6.18.31
- 6.18.32
- 6.18.33
- 6.18.34
- 6.18.35
- 6.18.36
- 6.18.37
- 6.18.38
- 6.18.39
- 6.18.40
- 6.18.41
- 7.1.0
- 7.1.1
- 7.1.2
- 7.1.3
- 7.1.4
- 7.1.5
- 7.2-rc1
- 7.2-rc2
- 7.2-rc3
- 7.2-rc4
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 8.2VulDB Meta Temp Score: 7.8
VulDB Base Score: 8.2
VulDB Temp Score: 7.8
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍
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
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.12.101/6.18.42/7.1.6/7.2-rc5
Patch: 78d361e60caf1999d51bda0e1b1004f5d39fcfbc/7714fb896ed308cf13d32d317040adc4f200b8e4/e00109b5adf71635919248e9ab6300a662e6a3e8/e0b291fe117964037e0ba382eff4bb365d531c3a
Timeline
30.07.2026 CVE zugewiesen10.08.2026 Advisory veröffentlicht
10.08.2026 VulDB Eintrag erstellt
10.08.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2026-68372 (🔒)
GCVE (CVE): GCVE-0-2026-68372
GCVE (VulDB): GCVE-100-387607
Eintrag
Erstellt: 10.08.2026 16:41Anpassungen: 10.08.2026 16:41 (60)
Komplett: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.