- Nueva versión del script de auditoría para sistemas RedHat/CentOS redhatchecklist, cuyo autor nos lo presentó en una contribución.
- Página con el archivo de datos de las charlas de Defcon 22, incluyendo presentaciones y materiales, mientras se publican los vídeos.
- El Project Zero de Google publica la versión 2014 del "The poisoned NUL byte", referente a un error off-by-one que permitía escribir un byte nulo fuera de los límites del marco de pila.
- Disponible el libro de Hackstory por Mercé Molist, el cual puede descargarse en epub, por ejemplo, desde el site de hispahack.com
- Exploits para la herramienta de iOS Air Transfer. La herramienta, que permite compartir ficheros entre PC/Mac y los dispositivos iPhone/iPad, contiene vulnerabilidades sobre denegar de forma remota el uso de la aplicación y evasión de la autenticación.
- Descubierto un conjunto de sitios de anunciantes que sirvieron malware al estar incrustados en páginas con alto tráfico como Java.com, TMZ, photobucket, Deviantart, y muchos más, según informan desde Fox-IT.
- Anatomía de un ataque con un Honeypot de Sucuri que contenía un blog sobre Wordpress, que supuso el deface del portal.
- Múltiples vulnerabilidades que afectan a dispositivos del fabricante F5 que permitirían la ejecución remota de código. Con información más detallada en este PDF de security-assessment.com
- Nueva serie de posts en fail0verflow sobre cómo hackear el dispositivo ChromeCast de Google.
31 agosto 2014
27 agosto 2014
Como ya anunciamos en Security By Default, y está ya en boca de todos, la cuarta edición del Congreso de Seguridad Navaja Negra, está a la vuelta de la esquina!!
Aunque ya lo ha comunicado la organización de Navaja Negra, en la edición de este año, Cyberoam (como patrocinador del evento) y Securízame (como colaborador), tendrán participación activa en un taller de Seguridad Perimetral de dos horas de duración.
En este taller, cuyo título oficial es: "Securízate! Buenas Prácticas de Configuración de Sistemas de Seguridad Perimetral", daré un subset del curso que he dado en otros eventos de seguridad, como el ACK Security Conference en Colombia, PeruhackCON 2013, o No cON Name en 2012, y que está en la web de Securízame para ser impartido online en su totalidad, cuando haya aforo suficiente, así como disponibilidad de fechas en mi agenda, cosa que está bastante complicada últimamente.
En este taller, normalmente, suelo contar cómo configurar o disponer, en la topología de una red, diferentes herramientas, libres o comerciales, que nos ayudan a disponer de un control y de una monitorización mayor de la actividad de nuestras redes, así como la prevención de diversos ataques, a nivel perimetral, no confiando en los posibles fallos de seguridad o defectos en la configuración, que incorporen las aplicaciones o servicios expuestos a Internet tras dichas barreras de contención.
En esta ocasión, y con una duración de dos horas, mostraré cómo llevar a cabo varias de esas labores, como configurar correctamente, entre otras cosas, una política de reglas de firewall, IPS, WAF, Antispam, análisis de tráfico saliente, QoS, etc,... de la forma más óptima posible (según mi experiencia), utilizando como base un appliance CR25iNG del fabricante Cyberoam.
El taller será de acceso libre y gratuito (hasta llenarse el aforo) e incluido en la entrada, al igual que los demás (que por cierto también tienen una pinta increíble), de manera que permitirá a los asistentes aprender Buenas Prácticas de configuración de sistemas de seguridad perimetral, incluidos dentro de los UTM de Cyberoam.
Como punto importante, es que el sponsor ha ofrecido un dispositivo Netgenie, el hijo menor de Cyberoam, orientado al mercado SOHO o casero, para ser sorteado al final del taller, entre los asistentes al mismo.
Nos vemos en Albacete a primeros de Octubre y espero que disfrutéis el taller!!
26 agosto 2014
Mucho ha llovido desde que en 2011 nació shodab, mi pequeño juguete que almacena información del direccionamiento IP de España. Ahora, analizar todo Internet es cosa de niños y hay muchas y mejores herramientas que facilitan y optimizan esta tarea.
Cuando leí sobre la iniciativa de screenshot all the things decidí integrarla en mi base de datos, pero además de usar VNC, añadiendo algo más; servidores X11 abiertos. Un giro de tuerca más a lo que publicó en su momento @Viss.
Sirva esta entrada como ejemplo de uso de algunas herramientas y del típico jiji-jaja que tanto nos gusta en el mundo de la seguridad. Además, tal y como dice Robert Graham en su charla de Defcon:
It’ll make you famous
– Pick a target, like a Siemens control system
– Scan the Internet for it
– Do a BlackHattalk
– Get in the news
.. Aunque creo que esta parte se la dejaré a alguno de nuestros lectores ;-)
It’ll make you famous
– Pick a target, like a Siemens control system
– Scan the Internet for it
– Do a BlackHattalk
– Get in the news
.. Aunque creo que esta parte se la dejaré a alguno de nuestros lectores ;-)
Lo primero es identificar servidores X11 accesibles desde Internet, para ello se puede usar cualquier herramienta para analizar puertos, aunque las optimizadas para este propósito son: zmap y masscan. Pongo un ejemplo de cada una de ellas.
La siguiente ejecución lanzará zmap limitando el ancho de banda y a un número de 100.000.000 de direcciones IP distintas. Por tener una aproximación; de mi análisis 62.000 IPs tenían el puerto abierto. El resultado de esta ejecución se almacenará en un fichero CSV que tan solo contiene un listado con las direcciones IP que tienen el puerto abierto.
[root@el8 ~]# zmap --bandwidth=30M --target-port=6000 --max-targets=100000000 --output-file=results.csv Aug 24 11:18:22.618 [INFO] zmap: output module: csv 0:00 0%; send: 0 0 p/s (0 p/s avg); recv: 0 0 p/s (0 p/s avg); drops: 0 p/s (0 p/s avg); hits: 0.00% 0:01 0%; send: 23037 23.0 Kp/s (22.7 Kp/s avg); recv: 8 7 p/s (7 p/s avg); drops: 0 p/s (0 p/s avg); hits: 0.03% 0:02 0%; send: 58624 34.0 Kp/s (28.4 Kp/s avg); recv: 29 20 p/s (14 p/s avg); drops: 0 p/s (0 p/s avg); hits: 0.05% 0:03 0%; send: 88526 29.9 Kp/s (28.9 Kp/s avg); recv: 48 18 p/s (15 p/s avg); drops: 0 p/s (0 p/s avg); hits: 0.05%
La misma ejecución con masscan. En este caso se excluyen algunos rangos, como direccionamiento IP reservado y se almacena la salida en formato "grepeable", que es el mismo formato que el de Nmap "grepeable".
En este caso, como no quería analizar todo Internet al cabo de un rato acabé pulsando ^C para abortar la ejecución y obtener los resultados.
En este caso, como no quería analizar todo Internet al cabo de un rato acabé pulsando ^C para abortar la ejecución y obtener los resultados.
[root@el8 ~]# masscan -p6000 -oG 6000.grep 0.0.0.0/0 --excludefile ../data/exclude.conf -v ../data/exclude.conf: excluding 122 ranges from file resume: empty parameter initializing adapter eth0: type=0x 1 pcap: libpcap version 1.4.0 pcap:'eth0': successfully opened rawsock: looking for default gateway adapter initialization done. Starting masscan 1.0.3 (http://bit.ly/14GZzcT) at 2014-08-24 10:06:44 GMT -- forced options: -sS -Pn -n --randomize-hosts -v --send-eth Initiating SYN Stealth Scan Scanning 3969790205 hosts [1 port/host] recv: start receive thread #0, 0:00:00 remaining, found=0 begin receive thread xmit: starting transmit thread #0 maxrate = 100.00
Y saqué del grepeable de masscan un listado de IPs simple como el de zmap:
[root@el8 ~]# cat 6000.grep|awk '{ print $2}'|grep -Ev 'Mass|Ports'>6000-open.txt
Con el listado de direcciones IP hay que averiguar cuáles de ellas tienen permitido el acceso, ya que X11 en todas las distribuciones linux y sistemas unix que conozco su acceso remoto está bloqueado por defecto. Para esta tarea una buena opción es usar nmap y el script "x11-access".
[root@el8 ~]# nmap -v -Pn -n -p6000 --script=x11-access -v --open -iL 6000-open.txt-oA accessgranted Starting Nmap 6.47 ( http://nmap.org ) at 2014-08-24 07:29 EDT NSE: Loaded 1 scripts for scanning. NSE: Script Pre-scanning. NSE: Starting runlevel 1 (of 1) scan. Initiating SYN Stealth Scan at 07:29 Scanning 301 hosts [1 port/host] Discovered open port 6000/tcp on xx.xx.247.49 Discovered open port 6000/tcp on xx.xx.23.9 Discovered open port 6000/tcp on xx.xx.199.130 Nmap scan report for xx.xx.23.9 Host is up (1.8s latency). PORT STATE SERVICE 6000/tcp open X11 |_x11-access: X server access is granted
La salida del nmap guardará en todos los formatos (-oA) con nombre "accessgranted" los resultados. De ahí solo interesan aquellos que la salida del script sea "server access is granted" como en el ejemplo del cuadro superior. De ese resultado, a esas IPs se les podrá hacer un screenshots o incluso interactuar con las aplicaciones, poner un keylogger, etc...
De las 62.000 IPs con el servidor X11, se reducen a unas decenas vulnerables.
[root@el8 ~]# grep -B4 granted accessgranted.nmap|grep scan|awk '{ print $5}'> IPshot.csv
El pantallazo se puede hacer de muchas formas, con "import" de ImageMagick, con la herramienta "shutter", pero yo decidí utilizar "xwd" que viene en el paquete "x11-apps" y convertirla a png con "convert", también de ImageMagick.
[root@el8 ~]# for ip in `cat IPshot.csv`; do echo $ip timeout 180 xwd -root -display $ip:0 | convert xwd:- /tmp/screen-$ip.png done
En el bucle anterior metí un timeout porque en ocasiones tardaba demasiado en traer la información o dar error. De esta forma aseguro que el bucle no es infinito y termina en un periodo razonable de tiempo.
Y aquí solo algunos ejemplos de lo capturado (click para ampliar). Me llamó la atención el elevado número de veces que aparece "honeywell", parece que por defecto estos sistemas son vulnerables. También hay muchas pantallas en negro (que no están ejecutando nada) y que me ahorro poner.
25 agosto 2014
Ya está todo planificado para el evento de seguridad informática y hacking con más solera del país que tendrá lugar desde los días 29 de octubre a 1 de Noviembre:
- 16 Ponencias/Talleres confirmadas, en esta edición se ha apostado para que las ponencias sean más cortas: 30 min. y los talleres 50min. De hecho, este año me estrenaré como ponente en NcN, en la que participé en una edición anterior en una mesa redonda (durante los 5 primeros minutos como moderador y luego como invitado), pero en la que nunca he dado una charla. La exposición que daré en NoConName se titula "CSI Madrid S13E37 – спасению" en la que hablaré sobre las sorpresas que me encontré a la hora de hacer un peritaje forense. Espero que guste a los asistentes y que sobre todo resulte educativo.
- 2 coloquios: El público tendrá posibilidad de participar con los asistentes. "NEUTRALIDAD en LA RED" será moderado por el periodista experto en IT Xavier Vidal y en el que se espera contar con la participación de representantes de los carriers que proveen el servicio de Internet (ISP), representantes de los productores audiovisuales que podrán imponer la ley del más fuerte económicamente si se rompe la Neutralidad en la Red y estudiosos del tema.
- 6 Formaciones que sirven como parte de la autofinanciación del evento. Se hace cada vez más difícil que las empresas consultoras de seguridad informática inviertan en márketing.
- Concurso Capture The Flag #ncn2k14: Después del éxito y participación internacional de la edición anterior donde equipos de Rusia, Bulgaria y Japón estuvieron en la final luchando por la bandera con españoles, donde el equipo festucs se llevó el primer premio por parte de la empresa patrocinadora. Se están preparando las eliminatorias para que día 14 de septiembre se sepa quién acudirá 30 de octubre a la final. Actualmente la asociación busca patrocinadores para, económicamente: participar en los premios y ayudar a los participantes con los gastos de desplazamiento a Barcelona.
- KeySigning Party: retomando una vieja práctica que ya se hacía en la primera etapa en Mallorca, se fomenta que voluntariamente usuarios que quieran intercambiar las firmas GPG/PGP para cifrado y firmado lo hagan in situ y verifiquen su identidad. Se ha preparado un formulario en la web para enviar información preliminar.
24 agosto 2014
- Videos de la DEFCON Wireless Village (Defcon 22), zona del congreso relacionada con todo tipo de redes inalámbricas como por ejemplo RFID, WiFi, SDR, Bluetooth.
- Nueva actualización del programa Acrylic WiFi de Tarlogic. La aplicación para análisis de redes WiFi ha pasado por muchos cambios desde la primera beta de la versión gratis (Acrylic WiFi Free) y llega finalmente a la versión 2.0.
- La entidad CHS (Community Health Systems) estadounidense fue comprometida mediante la vulnerabilidad Heartbleed de OpenSSL que afectaba a sus sistemas Juniper para obtener credenciales válidas de acceso a la VPN.
- Estudio sobre seguridad en IPv6 titulado IPv6 Security: Attacks and Countermeasures in a Nutshell y realizado por el centro de investigación SBA Research en Viena.
- Publicado Lynis 1.5.9, herramienta de auditoría de seguridad en sistemas Unix de la que os habló anteriormente Lorenzo en nuestro blog.
- Segun DarkReading, la compañía JP Morgan Chase & Co fue objetivo de una nueva campaña de Phishing con el objetivo de robar credenciales de acceso a sus sistemas.
- El investigador Hemanth Joseph de WhiteHatPages publica un método que provocaría la denegación de servicio remota sobre los SmartWatches Pebble, haciendo además que el dispositivo se reiniciase de fábrica y borrando todo el contenido.
- Publicada una nueva versión de la herramienta OCLHashCat 1.30, entre cuyas novedades destaca la inclusión de nuevos algoritmos de hash como Skype, Lotus Notes Domino 8, Mediawiki, Password Safe v2 y más, que podréis encontrar aquí.
- Tercer artículo de la serie "¿Es delito el 'hacking' ético?" por Mercé Molist para El Mundo, esta vez contando con una entrevista al capitán de la Guardia Civil (Grupo de Delitos Telemáticos) Cesar Lorenzana
23 agosto 2014
Si algo ha estado siempre de moda en el mundo de la seguridad es la ludificación. Posiblemente sea uno de los motivos por los que centenares de jóvenes todos los años quieren adentrarse en el mundo del hacking. Verse como intrépidos y jóvenes Indiana Jones, que resuelven puzzles tecnológicos evitando obstáculos y controles puestos por antiguas culturas, es razón suficiente para aprenderse los accesos rápidos de WinDBG.
Con este propósito la compañía CheckMarx, una de las punteras en soluciones para la auditoría de código, ha creado el juego Game Of Hacks.
En este juego tipo test nos mostrarán códigos vulnerables y mediante preguntas obtendremos una puntuación basada en el tiempo. El juego en todos sus niveles se puede completar en un par de minutos, ya que solo son 5 preguntas en cada uno de sus tres partes: Beginner, Intermediate y Advanced.
Una buena pero breve iniciativa para despertar interés en las auditorias de código y tener una primera aproximación de nuestros conocimientos en las distintas vulnerabilidades y lenguajes.
Por supuesto, el dashboard con la clasificación, ya ha sido trolleado. ¡¡Viva Internet!!
21 agosto 2014
Últimamente, y con cierta periodicidad, leemos en El Mundo artículos relacionados con Seguridad Informática y Hacking, de la mano de Mercè Molist, reconocida periodista focalizada en el sector desde hace muchos años, con iniciativas tan interesantes como la recopilación de la Historia del Hacking y sus protagonistas en el proyecto Hackstory.
La última de las entregas que he podido leer, y que ha generado gran controversia en listas de correo como RooteCon y NoConName, tiene que ver con una entrevista realizada a tres profesionales del derecho en “¿Es Delito el Hacking Ético? (II)”
El artículo, que habla por sí mismo, presenta tres visiones diferentes ante cómo enfocar el mismo problema, con más dureza en el caso de Ángel Vallejo, que considera que: “Quien quiera que le hagan un "pentest" (de "penetration testing", auditoría de seguridad) ya lo pedirá” e instando a que nadie meta la nariz donde no le llama, aunque se descubra la vulnerabilidad por “accidente", o aunque sea un servicio que utilizas y gestiona tus datos personales, y no te tiene que importar qué medidas de seguridad se han tenido en cuenta para su protección.
Me gustaría aportar mi opinión a lo que se indica en este artículo, de forma independiente a las valoraciones que he leído en ambas listas de correo.
El artículo al que se hace referencia es el 197.3 del código penal, también llamado “ley del hacking”, está 'tan bien redactado' como sigue:
"El que por cualquier medio o procedimiento y vulnerando las medidas de seguridad establecidas para impedirlo, acceda sin autorización a datos o programas informáticos contenidos en un sistema informático o en parte del mismo o se mantenga dentro del mismo en contra de la voluntad de quien tenga el legítimo derecho a excluirlo, será castigado con pena de prisión de seis meses a dos años."
Hago hincapié en lo de “bien redactado” (de forma irónica) porque dice que quien vulnere las medidas de seguridad, acceda a datos de un sistema… Ehm… un momento, si puedo acceder a datos no deseados es que NO HAY medidas de seguridad que protejan ese acceso. Es el clásico ejemplo de que haya medidas de seguridad para no exponer a Internet el servicio MySQL, pero hay un frontal web que tiene un SQL Injection que me permite extraer la base de datos completa.
En algún juicio me ha tocado, en el papel de perito, demostrar que un cliente no ha vulnerado “las medidas control de acceso a un sistema” para copiar información a otra localización, puesto que su usuario tenía permiso para ello. Es decir, que no ha tenido que explotar una vulnerabilidad en un servicio para acceder a datos a los que con su usuario no podría.
En el caso del formulario que hace una consulta a una base de datos, en el que si le dices “Dame la base de datos entera”, éste te la da, no lo considero un delito, puesto que el sistema incorpora una funcionalidad por la que introduciendo un valor válido en un parámetro, me devuelve una respuesta. Si ésta no ha sido tenido en cuenta por el programador que diseñó la aplicación web, no es mi problema, pero según la redacción de la ley, en mi opinión (que no es la que vale, sino la del juez), no es delito. Evidentemente, en este caso, lo que hay que hacer es reportarlo convenientemente e indicar cómo se explota. Tampoco es necesario llevarse la base de datos completa para demostrar esto. Basta con hacer un “desc” a una tabla para que sirva de prueba. El problema es aguantarse el morbo de traerse las filas de cada tabla, pero eso depende de la ética de cada uno.
Por parte de la empresa u organización reportada, sólo le queda confiar en que quien le ha notificado el problema, tiene la suficiente honradez para no traficar con los datos contenidos en esa base de datos. Desde mi punto de vista, si lo notifica, es que tiene esa honradez, puesto que si no, no diría nada y utilizaría la información extraída a su conveniencia.
Igualmente, en el caso de reportar un XSS, en mi opinión se repite el patrón: Si tu aplicación web no escapa determinados caracteres en todos los parámetros, teniendo en cuenta evasiones mediante encodings y otras técnicas, no se están evadiendo las “medidas de seguridad establecidas” puesto que NO LAS HAY!! Aquí además me gustaría diferenciarlo entre si el XSS es persistente o reflejado, puesto que en el caso de un persistente, sí que estoy dejando un código en el servidor, por ejemplo como comentario en un post (que por cierto, lo almacena el propio servidor web en un servidor de base de datos, normalmente) de un reflejado, en el que no se modifica en ningún momento valor alguno en el servidor, sino que se referencia un fichero/imagen/recurso de otro sitio, como por ejemplo el sonado caso de la web de la Presidencia Española del Consejo Europeo. En este caso, ¿dónde está el delito? ¿Por qué acojonarse entonces al reportar esta vulnerabilidad? Pues porque cuando se trata de juicios, y que haya una interpretación personal de por medio ante la redacción de una ley, y que por hacer un favor, de forma responsable, a la organización que tiene la vulnerabilidad, puedas salir perjudicado es cuanto menos, poco justo.
Es decir, que por una parte, y vuelvo a hacer hincapié en “según mi forma de verlo”, el artículo 3 de la ley 197 está mal redactada desde el principio, para este caso, que es el ejemplo que se ilustra típicamente sobre publicar en pastebin los datos extraídos, aunque esto sí que está contemplado en el artículo 197.4 (a mí entender cubriendo el gap del punto 3 correctamente), por lo que, mientras el investigador no publique los datos extraídos del sitio, no debería estar cometiendo un delito.
"4. Se impondrá la pena de prisión de dos a cinco años si se difunden, revelan o ceden a terceros los datos o hechos descubiertos o las imágenes captadas a que se refieren los números anteriores.
Será castigado con las penas de prisión de uno a tres años y multa de doce a veinticuatro meses, el que, con conocimiento de su origen ilícito y sin haber tomado parte en su descubrimiento, realizare la conducta descrita en el párrafo anterior."
Por supuesto la conclusión del abogado Ángel Vallejo, sobre “Quien quiera una auditoría de seguridad, ya la pedirá” es confiar demasiado en que las normativas existentes y el miedo a las multas por incumplimiento se encargarán de que todo “esté seguro”.
Si el derecho y la justicia fuesen por delante del fraude y el cibercrimen, éstos últimos no existirían,… y estamos hartos de ver incidentes de seguridad de forma diaria que involucran millones de euros de propiedad industrial e intelectual extraídas, así como información “imponderable” relativa a información tan sensible como los datos de salud de personas humanas
Que conste que este post no es, en ningún momento, una incitación a meter comillas, %27 o >, en cuanto formulario web nos encontremos, con la única finalidad de "ayudar", porque yo no seré el juez que tenga que interpretar vuestros hechos contra las leyes y determinar si fue de buena fe o no.
Que conste que este post no es, en ningún momento, una incitación a meter comillas, %27 o >, en cuanto formulario web nos encontremos, con la única finalidad de "ayudar", porque yo no seré el juez que tenga que interpretar vuestros hechos contra las leyes y determinar si fue de buena fe o no.
20 agosto 2014
En Securízame, desde que hemos estado impulsando cursos de formación, siempre hemos tenido claro que nuestro objetivo era tratar de ofrecer temáticas con alta demanda y que no estuviesen saturadas. En el mercado existen muy buenos cursos y excelentes formadores que ofrecen temas muy relevantes altamente recomendables.
No obstante, la idea siempre ha sido ir un paso mas allá y adentrarse en conceptos que fuesen novedosos. Por eso es que para nosotros resulta muy excitante la idea de crear cursos que luego generan un "feedback" potente y que nos incentivan a seguir en esta línea.
En esta ocasión, hemos creado un curso que esperamos colme las expectativas de todas aquellas personas que quieran ir un paso mas allá en el mundo de la seguridad.
Se trata de un curso online sobre "Reversing & Exploiting avanzado", orientado a aquellas personas que ya se han formado previamente en seguridad defensiva, auditorías o planes de contingencia, y que desean dar el siguiente paso: poder realizar exploiting (tus propios exploits) y entender como se realiza el reversing a bajo nivel.
Este tipo de formación es realmente compleja de adquirir y suele tener dos hándicaps, fundamentalmente. Por una parte, el hecho de tener que desplazarse físicamente a un lugar alejado de España, ya sea EEUU o adentrarse por Europa, y además que la formación suele estar impartida en inglés.
En el caso del curso que estamos lanzando, queremos mitigar esos inconvenientes y se podrá recibir desde cualquier sitio (al ser online) y el idioma será el español
Consideramos que los entornos que ha de abarcar son tanto Windows como Linux, al ser las plataformas con más despliegue en el mercado
Para ello, contamos con un elenco de profesores especialistas en cada campo:
YAGO JESUS (@yjesus)
- Profesional con más de 10 años de experiencia en el sector de la seguridad informática, ha trabajado para importantes empresas como Telefónica, Caja Madrid, sector defensa y administraciones públicas.
- Editor del blog Security By Default (www.securitybydefault.com), ha desarrollado multitud de herramientas relacionadas con la seguridad informática.
- Fundador de eGarante (www.egarante.com)
RICARDO J. RODRIGUEZ (@ricardojrdez)
- El Dr. Ricardo J. Rodríguez recibió sus títulos de M.S. y Ph.D. en Informática por la Universidad de Zaragoza, Zaragoza, España, en 2010 y 2013, respectivamente.
- Su doctorado versa sobre el estudio del análisis de rendimiento y optimización de recursos en sistemas críticos complejos modelados con Redes de Petri.
- Actualmente, trabaja como investigador senior en ciberseguridad en la Universidad de León.
- Sus intereses de investigación incluyen análisis de rendimiento y optimización de grandes sistemas de eventos discretos, ingeniería del software segura, sistemas de tolerancia a fallos e infraestructuras críticas y análisis de malware.
- El Dr. Rodríguez es también miembro del IEEE Computer Society.
- Ha participado como ponente en otras conferencias de seguridad, como NoConName (2011, 2012, 2013), Hack.LU (2011), RootedCON (2012) y Hack in Paris (2013). También ha participado como formador en NoConName (2011, 2013), RootedCON (2012) y Hack in Paris (2013) dando cursos sobre fundamentos de ingeniería inversa y técnicas de anti-reversing en entornos Windows
ALBERT LÓPEZ (@newlog_)
- Ingeniero en informática, profesionalmente dedicado a la seguridad informática durante cuatro años. Ha trabajado para empresas tan punteras como Víntegris o Internet Security Auditors, desarrollando software empresarial enfocado a la seguridad informática en la primera y realizando auditorías de seguridad a empresas, tanto de ámbito nacional como internacional, en la segunda.
- Actualmente realiza auditorías de seguridad como freelance y colabora activamente con una startup estadounidense dedicada a desarrollar frameworks de post-explotación.
- Sin embargo, su pasión siempre han sido las técnicas de explotación de software. Así lo demuestran sus ponencias en congresos como la RootedCon o la OWASP European Tour, en las que presentó estudios sobre la explotación de heap buffer overflows en GNU/Linux.
- Asímismo, interesado en fomentar dichos conocimientos, en 2009 fundó la comunidad Overflowed Minds, para compartir información y ayudar a todos aquellos interesados en iniciarse en el mundo del exploiting.
SERGI ÁLVAREZ (@trufae)
JAIME PEÑALBA (@nighterman)
- Jaime cuenta con más de 10 años de experiencia en el sector de la informática trabajando como ingeniero de sistemas y consultor de seguridad.
- Durante su carrera ha trabajado para las principales empresas de los sectores tecnológicos, energéticos y financieros en España, Estados Unidos y Latinoamérica.
- Ponente habitual en las conferencias de seguridad españolas, también dedica parte de su tiempo a desarrollar herramientas de seguridad y participar en campeonatos de hacking
Como sabemos que no todo el mundo puede tener el nivel de partida necesario para sacar todo el jugo al curso, hemos pensado también en ello y, adicionalmente, hemos creado un módulo introductorio sobre
1. Arquitectura de Computadores y Memoria – 2 horas – Sergi Álvarez
- Funcionamiento básico de un procesador
- Arquitectura x86 (16/32/64 bits): Registros, Endian y Flags
- Organización/Gestión/Estructuras de la memoria y sus permisos
- Calling conventions (pasar por pila, pasar por registros en 32/64bits)
- Funcionamiento de la pila (stack)
2. Ensamblador:
- Relación entre código binario, máquina y ensamblador (compilar/decompilar)
- Juegos de Instrucciones CISC/RISC
- Basicblocks/Grafos:
- Definición de Basic block
- Cómo se estructura el código
- Callgraphs
- Complejidad ciclomática
- Demos
3. Introducción a reversing práctico en Entorno Windows – 2 horas – Yago Jesús
- Breve introducción al reversing, fundamentos básicos y descripción de escenarios
- Análisis estático
- Análisis dinámico
- Debuggers
- API Hooking
- Rootkits
4. Introducción a exploiting práctico en Entorno Linux – 2 horas – Yago Jesús
- Breve introducción al exploiting
- Tipos de vulnerabilidades
- Binarios, permisos y problemas asociados
- Vulnerabilidades de condición de carrera
- Exploiting básico (No DEP, no ASLR)
- Exploiting de servicios de red
- Introducción a contramedidas
Una vez concluida esta parte, el impresionante temario es el siguiente:
MÓDULO II – Reversing en Windows – 8 horas – Profesor: Ricardo J. Rodríguez
1. Introducción y conceptos básicos
- Windows NT internals
- PEB, TEB, LDR
- PE Headers
- Windows APIs
2. Ingeniería inversa de código básica: Herramientas
- Usando un Debugger: OllyDBG
- Entendiendo el ensamblador desde el código
3. Ingeniería inversa de código básica: Técnicas
- Event-Fishing
- Serial-Fishing
- Capturando claves: Self-Keygenning, Keygenning
4. Introducción a algunos trucos anti-debugging
5. Ingeniería inversa de código avanzada: técnicas
- Unpacking
- .NET Reversing
6. Practicum, conclusiones y referencias
- Algunos ejercicios prácticos
- Conclusiones
- Referencias
MÓDULO III – Exploiting en Windows – 8 horas – Profesor: Albert López
1. Introducción
- Stack Frames
- Análisis práctico
2. Stack Based Buffer Overflows
- Vector de ataque 1
- Sobrescribiendo EIP almacenado
- Exploit real
- Vector de ataque 2
- Structured Exception Handling
- Exploit real
3. Técnicas de Mitigación de Exploits (y evasión)
- SafeSEH
- SEHOP
- Stack Cookies
- Data Execution Prevention (DEP)
- Return Oriented Programming (ROP)
- Exploit real
- Address space layout randomization (ASLR)
- Limitaciones
- Exploit real
En este módulo se trabajará con herramientas como Immunity Debugger y mona.py. Se desarrollarán exploits para aplicaciones como Real Player, Quicktime y otros. Se analizarán desde plataformas Windows XP SP3, 7 SP1 y 8.1. Igualmente, se usará Metasploit para generar los payloads, encodearlos y gestionar el meterpreter. Los PoCs se harán en Python.
MÓDULO IV – Reversing en Linux – 8 horas – Profesor: Sergi Álvarez
1. Introducción a la Ingeniería Inversa
- ¿Qué es y para qué se usa?
- Reversing en Linux
- Compilar, desensamblar y decompilar
- Formato ELF
- ld.so LDPRELOAD /proc
- Herramientas
- Tipos
- Cómo instalarlas y breve introducción
- Demos
- Extracción de información de ejecutables
- ldpreload bypass password
2. Análisis
- Referencias
- Interrupciones (búsqueda, resolución)
- Basic Blocks
- Grafos (call, bb)
- Demos
- Ensamblado/desensamblado
- Parcheado de programa
3. Formateando Datos y Búsquedas
- Bindiffing
- Estructuras en C (alineamiento, punteros, listas,…)
- Extracción de strings y referencias
- Cálculo de entropía
- binwalk, /m, yara, rafind2, photorec (carving)
- Firmas, funciones, preludes,…
- Demos:
- Búsqueda de parche
- Extracción de ficheros de un dump
- Identificación de funciones por firma
4. Debugging y análisis dinámico
- Introducción a Valgrind, GDB y r2
- Trazas de ejecución (ltrace, strace)
- Breakpoints
- Manipulación de flujo de ejecución
- Modificación de registros
- Inyección de código
- Volcados de memoria
- Demos
- Solución de crackme con debugger
- Demos con gdb y r2
MÓDULO V – Exploiting en Linux – 8 horas – Profesor: Jaime Peñalba
1. Vulnerabilidades más comunes
- Stack based overflow
- Heap based overflow
- Format string
2. Introducción a shellcodes
- Shellcoding básico
- Rop chains
- Herramientas (ragg2, metasploit)
3. Protecciones modernas
- Stack canary
- No eXecute Bit
- ASLR
- RELRO (RELocation Read-Only)
- PIE
4 Técnicas contra protecciones
- Return to libc
- Got overwrite
- ROP
- Stack pivoting
- Memory disclosure
¿Eres de los que no saben por dónde empezar cuando tiene que analizar un binario? ¿Te gustaría saber encontrar vulnerabilidades en software y explotarlas? ¿Te vienes abajo cuando ves una pantalla con código ensamblador y no sabes cómo utilizar un debugger? ¿Te parece de otro mundo cuando lees noticias en las que se encuentran puertas traseras a un router o descubren un zero-day para Java, Flash o Internet Explorer? Pues bienvenido, este es tu curso.
Las condiciones, horarios y fechas en las que se llevará a cabo el curso están explicadas en la web de Securízame “Curso online de Reversing y Exploiting Avanzado en Windows y Linux”, en la que podrás informarte de las condiciones del curso, así como pre-registrarte.
Suscribirse a:
Entradas
(
Atom
)