Release av Apache 2.4.58 http-server med eliminering av DoS-sårbarheter i HTTP/2

Utgivningen av Apache HTTP-servern 2.4.58 har publicerats, som introducerar 33 ändringar och eliminerar tre sårbarheter, varav två är relaterade till möjligheten att utföra en DoS-attack på system som använder HTTP/2-protokollet.

  • CVE-2023-45802 Ett minnesutmattningstillstånd skapas på grund av en fördröjd minnesallokering efter att en HTTP/2-ström har återställts av ett paket med RST-flaggan. Eftersom minnet inte frigörs direkt efter att RST-flaggan har bearbetats, utan först efter att anslutningen stängts, kan en angripare öka minnesförbrukningen avsevärt genom att skicka nya förfrågningar och spola dem med ett RST-paket, men utan att stänga anslutningen.
  • CVE-2023-43622 – HTTP/2-anslutningsbearbetning blockerar på obestämd tid om den öppnades med den initiala skjutfönsterstorleken inställd på 0. Sårbarheten kan användas för att orsaka en denial of service genom att överskrida gränsen för det maximalt tillåtna antalet öppna anslutningar.
  • CVE-2023-31122 är en sårbarhet i mod_macro som gör att data kan läsas från ett område utanför den allokerade bufferten.

Bland de icke-säkerhetsmässiga förändringarna:

  • mod_http2 lägger till stöd för att använda WebSocket-protokollet över en ström i en HTTP/2-anslutning (RFC 8441). För att aktivera WebSocket över HTTP/2 har direktivet 'H2WebSockets on|off' föreslagits.
  • Lade till direktivet 'H2EarlyHint name value' till mod_http2 för att lägga till rubriker till "103 Early Hints"-svaret.
  • Lade till direktivet 'H2ProxyRequests on|off' till mod_http2 för att kontrollera om bearbetning av HTTP/2-förfrågningar är aktiverad i proxykonfigurationen.
  • Direktivet 'H2MaxDataFrameLen n' har lagts till mod_http2 för att begränsa den maximala storleken på svarskroppen i byte som överförs i en DATA-ram i HTTP/2. Standardgränsen är 16KB.
  • Uppdaterade filen mime.types, där tillägget ".js" är bundet till typen "text/javascript" istället för "application/javascript" och lade till tilläggen: ".mjs" (med typen "text/javascript" ) och ".opus" ( 'audio/ogg'). Lade till MIME-typer och tillägg som används i WebAssembly.
  • Mod_tls-modulen (ett alternativ till mod_ssl i Rust-språket) har översatts till att använda rustls-ffi 0.9.2+-biblioteket.
  • Lade till direktivet 'MDMatchNames all|servernames' till mod_md-modulen för att styra hur MDomains matchas med VirtualHosts innehåll.
  • Direktivet 'MDChallengeDns01Version' har lagts till i mod_md-modulen för att välja ACME-protokollversionen som används för DNS-verifiering.
  • mod_md tillåter användning av MDChallengeDns01-direktivet för enskilda domäner.
  • Lade till direktivet 'DavBasePath' till mod_dav för att konfigurera sökvägen till roten av WebDav-förvaret.
  • Lade till 'AliasPreservePath'-direktivet till mod_alias för att använda Alias-värdet i Location-blocket som den fullständiga sökvägen.
  • Lade till direktivet 'RedirectRelative' till mod_alias, vilket tillåter omdirigering med hjälp av relativa sökvägar.
  • Formatspecifikationerna %{z} och %{strftime-format} har lagts till i ErrorLogFormat-direktivet.
  • Lade till 'DeflateAlterETag'-direktivet till mod_deflate för att kontrollera hur ETag ändras när komprimering används.
  • Prestandan för funktionen send_brigade_nonblocking() har optimerats.
  • Mod_status säkerställer att duplicerade nycklar "BusyWorkers" och "IdleWorkers" tas bort, och en ny räknare "GracefulWorkers" läggs till.

Källa: opennet.ru

Lägg en kommentar