Blogs Teoriza
Acceder · Crear usuario
Anunciarse
Canal Personal   GONZO · Mia

Categoría Internet

Animal Captcha 1.4

DEBILIDAD A FUERZA BRUTA

animal captcha 14 fuerza brutaHace un par de semanas (erlang y compañía) me ayudaron a comprender que las versiones de Animal Captcha hasta la 1.3 son débiles frente a un ataque de fuerza bruta.

Es decir, a diferencia de los captchas alfanuméricos, Animal Captcha por su naturaleza tiene un numero reducido de respuestas posibles. Tantas como animales. Hasta el momento 30 animales.

Esto significa que creando un bot de fuerza bruta que haciendo peticiones de forma automática, de cada 30 peticiones acertará una de media. Esto es una debilidad que en algunos casos merecerá la pena explotar (no en todos).


LA SOLUCIÓN

Tras un momento de desconcierto, se pudo pensar que se había tumbado el concepto de Animal Captcha. Pero he desarrollado una batería de soluciones que mitigan el problema hasta su mínima expresión.

El problema de la fuerza bruta se ha resuelto con los siguientes cambios:

  1. En cada intento se elimina la variable de sesión. Esto significa que para hacer un intento válido hay que hacer 2 peticiones (obligatoriamente): una a la imagen del animal (el captcha) y otro al script comprobador.
  2. Se permite configurar el numero de animales mostrados. Por defecto 2. Es flexible, cambiando un parámetro se puede cambiar a 1 animal o a 8, dependiendo del industrial strength que se necesite. Por ejemplo en Blogs Teoriza he configurado 1 solo animal, hasta que surja algún problema, si Google lo implementase en Gmail, aconsejo 3 animales o incluso 4, con un repertorio inédito y no publico (hipotéticamente hablando).

¿Qué hemos conseguido? Pues multiplicar exponencialmente el número de respuestas posibles, mitigando drásticamente la eficacia de un ataque por fuerza bruta (el único ataque con eficacia demostrada hasta ahora).

Cálculos teniendo en cuenta que hay un repertorio de 30 animales (estoy preparando la próxima versión 2.0 que se ampliará a objetos).

  • Versión antigua (hasta 1.3)
    30 respuestas posibles = 30 peticiones por acierto.
  • Animal Captcha 1.4
    Mostrando 2 animales: (30^2)*2 = 1.800 peticiones por acierto.
    Mostrando 3: (30^3)*2 = 54.000 peticiones por acierto.
    Mostrando 4: (30^4)*2 = 1.620.000 peticiones por acierto.

Como se puede ver, se ha aumentado drásticamente el numero de peticiones con el mismo numero de imágenes. El numero de imágenes será elevado al menos a 60, incluyendo objetos y animales, en la próxima versión 2.0.

  • Animal Captcha 2.0 (versión futura incluyendo objetos)
    Mostrando 2: (60^2)*2 = 7.200 peticiones por acierto.
    Mostrando 3: (60^3)*2 = 432.000 peticiones por acierto.
    Mostrando 4: (60^4)*2 = 25.920.000 peticiones por acierto.

Con esto intento mostrar que el aumento de la seguridad frente a fuerza bruta es exponencial.


CONCLUSIÓN

Con esta versión 1.4 doy por resuelto el ataque de fuerza bruta simple (salvo que me corrijan, claro). Y por lo tanto en mi opinión es "invulnerable" hasta que se demuestre lo contrario.

Me temo que ahora el caballo de batalla de Animal Captcha es el ataque por identificación de animales analizando patrones del repertorio de im´genes (que es publico y abierto, aunque cada webmaster puede hacerse el suyo particular).

En esta linea veo extremadamente difícil encontrar una vulnerabilidad, ya que desde la versión 1.2 se fusiona una imagen de fondo aleatoria, con transparencia aleatoria y orientación aleatoria. Todos los bytes, pixeles, histogramas y colores estadísticos cambian aleatoriamente en cada imagen, siendo todas únicas.

Además continua activa la opción de añadir polígonos aleatorios (desactivada por defecto ya que sobra seguridad en este aspecto).


CONCLUSIÓN BREVE

Animal Captcha 1.4 es invulnerable y más seguro que cualquier captcha alfanumérico, hasta que se demuestre lo contrario (como de costumbre agradecerá que se ponga a prueba este sistema).


 

Español | Inglés

Animal Captcha

animal captcha 14
DEMO ONLINE

[Español e Inglés]


Introducción:

Animal Captcha es un pequeño programa en lenguaje PHP, orientado para su uso en páginas web, que permite adjuntar a un formulario una imagen aleatoria de un animal que cualquier humano conoce, y sin embargo un robot es incapaz de identificar.


