Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas
Mostrando entradas con la etiqueta Seguridad. Mostrar todas las entradas

miércoles, 30 de marzo de 2011

Cómo buscar vulnerabilidades en software

Hace mucho que no escribo nada, y esta vez será solo para recomendaros un artículo escrito por mi. El artículo describe las formas de búsqueda de vulnerabilidades actuales, aunque con ingenio seguramente se os ocurra alguna que sea eficaz también.

Cómo buscar vulnerabilidades en software
Voy a introducir en mi primer post en este blog, el cual trata sobre la búsqueda de vulnerabilidades enfocadas a binarios y no a aplicaciones web. Normalmente, los software vulnerables a buffer overlow, vulnerabilidades double free, null dereference… están programados en C o C++, lo que aumenta su peligrosidad, ya que otros lenguajes de programación tratan, por ejemplo, los arrays de caracteres de forma segura chequeando el tamaño de los mismos, en cambio en C Y C++, se le da total libertad al programador y es él quien debe encargarse de esos chequeos, esto no pasa en lenguajes como Java, Ruby, Perl, Delphi, etc.
Cuando auditamos una aplicación en busca de vulnerabilidades, podemos hacerlo de dos formas, a partir de su código fuente, lo que se llama análisis de código fuente, también llamada auditoría de Caja Blanca (WhiteBox), o a partir del binario de la aplicación llamada auditoría de Caja Negra (BlackBox). Realmente, en ciertas ocasiones podemos tener sólo disponibles partes del código pero de momento vamos a ir viendo esos dos casos:

Auditoría de código fuente
Para realizar dichos análisis, debemos indispensablemente saber programar muy bien en algún lenguaje como C y alguno orientado a objetos. Cuantos más conocimientos se tenga de programación, varios lenguajes completamente distintos, tecnologías, framework’s, etc. Nos será más efectivo llevar el análisis de código, además de conocer los posibles tipos de vulnerabilidades existentes, y normalmente en qué situaciones son provocadas o qué funciones son muy peligrosas de utilizar, si no se controlan bien. Para ello, nos podemos informar en internet aunque al final dejaré enlaces y libros enfocados a fallos típicos en binarios, los cuales pueden ser de nuestro interés para analizar aplicaciones en busca de vulnerabilidades. En la auditoría de binarios veremos algunas técnicas que perfectamente pueden servir para esto.

Análisis de binarios
En este caso suele estar disponible sólo el ejecutable, ya sea el típico PE de Windows, ELF de Linux, ROM…Veremos ejemplos más delante de binarios sobretodo enfocados a Windows. Veamos varias formas de buscar vulnerabilidades en binarios:

-Fuzzing: Consiste en realizar pruebas automáticas, en base a una investigación previa sobre la estructura de lo que queremos analiza, ya sea mediante el documento de especificación, o reverseando algún programa. Se utiliza para todo tipo de programas, pero es normal verlo para programas que abren “X” tipo de fichero y tienen una estructura interna por dentro. Por ejemplo, los pdf’s que están de moda, tienen una estructura y si se hace un programa que vaya generando numerosos documentos pdf’s malformados, pueden salir que un mismo pdf puede afectar a varios programas que no tienen nada que ver o que van copiando partes unos de otros, incluso varios fallos en un mismo lector de pdf’s.

-Ingeniería inversa: Mediante un depurador o desensamblador, como IDA Pro u OllyDbg, se puede ver el código en ensamblador y depurar el mismo. Tenemos el problema de que puedan ir protegidos, y se necesita un conocimiento en estas áreas, pero son herramientas perfectas si sabemos dónde buscar y nos pueden ayudar bastante a encontrar vulnerabilidades complejas, o incluso backdoors dejadas por programadores, que no se esperan que nadie pueda verlas, por ejemplo un condicional tipo ” if(password == “magicword:P”) “.

-Decompilación de código: A partir de decompiladores específicos de cierto lenguaje como los existentes para Delphi o .NET, tendríamos disponible el código fuente, siempre y cuando no viniera ofuscado ni con otras protecciones que llevaran más tiempo analizar. En este tipo de lenguajes y binarios pueden ser comunes los fallos tipo Command Injection y demás. Si intentamos decompilar un binario con código C/C++ podemos usar el IDA Pro con un plugin llamado Hex-Rays Decompiler que te lo traduce a código C aunque se pierden todos los símbolos y es difícil de seguir, pero mejor C que ensamblador en muchas ocasiones. De este modo, podríamos comenzar una auditoría manual y un análisis automatizados del código fuente como el de Buguroo BugScout.

-Ejecución simbólica: Es una técnica que, a partir de un método que se ejecuta al principio (un mecanismo interesante es el de proporcionar de entrada “X” valores de interés como entradas de usuario, para ello habría que adaptar el programa) es capaz de recorrer dinámicamente, todas las posibles rutas de ejecución de un programa y así encontrar vulnerabilidades difíciles de encontrar mediante otros métodos. El compilador-optimizador se llama LLVM y para esta tarea de búsqueda de vulnerabilidades se suele usar la máquina virtual KLEE. Se necesita compilar el código fuente de C, por ejemplo, con gcc-llvm. Se utiliza para programas que ya han sido testeados muchas veces. Este método puede descubrir alguna vulnerabilidad adicional ya que explora todo en ejecución y algunos compiladores modifican el código cuando compilan, (optimizaciones y demás) y se han dado varios casos en los que los códigos se han vuelto inseguros a través de estas modificaciones.

