4 juni 2025
Django 5.1.10 åtgärdar ett säkerhetsproblem med allvarlighetsgrad ”låg” i 5.1.9.
Intern loggning av HTTP-svar använde request.path direkt, vilket gjorde att kontrolltecken (t.ex. nya rader eller ANSI-escape-sekvenser) kunde skrivas in i loggar utan avkodning. Detta kan möjliggöra injektion eller förfalskning av loggar, vilket gör det möjligt för angripare att manipulera loggens utseende eller struktur, särskilt i loggar som bearbetas av externa system eller visas i terminaler.
Även om detta inte direkt påverkar Djangos säkerhetsmodell, utgör det risker när loggar konsumeras eller tolkas av andra verktyg. För att åtgärda detta escapar den interna funktionen django.utils.log.log_response() nu alla positionella formateringsargument med hjälp av en säker kodning.
aug. 11, 2025