ADOdb SQL-Substitutions-Sicherheitslücke

In der ADOdb-Bibliothek, die in vielen PHP-Projekten zur Abstraktion des Zugriffs auf das DBMS verwendet wird und über etwa 3 Millionen Installationen aus dem Packagist-Repository verfügt, wurde eine Sicherheitslücke (CVE-2025-46337) identifiziert, die die Ersetzung einer benutzerdefinierten SQL-Abfrage ermöglicht. Dem Problem wurde ein kritischer Schweregrad (10 von 10) zugewiesen. Die Sicherheitslücke wurde in der Version ADOdb 5.22.9 behoben.

Die Sicherheitslücke tritt auf, wenn ADOdb zusammen mit dem PostgreSQL-DBMS in Anwendungen verwendet wird, die die Methode pg_insert_id() aufrufen und nicht überprüfte externe Daten über den Parameter $fieldname übergeben. Das Problem wird durch einen Fehler im ADOdb-Treiber für PostgreSQL verursacht, der mit der fehlenden ordnungsgemäßen Maskierung von Sonderzeichen in den Parametern $tablename und $fieldname zusammenhängt, bevor diese in der Funktion pg_insert_id() zur Bildung des Sequenznamens verwendet werden. $result=pg_query($this->_connectionID, 'SELECT letzter_Wert AUS '. $tablename .'_'. $fieldname .'_seq');

Source: opennet.ru

Kommentar hinzufügen