Ventajas:

  1. Seguridad: esta es la razón principal, en Internet hay desarrollos que consiguen resolver algunos captchas de códigos alfanuméricos, con creciente éxito. Sin embargo, ojalá pudiese una máquina identificar a un animal! Es imposible teóricamente.
  2. Belleza: es más agradable ver una foto de un animal que un código alfanumérico.
  3. Rapidez: los usuarios ahorran tiempo, ya que se tarda menos en identificar y escribir un animal que introducir un código aleatorio.
  4. Efectividad: los usuarios aciertan con más probabilidad en comparación con los últimos captchas seguros.


Descargar:

Publicado bajo licencia Creative Commons, siendo esta página la fuente original. Cedo al interés común todos los derechos de utilización y modificación, como mejor se considere. El único derecho que quiero preservar es el de autoría y citación.


Versiones y cambios:
  (changelog):

  • 2.0 - Futura versión...
    Ampliaré las imágenes tambien a objetos. Aumentando el repertorio al menos a 60 entre animales y objetos.
  • 1.4 - 2009/11 - Invulnerable
    Caduca la sesion en cada intento obligando a pedir el captcha. Configuracion opcional del numero de animales por prueba, esto aumenta exponencialmente el numero de respuestas posibles migitando drásticamente la eficacia del ataque por fuerza bruta.
  • 1.3 - 2009/10 - Débil a fuerza bruta por erlang
    Permite añadir varias imágenes para un mismo animal añadiendo _2.jpg en la imagen. La imagen de fondo se orienta incorrectamente para mitigar la confusión con la imagen principal que es la corecta. Desactivado por defecto los polígonos y giros aleatorios ya que no hace falta tanta seguridad. Mejorada la calidad de la imagen. Refresca otro animal al hacer clic en la imagen.
  • 1.2 - 2008/12 - Débil a fuerza bruta por erlang
    Avance importante en la aleatorización de imágenes mediante una tecnica de fusión de dos imagenes transparentes aleatorias. Corrección de pequeños bugs. Optimización mejorada, genera imágenes más rápido.
  • 1.1 - 2008/06 - Vulnerado por movzx
    Avance en la aleatorización para dificultar la obtención de patrones que identifiquen la foto original del animal. Invulnerable al test de bits y test de histograma.
  • 1.0 - 2008/04 - Vulnerado por NachE
    Versión inicial. Vulnerable a los test de bits y test de histogramas.

(Invulnerable quiere decir que es seguro y hasta el momento nadie ha logrado crackeado, ánimo hackers!)

 


Implementación:

Animal Captcha está compuesto de 2 archivos PHP y 1 carpeta con imágenes de animales.

  • animal-captcha.php - Devuelve una imagen aleatoria de un animal, y guarda en una sesión PHP el nombre del animal para comprobarlo posteriormente.
  • animal-captcha-check.php - Define esta función PHP animal_captcha_check() que devuelve true si se ha acertado y false si es errónea, respecto a la sesión previamente creada al imprimir la imagen captcha.
  • Imágenes: las fotos deben estar en formato .jpg, medir 120px y representar un animal común, fácil de identificar (de nivel de preescolar). El nombre está formado por una serie de palabras sin espacios, una palabra por intento, separadas por guiones "-". Todas las estas palabras son las respuestas correctas. Ejemplo, cerdo-gorrino-pig.jpg Admite las respuestas: cerdo, gorrino o pig. Cada imagen ocupa 4kb tan solo. Está optimizado su consumo al mínimo, listo para usarse en sitios web con alto tráfico.

De esta forma se puede internacionalizar fácilmente o se pueden solventar animales que pueden ser nombrados de varias formas.

Cada imagen es difuminada aleatoriamente, de forma que cada imagen presentada es única.


Problemas conocidos:

  • Si el lector no conoce alguno de los idiomas del captcha, no podrá resolverlo.

0 GONZO
20-11-2009

Animal Captcha 1.3, a graphical spam control

Spanish | English

Description:

elefanteAnimal Captcha is a PHP program created for web developers who need a secure spam control for HTML forms. It displays a random image picked from a list of animals which only humans can recognize.

Advantages:

  • Nice look: better than an ugly alphanumeric string.
  • Fast: users can identify an animal faster than several mixed letters.
  • Effective: less wrong answers.
  • Secure: the main reason. Some alphanumeric captchas you can find on the Internet are really difficult to be recognized by a bot, but with an animal it's almost impossible!
  • Multi-language: available in some languages, multiple valid names for each animal.

Documentation:

 