- Diff de binarios: Actualmente, un modo de hacer exploits es una vez que han parcheado un software, se aplican comparaciones entre la versión parcheada y la antigua, como pasa con los parches de Microsoft del tipo MS11-xxx, y se descubre el trozo de código que ha cambiado y se puede ver el fallo. Aunque propiamente el fallo ya ha sido descubierto antes, a veces se puede usar para encontrar fallos que han parcheado de manera silenciosa. Esta técnica también se puede aplicar a la auditoría manual si es un diff de código disponible.

-Testing manual: Hay varias formas de realizar este testeo para lograr buenos resultados, vamos a repasarlos brevemente:

Dejar la aplicación en manos de compañeros desarrolladores, y que vayan accediendo por todos lados probando inputs aleatorios y en algún caso, si existen zonas restringidas se les pase claves para que vayan probando en todas las zonas.

Una técnica utilizada por muchos productos, es lanzar el producto en versión Beta, y que la gente reporte problemas y errores descubiertos mediante su uso, estas versiones suelen llevar formas de reporte especial, además algo molestas para usuarios que en versiones oficiales no tienen.
Después de repasar cada método podemos inferir que ventajas y limitaciones tiene cada uno. En base a las limitaciones temporales que conlleva en muchas ocasiones la búsqueda de vulnerabilidades, elegiremos uno u otro. Utilizando todos de forma eficaz se puede llegar a un construir un software seguro.

También hay que destacar que hay tipos de análisis que se solapan. Por ejemplo, en este artículo no veo necesario entrar en el caso del threat model. Abajo os muestro algunos enlaces divididos por vulnerabilidades descubiertas con los distintos tipos de búsqueda de vulnerabilidades. Además, os dejo información de algunos de los temas tocados para que investiguéis en profundidad, aunque en posteriores post se irán tocando estos temas y otros de cómo aprovechar dichas vulnerabilidades mediante exploits.

Enlaces sobre distintos tipos de vulnerabilidades descubiertas con los métodos vistos:

Fuzzing:
Ingenieria Inversa:
Decompilación:
Ejecución Simbólica:
Diff de binarios:
Manual testing:
*Decir que hay cientos de ejemplos en Internet, es cuestión de buscarlos. Entre ellos, alguno mio del que estoy seguro del método que se usó para descubrir la vulnerabilidad. En algún enlace se puede ver mezcla de métodos, incluso alguno general que tienen muchas vulnerabilidades pero que considero interesantes.
Otros enlaces de interés:

 Link: http://blog.buguroo.com/?p=344

Saludos!!

domingo, 16 de agosto de 2009

Proyecto EEW(Expert Expoit Writer)

Os voy a hablar de un proyecto que se traen entre manos desde hace tiempo boken y yibam.

El proyecto en sí es la creación de una herramienta capaz de generar exploits a partir de un PoC en ficheros script de python completamente funcionales por sí solos.

Os copio parte de los blogs de yibam y boken:

El usuario indicaría la longitud de la cadena que provoca el Buffer Overflow, la via por la cual el software vulnerable es capaz de recibir dicha cadena. Por linea de comandos, en forma de fichero interpretables por el software vulnerable, por conexión de red (socket), como argumento de una función de una libreria .dll, etc... Y la herramienta comienza todo el proceso de análisis.

El análisis automático que realiza la herramienta, consiste en montar la PoC y lanzarlo contra el software vulnerable para provocar el crash de Access Violation. Debido a la infinidad de casos, la herramienta va salvando los diferentes obstáculos (AntiDEP, SafeSEH, excepciones de escritura o lectura de ciertas direcciones, localización de direcciones validas para hacer un trampolin valido, etc...) hasta llegar a sobreescribir EIP y con toda esa información, crear un script .py que al lanzarlo de manera independiente, sea capaz de ejecutar una shellcode explotando el fallo indicado por la PoC en el software vulnerable.

----

Bueno, os dejo que descubrais vosotros mismo las grandes utilidades que va a tener, de momento se puede usar en modo API, y como bien dicen ellos, el framework Sulley...que es para fuzzing, se podría acoplar y hacer...maravillas!!! ejeje

En el apartado de links de distintos blogs aparecen los blogs de yibam y boken y el link del proyecto es el siguiente:EEW(Exploit Expert Writer)

La única pega que le pongan el nombre en inglés jejej

lunes, 20 de julio de 2009

Pwtent Pwnables 100 - Solucion Defcon

Ya que hace tanto que no escribo en el blog, os dejo un zip con una solución de una prueba de la DefCon que trataba del tema que más me gusta, el exploiting jeje.

Ahí tenéis el link para descargar: 100 Pwtent Pwnables

Decir que el zip contiene pdf y docx, además de incluir otros archivos que en el pdf no he podido meter o se ven mal. En el documento docx está todos los archivos incluidos y la imagen si se ve bien.(El pdf lo cree desde el office, por eso se ve mal xD).

