Mostrando entradas con la etiqueta Vulnerabilidades WEB. Mostrar todas las entradas
Mostrando entradas con la etiqueta Vulnerabilidades WEB. Mostrar todas las entradas

viernes, 19 de septiembre de 2008

Pasan los años y el mismo software de siempre

Ya van pasando los años y muchas veces por vagueza o por falta de tiempo, mucho tiempo, no arreglan los fallos y siguen poniendo el software para que descarguen, y un usuario que no sabe mucho de fallos ni mira si es vulnerable o no lo que baja, porque como es lo último se imaginará que está sin ningún fallo público.
Pero esto con Simple Blog de 8pixel.net no pasa, tienen la versión 3.0 que es vulnerable a Sql Injection, y no la han arreglado me parece porque es del 2007 la vulnerabilidad y el parche de seguridad es a 2006 de la versión anterior. Además la versión 2.0 y 2.3 deben de estar en algún lado ya que cada 2 x 3 en un reto me envian páginas que encuentran vulenrables,y siguen saliendo después de dos años.
Aquí os dejo la prueba

Exploits públicos:
2007-07-28 SimpleBlog 3.0 (comments_get.asp id) Remote SQL Injection Vulnerability
2006-11-26 SimpleBlog <= 2.3 (admin/edit.asp) Remote SQL Injection Vulnerability
2006-09-04 SimpleBlog <= 2.3 (id) Remote SQL Injection Vulnerability
2006-08-20 SimpleBlog <= 2.0 (comments.asp) Remote SQL Injection Exploit
2006-08-20 SimpleBlog <= 2.0 (comments.asp) Remote SQL Injection Vulnerability

Lista de páginas que han sido o son vulnerables desde( 03/12/2006 - 19/08/2008):
http://www.yashira.org/index.php?showtopic=10033

Fecha del primer parche de seguridad:
28/11/06
--> Me imagino que para la de comments.asp y la de id


Además muchas veces las contraseñas eran las que vienen por defecto o muy relacionadas con el nombre del sitio.

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

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

sábado, 3 de noviembre de 2007

P1mp4m T34M

Bueno hace nada nos mudamos del Blog de P1mp4m a la web oficial y foro de momento P1mp4m.es en el cual se va a dar ayuda a todos los usuarios que lo necesiten, además de integrar algunos cambios que principalmente no tienen todas las web de este tipo como son: Un laboratorio (la idea que más me gusta), en el cual al principio se cogerá software que tienen vulnerabilidades para estudiarlo y de ese modo aprender, además de poder encontrar otras posibles vulnerabilidades en el mismo software que no estén publicadas, el tipo de aplicaciones principalmente serán las basadas en Web, y muy probable que PHP las que más, pero a lo largo del tiempo si todo va bien, se podría incluir bajo ASP.Net y aplicaciones software (tema bastante interesante).

También se va a incluir una biblioteca con todo tipo de manuales, y artículos escritos por el team o por gente de la comunidad, abarcando temas actuales sobretodo.

Todo esto se está planeando y está quedando montado de tal forma que cuando empiecen a llegar usuarios ya esté finalizada la web.

Así que espero que os guste y disfruten con el contenido y aprendiendo!! Sobretodo hay que ser autodidacta muchas veces pero con ayuda de alguien que siempre viene bien.

P1mp4m

domingo, 28 de octubre de 2007

Fuzzing: Brute Force Vulnerability Discovery (Paperback)

Hoy voy a escribir sobre un libro que me quiero comprar que la verdad me parece muy interesante sus contenidos y que claramente es muy profesional solo hay que ver a los autores que lo han escrito y donde trabajan. Bueno ahi va la descripción que aparece en amazon.com, traducida por mí más o menos bien. En el link de la fuente viene info además sobre los autores.

Autores:
Michael Sutton
Adam Greene
Pedram Amini

Fuzzing
Actualmente es una de las más poderosas técnicas para revelar fallos de seguridad. El fuzzing es una de las formas más efectivas de ver la seguridad del software. Para fuzzear, tu atacas a la entrada de datos de un cógido aleatorio del programa, y después sistemáticamente identificas los fallos que surjan. Los hackers llevan confiando en el fuzzing durante años: Ahora, es tú turno. En este libro, reconocidos expertos en fuzzing te muestran cómo usar el fuzzing para descubrir debilidades en tu software antes de que alguien lo haga.

