Manipulación y Codificación Básica de URL
En este paso, aprenderá a utilizar Hackbar para la manipulación de URL y las operaciones de codificación/decodificación, que son habilidades fundamentales para las pruebas de seguridad.
Lanzamiento de un Sitio Web de Prueba
Para fines de práctica, configuraremos un sitio web de prueba simple. Abra una nueva terminal y ejecute:
mkdir -p ~/project/test-website
cd ~/project/test-website
Ahora cree un archivo HTML básico con un formulario simple:
cat > index.html << EOF
<!DOCTYPE html>
<html>
<head>
<title>Test Website</title>
</head>
<body>
<h1>Login Form</h1>
<form action="login.php" method="GET">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
EOF
Iniciemos un servidor HTTP simple para alojar esta página:
python3 -m http.server 8080
Debería ver una salida que indica que el servidor se está ejecutando en el puerto 8080:
Serving HTTP on 0.0.0.0 port 8080 (http://0.0.0.0:8080/) ...
Acceso al Sitio Web de Prueba
Abra una nueva ventana de Firefox (deje el servidor ejecutándose en la terminal) y navegue a:
http://localhost:8080
Debería ver un formulario de inicio de sesión simple con campos de nombre de usuario y contraseña.
Uso de Hackbar para Manipular URLs
Ahora usemos Hackbar para manipular la URL:
-
Haga clic en el icono de Hackbar para abrir el panel de Hackbar.
-
Haga clic en el botón "Cargar URL" para cargar la URL actual en Hackbar.
-
Debería ver http://localhost:8080 en el campo URL de Hackbar.
-
Intente modificar la URL agregando una ruta, por ejemplo:
- Cámbielo a
http://localhost:8080/index.html
- Haga clic en "Ejecutar" para enviar la petición
-
Rellene el formulario de inicio de sesión con credenciales de prueba (por ejemplo, nombre de usuario: "admin", contraseña: "password") y haga clic en el botón Iniciar sesión.
-
Observe la URL en la barra de direcciones. Debería verse algo así:
http://localhost:8080/login.php?username=admin&password=password
-
Es probable que la página muestre un error "No encontrado" porque login.php no existe, pero estamos interesados en la estructura de la URL.
-
Abra Hackbar de nuevo y haga clic en "Cargar URL" para cargar esta nueva URL.
Manipulación de Parámetros de URL
Las pruebas de seguridad a menudo implican la manipulación de parámetros de URL:
-
En Hackbar, localice el campo URL que contiene la URL de inicio de sesión.
-
Intente cambiar el parámetro de nombre de usuario:
- Cambie
username=admin a username=admin'
- Haga clic en "Ejecutar" para enviar la petición
Este simple cambio añade un carácter de comilla simple, que es una técnica común para probar vulnerabilidades de inyección SQL.
Codificación y Decodificación con Hackbar
Hackbar ofrece varias opciones de codificación/decodificación:
-
En Hackbar, haga clic en el menú "Codificación" para ver las opciones disponibles.
-
Intente la codificación de URL:
- Escriba texto con caracteres especiales en el campo URL, como
test space & special
- Seleccione el texto que desea codificar
- En el menú "Codificación", seleccione "Codificar URL"
- El texto seleccionado se convertirá al formato codificado por URL
-
Intente la codificación Base64:
- Escriba texto en el campo URL, como
hackbar test
- Seleccione el texto que desea codificar
- En el menú "Codificación", seleccione "Codificar Base64"
- El texto seleccionado se convertirá al formato Base64
-
Intente la decodificación:
- Seleccione el texto codificado
- En el menú "Codificación", seleccione la opción de decodificación adecuada (Decodificar URL o Decodificar Base64)
- El texto se convertirá de nuevo a su formato original
Estas funciones de codificación/decodificación son esenciales al probar aplicaciones web en busca de vulnerabilidades de seguridad, ya que le permiten manipular datos en varios formatos.
Detener el Servidor de Prueba
Cuando haya completado este paso, vuelva a la terminal donde se está ejecutando el servidor HTTP de Python y pulse Ctrl+C para detenerlo.