mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
937 B
937 B
Método CONNECT
En golang, la biblioteca net/http generalmente transforma la ruta a una canónica antes de acceder a ella:
- /flag/ -- Se responde con una redirección a /flag
- /../flag --- Se responde con una redirección a /flag
- /flag/. -- Se responde con una redirección a /flag
Sin embargo, cuando se utiliza el método CONNECT esto no sucede. Por lo tanto, si necesita acceder a algún recurso protegido, puede abusar de este truco:
curl --path-as-is -X CONNECT http://gofs.web.jctf.pro/../flag
El código en el enlace proporcionado muestra la implementación de la función readRequest
en el paquete net/http
de Golang. Esta función se encarga de leer y analizar una solicitud HTTP entrante. Si se encuentra un error al leer la solicitud, se devuelve un error y se cierra la conexión. De lo contrario, se devuelve un puntero a una estructura http.Request
que contiene información sobre la solicitud.