Fuzzing es el primer y único libro que cubre el fuzzing desde el principio hasta el final, dándote una disciplina mejor para practicar una técnica que ha sido implementada de una manera informal tradicionalmente. Los autores empiezan por revisar como trabaja el fuzzing y como leer entre líneas da ventajas cruciales sobre otras formas de ver la seguridad. Después, ellos introducen lo más reciente en técnicas en el arte del fuzzing para encontrar vulnerabilidades en protocolos de redes, formatos de archivos, y aplicaciones web; demuestran el uso automatizado de las herramientas de fuzzing; y presentan varios casos profundizando como trabaja el fuzzing.

El libro incluye:

  • Porqué el fuzzing simplifica el testeo del diseño y obtiene otros métodos perdidos de encontrar fallos.
  • El proceso del fuzzing: desde identificar entradas de datos a evaluar si es explotable.
  • Entendiendo los requerimientos necesarios para un fuzzing efectivo.
  • Comparaciones entre fuzzers basados en mutación y en generación.
  • Usando y automatizando el fuzzing de variables de entorno y argumentos.
  • Dominando las técnicas de fuzzing en memoria.
  • Construyendo frameworks y herramientas de fuzzing personalizadas.
  • Implementando sistemas inteligentes de deteccion de errores.
Los atacantes normalmente usan fuzzing. Tú deberías también. Si tu eres un programador, ingeniero de seguridad, tester o un especialista QA, este libro te enseñara como construir software seguro.

Índice del libro:

Foreword
Preface
Acknowledgments
About the author

Part I: Background
Chapter 1: Vulnerability Discovery Methodologies
Chapter 2: What Is Fuzzing?
Chapter 3: Fuzzing Methods and Fuzzer Types
Chapter 4: Data Representation and Analysis
Chapter 5: Requirements for Effective Fuzzing

Part II: Targets and Automation
Chapter 6: Automation and Data Generation
Chapter 7: Enviroment Variable and Argument Fuzzing
Chapter 8: Enviroment Variable and Argument Fuzzing: Automation
Chapter 9: Web Application and Server Fuzzing
Chapter 10: Web Application and Server Fuzzing: Automation
Chapter 11: File Format Fuzzing
Chapter 12: File Format Fuzzing: Automation on UNIX
Chapter 13: File Format Fuzzing: Automation on Windows
Chapter 14: Network Protocol Fuzzing
Chapter 15: Network Protocol Fuzzing: Automation on UNIX
Chapter 16: Network Protocol Fuzzing: Automation on Windows
Chapter 17: Web Browser Fuzzing
Chapter 18: Web Browser Fuzzing: Automation
Chapter 19: In-Memory Fuzzing
Chapter 20:In-Memory Fuzzing: Automation

Part III: Advanced Fuzzing Technologies
Chapter 21: Fuzzing Frameworks
Chapter 22: Automated Protocol Dissection
Chapter 23: Fuzzer Tracking
Chapter 24: Intelligent Fault Detection

Part IV: Looking Forward
Chapter 25: Lessons Learned
Chapter 26: Looking Forward

Index

Fuente:Amazon.com - Fuzzing

martes, 16 de octubre de 2007

Auditoria de una pagina a nivel Web

Esta vez voy a hablar de como vulnerar una web de un modo general y sencillo, es decir, los pasos que tenemos que seguir generalmente para encontrar posibles fallos para defacear una web y ya de paso también sirva a los webmasters que quieran comprobar la seguridad de su web y asi estar siempre mas seguros. Asi que os muestro mas o menos mi metodologia que utilizo yo. Para ello haremos un riguroso analisis de la web en cuestion.

Podemos seguir estos 10 sencillos pasos:

1-Mirar con que lenguaje se programo la web: Php, Asp, Html, XML, Flash...
1.1- Html: seguramente haya que buscar otro modo, como por el servidor o mirar a ver si hay alguna parte que no sea html
1.2- Javascript, Flash, Java...paginas que contienen partes importantes en estos lenguajes como autentificacion pueden ser vulnerados facilmente, ya que se puede conseguir el codigo.
1.3- Asp, Php, XML...suelen tener graves problemas ya que se puede hacer muchas cosas con esos lenguajes, en esta nos centraremos a nivel web muchas veces.

2-Buscar si la pagina web es un paquete precompilado tipo CMS, por ejemplo, como Joomla, Php-Nuke, etc. Si lo es suele ser algo a nuestro favor ya que dispondriamos del codigo porque es libre y visible para todos.

