Korrigerande versioner av webbramverket Django 4.0.6 och 3.2.14 har publicerats, dÀr en sÄrbarhet (CVE-2022-34265) ÄtgÀrdats, vilket potentiellt kan möjliggöra injektion av egen SQL-kod. Problemet pÄverkar applikationer som anvÀnder okontrollerade externa data i parametrarna kind och lookup_name, som överförs till funktionerna Trunc(kind) och Extract(lookup_name). Program som endast tillÄter verifierade data i vÀrdena lookup_name och kind pÄverkas inte av sÄrbarheten.
Problemet har blockerats genom att förbjuda anvĂ€ndning av tecken som skiljer sig frĂ„n bokstĂ€ver, siffror, «-», «_», «(» och «)» som argument i funktionerna Extract och Trunc. Tidigare skars inte enkla citat bort i de överförda vĂ€rdena, vilket möjliggjorde att egna SQL-satser kunde skickas genom att överföra vĂ€rden som «dayâ FROM start_datetime)) OR 1=1;â» och «yearâ, start_datetime)) OR 1=1;â». I nĂ€sta version 4.1 planeras ytterligare förstĂ€rkning av skyddet för metoderna för att extrahera och avskĂ€ra datum, men de förĂ€ndringar som görs i API:t kommer att leda till inkompatibilitet med tredjeparts backend-lösningar för databashantering.
KĂ€lla: opennet.ru
