tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks

CONNECT-metode

In die Go-programmeertaal is 'n algemene praktyk wanneer HTTP-versoeke hanteer word, spesifiek met die gebruik van die net/http biblioteek, die outomatiese omskakeling van die versoekpad in 'n gestandaardiseerde formaat. Hierdie proses behels:

  • Pade wat eindig met 'n skuinsstreep (/) soos /flag/ word herlei na hul nie-skuinsstreep teenhanger, /flag.
  • Pade wat katalogus-traversie-sekwensies bevat soos /../flag word vereenvoudig en herlei na /flag.
  • Pade met 'n agtereenvolgende punt soos in /flag/. word ook herlei na die skoon pad /flag.

Daar is egter 'n uitsondering met die gebruik van die CONNECT metode. Anders as ander HTTP-metodes, aktiveer CONNECT nie die padnormalisering proses nie. Hierdie gedrag open 'n potensiële pad om toegang te verkry tot beskermde hulpbronne. Deur die CONNECT metode saam met die --path-as-is opsie in curl te gebruik, kan 'n mens die standaard padnormalisering omseil en moontlik beperkte areas bereik.

Die volgende opdrag demonstreer hoe om hierdie gedrag te benut:

bash
curl --path-as-is -X CONNECT http://gofs.web.jctf.pro/../flag

https://github.com/golang/go/blob/9bb97ea047890e900dae04202a231685492c4b18/src/net/http/server.go#L2354-L2364

tip

Leer & oefen AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Ondersteun HackTricks