Espero que os guste y cualquier duda o sugerencia, son bienvenidas :p

Por cierto, contiene un exploit remoto hecho para metasploit :P

martes, 11 de noviembre de 2008

Articulo - Explotando Activex con Heap Spraying

El mes pasado en CracksLatinos enviaron al concurso un fallito ya descubierto y explotado por shinnai en el que había que conseguir explotar una vulnerabilidad en Ultra Office, que era un programita que se podía ejecutar a través del navegador.

Cuando un programa se puede ejecutar a través de el Internet Explorer como son los Activex, si éste tiene un fallo, hay formas de aprovecharse de dichos fallos de una manera muy universal, y bastante eficaz con algunas modificaciones en el exploit original de la técnica que usaremos (Heap Spraying).

Así que, stack-based buffer overflow + Activex + navegador(IE) = Heap Spraying y derivados, y tendremos el control de muchos PCs con sólo poco trabajo como podéis leer en el tuto.
Para que veáis de que trata exactamente os recomiendo que lo miréis y en internet tenéis que buscar mas información sobre ello.

Habrá una segunda parte con métodos inseguros.

Descarga: Articulos - Explotando Activex con Heap Spraying

lunes, 27 de octubre de 2008

Charla de Asegur@IT IV

La verdad que para ser la primera charla y encima de forma gratuita me llevo una muy buena impresión. Nada más llegar allí con los colegas, sin perdernos y a la primera ejje, vi a Chema el malignoo, y me presenté y aunque sea muy pro Microsoft ejje, es un tio de la hostia jeje, me presentó a un grupo de personas, entre ellos David Barroso, Anelkaos...Vamos que genial, la pena que no pude hacerme una foto con todos, jeje ya que tantas caras nuevas y tantos nombres no les termino de asociar jeje, espero que suban fotos y pongan los nombres de la gente que había por allí. También estaba Silverhack, David Carrasco, y Winsock con el que había quedado en ver.
Vamos que le pude poner cara y cuerpo a mucha gente jeje. Así que un placer conocer a todos los que me presentaron y vi, a ver si me apunto a la próxima :D. Que hoy con las prisas de mis amigos no me pude quedar después de las preguntas o me quedaba sin comer hasta las 4.30 que hubiera llegado a casa ejej.

Bueno respecto a la charla, vamos por partes:

Esteganografía 2.0

A esta charla por mi parte le faltó chicha a la hora de ver como poder ocultar uno mismo los datos, y otros modos de ocultación que no sean el del bit menos significativo, aunque al ser de los más eficaces y al tener poco tiempo pues tampoco daba tiempo para mucho más. Aprendí alguna cosilla suelta pero poco más, después de todo lo que vi en el reto de mandingo con los colegas, lo demás parece fácil jeje.

Botnets 2.0
Esta charla es la de David Barroso. Estuvo bastante chula porque habla de una realidad que toca de cerca muchos pcs jeje(que se lo digan a nuestros amigos zerafitos xD), además mostró las características de lo que tiene que tener una botnet, así como algunas famosas que hay, la verdad que se ven cosas interesantes.

RFD, descarga de ficheros con Blind SQL Injection
La del chemita, viendo la presentación ves porqué ha dado tantas charlas por el mundo, usa el Blind Sql Injection incluso para cagar jeje, la verdad que una de bastante nivel y que con conocimientos, práctica y paciencia, puede llegar a ser mortal muchas veces. Esto obliga a que aprenda bien el SQL y las bases de datos. Decir que espero la versión que uso privada, y que pronto publique el código :D.

Debian OpenSSL Bug
Decir lo primero que el Luciano Bello es otro cachondo como el Chema jeje, todo por debian, no instales ni vista ni windows 7 cuando salga sino debian :P. Esta charla muestra la peligrosidad que tiene a veces un pequeño cambio en el código que en teoría te quita todos los errores(100 creo) y te los pone en 0, pero con mucha más peligrosidad, me refiero los errores que mostraba el Valgrind, una herramienta que ayuda mucho a programadores. La cosa estaba en que calculaba una cosa de forma no muy random jeje. Bastante buena la charla también.

¿Qué está haciendo Microsoft en seguridad?
Esta decir que le pilló en una buena fecha, con la salida del bug remoto que se saltó el SDL, pero bueno...De ésta esperaba que hablase algo más de porqué se les coló el último fallo ya que estaba en la misma parte de código que un fallo anterior. Además hizo comparativas de vulnerabilidades con gráficas, pero lo que no muestra el dinero que invierte cada S.O. en mejoras, igualito el dinero que pueda gasar debian en mejoras de seguridad y en búsqueda de bugs, que lo que gasta Microsoft(Pobre Luciano Bello jeje).

Turno de preguntas
Aquí atacaron a Héctor Sánchez, el de la última charla, con preguntas un poco incómodas pero típicas, ya lo veréis cuando cuelguen los videos y el audio me imagino. Y de los demás poca cosa, al menos hasta las 2.15 que es cuando me tenía que ir.

En definitiva, una buena forma de pasar el día, desayunar jeje, hablar, aprender y conocer gente.
Espero que la próxima vez pueda estar más tiempo con todos, y si algún dia se puede y me dejan me apunto a las cervezas.

