internet information server 6.0 aplicaciones web seguras chema alonso ms mvp windows server security...
TRANSCRIPT
Internet Information Server 6.0Aplicaciones Web Seguras
Chema Alonso
MS MVP Windows Server Security
Código: HOL-IIS01
Agenda• Aplicaciones Web
• Vulnerabilidades: Sql Injection
• Vulnerabilidades: Cross-Site Scripting
• Vulnerabilidades: Phising
• Vulnerabilidades: WebTrojan
• Vulnerabilidades: Capa 8
Aplicaciones Web
Tipos de Aplicaciones Web
• Web Site público.– Información destinada al público.
• Intranet (ERP/CRM/Productividad)– Información privada de acceso interno.
• Extranet (Productividad/B2B/B2C)– Información privada de acceso externo.
AlmacénDe Datos
Lógica de la AplicaciónInterfaz de Usuario(GUI)
Arquitectura Multicapa
Browser
WebServer
DCOM
WebService
BBDD
BBDDWebServer
RPC
Arquitectura: Cliente• Navegador de Internet:
– Ejecuta código en contexto de usuario.– Lenguajes potentes:
• HTML/DHTML• vbScript/JavaScript/Jscript
– Programas embebidos• Applets Java• ActiveX• Shockwave Flash
– Códigos No protegidos• Cifrado cliente: Atrise.• Ofuscación de código.
Arquitectura: Lógica de Aplicación
• Servidor Web– Ejecuta código en contextos privilegiados.– Lenguajes potentes– Acceden a BBDD– Envían programas a clientes– Transferir ficheros– Ejecutar comandos sobre el sistema.– Soporte para herramientas de administración de otro
software.– Códigos de Ejemplo
Arquitectura: Almacén de Datos
• SGBD– Lenguaje de 3ª y 4ª Generación.– Soporta múltiples bases de datos.– Catálogo global de datos.– Ejecuta programas sobre Sistema.– LOPD.– Transacciones económicas.– Información clave de negocio.
Vulnerabilidades: SQL Injection
Explotación del Ataque• Aplicaciones con mala comprobación de datos de entrada.
– Datos de usuario.• Formularios
– Text– Password– Textarea– List– multilist
– Datos de llamadas a procedimientos.• Links• Funciones Scripts• Actions
• Datos de usuario utilizados en consultas a base de datos.
• Mala construcción de consultas a bases de datos.
Riesgos
• Permiten al atacante:– Saltar restricciones de acceso.– Elevación de privilegios.– Extracción de información de la Base de
Datos– Parada de SGBDR.– Ejecución de comandos en contexto usuario
bd dentro del servidor.
Tipos de Ataques
• Ejemplo 1:– Autenticación de usuario contra base de
datos.
Select idusuario from tabla_usuariosWhere nombre_usuario=‘$usuario’And clave=‘$clave’;
Usuario
Clave ****************
Tipos de Ataques
• Ejemplo 1 (cont)
Select idusuario from tabla_usuarios
Where nombre_usuario=‘Administrador’
And clave=‘’ or ‘1’=‘1’;
Usuario
Clave
Administrador
‘ or ‘1’=‘1
Demo
Tipos de Ataques
• Ejemplo 2:– Acceso a información con procedimientos de
listado.
http://www.miweb.com/prog.asp?parametro1=hola
Ó
http://www.miweb.com/prog.asp?parametro1=1
Tipos de Ataques
• Ejemplo 2 (cont):
http://www.miweb.com/prog.asp?parametro1=‘ union select nombre, clave,1,1,1 from tabla_usuarios; otra instrucción; xp_cmdshell(“del c:\boot.ini”); shutdown --
Ó
http://www.miweb.com/prog.asp?parametro1=-1 union select .....; otra instrucción; --
Demo
Contramedidas• No confianza en medias de protección en cliente.
• Comprobación de datos de entrada.
• Construcción segura de sentencias SQL.
• Fortificación de Servidor Web.– Códigos de error.– Restricción de verbos, longitudes, etc..– Filtrado de contenido HTTP en Firewall.
• Fortificación de SGBD.– Restricción de privilegios de motor/usuario de acceso desde web.– Aislamiento de bases de datos.
Vulnerabilidades: Cross-Site Scripting (XSS)
Explotación del Ataque
• Datos almacenados en servidor desde cliente.
• Datos van a ser visualizados por otros cliente/usuario.
• Datos no filtrados. No comprobación de que sean dañinos al cliente que visualiza.
Riesgos
• Ejecución de código en contexto de usuario que visualiza datos.
– Navegación dirigida– Webspoofing– Spyware– Robo de credenciales– Ejecución de acciones automáticas– Defacement
Tipos de Ataques
• Mensajes en Foros.
• Firma de libro de visitas.
• Contactos a través de web.
• Correo Web.
• En todos ellos se envían códigos Script dañinos.
Demo
Contramedidas
• Fortificación de aplicación– Comprobación fiable de datos
• Fortificación de Clientes– Ejecución de clientes en entorno menos
privilegiado.– Fortificación de navegador cliente.
• MBSA.• Políticas.
Vulnerabilidades: Phising
Explotación del Ataque
• Basado en técnicas de Ingeniería Social.
• Se aprovecha de la confianza de los usuarios.
• Se aprovecha de la falta de formación en seguridad de los usuarios.
• Certificados digitales no generados por Entidades Emisoras de Certificados de confianza.
Riesgos
• Suplantación de Sitios Web para engañar al usuario.
• Robo de credenciales de acceso a web restringidos.
– Robo de dinero– Compras por Internet– Bromas pesadas
Tipos de Ataques• Se falsea la dirección de DNS del servidor
– Falsificación hosts• Troyanos, Físicamente, Shellcodes exploits
– DHCP– DNS Spoofing
• Man in The Middle
• Se engaña la navegación.– Frames Ocultos– URLs falseadas.
• Se implanta en la nueva ubicación un servidor replica.
• Se implantan hasta fakes de certificados digitales
Exploits
infohacking.com
Spoofing ARPSpoofing ARP
Suplantar identidades físicas.Suplantar identidades físicas.
Saltar protecciones MAC.Saltar protecciones MAC. Suplantar entidades en clientes DHCP.Suplantar entidades en clientes DHCP. Suplantar routers de comunicación.Suplantar routers de comunicación.
Solo tiene sentido en comunicaciones Solo tiene sentido en comunicaciones locales.locales.
Dirección Física Dirección Física
Tiene como objetivo definir un identificador único para Tiene como objetivo definir un identificador único para cada dispositivo de red.cada dispositivo de red.
Cuando una máquina quiere comunicarse con otra Cuando una máquina quiere comunicarse con otra necesita conocer su dirección física.necesita conocer su dirección física. Protocolo ARPProtocolo ARP
No se utilizan servidores que almacenen registros del No se utilizan servidores que almacenen registros del tipo: tipo: Dirección MAC <-> Dirección IP.Dirección MAC <-> Dirección IP.
Cada equipo cuenta con una caché local donde almacena Cada equipo cuenta con una caché local donde almacena la información que conoce.la información que conoce.
PC HACKERPC HACKER
PC 1PC 1
PC 2PC 2 PC 3PC 3
PC 4PC 4
SnifferSniffer
Datos PC 4
Datos PC 4MAC 1MAC 1
MAC 2MAC 2 MAC HMAC H MAC 3MAC 3
MAC 4MAC 4
Puerto 1 MAC 1Puerto 1 MAC 1
Puerto 2 MAC 2Puerto 2 MAC 2
Puerto 6 MAC HPuerto 6 MAC H
Puerto 11 MAC 3Puerto 11 MAC 3
Puerto 12 MAC 4Puerto 12 MAC 4
Sniffing en Redes ConmutadasSniffing en Redes Conmutadas
Envenenamiento de ConexionesEnvenenamiento de Conexiones““Man in the Middle”Man in the Middle”
La técnica consiste en interponerse entre dos La técnica consiste en interponerse entre dos sistemas.sistemas.
Para lograr el objetivo se utiliza el protocolo Para lograr el objetivo se utiliza el protocolo ARP.ARP.
El envenenamiento puede realizarse entre El envenenamiento puede realizarse entre cualquier dispositivo de red.cualquier dispositivo de red.
Envenenamiento de Conexiones“Man in the Middle”
PC 1PC 1IP 1IP 1
MAC 1MAC 1
PC 2PC 2IP 2IP 2
MAC 2MAC 2
PC HPC HIP HIP H
MAC HMAC H
IP 2 – MAC HIP 2 – MAC H IP 1 – MAC HIP 1 – MAC H
CACHE ARPCACHE ARPIP 2 – MAC HIP 2 – MAC H
CACHE ARPCACHE ARPIP 1 – MAC HIP 1 – MAC H
CONEXIÓNCONEXIÓNPC2PC2
REENVÍO A REENVÍO A HOSTHOST
Man in the MiddleMan in the Middle
Sirve como plataforma para otros ataques.Sirve como plataforma para otros ataques.
DNS Spoofing.DNS Spoofing. Phising.Phising. Hijacking.Hijacking. SniffingSniffing
Se utiliza para el robo de contraseñas.Se utiliza para el robo de contraseñas.
Demo
Contramedidas• Contra Phising
– Uso de CA de confianza– Formación a usuarios– Gestión de actualizaciones de seguridad– Códigos de aplicaciones seguras– Control físico de la red– Comprobación DHCP
• Contra Spoofing ARP– Autenticado de conexiones
• IPSec– Detección de Sniffers– IDS
Vulnerabilidades: WebTrojan
Explotación de Ataque• Servidores Web no fortificados
– Ejecución de programas en almacenes de ficheros.
– Subida de ficheros a servidores.• Imágenes para publicaciones.• Archivos de informes.• Currículos, cuentos, etc...
– Almacenes de ficheros accesibles en remoto
• Usuario en contexto servidor Web no controlado
Riesgos
• Implantación de un troyano que puede:– Gestionar ficheros– Ejecutar programas– Destrozar el sistema– Defacement– Robo de información– ....
Tipos de Ataques
• Programación de un troyano en PHP, ASP o JSP
• Utilización de objetos FileObject
• Subida mediante ASP Upload
• Busqueda del lugar de almacenamiento
• Invocación por URL pública del servidor Web
Demo
Contramedidas
• Fortificación de servidores Web
– Menor Privilegio• Ejecución de programas en sitios restringidos• Listado de directorios ocultos• Usuario de servidor en contexto controlado
– Subida de archivos controlada• Ubicación no accesible desde URL pública• Tipos de ficheros controlados
– Tamaño, tipo, extensión, etc..– Filtrado vírico -> Rootkits
Vulnerabilidades: Capa 8
Explotación de Ataque
• Falta de conocimiento SD3– Diseño– Configuraciónes– Implantación
• Administradores/Desarrolladores no formados en Seguridad– Hacking Ético
• Falta de conocimiento del riesgo
Riesgos
• Insospechados:
– Bases de datos públicas– No protección de datos– No protección de sistemas– .....
Tipos de Ataques• Hacking Google
• Administradores predecibles– http://www.misitio.com/administracion– http://www.misitio.com/privado– http://www.misitio.com/gestion– http://www.misitio.com/basedatos
• Ficheros log públicos– WS_ftp.log
• Estadísticas públicas– Webalyzer
Demo
Contramedidas
• Formación
• Ficheros Robots– Robots.txt
• LOPD y LSSI– www.lssi.org
• Writting Secure Code
¿ Preguntas ?
Boletín quincenal TechNews
Contacto
• Informática 64– http://www.informatica64.com– [email protected]– +34 91 665 99 98
• Technet – http://www.microsoft.com/spain/technet
• Profesor– [email protected]