Golang
Last updated
Last updated
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
W języku programowania Go powszechną praktyką przy obsłudze żądań HTTP, szczególnie przy użyciu biblioteki net/http
, jest automatyczna konwersja ścieżki żądania do ustandaryzowanego formatu. Proces ten obejmuje:
Ścieżki kończące się ukośnikiem (/
), takie jak /flag/
, są przekierowywane do ich odpowiedników bez ukośnika, /flag
.
Ścieżki zawierające sekwencje przechodzenia przez katalogi, takie jak /../flag
, są upraszczane i przekierowywane do /flag
.
Ścieżki z końcową kropką, jak w /flag/.
, są również przekierowywane do czystej ścieżki /flag
.
Jednakże, wyjątek jest obserwowany przy użyciu metody CONNECT
. W przeciwieństwie do innych metod HTTP, CONNECT
nie uruchamia procesu normalizacji ścieżki. To zachowanie otwiera potencjalną drogę do uzyskania dostępu do chronionych zasobów. Używając metody CONNECT
wraz z opcją --path-as-is
w curl
, można obejść standardową normalizację ścieżki i potencjalnie dotrzeć do zastrzeżonych obszarów.
Poniższe polecenie demonstruje, jak wykorzystać to zachowanie:
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)