Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Chema Alonso
MVP Windows Server Security Informtica 64
chema@informatica64.com
Agenda
Principios de Seguridad Ataques a Sistemas Actualizaciones de Seguridad Seguridad en Servidores Seguridad en Clientes
Principios de Seguridad
Seguridad
La seguridad depende de 3 factores:
Procesos:
Procedimientos y operaciones en nuestros entornos
Personas
Poca formacin
Tecnologa:
Estndares (TCP/IP) Productos de los fabricantes (IIS,Apache) Desarrollos personales
Porque Atacan?
Hacer Dao
Alterar, daar or borrar informacin Denegar servicio Daar la imagen pblica
Motivos Personales
Desquitarse Fundamentos polticos o terrorismo Gastar una broma Lucirse y presumir
Motivos Financieros
Robar informacin Chantaje Fraudes Financieros
Datos comprometidos
Bug
Un error de software o computer bug, que significa bicho de computadora, es el resultado de una falla de programacin introducida en el proceso de creacin de programas de computadora. El trmino bug fue acreditado errneamente a Grace Murray Hopper, una pionera en la historia de la computacin, pero Thomas Edison ya lo empleaba en sus trabajos para describir defectos en sistemas mecnicos por el ao 1870. Fuente: Wikipedia en Espaol
Exploit
Exploit (viene de to exploit - aprovechar) - cdigo escrito con el fin de aprovechar un error de programacin para obtener diversos privilegios. software. Un buen nmero de exploits tienen su origen en un conjunto de fallos similares. Algunos de los grupos de vulnerabilidades ms conocidos son:
Vulnerabilidades de desbordamiento de pila o buffer overflow. Vulnerabilidades de condicin de carrera (Race condition). Vulnerabilidades de error de formato de cadena (format string bugs). Vulnerabilidades de Cross Site Scripting (XSS). Vulnerabilidades de inyeccin SQL (SQL injection). Vulnerabilidades de inyeccion de caraceres (CRLF).
Payload
In computer virus jargon, the payload of a virus or worm is any action it is programmed to take other than merely spreading itself. The term is used for all intended functions, whether they actually work or not. Fuente: Wikipedia
Software Seguro
El software Fiable es aquel que hace lo que se supone que debe hacer. El software Seguro es aquel que hace lo que se supone que debe hacer, y nada mas.
Son los sorprendentes algo mas los que producen inseguridad.
Para estar seguro, debes de ejecutar solo software perfecto :-) O, hacer algo para mitigar ese algo mas
Cdigo y poder
El cdigo fuente es poder
Tanto para defenderse como para atacar
Publicar el cdigo fuente sin hacer nada ms degrada la seguridad Por el contrario, publicar el cdigo fuente permite a los defensores y a otros elevar la seguridad al nivel que les convenga.
Nmero de dias transcurridos entre la publicacin del update de seguridad y el impacto del virus
502
Win32 Linux/Unix
336
336
185
208
58
53 11
31
27
Slammer
BugBear
Slapper
Ramen
Klez
Lion
Scalper
Nimda
CodeRed
Blaster
Vulnerabilidades
http://www.securityfocus.com/bid
Ataques a Sistemas
Tcnicas de Spoofing
Las tcnicas spoofing tienen como objetivo suplantar validadores estticos
Un validador esttico es un medio de autenticacin que permanece invariable antes, durante y despus de la concesin.
Niveles Afectados
SERVICIO Nombres de dominio Direcciones de correo electrnico Nombres de recursos compartidos Direccin IP
RED
ENLACE
Direccin MAC
1.1.1.1
Certificado de comunicaciones.
Utilizan test de funcionamiento anmalo. Test ICMP. Test DNS. Test ARP.
Datos de usuario utilizados en consultas a base de datos. Mala construccin de consultas a bases de datos.
Riesgos
Permiten al atacante:
Saltar restricciones de acceso. Elevacin de privilegios. Extraccin de informacin de la Base de Datos Parada de SGBDR. Ejecucin de comandos en contexto usuario bd dentro del servidor.
Tipos de Ataques
Ejemplo 1:
Autenticacin de usuario contra base de datos.
Usuario Clave
****************
Tipos de Ataques
Ejemplo 1 (cont)
Usuario Clave Administrador
or 1=1
Tipos de Ataques
Ejemplo 2:
Acceso a informacin 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 instruccin; xp_cmdshell(del c:\boot.ini); shutdown - http://www.miweb.com/prog.asp?parametro1=-1 union select .....; otra instruccin; --
Contramedidas
No confianza en medias de proteccin en cliente. Comprobacin de datos de entrada. Construccin segura de sentencias SQL.
Fortificacin de SGBD.
Restriccin de privilegios de motor/usuario de acceso desde web. Aislamiento de bases de datos.
Riesgos
Ejecucin de cdigo en contexto de usuario que visualiza datos.
Navegacin dirigida Webspoofing Spyware Robo de credenciales Ejecucin de acciones automticas Defacement
Tipos de Ataques
Mensajes en Foros. Firma de libro de visitas. Contactos a travs de web. Correo Web. En todos ellos se envan cdigos Script dainos.
Contramedidas
Fortificacin de aplicacin
Comprobacin fiable de datos
Fortificacin de Clientes
Ejecucin de clientes en entorno menos privilegiado. Fortificacin de navegador cliente.
MBSA. Polticas.
Definicin
Programa que se ejecuta sobre nuestra mquina y cuyo control no depende de nosotros. Los Hackers lo llaman Boyfriend.
Obtencin de Privilegios
El programa corre sobre nuestra mquina. Corre con una identificacin de usuario del sistema. Debe obtener privilegios para poder ejecutarse. Cmo los obtiene?
Obtencin de Privilegios
Fallo en la cadena:
Procesos:
Sistema no cerrado.
Tecnologa:
Fallo en sw de sistema operativo Fallo en sw ejecucin de cdigos.
Personas:
Ingeniera Social: Que lindo programita! Navegacin privilegiada
Objetivos
Control remoto:
Instalan suites de gestin del sistema.
Instaladores de otro SW
Troyanos Comerciales
Su difusin es extrema. Se han hecho famosos debido a su extensin. Suelen ser utilizados por principiantes Casi todos los sistemas Anti-Malware son capaces de detectarlos. An as siguen siendo tiles porque mutan.
Algunos
Back Orifice NetBus NetDevil SubSeven Ptakks ......
Deteccin de Troyanos
Anti-Mallware
Antivirus AntiSpyware
Definicin
Software malintencionado que tiene total control de la maquina infectada y es TOTALMENTE INVISIBLE, tanto para para los usuarios de la maquina como para todo el software que se ejecuta en ella.
Que es un RootKit?
Originalmente Fichero Troyano con una puerta trasera
Cambia ficheros, ejmp., netstat.exe Pueden ser detectados con herramientas tipo Tripwire
Breve Historia.
A principios de los aos 90s, los RootKits aparecen por primera vez en el mundo Unix Al final de los 90s, Greg Hoglund y su equipo los introducen por primera vez en los entornos Windows. http://www.rootkit.com La creacin y la deteccin de los RootKits continua evolucionando
Modo Usuario -> Modo Kernel -> flash RAM Nuevas tcnicas en cada nivel
Sniffing Trafico de Red, Log de pulsaciones de teclado Elevacin de Privilegios - Modificacin de los testigos de acceso (access token) Cualquier cosa que un driver o el Sistema Operativo pueda hacer
PSAPI.DLL EnumProcesses
MODO-USUARIO
NTDLL.DLL NtQuerySystemInformation
MODO-KERNEL
NTOSKRNL.EXE
PSAPI.DLL EnumProcesses
MODO-USUARIO
NTDLL.DLL NtQuerySystemInformation
MODO-KERNEL
Cdigo Malicioso RootKit
NTOSKRNL.EXE
Hacker Defender
Es el RootKit mas extendido en los sistemas Windows. Ficha:
Autores:
Holy_Father holy_father@phreaker.net Ratter/29A ratter@atlas.cz
Version: 1.0.0 Home Page: http://rootkit.host.sk, http://hxdef.czweb.org Programacin: Delphi SO: NT, 2000, XP
Objetivo
Reescribir algunos segmentos de memoria en todos los procesos que se ejecuten en una mquina para:
Esconderse a si mismo y esconder:
Ficheros Procesos Servicios de sistema Drivers de sistema Claves y valores del registro Puertos abiertos
Engaar con el espacio libre en disco. Enmascarar los cambios que realiza en memoria. Instalar una puerta trasera con tecnologa de redirector Soporta Procesos Root
Configuracin I
Se configura mediante un fichero INI que tiene los siguientes campos:
[Hidden Table]: Listado de directorios ficheros y procesos que deben ser ocultados [Root Processes]: Procesos que no sern infectados por el RootKit. [Hidden Services]: Servicios que no se listarn [Hidden RegKeys]: Claves del registro ocultas [Hidden RegValues]: Valores del registro ocultos.
Configuracin II
[Startup Run]: Ejecutables que se ejecutan cada vez que se inicia el RootKit. [Free Space]: Espacio que se aade a cada disco duro. [Hidden Ports]: Puertos abiertos que han de ser ocultados de aplicaciones tipo OpPorts, FPort, Active Ports, Tcp View etc [Settings]: 8 valores para configurar diferentes cosas.
Deteccin
Lo mejor es no tener que detectarlos, pues no es tarea fcil. Para ello hay que evitar que entren en nuestra mquina:
Actualizar los parches del sistema Utilizar antivirus Utilizar firewalls Utilizar Sistemas Operativos modernos
Deteccin
Lo mas fcil es detectarlo antes de que se instale. (Antivirus, antispyware, etc) Si ya esta instalado se puede detectar de tres maneras:
Casualidad. Cuelgues de la mquina Software AntiRootKit
Tripwire.
http://www.tripwire.com/products/technology/index.cfm
RootkitRevealer de Sysinternals
http://www.sysinternals.com/ntw2k/freeware/rootkitreveal.shtml
Blacklight de F-Secure
http://www.f-secure.com/blacklight/try.shtml
Tcnicas de Deteccin
En Modo - Usuario:
Puenteando las intercepciones a las llamadas de la API (escribiendo tus propias API) Detectarlos en modo Kernel
En modo Kernel
Examinar directamente la estructura de datos en modo Kernel sin hacer llamadas a las APIs Verificacin de KiServiceTable Verificacin de las firmas de las funciones que estn en memoria.
Futuro - Presente
Rootkits de BIOS programados con ACPI presentados en BlackHat Conference Enero 2006 Rootkits de BBDD presentados en Microsoft BlueHat Conference 2006 Rootkits VM presentados por Microsoft Research y Universidad Michigan Marzo 2006.
Actualizaciones de Seguridad
Timpacto Triesgo
Auditorias de seguridad
No son las nicas que deben hacerse Se deben realizar de forma automtica y de forma manual [artesana]. Con la visin de un atacante y con la visin del administrador.
Scanners de Vulnerabilidades
Satan, Saint, Sara Shadow Security Scanner
http://www.safety-lab.com
Retina
http://www.eeye.com
Nessus
http://www.nessus.org
NetBrute, R3X
Actualizaciones en Microsoft
Security Patch Critical Update Update Hotfix Update Roll-Up Service Pack
Niveles de Severidad
Rating
Critical Important
Definition
Exploitation could allow the propagation of an Internet worm such as Code Red or Nimda without user action Exploitation could result in compromise of the confidentiality, integrity, or availability of users data or of the integrity or availability of processing resources Exploitation serious but mitigated to a significant degree by factors such as default configuration, auditing, need for user action, or difficulty of exploitation
Moderate
Low
Gestin de Actualizaciones
MBSA
Ayuda a identificar sistemas Windows vulnerables.
Escanea buscando actualizaciones no aplicadas y fallos en la configuracin del software. Escanea distintas versiones de Windows y distintas aplicaciones. Escanea en local o mltiples mquinas en remoto va GUI o lnea de comandos. Genera informes XML sobre los resultados de cada equipo.
Corre en Windows Server 2003, Windows 2000 y Windows XP Se integra con SMS 2003 SP1, con SUS y WSUS
MBSA
EXBPA
Examina un despliegue de Exchange Server y determina si esta configurado siguiendo las recomendaciones de Microsoft.
Genera una lista de puntos, como configuraciones mejorables, u opciones no recomendadas o soportadas. Juzga la salud general del sistema. Ayuda a resolver los problemas encontrados.
EXBPA
Mediana Empresa y Corporaciones: SMS and the SMS Software Update Services Feature Pack
Productos de Terceros
Compaa
Altiris, Inc. BigFix, Inc. Configuresoft, Inc. Ecora, Inc. GFI Software, Ltd. Gravity Storm Software, LLC
Producto
Altiris Patch Management BigFix Patch Manager Security Update Manager Ecora Patch Manager
URL
http://www.altiris.com http://www.bigfix.com http://www.configuresoft.com http://www.ecora.com
GFI LANguard Network Security Scanner http://www.gfi.com Service Pack Manager 2000 http://www.securitybastion.com
http://www.landesk.com
http://www.novadigm.com http://www.patchlink.com http://www.shavlik.com http://www.stbernard.com
Fortificacin de Servidores
Fortificacin
Consiste en la aplicacin de tres principios:
Defensa en Profundidad (DP):
Mximo nmero de medidas de proteccin que se puedan aplicar siempre que:
Una medida no anule a otra No haya deterioro en la disponibilidad del sistema
Plantillas de seguridad
Definen los valores necesarios para las directivas de seguridad de los servidores en funcin de su rol y su entorno. Se pueden aplicar de forma local o a travs del dominio. Afectan a los siguientes componentes:
Cuentas de usuario. Auditoras. Derechos de usuarios. Opciones de seguridad. Visor de sucesos. Grupos restringidos. Servicios. Claves de registro. Sistema de ficheros.
Herramientas
Anlisis y configuracin
Resultante de polticas.
Sistema complementario de los anteriores que evala no solo plantillas de seguridad sino GPO. Presenta dos herramientas:
RSoP. Herramienta grfica. GPRESULT. Lnea de Comando.
GPMC
Selecciona el role del servidor de la base de datos de configuracin. Configura los servicios requeridos. Configura los puertos para el Firewall de Windows Configura la seguridad para LDAP y SMB Configura una poltica de auditoria Configura los parmetros especficos de los roles que tiene el servidor.
Seguridad en Clientes
Bests Practices
Fortificacin estacin de Trabajo
Windows XP Service Pack 2 Gua de fortificacin de estaciones de Windows XP (http://www.microsoft.com/spain/technet) Utilizacin de Firewall Navegacin restringida Uso de Antivirus/Antispyware Formacin del usuario
Distribucin
Windows Update Centro de Descargas Sitio Web
Actividad de MSRT
3.000.000.000 2.250.000.000 1.500.000.000 750.000.000 0
Resultados MSRT
16
(millions)
5,7
Resultado Acumulado Infecciones desde Enero '05 Equipos desde Junio '05
75-100%; 25
Virus
Exploit Worm
P2P Worm
Rootkit
Backdoor Trojans
Troyanos de puerta trasera son la amenaza mas significante y mas creciente Los Rootkits son una amenaza emergente Ingeniera Social 35%
Prevencin
Amenaza Vulnerabilidad de Software Tecnologa en Vista Ciclo de desarrollo seguro Actualizaciones Automticas Windows Firewall/IPSec Data Execution Protection Address Space Layout Randomization User Account Control Windows Defender Contrasea de Administrador en Blanco Firma de drivers en 64 bit Poltica de Firewall por Red
Ingeniera Social
Vulnerabilidad de la Poltica
Aislamiento
Amenaza Comportamiento del Sistema Tecnologa en Vista Integridad de Sistemas de 64-bit
Remedios
Amenaza Estado de la Seguridad Limpieza de Spyware Limpieza de Virus Tecnologa en Vista Centro de Seguridad de Windows Windows Defender Windows Malicious Software Removal Tool
Forzada por el hardware y el software Hardware DEP Requiere que el procesador lo soporte o implemente El procesador marca reas de la memoria como No Ejecutable excepto si especficamente contiene cdigo
Software DEP Funcionalidad en cualquier procesador que soporte Windows Server 2003 Protege los binarios del sistema de ataques relacionados con el manejo de las excepciones del sistema. Es raro que cause problemas de compatibilidad.
ejecutable. Puede causar problemas de compatibilidad.
Proteccin de la Memoria
Data Execution Protection Address Space Layout Randomization
Stack Locals Windows Code Return Address Parameters Code
DEP
ASLR
LoadLibrary()
Library Code
Previous Frames Application Code
ntdll.dll ZwCreateFile()
2E
El usuario no necesita tener privilegios administrativos para realizar ciertas tareas para las que se necesitas esos privilegios En cambio:
Se le pregunta al usuario por credenciales con mas privilegios
2.
Aunque el usuario tenga privilegios superiores( Ejem. un administrador), se le pregunta al usuario por su consentimiento antes de que esos derechos sean ejercitados
No se necesita volver a proporcionar las credenciales, solo se necesita el consentimiento
Leer: ww.microsoft.com/technet/windowsvista/evaluate/feat/uaprot.mspx
Internet Explorer 7
Adems de ser compatible con UAC, incluir:
Modo Protegido que solo permite a IE navegar sin mas permisos, aunque el usuario los tenga. Ejem. Instalar software
Modo de Solo-lectura, excepto para los ficheros temporales de Internet cuando el navegador esta en Zona de seguridad de Internet
Filtro contra Phising que actualiza Microsoft cada poco tiempo y usa una red global de fuentes de datos ActiveX Opt-in, da al usuario el control de los controles Activex Todos los datos de cache se eliminan con un solo click
Filtro anti-Phishing
Proteccin dinmica contra Webs Realiza 3 chequeos para proteger al usuario de Fraudulentas
posibles timos:
1.
Compara el Sitio Web con la lista local de sitios legtimos conocidos Escanea el sitio Web para conseguir caractersticas comunes a los sitios con Phising Cheque el sitio con el servicio online que tiene Microsoft sobre sitios reportados que se actualiza varias veces cada hora
2.
3.
Dos niveles de Aviso y proteccin en la barra de estado de IE7 Level 1: Warn Level 2: Block
Suspicious Website Signaled Confirmed Phishing Site Signaled and Blocked
Windows Defender
Monitorizacin Deteccin Limpieza Software Explorer SpyNet
8
9 10
An out-of-date virus scanner is only marginally better than no virus scanner at all.
Absolute anonymity isn't practical, in real life or on the Web. Technology is not a panacea.
Preguntas ?
Web MVPs
TechNews
Suscripcin gratuita enviando un mail:
mailto:technews@informatica64.com
Grupos Reducidos de 10 a 15 asistentes. Cada asistente tiene un escenario virtualizado para ejecucin de laboratorios. Un tcnico por grupo imparte explicaciones tericas y plantea y resuelve las practicas con los asistentes al mismo tiempo que resuelve dudas. 6 horas de duracin cada uno y 24 horas los seminarios de Contramedidas Hacker.
Sistemas
http://www.microsoft.com/spain/HOLsistemas
Desarrollo http://www.microsoft.com/spain/HOLdesarrollo
Contacto
Chema Alonso
chema@informatica64.com http://www.elladodelmal.com http://www.vista-tecnica.com http://www.informatica64.com/retohac king