Ejercicio 01: Envío de datos con formulario
En la URI http://august-outlet-228919.appspot.com/ hay un formulario que permite obtener la letra de un DNI. Se pide:
a ) Ver qué es lo que ocurre cuando se solicita la URI anteriormente indicada.
a ) Ver qué es lo que ocurre cuando se solicita la URI anteriormente indicada.
Se obtiene un código 302: redirige a https://august-outlet-228919.appspot.com/html/form.html
b) Introducir un DNI válido y ver a qué URI se envía la petición.
La petición se envía a https://august-outlet-228919.appspot.com/obtener Letra. Como tiene espacio, en la petición este se convertirá en un %
c) Obtener los siguientes parámetros:
- Nombre del parámetro asociado al DNI: nan
- Nombre y el valor de los parámetros ocultos adicionales: ezkutua: kalkulatu
d) Editar manualmente en Burp la petición HTTP para obtener la letra y comprobar que la respuesta HTTP contiene la letra en el cuerpo del mensaje.
La petición a enviar será de la forma:
POST /obtener%20Letra HTTP/1.1
Host: august-outlet-228919.appspot.com
Content-Type: application/x-www-form-urlencoded
Content-Length: [largura_mensaje]
nan=22725983&ezkutua=kalkulatu
Donde [largura_mensaje] deberá sustituirse por el valor adecuado en cada caso. Burp lo rellena automáticamente. El valor de nan también deberá modificarse a conveniencia.
| Petición de letra |
| Respuesta entregada por el servidor |
Ejercicio 02: Enviar datos en formato formulario a ThingSpeak y recibir una respuesta vacía
Siguiendo la documentación de Matlab para trabajar con ThingSpeak se hace la petición desde Burp Suite. El canal a actualizar es el ya creado durante la sesión número 02. El formato de la petición será: POST /update HTTP/1.1
Host: api.thingspeak.com
Content-Type: application/x-www-form-urlencoded
Content-Length: [largura_mensaje]
api_key=[channel_api_key]&field1=[valor_campor_1]&field2=[valor_campo_2]
- [channel api_key] habrá que sustituirlo entero por el api_key del canal.
- [valor_campor_1] y [valor_campor_2]: se deberán sustituir por lo valores que se quieren subir al canal.
- [largura_mensaje]: se deberá sustituir por la largura del mensaje (depende de cada caso y Burp lo rellena automáticamente)
La respuesta entregada por el servidor así como los datos actualizados en el canal pueden observarse a continuación:
![]() |
| Respuesta del servidor: está vacia |
![]() |
![]() |
Ejercicio 03: Enviar los datos en formato formulario y recibir una respuesta en formato JSON
De nuevo, la petición será de la forma:
POST /update.json HTTP/1.1
POST /update.json HTTP/1.1
Host: api.thingspeak.com
Content-Type: application/x-www-formurlencoded
Content-Length: [largura_mensaje]
api_key=[channel_api_key]&field1=[valor_campor_1]&field2=[valor_campo_2]
La respuesta entregada por el servidor así como los datos actualizados en el canal pueden observarse a continuación:
La respuesta entregada por el servidor así como los datos actualizados en el canal pueden observarse a continuación:
![]() |
| Respuesta del servidor |


Ejercicio 04: Enviar los datos en formato JSON y recibir una respuesta en formato XML
Esta vez la petición se hace en formato json, con lo cual cambia un poco su aspecto respecto a las veces anteriores POST /update.xml HTTP/1.1
Host: api.thingspeak.com
Content-Type: application/json
Content-Length: [largura_mensaje]
{"api_key":"[channel_api_key]","field1":=[valor_campo_1],"field2":=[valor_campo_2]}
Content-Type: application/json
Content-Length: [largura_mensaje]
{"api_key":"[channel_api_key]","field1":=[valor_campo_1],"field2":=[valor_campo_2]}







No hay comentarios :
Publicar un comentario