Los días 4 y 5 de Diciembre, viaje a la ciudad de Santa Rosa, La Pampa. Para participar como disertante de PampaSeg Jornadas de Seguridad Informática y Software Libre. Sali desde San Luis a las 23:00 horas, luego de un viaje bastante tranquilo (en el que dormi bastante), llegue a las 7 de la mañana a Santa Rosa. El evento comenzo a las 9:00 horas. Al llegar me encontre con Alexis Sarghel, que habia venido de Tucuman y a quién habia conocido en Mayo de este año durante el BSD day en Buenos Aires.
12
Todo comenzo normalmente, se vino la primera charla y luego de esto venia la mia titulada “Buffer Overflow – In y0ur c0mputer eating the ram”. La charla salio bastante bien, presente lo mismo que vengo presentando en otros eventos, donde arranco explicando sobre la arquitectura Intel x86, sus modos de operación, para luego seguir con unos ejemplos prácticos donde exploteo un Stack Based Buffer Overflow sin protecciones, otro con ASLR, y un simple ejemplo de ret2ret y ret2libc (deprecado hace muchisimo!). Lo importante es que según creo, la gente entendio sobre lo que les estaba mostrando, y se intereso.
34
Luego estuve escuchando otras charlas como “Explotando al eslabón mas debil” dictada por Leonardo Pigñer, la cual me parecio interesante y donde se hacen algunos buenos planteamientos sobre los usuarios y la seguridad informática.
También escuche la de Juan Pablo Borgna sobre Inseguridad Wireless, el cual si era un tema que ya conocia, me parecio muy divertida y ademas estaba orientada al Wardriving, tarea pendiente que me queda para realizar aquí en San Luis :P .
Al siguiente día llegaba mi amigo Juan Sacco a Santa Rosa, asi que temprano (tipo 6:00 hs). Lo fui a esperar a la terminal de omnibus. Nos fuimos para el hotel, nos cambiamos, y a las 9:00 hs. arrancaba nuestra charla Writting a small and Injectable Shellcode 4 Linux”. Esta fue de mis dos charlas la que mas me gusto como salio. Arrancamos hablando algo de llamadas al sistema e interrupciones. Comenzamos con un ejemplo básico haciendo una syscall exit. Para luego ir haciendolo mas complejo, desensamblado mas y mas codigo, hasta lograr armar una shellcode que mediante execv nos large una shell. Luego mostramos otro tipo de shellcodes, como un servidor web que bindea el puerto 8800. Otra que bindea el puerto 4444 con una shell. Otra para hacer flush a todas las reglas de IPTables, etc. Para terminar armando la ya clásica kill -9 -1 y ejecutandola en vivo!.
78
Luego de mi charla comenzo una llamada “Inteligencia artificial y seguridad informática en plataformas OpenSource”, que trataba sobre la construcción de IDS sobre redes neuronales, me parecio bastante interesante.
Siguiendo con el evento, me gusto mucho la charla de Alexis sobre “Cluster on BSD” donde explico todos los pasos y procedimientos formales necesarios para el armado de un cluster comunitario con muchisimo hardware reciclado y salvado de una muerte casi segura :) .
910
Por la tarde se vino la charla de Juan llamada Hack The Plannet!, su framework para penetration testing, que esta armando desde hace un tiempo y se nota que promete mucho. Entre algunas ‘features’ incluye un creador de malware, un fuzzer, y un monton de cosas mas.
Una vez terminado el evento, fuimos a comer todos juntos y a salir por la noche de Santa Rosa!. Donde perdimos toda la formalidad del evento y pinto el descontrol una vez mas, sobre todo al final.
Cabe destacar la buena onda de la gente de Santa Rosa, y espero volver en próximas ediciones de este evento!.
Total

Posts relacionados:

Tags: , , , , , ,

