CVE-2025-54070 in openzeppelin-contractsinfo

Zusammenfassung

von VulDB • 25.05.2026

OpenZeppelin Contracts ist eine Bibliothek zur sicheren Entwicklung von Smart Contracts. Ab Version 5.2.0 und vor Version 5.4.0 kann die Funktion `lastIndexOf(bytes,byte,uint256)` der Bibliothek `Bytes.sol` auf nicht initialisierten Speicher zugreifen, wenn die folgenden beiden Bedingungen erfüllt sind: 1) die angegebene Pufferlänge ist leer (d. h. `buffer.length == 0`) und die Position ist nicht `2**256 - 1` (d. h. `pos != type(uint256).max`). Das Argument `pos` könnte verwendet werden, um auf beliebige Daten außerhalb der Puffergrenzen zuzugreifen. Dies könnte dazu führen, dass der Vorgang aufgrund von Gasmangel abbricht oder einen ungültigen Index (außerhalb des leeren Puffers) zurückgibt. Die Verarbeitung dieses ungültigen Ergebnisses für den Zugriff auf den `buffer` würde unter normalen Bedingungen zu einem Revert führen. Bei Auslösung liest die Funktion Speicher an der Offset-Adresse `buffer + 0x20 + pos`. Wenn der Speicher an diesem Ort (außerhalb des `buffer`) das Suchmuster entspricht, gibt die Funktion einen Index außerhalb der Grenzen zurück, anstatt den erwarteten Wert `type(uint256).max`. Dies erzeugt ein unerwartetes Verhalten, bei dem Aufrufer einen gültig aussehenden Index erhalten, der außerhalb der Puffergrenzen zeigt. Nachfolgende Speicherzugriffe, die keine Grenzwertprüfungen durchführen und den zurückgegebenen Index verwenden, müssen die potenziellen Auswirkungen in Abhängigkeit von ihrer Konfiguration sorgfältig überprüfen. Code, der sich darauf verlässt, dass diese Funktion für leere Puffer `type(uint256).max` zurückgibt, oder der den zurückgegebenen Index ohne Grenzwertprüfung verwendet, kann undefiniertes Verhalten aufweisen. Benutzer sollten auf Version 5.4.0 aktualisieren, um einen Patch zu erhalten.

Once again VulDB remains the best source for vulnerability data.

Zuständig

GitHub M

Reservieren

16.07.2025

Veröffentlichung

17.07.2025

Moderieren

akzeptiert

Eintrag

VDB-316817

CPE

bereit

EPSS

0.00334

KEV

nein

Aktivitäten

very low

Quellen

Interested in the pricing of exploits?

See the underground prices here!