En este artículo te mostraré qué es la vulnerabilidad file upload, cómo funciona, cuál es su impacto y cómo puedes explotarla en un laboratorio práctico.
Para comenzar, voy a a explicarte…
La vulnerabilidad de file upload o subida de archivos ocurre cuando una aplicación permite a los usuarios subir archivos sin las validaciones adecuadas. Esto puede permitir a un atacante cargar archivos maliciosos, como scripts ejecutables, que pueden comprometer el servidor. Depende de lo que la aplicación haga con el archivo subido y, sobre todo, de dónde se almacene.
El impacto de esta vulnerabilidad es alto, ya que el código potencialmente puede ejecutarse en el servidor o en el lado del cliente. Dando así acceso a distintas vulnerabilidades.
Es decir, la vulnerabilidad de file upload también puede ser el punto de entrada para otras vulnerabilidades. Un archivo malicioso puede desencadenar ataques del lado del servidor, como la ejecución de comandos arbitrarios, o del lado del cliente, como XSS. La posibilidad de cargar archivos sin ningún tipo de restricción amplía la superficie de ataque, exponiendo el sistema a múltiples riesgos adicionales.
Un ejemplo común de ataque del lado del servidor es la carga de una web shell, algo que hemos visto muchas veces en laboratorios prácticos en el canal. Esto ocurre cuando un atacante sube un archivo malicioso, como un script PHP, ASPX o JSP, que luego puede ejecutar comandos arbitrarios en el servidor comprometido.
Una vez que la web shell es subida, el atacante puede:
Este tipo de ataque puede llevar al control total del servidor y a la exfiltración de datos. Sin embargo, la simple subida de un archivo malicioso no es suficiente para que el ataque funcione. Para que la web shell pueda ejecutarse, deben cumplirse ciertas condiciones, una de ellas por ejemplo, es que..
En muchos casos, cuando la ejecución directa no es posible, los atacantes combinan este ataque con Local File Inclusion (LFI) para forzar la ejecución del archivo malicioso.
Sin ir más lejos, el vector principal de ataque de la vulnerabilidad crítica que encontré en los sistemas de la NASA fue el file upload, con el que junto a un LFI, pude lograr ejecutar comandos a nivel de sistema en el servidor.
Ahora pasamos a los ataques del lado del cliente, los que afectan directamente a los usuarios que interactúan con la aplicación web, en lugar de comprometer el servidor.
Otros riesgos asociados a la subida de archivo, pueden ser:
o el servidor de almacenamiento de archivos podría ser utilizado para alojar contenido malicioso, como malware, software ilegal o material para adultos. También podrían contener comandos de control para redes de malware, mensajes de violencia o acoso, o datos ocultos mediante esteganografía, que pueden ser utilizados por organizaciones criminales.
En el último podcast con cibercapitán, comentó que ahora los cibercriminales, hackeaban tu web, te configuraban correctamente el correo electrónico para pasar los filtros de seguridad y desde el dominio hackeado, enviaban campañas haciéndose pasar por una empresa legítima.
Si estás interesado en el episodio del podcast, te lo dejo por aquí.
Únete a CiberInsider y prepárate para dar el primer paso a conseguir tu empleo en ciberseguridad
Al suscribirte, aceptas la política de privacidad de rinku.tech y recibir noticias, contenidos, comunicaciones relacionados con la web, gratuitos y premium.