Decir que subirán los videos y avisarán en el Blog de Chema, así que estar atentos.

¡¡¡Saludos a todos los que vi por allí!!!

PD: Además del desayuno de los organizadores, los de S21Sec nos dieron otra sorpresa, aunque quitale el palo y parece otro regalo más interesante para estar seguro...jejeje




viernes, 3 de octubre de 2008

Retrasada la Yashira-Masters

Como era de suponer debido al poco tiempo que dimos de margen para preparar todo, y al poco tiempo que disponemos todos los admins, al final se ha retrasado sin fecha clara. Y es mejor retrasarlo y prepararlo todo correctamente que no sacarlo y que se puedan ir dando muchos errores o problemas jeje.

Mientras que lo organizamos vamos encuestando por medio de yashira a la gente el formato del torneo y el diseño de las camisetas entre otras cosas.

Además decir, que la encuesta es la siguiente:
http://www.yashira.org/index.php?showtopic=11831


Si quereis que se agregue una cuarta opcion que sería la de todos los retos abiertos, sin puntos extras y demás, y que ganase el que antes acabase de hacer todos los retos, dejar un comentario ahi diciendolo!!!
A mi esa idea me gusta, y la veo justa para todos.

domingo, 21 de septiembre de 2008

Venta de Vulnerabilidades en software

Hoy en día, muchos informáticos con conocimientos sobre vulnerabilidades, explotación de las mismas, e ingeniería inversa en general, se pueden ganar un buen sueldo con la venta de lo que descubren de forma legal, vendiéndolo a empresas que tienen clientes que proteger, y reportándolo a la empresa propietaria del software afectado o a los encargados de hacer ese software.

Actualmente, de forma legal conozco 2 y aunque habrá más, son las más conocidas. También hay otra que no es muy "legal" que se pueda decir, ya que vende vulnerabilidades a los que pongan el precio sin importar quien sea, pero con los datos del comprador en teoría, no directamente a la empresa que lo reportará a la afectada como debería ser para evitar problemas.

Os voy a hablar un poco de las 3:

ZeroDayInitiative(ZDI)
Pertenece a 3com-TippingPoint y pagan bastante bien. Es una de las 2 empresas que conozco, y la verdad, parece muy buena. Ellos te proporcionan una lista de las aplicaciones y fabricantes que seguramente acepten vulnerabilidades, y a partir de ahí, dependiendo del tipo de vulnerabilidad, uso extendido y demás de la aplicacion te pagan más o te pagan menos.
Ejemplos conocidos:

Adobe Pdf Reader 8.1.2 Local and Remote Code Execution across Web Browser --> 4000$

Adobe Flash Player 9.0.115.0 and earlier DeclareFunction2 Invalid Object Use Vulnerability --> 5500$


Sacado de infolancer - Vallejo.cc

iDefense Labs
La otra empresa que parece bastante buena y pertenece a Verisign, y que recientemente hizo algunos cambios por lo que pagará más en algunas vulnerabilidades importantes porque creo que quitaron concursos que hacían antes. Ésto me llegó al mail ya que ando registrado ahí desde hace tiempo. No tengo ninguna suma conocida, pero en la misma web que en ZDI, la de Vallejo, comenta que una vulnerabilidad con ejecución de código en algún software, de momento desconocido, le han llegado a pagar 8000$.

Wabisabilabi
Desde hace pocos días, no me aparece las que se venden actualmente, no muestra ninguna, así que no se si seguirá en funcionamiento si quiera...Ya bastante info hay de este en las noticias de internet.
Os dejo una lista de lo que se ha pagado por algunas vulns:
PostgreSQL 8.3.1 con PoC, Remota(No especifica de que tipo) --> 800 Euros
Safari 3.1 con Poc, Remota(Visitando un link seguramente) --> 300 Euros

IBM DB2 9.1.0 sin Poc, Remota --> 1050 Euros
SAP GUI v 620 con Poc x 3 Vulnerabilidades --> 5100 Euros/Vulnerabilidad


Ahi teneis lo que se ha pagado y por cuales.
http://www.wslabi.com/wabisabilabi/initAssignedBid.do?

Luego hay otras que ofrecen menos dinero y son menos conocidas, o directamente las ventas ilegales, que ahí si que te pueden pagar grandes cantidades. Pero merece la pena hacer eso y que te miren mal, pues no.

Espero que os sirva, y el día que consiga vender una, os daré mejor mi opinión, si es que algú día lo consigo, que cada bug que consigo o ya ha sido encontrado o es flojillo y no lo compran porque no les merece la pena.

jueves, 18 de septiembre de 2008

De Vuelta

Después de ver las escalofriantes cifras que llegan a pagar por fallos tanto idefense como tippingpoint, me he animado a buscar fallos en software comercial conocido con la intención de encontrar algún fallo bueno y venderlo a ver que tal pagan, ya que pronto hay que sacarse el carnet de coche y no llega..ahora la cosa es buscar bien y probar y probar, una parte que puede llegar a ser muy aburrida.

Asi que Fuzzing, fuzzing y más fuzzing hasta encontrar algo, de momento descubri algunos que ya fueron vendidos o posteados así que nada...xD