Animal Captcha is divided into two PHP files and one folder containing some images.

  • animal-captcha.php - Returns a random image and saves the name of the animal in a session variable for being checked later.
  • animal-captcha-check.php - It defines animal_captcha_check() function. It returns true if user answer is OK, and false if it's wrong.
  • Folder images - They must be JPG format, a 120x120 px size, showing a very common animal which everybody knows. Names are composed with some words separated by dashes. Each word represents a valid answer for the same animal (eg: cerdo-pig-porc.jpg).

By this way you can easily adding new languages or solving problems about animals which have some different names.

 

Histograma test passed.

Download:

Published under Creative Commons 3.0 license. You can use or modify all you want, but you must attribute the work to the original author: GONZO (Javier González), of Blogs Teoriza.

 

Sorry about my bad English, i hope it will be useful!

0 GONZO
04-05-2008

Blogs Teoriza se adhiere al manifiesto. En Defensa de los Derechos Fundamentales de Internet

manifiesto eneko 20minutos
Eneko/20minutos

Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de Internet manifestamos nuestra firme oposición al proyecto, y declaramos que:

  1. Los derechos de autor no pueden situarse por encima de los derechos fundamentales de los ciudadanos, como el derecho a la privacidad, a la seguridad, a la presunción de inocencia, a la tutela judicial efectiva y a la libertad de expresión.
  2. La suspensión de derechos fundamentales es y debe seguir siendo competencia exclusiva del poder judicial. Ni un cierre sin sentencia. Este anteproyecto, en contra de lo establecido en el artículo 20.5 de la Constitución, pone en manos de un órgano no judicial -un organismo dependiente del ministerio de Cultura-, la potestad de impedir a los ciudadanos españoles el acceso a cualquier página web.
  3. La nueva legislación creará inseguridad jurídica en todo el sector tecnológico español, perjudicando uno de los pocos campos de desarrollo y futuro de nuestra economía, entorpeciendo la creación de empresas, introduciendo trabas a la libre competencia y ralentizando su proyección internacional.
  4. La nueva legislación propuesta amenaza a los nuevos creadores y entorpece la creación cultural. Con Internet y los sucesivos avances tecnológicos se ha democratizado extraordinariamente la creación y emisión de contenidos de todo tipo, que ya no provienen prevalentemente de las industrias culturales tradicionales, sino de multitud de fuentes diferentes.
  5. Los autores, como todos los trabajadores, tienen derecho a vivir de su trabajo con nuevas ideas creativas, modelos de negocio y actividades asociadas a sus creaciones. Intentar sostener con cambios legislativos a una industria obsoleta que no sabe adaptarse a este nuevo entorno no es ni justo ni realista. Si su modelo de negocio se basaba en el control de las copias de las obras y en Internet no es posible sin vulnerar derechos fundamentales, deberían buscar otro modelo.
  6. Consideramos que las industrias culturales necesitan para sobrevivir alternativas modernas, eficaces, creíbles y asequibles y que se adecuen a los nuevos usos sociales, en lugar de limitaciones tan desproporcionadas como ineficaces para el fin que dicen perseguir.
  7. Internet debe funcionar de forma libre y sin interferencias políticas auspiciadas por sectores que pretenden perpetuar obsoletos modelos de negocio e imposibilitar que el saber humano siga siendo libre.
  8. Exigimos que el Gobierno garantice por ley la neutralidad de la Red en España, ante cualquier presión que pueda producirse, como marco para el desarrollo de una economía sostenible y realista de cara al futuro.
  9. Proponemos una verdadera reforma del derecho de propiedad intelectual orientada a su fin: devolver a la sociedad el conocimiento, promover el dominio público y limitar los abusos de las entidades gestoras.
  10. En democracia las leyes y sus modificaciones deben aprobarse tras el oportuno debate público y habiendo consultado previamente a todas las partes implicadas. No es de recibo que se realicen cambios legislativos que afectan a derechos fundamentales en una ley no orgánica y que versa sobre otra materia.
1 GONZO
04-12-2009

El Gobierno podrá cerrar cualquier web a su voluntad

«Los internautas no deben tener miedo,
la web es imparable»

23 Abril 2009, Ángeles González-Sinde
Ministra de Cultura

A juzgar por lo sucedido estos dias, esta frase fue un simple chascarrillo de oidas para dar el pego.

angeles gonzalez sindeEl Gobierno y la Ministra de Cultura ha creado la Ley de Economia Sostenible. En ella han escondido una puerta trasera legal que permitirá cerrar casi cualquier web, sin orden judicial, solo por una violacion de derechos de autor.

Digo casi cualquier web porque el 99,99% de webs tienen publicidad (animo de lucro) y además quebrantar los derechos de autor es muy sencillo. Casi todas las webs de Internet violan la propiedad intelectual de algun autor. Si, casi todas.

Una imagen, un trozo de musica, un texto. Una simple cita es considerado una propiedad intelectual. Y con este argumento legal el Gobierno podrá cerrar cualquier web.

