Linux Kernel bis 7.1.7 isotp isotp_sendmsg txfrtimer/wait/tx_gen/tx_result/sk_err Race Condition

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 8.4 | $0-$5k | 0.82 |
Zusammenfassung
Eine Schwachstelle wurde in Linux Kernel bis 7.1.7 entdeckt. Sie wurde als sehr kritisch eingestuft. Dabei geht es um die Funktion isotp_sendmsg der Komponente isotp. Durch das Manipulieren des Arguments txfrtimer/wait/tx_gen/tx_result/sk_err mit unbekannten Daten kann eine Race Condition-Schwachstelle ausgenutzt werden.
Die Verwundbarkeit wird als CVE-2026-80889 geführt. Der Angriff hat dabei lokal zu erfolgen. Es ist kein Exploit verfügbar.
Details
Es wurde eine Schwachstelle in Linux Kernel bis 7.1.7 gefunden. Sie wurde als sehr kritisch eingestuft. Es betrifft die Funktion isotp_sendmsg der Komponente isotp. Durch Beeinflussen des Arguments txfrtimer/wait/tx_gen/tx_result/sk_err mit einer unbekannten Eingabe kann eine Race Condition-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-362 vorgenommen. Dies wirkt sich aus auf Vertraulichkeit, Integrität und Verfügbarkeit. CVE fasst zusammen:
In the Linux kernel, the following vulnerability has been resolved:
can: isotp: fix timer drain order, wakeup handling and tx_gen ordering
This patch is a follow-up to commit cf070fe33bfb ("can: isotp: serialize
TX state transitions under so->rx_lock") which addresses following
sashiko-bot findings:
- isotp_sendmsg(): drain so->txfrtimer first so a stale callback can't
re-arm echotimer after the claim
- isotp_release(): wake so->wait after forcing ISOTP_SHUTDOWN so a
sleeping sendmsg() claim isn't stranded
- isotp_sendmsg(): have both wait_event_interruptible() calls in
isotp_sendmsg() also wake on ISOTP_SHUTDOWN and do not return claim to
IDLE to avoid corrupting a concurrent isotp_release() process.
- isotp_sendmsg(): handle potential claim of a new transfer when
the wait_event_interruptible() call returns in CAN_ISOTP_WAIT_TX_DONE
mode. Don't touch timers and states of the new transfer if a new thread
incremented so->tx_gen before getting the lock at err_event_drop.
- isotp_sendmsg(): handle a stuck can_send() and omit timer and state
changes if a new transfer was claimed. wait_tx_done() returns the error
recorded in so->tx_result[], tagged with the caller's own generation.
- isotp_tx_timeout(): on a claimed timeout, record the ECOMM error for
the timed-out transfer's own generation in so->tx_result[]; sk->sk_err
is raised unconditionally, same as every other error path here.
- isotp_tx_gen_done()/isotp_tx_timeout(): always read tx.state (acquire)
before tx_gen - the reverse order let a weakly ordered CPU pair a fresh
tx.state with a stale tx_gen/tx_result slot.
- isotp_sendmsg(): wait_tx_done: drain sk_err via sock_error() once we
have read the result from so->tx_result[], so an already-reported error
doesn't stay latched for a later poll()/SO_ERROR.
Also align the remaining lock-free so->tx.state/rx.state/cfecho accesses
and use skb->hash as unique loopback echo frame indicator.Auf git.kernel.org kann das Advisory eingesehen werden. Die Verwundbarkeit wird seit dem 26.08.2026 unter CVE-2026-80889 geführt. Die Ausnutzbarkeit ist als leicht bekannt. Der Angriff hat dabei lokal zu erfolgen. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt. Als Preis für einen Exploit ist zur Zeit ungefähr mit USD $0-$5k zu rechnen (Preisberechnung vom 04.09.2026).
Ein Upgrade auf die Version 5.10.267, 5.15.218, 6.1.185, 6.6.151, 6.12.103, 6.18.44 oder 7.1.8 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 8acab9fc66d6f426c36968c91a979f70784945a7/af7e25c649ed68cbad07f8185af0f31b892cbf29/2753722612d8824d3910096f93059f669009b0f0/bf5c4a8b24acb12739ebb9aea5510b007e4f5239/deca7746b57d982cd4f0301f4443f56780c4a048/10be509fa8fd95d1e47d40d1f68b0b26dfe9d572/35c62ac98d06669aa3f0f38b7829eaca929a611e/050f010f920da17c1044a4f174766ad553e770b6 beheben.
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Produkt
Typ
Hersteller
Name
Version
- 5.10.266
- 5.15.217
- 6.1.184
- 6.6.150
- 6.12.102
- 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
- 6.18.42
- 6.18.43
- 7.1.0
- 7.1.1
- 7.1.2
- 7.1.3
- 7.1.4
- 7.1.5
- 7.1.6
- 7.1.7
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.8VulDB Meta Temp Score: 8.4
VulDB Base Score: 8.8
VulDB Temp Score: 8.4
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: Race ConditionCWE: CWE-362
CAPEC: 🔒
ATT&CK: 🔒
Physisch: Teilweise
Lokal: Ja
Remote: Nein
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 5.10.267/5.15.218/6.1.185/6.6.151/6.12.103/6.18.44/7.1.8
Patch: 8acab9fc66d6f426c36968c91a979f70784945a7/af7e25c649ed68cbad07f8185af0f31b892cbf29/2753722612d8824d3910096f93059f669009b0f0/bf5c4a8b24acb12739ebb9aea5510b007e4f5239/deca7746b57d982cd4f0301f4443f56780c4a048/10be509fa8fd95d1e47d40d1f68b0b26dfe9d572/35c62ac98d06669aa3f0f38b7829eaca929a611e/050f010f920da17c1044a4f174766ad553e770b6
Timeline
26.08.2026 CVE zugewiesen04.09.2026 Advisory veröffentlicht
04.09.2026 VulDB Eintrag erstellt
04.09.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2026-80889 (🔒)
GCVE (CVE): GCVE-0-2026-80889
GCVE (VulDB): GCVE-100-399090
Eintrag
Erstellt: 04.09.2026 19:33Anpassungen: 04.09.2026 19:33 (60)
Komplett: 🔍
Cache ID: 216::103
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.