viernes, 29 de agosto de 2008

PHP - Auditoría del código fuente

Acostumbrado a entrar en páginas como SecurityFocus o Milw0rm, ya me canso de siempre ver lo mismo, cada segundo sale una vulnerabilidad nueva que tiene que ver con CMS, o demás en lenguaje PHP. Ya sea porque trabajan muchos programadores y aunque intenten programar de forma segura se les escape algo, o porque ni se preocupen de la seguridad, siempre hay vulnerabilidades.

Por lo que, para los vagos, o los pobres que no puedan contratar una empresa especializada, hay bastante buen código que te hace un análisis bastante eficaz.

Os dejo dos herramientas:

Skavenger:
Esta herramienta busca fallos en php, aunque modificándola puede buscar en más tipo de lenguajes mediante el uso de expresiones regulares más que nada.

DAphpscan:
Funciona mediante expresiones regulares y es bastante más completa que la anterior, busca entre otras cosas: RCE, RFI, LFI, XSS, Inyecciones SQL, CSRF, etc...Todo basandose en funciones que suelen conllevar algun peligro y que no sn filtradas adecuadamente, o no están declaradas correctamente.


Yo personalmente no las probe con código, pero con sólo ver como es el código de ambas, sobre todo de la segunda, se ve que puede detectar fácilmente fallos.
Os dejo un sitio donde hablan de la auditoría en PHP

viernes, 1 de agosto de 2008

El trabajo de Ricardo Narvaja y el grupo CrackLatinos

Esta vez voy a hablar de la ingeniería inversa, una lista que es CrackLatinos y un autor que es Ricardo Narvaja, cuyo trabajo te da bastantes conocimientos sobre la ingeniería inversa, junto a todas las colaboraciones que se hacen a la lista de Cracklatinos por tantos autores que me extendería demasiado.

La "Introducción al Cracking con ollydbg desde cero" hecha por Ricardo Narvaja. Además de cursos actuales como el de python y otros posteriores que hará de exploiting y todos ellos de bastante buena calidad, le hacen importante en el ámbito de la ingeniería inversa.

Además te contesta siempre que puede en la lista de forma rapidísima, te ayuda y colabora bastante lo que le hace un gran tío.

Para aprender, organiza concursos de distinta temática, entre ellos:
  • Para quitar distintas protecciones que pueda traer un programa, unpacking...
  • Sacar serials a programas hechos para la labor(crackmes)
  • Exploiting, para entender como se pueden explotar los fallos en software.
Son bastante recomendables para aprender. Además en la lista, los usuarios normalmente suelen aportar con tutoriales que hacen mostrando lo que aprenden y como se hace. Un gran nivel para lo único que hace falta es tener Internet, y registrarse en la lista y cuando se pueda aportar, por supuesto.

Tenéis todo el trabajo de CrackLatinos y Ricardo en su FTP, se puede entrar mediante http://www.ricardonarvaja.info, allí se encuentran los concursos, aportaciones de la gente y obras otras cosas que podréis descubrir.
Podrás encontrar hasta un índice de las aportaciones, protecciones que trae y las técnicas antidebugging entre otras cosas.
Así que, en definitiva, pasaros por la lista o por la web si os interesa aprender sobre ingeniería inversa.
Aprovecho para saludar a la gente de allí: dapaf, boken, ricnar, apuromafo, solid, NCR, gera, karmany, etc, etc.

domingo, 8 de junio de 2008

Curso de Seguridad Completo

Ya que no tenía sobre que escribir, aprovecho para hacerles publicidad a informatica64. Chema Alonso y los que trabajan con él, además de alguno de S21sec me parece, van a dar un curso bastante completo que tiene pinta de ser bueno. Consta de:

Auditoría de Servidores y Clientes
Auditoria de Aplicaciones Web
Auditoría de Seguridad de Red
Auditoría Wireless, IM, VoIP y VPNs
Análisis Forense

Se puede hacer por módulos o completo, el que tiene pinta de ser muy bueno va a ser el de Aplicaciones Web, pero bueno seguro los demás también son buenos.

El problema tal vez sea la pasta gansa que cuesta, ya que hecha para atrás, pero a quien tenga le merece la pena, aprender en 6 semanas, lo que uno normal puede aprender en 3 meses por su cuenta si se pone a fondo.

Link:http://www.informatica64.com/cursoseguridad.html

viernes, 23 de mayo de 2008

Trillian muy vulnerable

Como ya le comenté hace tiempo a Juan Pablo López cuando descubrió una vulnerabilidad en Trillian poco después de que yo descubriera otra y también le comenté a boken lo mismo, les dije que trillian parecía muy vulnerable y el tiempo lo ha demostrado, está muy mal programado para ser una empresa que parece que tiene buen nivel económico. En cuestión es Cerulean Studios, y al entrar hoy en SecurityFocus, veo 3 advisories procedentes de Zero Day Initiative, lo miro a ver que es y me encuentro con el siguiente link donde está toda la información.

Gapping holes in Trillian IM client

Entre los fallos parece que hay varios fallos remotos sencillitos de explotar, ya veremos con tiempo de que se trata.

jueves, 1 de mayo de 2008

