Nahita kinova vaovao amin'ny fanafihana HTTP Request Smuggling izy ireo

ny rafi-tranonkala izay eken'ny frontend ny fifandraisana amin'ny alàlan'ny HTTP / 2 ary mampita azy ireo mankany amin'ny backend amin'ny alàlan'ny HTTP / 1.1 hnaseho tamin'ny kinova vaovao amin'ny fanafihana "HTTP Request Smuggling", Izy io dia mamela amin'ny alàlan'ny fandefasana fangatahana mpanjifa noforonina manokana, hizara ny atin'ny fangatahan'ny mpampiasa hafa voahodina amin'ny fantsona eo anelanelan'ny frontend sy ny backend.

Ny fanafihana azo ampiasaina hanindrona kaody JavaScript mampidi-doza ao anatin'ny fivoriana misy tranokala ara-dalàna, esory ny rafitra fameperana fidirana ary atsofohy ny masontsivana fanamarinana.

Ny mpanoratra ny fanadihadiana nampiseho ny mety hanafihana ny rafitra Netflix, Verizon, Bitbucket, Netlify CDN ary Atlassian, ary nahazo $ 56.000 tamin'ny programa valisoa ho famaritana ireo marefo. Ny olana dia voamarina ihany koa amin'ny vokatra F5 Networks.

Ny olana misy fiantraikany amin'ny mod_proxy amin'ny server Apache http (CVE-2021-33193), ny fanamboarana andrasana amin'ny andiany 2.4.49 (nampandrenesina momba ny olana ny mpandraharaha tamin'ny voalohan'ny volana Mey ary nahazo 3 volana hanamboarana izany). Ao amin'ny nginx, ny fahafahana mamaritra manokana ny lohateny "Length-Content" sy ny "Transfer-Encoding" dia nosakanana tamin'ny kinova teo aloha (1.21.1).

Ny fitsipiky ny fiasan'ny fomba vaovao ny fangatahana mifanaraka amin'ny fifamoivoizana dia mitovy amin'ny fahalemena hitan'io mpikaroka io ihany roa taona lasa izay, fa voafetra ihany amin'ny interface izay manaiky ny fangatahana mihoatra ny HTTP / 1.1.

Ny fanafihana "HTTP Request Smuggling" mahazatra dia niainga avy tamin'ny fandikan'ny lohalaharana sy ny lamosina ny fampiasana ny lohateny HTTP "Lava-lava" (mamaritra ny haben'ny data ao anaty fangatahana) sy ny "Transfer-Encoding: chunked" ( mamela anao hamindra data ao anaty sakana) ...

Ohatra, raha ny "Content-Length" ihany no tohanan'ny interface, fa tsy miraharaha ny "Transfer-Encoding: fragmented", ny mpanafika dia afaka mandefa fangatahana misy ny lohateny hoe "Lava-lava" sy "Transfer-Encoding: fragmented", fa ny habeny mg Ny "Halavan'ny atiny" dia tsy mifanandrify amin'ny haben'ny kofehy tapaka. Amin'ity tranga ity, ny frontend dia handamina sy hamindra ny fangatahana arakaraka ny "halavan'ny atiny", ary ny backend dia hiandry ny famaranana ny sakana miorina amin'ny "Transfer encoding: chunked".

Tsy toy ny protokol HTTP / 1.1 an-tsoratra, izay ampiharina amin'ny haavon'ny tsipika, HTTP / 2 dia protokol binary ary manodinkodina sakana angon-drakitra habe efa voafaritra mialoha. Na izany aza, HTTP / 2 mampiasa lozisialy pseudo izay mifanaraka amin'ny lohateny HTTP mahazatra. Rehefa mifanerasera amin'ny backend mampiasa ny HTTP / 1.1 protokol, ny frontend dia mandika ireo lohan-doha sandoka ireo amin'ny lohateny HTTP / 1.1 HTTP mitovy amin'izany. Ny olana dia ny fanapahan-kevitra momba ny fandefasana ny backend mifototra amin'ireo lohateny HTTP napetraky ny frontend, tsy fantatrao ny masontsivana amin'ny fangatahana voalohany.

Na dia amin'ny endrika lohateny lohataona aza, ny soatoavina "Halavan'ny atiny" sy "encoding-transfer" azo alefa izy ireo, na dia tsy ampiasaina amin'ny HTTP / 2 aza izy ireo, satria ny haben'ny data rehetra dia voafaritra amin'ny sehatra hafa. Na izany aza, rehefa mamadika ny fangatahana HTTP / 2 ho HTTP / 1.1 dia mandalo ireo lohateny ireo ary mety afangaro amin'ny backend.

Misy safidy roa fanafihana lehibe: H2.TE sy H2.CL, izay hamitahana ny backend amin'ny alàlan'ny famindrana famindrana diso na sanda halavan'ny votoatiny izay tsy mifanaraka amin'ny haben'ny vatam-pangatahana voarain'ny frontend amin'ny alàlan'ny HTTP / 2 Protocol.

Ohatra iray amin'ny fanafihana H2.CL, habe tsy marina no voalaza ao amin'ny lozisialy halavan'ny atiny rehefa mandefa fangatahana HTTP / 2 mankany Netflix. Ity fangatahana ity dia mitarika amin'ny fampidirana lohateny HTTP-Halavana halava mitovy amin'izany rehefa miditra amin'ny backend amin'ny alàlan'ny HTTP / 1.1, fa hatramin'ny habeny Votoatin'ny halavany dia kely noho ny tena izy, ny ampahany amin'ny angon-drakitra ao anaty filaharana dia voahodina ho fiandohan'ny fangatahana manaraka.

Ny Attack Tools dia efa nampiana ao amin'ny Burp's Toolkit ary azo alaina ho toy ny extension Turbo Intruder. Ny proxy an'ny tranonkala, ny mampifandanja ny entana, ny mpandefa tranonkala, ny rafitra fanaterana votoaty, ary ny fikirakirana hafa izay ahitàna ireo fangatahana alefa ao anaty drafitra frontend-backend dia mora tohin'ny olana.

loharanom-baovao: https://portswigger.net


Ny atin'ny lahatsoratra dia manaraka ny fitsipiky ny etika fanonta. Raha hitatitra tsindry diso eto.

Aoka ho voalohany ny fanehoan-kevitra

Avelao ny hevitrao

Ny adiresy email dia tsy ho namoaka. Mitaky saha dia marika amin'ny *

*

*

  1. Tompon'andraikitra amin'ny data: Miguel Ángel Gatón
  2. Tanjon'ny angona: Control SPAM, fitantanana hevitra.
  3. Legitimation: Ny fanekenao
  4. Fifandraisana momba ny angona: Tsy hampitaina amin'ny antoko fahatelo ny angona raha tsy amin'ny adidy ara-dalàna.
  5. Fitehirizana angona: Database nomen'ny Occentus Networks (EU)
  6. Zo: Amin'ny fotoana rehetra, azonao atao ny mametra, mamerina ary mamafa ny mombamomba anao.