3-Ver si existe robots.txt que sirve para ver directorios ocultos que el robot de google por ejemplo mira para que no cachee esos directorios, suele dar info de cosas importantes como directorio del admin.

4-Uso de buscadores para encontrar posibles archivos o directorios importantes: site:www.sitio.com eso encontraria varios enlaces en lo que podria estar alguno importante.

5-Directorios y archivos comunes: admin.***, administracion.***, login.***, etc y entre directorios: /zona admin/;/administracion/...etc. Un programa que da buenos resultados en busqueda de directorios es el acunetix que suele buscar directorios comunes en los que puede a ver logueos y demas.

6-Referenciado al punto 2, se podria buscar posibles fallos de ese paquete en www.milw0rm.com del colega str0ke, pagina que suele albergar todo tipo de exploits.

7-En caso de no encontrar nada ahi o en otras webs, tantear y probar tu mismo en sistemas de logueo de usuarios, de administracion, de busqueda, etc, inyecciones o sino en variables mediante GET O POST inclusiones, XSS, y otros tipos de vulnerabilidades.

8-Si nada de esto funciona la cosa es ponerse a investigar en el codigo tu mismo si lo tienes disponible, para ello deberas saber mas informacion de como y donde se producen las tipicas vulnerabilidades.

9-Un meto alternativo ya fuera de esto seria la Ingenieria Social, pero que no he probado ya que nunca he atacado un servidor especifico por algun motivo pero suele ser muy buena debilidad porque los empleados no estan preparados como deberian estarlo.

10-Otras formas ya que no tienen que ver con este texto, como es entrar por el servidor o ir a la empresa y hacer a lo espia, ahi con tu traje negro como si fueras uno mas, asi seguro te lo pases mejor.

*Un metodo bastante importante que se me olvidaba es buscar si es un servidor compartido para ello tenemos la herramienta Reverse IP de Seologs y a partir de ahi buscar en otras webs para lograr entrar al servidor y al fin llegar a la nuestra.


Este texto principalmente esta hecho rapidamente y para que tengan una idea mas o menos asi que es posible que la cague por las prisas y bueno como me lo pidieron varios usuarios de yashira.org pues me anime a escribirlo aunque es algo que se va aprendiendo con la experiencia, espero que al menos os guie un poco.

Cualquier cosa decirme y lo cambio, aun asi mañana le dare un vistacillo si saco tiempo, ademas me acostumbrare a poner tildes que no las suelo poner para evitar problemas.

sábado, 6 de octubre de 2007

Vendiendo Vulnerabilidades

Hace relativamente poco tiempo parecia que iba a causar furor una web de este tipo y que se iba a acabar el ser buena persona y reportarlos gratuitamente como se ha hecho la mayoria de veces, pero una web Wabisabilabi en la que ponian los fallos y el dinero que vale, lo mas gracioso que era de preveer es que la gente que estaba en contra de esto, han empezado a ver la web para que posteen uno y buscar el bug y publicarlo antes de que se venda, y a mi parecer hacen bien que lo hagan gratuitamente, es mas yo estare atento alguna que otra vez para ver si puedo hacer algo, porque asi no se trafica tanto con la informacion jeje, y bueno la verdad que lo venden muy caro para el sotfware que es, asi que vendan lo que puedan pero eso si en poco tiempo o ya no servira.


PD: Para los que publican los bugs gratuitamente una enhorabuena a todos, eso si no habria muchos si se programase mejor y se vigilase desde el principio eso :P

jueves, 27 de septiembre de 2007

Errores de programacion

El principal problema de los llamados Hackers...prefiero llamarles Defacers mejor que es a lo que se dedican o eso nos hacen creer, tratan de modificar muchas veces el contenido de webs, o tambien los Crackers como alguien que entra en un sistema para hacer cosas ilegales y que perjudican al usuario, aunque eso de crackers se utiliza mas para los que estudian Ing. Inversa por lo que deberian llamarlos mas Ingenieros Inversos o algo asi jeje.
Tanto es asi que en la sociedad a los "Hackers" en la sociedad se les mira mal o lo usan de mala manera cuando muchos de ellos son los que arreglan los fallos de programacion al avisar de ellos y ayudan a mejorar el sistema. Entre los fallos mas importantes estan:

