Cargar un archivo en un directorio con acceso de escritura público

2

Sé que no es correcto establecer un permiso para la carpeta como 777, pero si se hace, ¿será posible cargar un archivo en ese directorio sin acceso ftp? Esto es lo que quiero decir

Digamos que la lista de directorios no está deshabilitada desde apache config, y puedo acceder a la carpeta por ip desde el navegador, como (estoy intentando desde mi PC con Windows conectándose a Linux en vmware)

http://192.168.252.138/test/public

y supongamos que esta carpeta public tiene permiso 777. ¿Puedo de alguna manera (usando php o cualquier otra cosa) crear el archivo test.php en esa carpeta? Intenté smth like (ejecutando esto desde localhost de Windows)

file_put_contents('http://192.168.252.138/test/public/test.php', 'test file')

pero me avisa

failed to open stream: HTTP wrapper does not support writeable connections in

No sé si esto es posible. Y si esto no es así, entonces, ¿qué daño puede hacer un posible atacante si tengo un directorio como ese con acceso público de escritura? considerando que no hay acceso ftp.

Gracias

    
pregunta dav 12.01.2015 - 07:05
fuente

1 respuesta

2

Así que hay tres escenarios que he visto este escollo en la vida real:

  1. Configuración insegura de WebDAV. WebDAV le permite a su servidor responder a solicitudes HTTP como "PUT / foo / bar / public" al recibir archivos. Si las subidas de WebDAV son accesibles en todo el mundo, está en espera.

  2. Capacidades de carga de archivos inseguras. Si pueden redirigir la carpeta en la que coloca los archivos, estás pwned. O, alternativamente, si dejas que las personas suban archivos aleatorios, eres ... especial. Muy especial.

  3. Inyección de comandos. Si los atacantes pueden obtener acceso a una línea de comando, les acaba de dar un lugar práctico para poner todo su malware en su webroot sin necesidad de rootear o manipular permisos.

777 es una idea horrible. Es como dejar la puerta de tu casa abierta. chmod 605 (-rw ---- r-x) es un permiso predeterminado aceptable para cosas web. Solo ten cuidado con el + x; Utilízalo con moderación. Si bien el 777 en sí no crea exploits, hace que los existentes sean muy, muy mortales. No le des a tus atacantes ninguna oportunidad.

    
respondido por el Ohnana 12.01.2015 - 15:41
fuente

Lea otras preguntas en las etiquetas