Internet Computer ic-cdk bis 0.15.0 ic_cdk::call Denial of Service

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
7.4$0-$5k0.00

Zusammenfassunginfo

Eine als kritisch eingestufte Schwachstelle wurde in Internet Computer ic-cdk bis 0.15.0 festgestellt. Hiervon betroffen ist die Funktion ic_cdk::call. Durch Manipulieren mit unbekannten Daten kann eine Denial of Service-Schwachstelle ausgenutzt werden. Diese Verwundbarkeit ist als CVE-2024-7884 gelistet. Ein Angriff ist aus der Distanz möglich. Es existiert kein Exploit. Ein Upgrade der betroffenen Komponente wird empfohlen.

Detailsinfo

Eine kritische Schwachstelle wurde in Internet Computer ic-cdk bis 0.15.0 gefunden. Dies betrifft die Funktion ic_cdk::call. Durch Manipulieren mit einer unbekannten Eingabe kann eine Denial of Service-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-401. Auswirken tut sich dies auf die Verfügbarkeit. Die Zusammenfassung von CVE lautet:

When a canister method is called via ic_cdk::call* , a new Future CallFuture is created and can be awaited by the caller to get the execution result. Internally, the state of the Future is tracked and stored in a struct called CallFutureState. A bug in the polling implementation of the CallFuture allows multiple references to be held for this internal state and not all references were dropped before the Future is resolved. Since we have unaccounted references held, a copy of the internal state ended up being persisted in the canister's heap and thus causing a memory leak. Impact Canisters built in Rust with ic_cdk and ic_cdk_timers are affected. If these canisters call a canister method, use timers or heartbeat, they will likely leak a small amount of memory on every such operation. In the worst case, this could lead to heap memory exhaustion triggered by an attacker. Motoko based canisters are not affected by the bug. PatchesThe patch has been backported to all minor versions between >= 0.8.0, <= 0.15.0. The patched versions available are 0.8.2, 0.9.3, 0.10.1, 0.11.6, 0.12.2, 0.13.5, 0.14.1, 0.15.1 and their previous versions have been yanked. WorkaroundsThere are no known workarounds at the moment. Developers are recommended to upgrade their canister as soon as possible to the latest available patched version of ic_cdk to avoid running out of Wasm heap memory. Upgrading the canisters (without updating `ic_cdk`) also frees the leaked memory but it's only a temporary solution.

Das Advisory findet sich auf github.com. Die Verwundbarkeit wird seit dem 16.08.2024 mit der eindeutigen Identifikation CVE-2024-7884 gehandelt. Sie gilt als leicht auszunutzen. Umgesetzt werden kann der Angriff über das Netzwerk. Das Ausnutzen erfordert keine spezifische Authentisierung. Zur Schwachstelle sind technische Details bekannt, ein verfügbarer Exploit jedoch nicht. Diese Schwachstelle wird durch das MITRE ATT&CK als Angriffstechnik T1499 bezeichnet.

Ein Aktualisieren auf die Version 0.8.2, 0.9.3, 0.10.1, 0.11.5, 0.12.2, 0.13.4, 0.14.1 oder 0.15.1 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen eines Patches lösen. Dieser kann von github.com bezogen werden. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen.

Be aware that VulDB is the high quality source for vulnerability data.

Produktinfo

Hersteller

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 7.5
VulDB Meta Temp Score: 7.4

VulDB Base Score: 7.5
VulDB Temp Score: 7.2
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 7.5
NVD Vector: 🔍

CNA Base Score: 7.5
CNA Vector (Dfinity): 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Denial of Service
CWE: CWE-401 / CWE-404
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔍
Status: Nicht definiert

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔍

Upgrade: ic-cdk 0.8.2/0.9.3/0.10.1/0.11.5/0.12.2/0.13.4/0.14.1/0.15.1
Patch: github.com

Timelineinfo

16.08.2024 🔍
05.09.2024 +20 Tage 🔍
05.09.2024 +0 Tage 🔍
13.09.2024 +8 Tage 🔍

Quelleninfo

Advisory: github.com
Status: Bestätigt

CVE: CVE-2024-7884 (🔍)
GCVE (CVE): GCVE-0-2024-7884
GCVE (VulDB): GCVE-100-276647

Eintraginfo

Erstellt: 05.09.2024 15:36
Aktualisierung: 13.09.2024 12:28
Anpassungen: 05.09.2024 15:36 (65), 06.09.2024 13:16 (1), 13.09.2024 12:28 (10)
Komplett: 🔍
Cache ID: 216::103

Be aware that VulDB is the high quality source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Interested in the pricing of exploits?

See the underground prices here!