Kwetsbaarheid in het Django-webframework die kan leiden tot SQL-vervanging

Er zijn corrigerende releases van het Django-webframework 4.0.6 en 3.2.14 gepubliceerd, die een kwetsbaarheid verhelpen (CVE-2022-34265) waardoor u mogelijk uw SQL-code kunt vervangen. Het probleem treft toepassingen die niet-geverifieerde externe gegevens gebruiken in de parameters soort en lookup_name die worden doorgegeven aan de functies Trunc(kind) en Extract(lookup_name). Programma's die alleen geverifieerde gegevens in de waarden lookup_name en kind toestaan, worden niet getroffen door de kwetsbaarheid.

Het probleem werd geblokkeerd door het gebruik van andere tekens dan letters, cijfers, “-“, “_”, “(” en “)” in de argumenten van de functies Extract en Trunc te verbieden. Voorheen werd het enkele aanhalingsteken niet verwijderd uit de verzonden waarden, waardoor het mogelijk werd om uw SQL-constructies uit te voeren door waarden als “day' FROM start_datetime)) OR 1=1;—” en “year', start_datetime) door te geven ) OF 1=1;—“. In de volgende release 4.1 is het de bedoeling om de bescherming van datumextractie- en truncatiemethoden verder te versterken, maar wijzigingen in de API zullen leiden tot een storing in de compatibiliteit met database-backends van derden.

Bron: opennet.ru

Voeg een reactie