La máquina virtual de esta tarea corre el proyecto vulnerable Hospital Management System. Fue subido hace unos años y no ha sido actualizado desde entonces. Es funcional, pero una vulnerabilidad stored XSS fue descubierta y nombrada CVE-2021-38757 y el exploit fue publicado aquí.
Para explotar la vulnerabilidad sólo hay que hacer click en "Contact" y rellenar el nombre, email, número de teléfono y subir el payload en el campo del mensaje.
Cualquier mensaje le aparece al recepcionista. Para iniciar sesión como dicho recepcionista, utiliza las credenciales:
- Username:
admin - Password:
admin123
La aplicación vulnerable corre en el puerto 80.
La vulnerabilidad se encuentra en contact.php.
php
<?php $con=mysqli_connect("localhost","root","","myhmsdb"); if(isset($_POST['btnSubmit'])) { $name = $_POST['txtName']; $email = $_POST['txtEmail']; $contact = $_POST['txtPhone']; $message = $_POST['txtMsg']; $query="insert into contact(name,email,contact,message) values('$name','$email','$contact','$message');"; //... }
- Vamos a la página dada.

- Le damos a "CONTACT".

- Rellenamos los campos y el payload.

- Mandamos el mensaje.

- Iniciamos sesión como el recepcionista.

- Nos sale la cookie.

