Descargar

Seguridad en Apache y PHP

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Consideraciones Quién tiene acceso físico? Quién tiene acceso shell? Apache escribe en los filesystem? Limitar los post/get, cookies, sesiones?

    edu.red

    Recomendaciones básicas Deshabilitar los servicios no usados, actualizar el servidor, usar los archivos de configuración recomendados Habilitar logwatch y logcheck y actualizar los reportes Habilitar una herramienta de verificación de integridad de archivos configurar iptables – Ports 22, 80, 443 tomcat?

    edu.red

    Asegurando Apache

    edu.red

    Configurando Apache Deshabilitar servicios no indispensables Verificar los bugtracks y actualizar Proteger los directorios /var/www/ Crear un directorio personalizado /var/www/error Habilitar los .htaccess y proteger los archivos de users y password del http

    edu.red

    mod_dosevasive Fácil de configurar Puede ayudar a evadir ataques de DoS bloqueando direcciones ip o URLs temporalmente.

    LoadModule dosevasive20_module modules/mod_dosevasive20.so

    < IfModule mod_dosevasive20.c> DOSHashTableSize 3097 DOSPageCount 2 DOSPageInterval 1 DOSSiteCount 50 DOSSiteInterval 1 DOSBlockingPeriod 10 DOSEmailNotify [email protected] DOSLogDir "/tmp/mod_dosevasive“ (make writable by apache only) < /IfModule>

    edu.red

    Características mod_security Los filtros se aplican antes de ejecutar los scripts Soporta SSL Entienden el protocolo http Hace logging completo incluyendo post data Las reglas son personalizadas usando expresiones regulares y pueden ser aplicadas a niveles de virtual hosts

    edu.red

    Ejemplo mod_security < IfModule mod_security.c> SecFilterEngine On # Prevent OS specific keywords #index.php?include=filename SecFilter /etc/passwd

    # Prevent path traversal (..) attacks SecFilter "../"

    # Very crude filters to prevent SQL injection attacks SecFilter "delete[[:space:]]+from" SecFilter "insert[[:space:]]+into" SecFilter "select.+from" < /IfModule>

    edu.red

    Revisar el Servidor Nmap (nmap –I –sV servidor) Nessus http://www.nessus.org CIS Linux Benchmark Scan http://www.cisecurity.org/bench_linux.html

    edu.red

    Seguridad en PHP

    edu.red

    Tipos de Ataques a PHP Ejecución de comandos y/o escribir en los filesystem Sql injection Session Hijacking Cross Site Scripting (xss)

    edu.red

    Directory Transversal Attack Este fallo es muy común y simple. Consiste en realizar un descenso de directorios usando la referencia ../ al directorio padre. Un ejemplo de esto seria el siguiente: < html> < head>PHP para mostrar ficheros de texto< /head> < body> < ? if ($fp=fopen($filename,"r")) { while(!feof($fp)) { $contenido=fgets($fp,500); print("< p>" . $contenido); } } else { print("Error al abrir el fichero"); } ?> < /body> < /html>

    edu.red

    Contenido del programa show_text_file.php

    Este programa de ejemplo esta escrito en PHP y simplemente lee el archivo especificado y lo muestra, tal y como vemos en el siguiente escenario: Ejemplo: victima.com/cgi-bin/show_text_file.php?filename=introduccion.txt Salida: PHP para mostrar ficheros de texto Esto es un ejemplo esta es la línea 1 esta es la línea 2 esta es la línea 3

    Partes: 1, 2
    Página siguiente