A nivel web:
Los que suelen ser por problemas de codigo de programacion para diseño de paginas web y que permiten hacer a un atacante muchas otras cosas como phising, intrusion total al servidor, sacar datos, contraseñas debiles y estudios de algoritmos para saltarse protecciones. Los fallos mas comunes son:
-XSS(Cross Site Scripting)
-CSRF(Cross site request forgery)
-RFI Y LFI(Remote/Local File Inclusion)
-INYECCIÓN SQL/LDAP/X-PATH
-VER CODIGO FUENTE SIN OFUSCAR(Java,Flash, Javascript...)

A nivel de software:
Los problemáticos que permiten principalmente ejecutar codigo arbitrario en la maquina o ganar permisos de admin son:
-BUFFER OVERFLOWS(Stack, Heap, Format String...)
-DOS/DDOS(Ataque de Denegación de Servicio, Distribuido)
-CODIGOS QUE PERMITEN BYPASSEAR PROTECCIONES(En php por ejemplo)
-OTRAS TECNICAS

Conociendo estas tecnicas muy bien y teniendo buena informacion es posible ya encontrar tus propios bugs y asi tener cuidado programando, es algo en lo que fallan las empresas, que se olvidan de la seguridad y luego llegan las consecuencias...por lo tanto deberian ponerse a enseñar como minimo estos fallos, dependiendo de lo que esten haciendo yentre todos ayudar a que haya mas info en español, asi que dentro de nada os escribo un articulo de una de nivel web que este lo mas completa y viendo todo tecnicamente y practicamente, ya que lo que busque en español siempre se repite, y lo del ingles habia buena info pero dispersada.

jueves, 20 de septiembre de 2007

Buscando Bugs en Gallery 2(en espera)

Bueno pues me puse a la busca de bugs de una version de Gallery 2, exactamente la 2.2.3 y en la que me baje completamente con todos los addons, una version de casi 20MB, la idea es que alguien como yo con conocimientos justos en php y de los errores mas comunes que hay si puede ser demuestre que no es muy dificil buscar bugs en software y que deberian testearse cualquier software en profundidad antes de ser lanzado, espero confundirme y no encontrar nada jejeje(broma me haria ilusion encontrar alugno xD), y bueno en caso de encontrar algun fallo lo muestro aqui, despues de haber avisado a los encargados del proyecto que al ser open source no tardaran en arreglarlo seguro porque suelen funcionar rapidamente.

Pagina web del proyecto: http://gallery.menalto.com/

------------------------------------------------
En espera por problemas de hosting

domingo, 16 de septiembre de 2007

Ataque XSIO

Hay una "nueva" o conocida, pero en la que no se ha hablado antes, vulnerabilidad llamada "XSIO" o lo que es lo mismo Cross Site Image Overlaying que se produce a causa del atributo style, nos permite un nuevo modo de hacer defaces..que se van a reir de ti como los hagas con estas cosas... o phising mediante links en imagenes, hay algunos sitios en los que para ir a algun lado hay que apretar en la imagen...¿que pasaria si en vez de la imagen esa vieramos una nuestra con nuestra sitio para hacer phising?Pues sencillo se podrian sacar datos como hacen actualmente y hacer que el usuario vea lo mismo cuando no lo es.

Le veo el problema a la vulnerabilidad de que en muchos sitios no va a funcionar ya que necesita para funcionar o HTML habilitado en algun lugar...pocos lo hacen, o mediante CSS que o eres admin, o en algunos blog esta esa posibilidad pero seguramente no funcione en muchos sitios aun asi en este funciona jejej, la cosa es que si pones para que vaya a una web...tendria que tener un sitio donde redireccione paginas web, ya que sino quedaria algo asi: http://trancek.blogspot.com/http://yashira.org y daria un error .
Lo probe en algunos sitios y algunos ya traen proteccion por si intentas hacer algo asi aun si puede ver e intentar hacer cosas malignas, es solo tener imaginacion.

Ejemplo:


Al hacer un post por ejemplo con el codigo:

{img src=http://img514.imageshack.us/img514/163/dibujobi1.jpg style=position:absolute;right:350px;top:90px;/}

{} es lo mismo que <> es que esto tmb es vulnerable...jejeje

Solo lo probe ahi, una web que me encontre por ahi, y nada mas probarlo lo borre soy buena gente.
Asi que los que lean esto lo prueben con sus webs por si acaso y no hagais muchas maldades, con conocimientos del html se te ocurriran mas cosas que hacer.

Articulo: XSIO