Golang
Metoda CONNECT
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:
Last updated