19 Comentarios

  1. Nozelf says:

    Con la polera de Hackmeeting 2009!

  2. ginecologode15a25 says:

    Hola!, una pregunta. El framework de Juan Sacco va a incluir el fuzzer CUDA?

  3. tty0 says:

    Hola, creo que si, va a incluir un fuzzer que va a utilizar CUDA.
    Saludos!

  4. ginecologode15a25 says:

    Hola!, para cuando se va a poder ver alguna beta? y existe alguna web del proyecto? pregunto porque decia que estaba “armado por la comunidad”

  5. juan says:

    “Cada día me caen mas mal los Geeks 2.0 – Entiendanlo, ustedes no son geeks. Emacs/Vi, Fetchmail, Mutt, Irssi, Bitlbee = The real geek soft”
    te sentís geek por usar eso? XDDDD
    te gusta el cartel de geek jajajajaa.
    sos un elitoide mas.
    ojo, te quejás de los geek 2.0 pero tenés blog, microblog y facebook. te pasás man.
    te falta la mostaza nomás.

  6. tty0 says:

    Exacto, tengo blog. Pero a diferencia de eso escribo directamente sobre Unix, y no sobre mil pelotudeces que se me cruzan por la cabeza.
    Usar Twitter / Facebook, también tengo LinkedIn, no lo considero 2.0, no me autodenomino geek por tener un Iphone, y una Mac. Aun programo ASM cosa que cuantos de estos 2.0 lo hacen?, explicame para que sirve un 2.0 y luego volvemos a hablar?. Al menos en mi caso he estado involucrado en muchos aspectos con la cultura libre y el soft libre, osea que mi aporte no fue en vano.

  7. juan says:

    entonces era el término o esas personas? te gustan las etiquetas? no te gustan? te molesta que otros se las pongan?
    te jode que esos no programe en asm? mirá que si esos programaran en asm no te sentirías elite, eh.
    es cuestión de funcionalidad? te viste las tonterías que escribís en twitter?
    estar en algo de software libre te hace mas elite? o sentís que colaborás desinteresadamente?
    hacés las cosas para decir que las hacés? te gusta sacar chapa? si te gusta sacar chapa capaz deberías alistarte en la policía.

  8. tty0 says:

    Te respondo una sola cosa, ocupate de lo tuyo que yo lo hago de lo mio. Dale? 2.0

  9. fender says:

    Hola Facundo,

    Quería saber si para ejecutar tus ejemplos de buffer overflow en linux, los compilás con -fno-stack-protector y si deshabilitás el randomize VA del kernel.

    Otra pregunta. Teniendo lo anterior habilitado, ¿conocés alguna otra técnica para poder hacer buffer overflow?

    Gracias. Saludos.

  10. tty0 says:

    fender:

    Hola que tal, te comento que los ejemplos que mostre los compile con -fstack-protector, ya que en esos ejemplos no se implementan cookies.
    En la misma charla (la de PampaSeg) hise un ejemplo sin randomize, y otro con randomize. Para bypasser kernel.randomize_va_space, lo que podes hacer es bruteforcear, y meter dentro de un bucle (un while true, por ejemplo), tu codigo arbitrario.
    Por ejemplo, en la práctica lo que suelo hacer es lo siguiente (es solo un ejemplo hipotetico):

    #: while true; do ./abo `python -c 'print "\x41"*1000+"\xff\xff\xff\xbf"+"\x90"*10000+SHELLCODE'`; done

    De esa forma el programa se va a ejecutar continuamente, hasta que la return address hardcodeada en tu codigo arbitrario, coincida con con una direccion real donde se encuentre algun NOP (x90), a mayor cantidad de NOPS mayor velocidad y probabilidad de que caiga.

    Espero que halla quedado claro, cualquier cosa me preguntas.
    Saludos!

  11. n00b says:

    Tengo dos consultas:

    1 – El fuzzer CUDA de Juan Sacco para que usa CUDA exactamente?
    2 – Donde se puede encontrar algo de informacion del framework? Que ventajas tendria sobre Metasploit por ej?

    Saludos

  12. tty0 says:

    n00b: Según tengo entendido aun no se lanzo ningún release público del mismo. El fuzzer utiliza CUDA para aprovechar el procesamiento de la placa de video para generar combinaciones de inputs y asi tener un mayor poder de fuzzing. Osea que estas bombardeando el binario de todos lados y logicamente llevaria a encontrar bugs con mayor facilidad.

    Saludos!

  13. N00b says:

    Claro pero lo costoso del fuzzing es la ejecucion del binario, no la generacion de inputs… dudo que generar inputs con CUDA varie mucho el rendimiento ya que el tiempo que requiere ejecutar un programa cualquiera (sin hablar de grandes piezas de software) va a ser mucho mayor que el requerido para generar un string o un numero (o un input cualquiera) por lo cual en cada corrida hay tiempo de sobra para -en otro thread a lo sumo si se quiere optimizar- generar un input para el caso siguiente…

    No le ecuentro mucho sentido sinceramente… hay una version publica del fuzzer aunque sea como para benchmarkearlo?

    Saludos

  14. sTuD says:

    Concuerdo con N00b, el uso de CUDA es solamente onanistico y “”marketinero”", a menos obviamente que nos demuestre lo contrario.

  15. tty0 says:

    Particularmente nunca vi el fuzzer, a lo cual no se decirles, yo simplemente les trasmito lo que el me ha comentado del mismo. Creo que lo mejor seria que le escriban un email a el y que el les explique.
    Por el momento sigo usando zzuf, spike, fuzzman ¿alguno otro para recomendar?.
    Saludos!

  16. Michal Slornosky says:

    Hi, I’m very interested in this CUDA fuzzer technology, we are currently researching into Z-server class hypervisor security but our fuzzer here in the sec. lab brings the 16-core to his knees. When do you thing this will be available?

    Regards,

    Michal

  17. ginecologode15a25 says:

    Para mi que esto del fuzzer CUDA es solo un import pycuda y una multiplicacion entre dos numeros reales, en resumidas cuentas, un ladri!

  18. Tetsuo, el pelotudo de mierda says:

    PREGUNTA QUE PLACA ME CONVIENE PARA EL MEDAL PORQUE YO LE PUSE UNA 8800 PERO LOS CAMPERS PUTOS ME HACEN HEAD CONSTANTEMENTE Y DESPUES ME DICEN QUE TIENEN CUDA PUTOS! YO NO TENGO CUDA pero tengo una placa que soporta opencl, un lenguaje mucho mas estandard y con un elevado ancho de banda aprovechando casi todo un PCI-X 16X ademas de soporte para punto flotante doble, muy apreciado en ambientes cientificos PERO LOS PUTOS ME FRAGGEAN LOCO PONGAN ESTO QUE ME COMPRO UNA NVIDIA Y LES VUELO LA PELUCAAA!

Comentar articulo:

Importante: Los comentarios son moderados.


Creative Commons License
Esta obra es publicada bajo una licencia Creative Commons.