psoe logo rosa sindeEl Gobierno dice todo esto solo afectará a las webs que cobran por descargas de material con copyright. Que en ningun caso afectará a los blogs, etc... Pero no hay ninguna garantia legal que asegure esto, porque la ley es muy ambigua.

Esta ley es un peligro para la libre información. No podemos permitir que salga adelante de ninguna manera.

Por poner un ejemplo, en Teoriza utilizamos imagenes para aderezar nuestros articulos. En muchas ocasiones producimos gráficos y fotos, y las cedemos al uso común. Sin embargo tambien utilizamos imagenes de otros, que encontramos en Google Images por ejemplo, de donde muchas veces es imposible averiguar el autor original y las condiciones con las que publica  la imagen. Citamos siempre que podemos.

paloma defensa internet. Creado por: Eneko/20minutos.esPues bien por esta razón, con la ley en la mano, podrían cerrar Teoriza en cualquier momento, sin autorización judicial.

Obviamente no podemos consentir esto. No es de recibo, mis webs no estan bajo la tutela de papá Estado, están en Internet. No le debo lealtad a el, si no a nuestros lectores. Jamás permitiré una censura de esta magnitud.

Tengo claras dos cosas.

  1. No votaré al PSOE, la unica posibilidad sería con la dimisión inmediata de Gonzalez-Sinde.
  2. Ubicaré mis servidores donde haga falta. Marruecos, suiza, o la Antartida... por si Holanda no fuese seguro.
  3. Utilizaré, desarrollaré y difundiré cualquier aplicacion y protocolo para saltarse este tipo de medidas censoras.

Tengo alergia a la censura. Siempre que esto suceda o se intente, me lo tomaré como algo personal y actuaré en consecuencia.

Información para seguir:

2 GONZO
03-12-2009

Paradojas de las entrañas de Internet

Internet da lugar a ciertas paradojas...

  • Que la mejor forma de dar visibilidad a los anuncios relacionados sea integrándolo (falacia, en verdad es camuflar) en el diseño del site. (pero no confundir esta técnica con engaños para provocar clics equivocados).
  • Las webs encontradas en los buscadores cuyo contenido es malo o no coincide con lo buscado, tienen más probabilidad de tener clics en los anuncios (y además les haces un favor mostrandoles anuncios sobre lo que busca realmente). WTF1!
  • Que AdSense te pague por anunciar en tu web un site trampa que recibe dinero de los Referidos de Google para que el visitante se instale un programa que regala Google. WTF2!! Esquema para digerirlo: Listillo invierte en Google Adwords > Google te paga por anunciar al Listillo > el visitante instala el programa Referido que en realidad es gratis y de Google > Google paga al Listillo más de lo que invirtió. (Esto me lo comentó un colega flipando bastante)

 

0 GONZO
20-10-2006

Resultados de la encuesta ¿cuantos euros pagarías?

He terminado la recopilación de los resultados que se desprenden de la encuesta ¿Cuantos euros pagarías? que inicié hace unos días.

Podeis ver aquí el resultado detallado. Se han encuestado a 77 usuarios de Internet hasta este momento, aunque lo he dejado abierto, por si alguien más quiere dar su opinión (ya que lo he programado, así se aprovecha más).

Sobre los resultados destaco lo siguiente (obviamente mi interpretación es subjetiva, que cada cual extraiga sus conclusiones de los datos):

  • Más del 90% pagaría por una pelicula de calidad descargada por Internet (hubiendo podido elegir 0 Euros, gratis).
  • Las películas en cartelera se venderían muy bien a 3 euros, las contemporáneas a 2 euros.
  • Sobre las series de televisión más del 80% está de acuerdo en pagar por capítulos.
  • Las serias podrían venderse bien a 1 euro, ya que la media es 0.8 euros.
  • En el sector de la música hay un notable aumento del "todo gratis" del 55%, excepto si la canción es de un grupo favorito entonces el 80% si pagaría.
  • Las canciones se podrían vender bien a 0.5 euros.
0 GONZO
08-07-2009
◄ Página anterior
Blogs Teoriza
Ocio Tecnología Cuidarse Informática Contactos Cultura Vacaciones Interesante Místico Personal
Ocio Alarmas Intimidades Hosting Chat Poesías Hoteles CompraVenta Tarot GONZO
Juegos Tecnología Salud Adsl Messenger Mundo Viajes Videos Videncia Mia
CineTV Inventos Internet Música EnCrucero Polémicas
Deportes Virtual Seguridad ComoHacer Turismo Legalidad
Motor Ubuntu Actualidad
Hardware
Enlaces: MovilZona

Creative Commons License
Blogs Teoriza™ · Red de Blogs · · Aviso Legal · 2003-2010