Viejo artículo sobre cutre ataques en flash

Bueno aquí os dejo un viejo artículo que hice para la ezine de un amigo, la de cicklow pero que por diversas razones al final no se publicó la ezine, como ya esta paginani existe y queda obsoleta, pues lo publico, decir que actualemtne hay páginas del mismo estilo y con mejore premios que son vulnerables, y que aunque una fue avisada hace más de un año, no la ha arreglado, tendrían que cambiar la web entera xDD, les iba a costar más dinero arreglarla que lo que la gente pueda llevarse en premios.

Edito: La página esta On de nuevo después de tanto tiempo, no se si lo habrán arreglado, lo miraré cuando no me de pereza registrarme jeje, si alguno lo mira y ve que siguen los fallos que avise al admin jeje :P, no seais malos.

--------------------------------------------------------------------------------------------------

Cómo saltarse las aplicaciones Flash para ganar en páginas web

Introducción
Hace tiempo ya, un amigo me comentó una página web en la cual se podía hacer trampas y sin comentarme nada más, me puse a investigar a ver que podía ser.

La página web en cuestión es:
http://www.futbolreto.com/ -- Actualmente, Fuera de línea.

Me registré en ella con el nombre de Antonio13 para hacer pruebas, me autentifiqué y me lleva a esta web.
http://www.futbolreto.com/login/index.php?open=aktiv


A la carga
Le damos a jugar y nos lleva a la siguiente:
http://www.futbolreto.com/login/index.php?open=secure
Le damos a ver código fuente y nos fijamos en esta parte:

[Código]
[object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="600" height="400"]
[param name="movie" value="preguntas_v5.swf?sasa=Antonio13&datum=2006-08-11" /]
[param name="quality" value="" /]
[embed src="preguntas_v5.swf?sasa=Antonio13&datum=2006-08-11" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="600" height="400"][/embed]
[/object]
[/Código]

Esta línea es interesante: preguntas_v5.swf?sasa=Antonio13&datum=2006-08-11, nos muestra como se llama el archivo Flash: preguntas_v5.swf, el nombre: sasa=Antonio13 y la fecha: datum=2006-08-11.

Bueno metemos en http://www.futbolreto.com/login/preguntas_v5.swf y observamos que es el flash de antes.
Nos lo bajamos por ejemplo con el flash get u otro acelerador de descargas y lo guardamos. Luego para ver el código de los archivos .swf nos bajamos por ejemplo el flash decompiler 2.90 que es el que tengo yo y lo abrimos con ese programa.
Si nos fijamos a la derecha vemos varias cosas como shape,image,morph,sound,video, etc. A nosotros nos interesa la parte de sprite en la cual hay 84, podemos ir mirando y tenemos que tener en cuenta las variables que tenía la url del código anterior, sasa y datum. Buscamos esas variables y nos paramos en el de sprite 219 ("mama") y nos fijamos en el archivo.
----------
usuario = -root.sasa;
puntos = _root.puntos;
fecha = _root.datum;
Y más abajo:
trace("sasa" + _root.sasa);
trace("puntos" + _root.puntos);
trace("fecha" + _root.datum);
getUrl("guardar.php", "dave", "POST");
----------

Esas son las variables que tiene en el juego para ir apuntando el usuario, fecha y puntos y la última para guardar todos los datos anteriores, así que ya tenemos todo hecho solo falta hacer una cosa.

Siendo un crack en el futbol
Si probamos con la siguiente dirección estas variables y las modificamos a nuestro gusto:
http://www.futbolreto.com/login/preguntas_v5.swf?sasa=Antonio13&puntos=28000&datum=2006-08-11
Al ir a esa dirección nos sale para jugar, cogemos cualquier categoría y le damos a responder sin marcar nada y dirá que perdimos, pero como somos unos expertos en el fútbol, como se aprecia en nuestros puntos "acumulados", vamos al ranking y aparece Antonio13 en primer lugar con 28000 puntos, así que podéis modificar eso como más os guste.
Ranking - http://www.futbolreto.com/login/index.php?open=rank
También os podéis ingeniar un programa que haga registros automáticos ya que sabéis como funciona y donde lo guarda, así que eso os lo dejo a vosotros por si queréis probar.

Viendo las respuestas a las preguntas:
Bueno, vamos a ver otras cosas interesantes a la vista. En el mismo sprite 219 ("mama"),nos fijamos en estas líneas:

