CVE-2026-40290 in optee_osinfo

Zusammenfassung

von VulDB • 03.06.2026

OP-TEE ist eine Trusted Execution Environment (TEE), die als Begleiter eines nicht-sicheren Linux-Kernels auf Arm Cortex-A-Kernen mit TrustZone-Technologie konzipiert ist. Ab Version 3.16.0 und vor Version 4.11.0 besteht in der Shared-Memory-Teardown-Logik von FF-A innerhalb der OP-TEE SPMC/SP-Flows eine Use-After-Free (UAF)-Race Condition. Dies gilt nur, wenn OP-TEE als SPMC für S-EL0 SPs konfiguriert ist, d. h. mit `CFG_SECURE_PARTITION=y`. Die Funktion `sp_mem_remove()`, die für das Freigeben von Einträgen in `smem->receivers` und `smem->regions` verantwortlich ist, erlangt das globale `sp_mem_lock` nicht, bevor die `free()`-Operationen ausgeführt werden. Gleichzeitig durchlaufen andere Codepfade, wie `sp_mem_get_receiver()`, dieselben Listen, ohne eine Sperre zu halten, oder wie `sp_mem_is_shared()`, durchlaufen sie unter Halten der Sperre, sind jedoch nicht gegen den ungeschützten `free()`-Aufruf in `sp_mem_remove()` serialisiert. Dies erzeugt eine threadübergreifende Race Condition, bei der ein Thread, der die Liste durchläuft, einen Zeiger auf einen Eintrag (z. B. `struct sp_mem_map_region` oder `struct sp_mem_receiver`) erwerben kann, und dann ein anderer Thread `sp_mem_remove()` aufruft und das Objekt freigibt. Wenn der erste Thread fortgesetzt wird und den Zeiger dereferenziert, führt dies zu einer Use-After-Free-Schwachstelle. Version 4.11.0 behebt das Problem.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Zuständig

GitHub M

Reservieren

10.04.2026

Veröffentlichung

03.06.2026

Moderieren

akzeptiert

Eintrag

VDB-368161

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!