Golang
Metoda CONNECT
W języku programowania Go, powszechną praktyką podczas obsługi żądań HTTP, szczególnie przy użyciu biblioteki net/http
, jest automatyczna konwersja ścieżki żądania na znormalizowany format. Proces ten obejmuje:
Ścieżki kończące się ukośnikiem (
/
) jak/flag/
są przekierowywane na swoje odpowiedniki bez ukośnika,/flag
.Ścieżki zawierające sekwencje nawigacji po katalogach, takie jak
/../flag
, są uproszczone i przekierowywane na/flag
.Ścieżki z kropką na końcu, jak
/flag/.
, również są przekierowywane na czystą ścieżkę/flag
.
Jednakże, obserwuje się wyjątek w przypadku użycia metody CONNECT
. W przeciwieństwie do innych metod HTTP, CONNECT
nie wywołuje procesu normalizacji ścieżki. To zachowanie otwiera potencjalną drogę do dostępu do chronionych zasobów. Poprzez użycie metody CONNECT
wraz z opcją --path-as-is
w curl
, można ominąć standardową normalizację ścieżki i potencjalnie dotrzeć do ograniczonych obszarów.
Poniższa komenda demonstruje, jak wykorzystać to zachowanie:
Last updated