[Código]
das = random(_root.npreg) + 1;
Obj1 = new LoadVars();
Obj1.load("./" +_root.ram + "/" + das + ".txt", 0);
Obj1.onload = function ()
{

titulo = Obj1.pregunta;
rta1 = Obj1.rta1;
rta2 = Obj1.rta2;
rta3 = Obj1.rta3;
rta4 = Obj1.rta4;
soplo = Obj1.soplo;
verdad = Obj1.verd;

[/Código]

Ahora nos fijamos aquí: Obj1.load("./" +_root.ram + "/" + das + ".txt", 0); -- esto quiere decir que en donde actualmente está el .swf, www.futbolreto.com/login , hay una / y carga las categorías que son 5 (_root.ram) y luego otra / y carga el número de preguntas y lo pone como .txt por lo que quedaría así “www.futbolreto.com/login/1/1.txt” y como tiene 5 categorías hasta aquí www.futbolreto.com/login/5/1.txt y lo que es el 1.txt(das) varia hasta muchos números, así que vamos probando y guardamos las respuestas.
Y aquí termina este documento, podréis hacer vosotros vuestras pruebas y si queréis ganar, sin que se note mucho, aunque ya no hay premios porque hace tiempo que mi amigo informó y los quitaron y el fallo siguen sin arreglarlo.
Actualmente hay más páginas con este tipo de vulnerabilidades que muestran información sensible y que hace posible el poder saltarse las reglas.

Hecho por: Trancek, trancek@p1mp4m.es

domingo, 20 de abril de 2008

El final de hakin9 en español

Me acabo de acordar de una noticia la cual creo que no está en ningún sitio o al menos yo no lo vi y es que resulta que hakin9 en español desaparece después de años ofreciendo buena información tanto teórica como práctica. No se si la empresa se habrá pronunciado pero al tratar de hablar con ellos para ponerme a escribir un artículo, me contestaron y la contestación fue clara y precisa, la edición española de hakin9 ya no va a salir, así que toca recopilar todas las revistas hasta el momento.

Por lo que una de las últimas entregas es la de Enero creo, del 2008, en la que el señor xD Chema habla de sql injection con consultas pesadas, y además tambien una recopilación de artículos para principantes.

Primero desaparece HackXCrack y ahora Hakin9, con que revistas de hacking en español nos vamos a quedar?? :(

jueves, 3 de abril de 2008

Lugares donde trabajar

Después de estar participando en sitios haciendo retos, o intentándolos, moviéndome un poco en este mundillo he estado mirando varios sitios donde molaría trabajar. Como "ingeniero inverso" principalmente, auditorías, etc. Aunque en temas de vulnerabilidades está más centrado fuera de España, como Core, TippingPoint, etc, por aquí en algún trabajo creo que también hay, aunque ni idea porque nunca fui currante. A ver si alguno que sepa se pasa por aquí y me dice o me deja un comentario sobre el trabajo que tienen que hacer en distintos puestos :P.

En Madrid hay un número de empresas que se dedican a ello, aunque fuera también(Que sepan que no es publicidad ya que no trabajé en ninguna pero por su gente me parece que tiene nivel o que está interesante).

-Informatica 64 - Con su querido Chema Alonso y Microsoft xDD, Pedro Laguna...
-S21sec - Buena gente ha trabajado ahí, y actualmente mikel gastesi.
-SIA - Andrés Tarasco y Alejandro Ramos, etc.
-Ecija

Málaga:

-HispaSec

Barcelona:

-ISecAuditors

Otros:
La gente de 48bits creo que trabaja de forma independiente pero se ve que son bastante buenos también.

A ver si a partir de verano aprendo más de ingenieria inversa y consigo algo jeje, que va siendo hora y sino a seguir buscando vulns xD.

Saludos a todos

Editado.

martes, 12 de febrero de 2008

A la carga con los exploits

El taller ya lo abrí para irse iniciando, decir que aunque está un poco chapuza, espero que no tengan problemas y aprendan mucho, todos los post del foro se irán actualizando a medida que haya más información, corrección de fallos, links que falta poner, software que analizar, etc.

Así que espero que se animen y aprendan que es un tema bastante bonito jejej

Os espero a todos los que se animen y quieran compartir y aprender

Saludos y suerte


Link:http://www.p1mp4m.es/index.php?showforum=28

sábado, 1 de diciembre de 2007

Yashira On y Mi reto para el que se atreva

Bueno ahora andan en un VPS configurado todo tal y como quieren, para que sea seguro y resista duros ataques de botnets normalitas. Principalmente, es posible gracias a g30rg3_x y a los que colaboraron dando dinero también: skyline2412, patoruzu y Mcrow. Falta mi colaboración que llegará en cuanto me llegue la tarjeta nueva que con la que tenía no me vale.
Así que en Yashira.org ya pusieron la nueva versión con todos sus retos, entre ellos el mio. Os dejo la descripción del mismo y acuérdense es un reto, que no es real del todo y es así porque la cuestión es aprender y asi no tardar demasiado en encontrar la vulnerabilidad.


Nombre del reto
Mision para Lara Croft

Indicaciones para que funcione bien

1º-Ruta Obligada --> C:\RetoOverflow\reto.exe & C:\RetoOverflow\md5.dll

2º-Hacer el reto con permisos de Administrador para evitar cualquier problema, porque puede que no funcione de no hacerlo así, ya cuando descubran el bug sabrán el porqué, o sino después de que lo encontréis os lo digo yo. (Si sabéis que bug es y aún así no os funciona me decís más que nada porque podria dar algun pequeño problema...pero solo cuando ya sepáis cual es la vulnerabilidad).

3º-Este reto no consiste en buscar en el código del reto con un debugger, de momento, el posible error y por ello está empacado con el themida porque no quiero que miréis el código y lo saquéis así porque sí, hay otros modos de descubrir un bug ademas de ver el código y por ahí va parte del reto.


Como pasar el reto

1º-De momento ,solo será necesario que encuentren el bug, y me envien la prueba de que funciona con argumentos AAAA dando el problema en la dirección 41414141, vamos lo de siempre, un access violation ahí.

2º-Guiaros por la lógica y pensar...seguro lo sacáis pronto.

Futuro

Más adelante espero que esté la version 2 del reto y será algo más complicada porque habrá que ejecutar la calculadora por ejemplo...y como podréis ver más adelante hay trucos, maldito win y las vuln que hay sobre él...ejejej


Para mas información mirar la Ayuda del programa.

Premio

El que lo descubra sin trampas de chivatazos y se lo haya currado le paso el código del reto y ya veré si algo más.



Saludos y Suerte

Link: Reto 172

sábado, 17 de noviembre de 2007

Organizando la 1º Ezine Yashira

Hoy es día de revisar la creación de la ezine, ya que me enviaron un artículo largo pero bastante interesante y además tengo que maquetar otro que tenía por ahí, todavía estoy abierto a más artículos que me quieran enviar y hablaré con los admins de Yashira.org para ver si a los que escriban un artículo que se publique en la ezine se les da una cuenta @yashira.org, de momento cuento con 3 maquetados completamente, 1 hecho casi al completo pero que le faltan imágenes y 2 que me tienen que enviar. La cosa sería llegar a los 10 artículos y publicarlos antes de fin de año o al comienzo de éste, pero no se si dará tiempo. Os aseguro que os gustaran para algo está tardando. Recuerdo el link que dejé en yashira:

--------------------------------------------------------------------------------------
Bueno, pues despues de ver todos los votos y la mayoria a favor del si, solo queda abrir la ezine y ponerse al desarrollo de ella.

Para empezar:

1º-Temas a tratar: Pues relacionados con la informática, hacking, ing inversa, criptografía, programación que se puede incluir en alguna de las anteriores, y algunas curiosidades que haya , o artículos especiales, todo dependerá de la información que haya.
2º-Cómo escribirlos: Bueno pues escribirlos como queráis y en el formato que queráis, eso si nada rarito...xD, luego los pasaré a pdf para que se vea mejor y tal, y se pueden incluir imágenes pero no lo carguen demasiado, teoríaa y práctica estaría bien en todos los artículos que se pueda.
3º-Artículos: No tengo por que publicar todo lo que enviéis, cualquier fallo en el artículo se intentará mirar con todo el staff que lo revise y además se pedirá un nivel medio-alto para la ezine, para hacerla una de las mejores que se pueda, aunque se tarde en publicarla.
4º-Colaboraciones: Enviármelas a mi agregándome al msn trancek@gmail.com(el correo no me funciona...),enviando un correo a trancek@yashira.org o enviarme un MP por yashira posteándome un link para coger la info, me meto a diario así que lo veré ok?
5º-Ortografía: Esto intentar ponerlo con las menores faltas posibles y tal, y bueno para explicar algo no utilicen palabras del país propio para que así todos puedan entender bien el artículo.

Saludos y esperemos que este proyecto vaya hacia delante!!!!

martes, 6 de noviembre de 2007

2º Reto S21sec Labs

La empresa S21sec anda poniendo de vez en cuando retos en su blog en el cual te ponen a prueba y por ahora los 2 retos han sido de Ingeniería Inversa, éste segundo además iba con premio, el libro The Shellcoder's Handbook: Discovering and Exploiting Security Holes (segunda edición). Un libro bastante bueno que estuve pensando en comprarme pero vi el concurso y lo intenté pero al final nada jeje, así que a esperar que vuelvan a ofrecerlo o a comprarlo porque la verdad es bastante bueno por lo que lei en internet.

Crackme

El crackme tenía dos protecciones.

1.- Había que teclear al iniciarse el crackme "S21secLabs - Reto 2"
2.- Tenía una comparación simple.

Asi que el texto claramente podria ser cualquiera que cumpliera esas dos condiciones, y ya que pedían una poesía pues se la dimos, dentro del crackme había una que fue la que aproveche para ponerlo completa, pero no era necesario, ya que como dijimos cualquier texto que cumpla esas 2 cosas vale.

Fueron 5 los que pasaron con sus respectivas soluciones:

- dapaf
- Gadix
- solid
- Tora
- Trancek


Los ganadores fueron elegidos por tiempo, correción de la solución y explicación.A mí la verdad me pareció algo raro el tema de como hicieron la puntuación final.

Tiempo de envío (1-5), Solución correcta (1-10), Explicación (1-5), Total:

dapaf: 5 , 10 , 3 ;18
Gadix: 2 , 8 , 4 ; 14
solid: 5 , 8 , 5 ;18
Tora: 3 , 8 , 4 ; 15
Trancek: 3 , 8 , 4 ; 15

Y así quedó todo, como 3º o 4º sin optar al libro pero bueno, espero que la próxima se me de mejor y sea un premio de estas caracteríticas jeje.

Al menos se pierde con 2 maestros de crackslatinos como son solid y dapaf, suerte a los 2 y espero algún día alcanzaros!!! Y a los demás espero verles en el próximo, que a ellos no les conozco, y Gadix no se si será el mismo que el que se encargaba de los juegos en la época de la web de Karpoff.