24 jun 2012

Captchas predecibles en AFIP y #DNItruchos

Jugando un rato con los DNI duplicados en el padrón argentino así como los documentos que están cargados en dicho padrón y que podrían ser utilizados para votar y realizar fraude, encontré un par de cosas curiosas en el sitio web.

Primero, sólo para sonreír observemos algunos de estos #DNItruchos que se pueden encontrar en varios mensajes de Twitter que se han publicado durante la semana:
Al margen de lo "curioso" de estos datos, la imagen hace referencia a la red interna de AFIP (http://intranet) pero lo que más me llamó la atención es el uso incorrecto e inseguro que se hace del CAPTCHA del sitio:
Como puede verse, se hace referencia al archivo validarCodigo.js y a JpegImage.aspx, el cual crea la imagen del CAPTCHA en base a un código que se le pasa por parámetros.

Este código hace pensar que el mismo podría ser predecible y efectivamente lo es, como se ve a continuación:
Y así sucesivamente...

En base a esto es sencillo predecir la fórmula utilizada en cada CAPTCHA de cinco dígitos: el número de la imagen se forma sumando uno (+1) a cada dígito del código recibido, de la siguiente manera:
  • 1 - 2
  • 2 - 3
  • 10 - 21
  • 11 - 22
  • 99 - 1010
  • 100 - 211
  • 101 - 212
  • 9999 - 101010
  • 10000 - 21111
  • 77015 - 88126 (el CAPTCHA que figura en la imagen superior)
De acuerdo a la predictibilidad descripta del CAPTCHA, es trivial para cualquier programador explotar la página web y sustraer automáticamente la información de la cantidad de DNIs que se proponga. Es más, no hay forma de asegurar que eso no esté ocurriendo ahora mismo o ya haya sucedido. Estimamos que con un poco de sentido común estas irregularidades deberían ser corregidas a la brevedad.

Por este y muchos otros motivos es que los desarrolladores nunca deben crear sus propios códigos de seguridad, no deben inventar "nuevos" métodos, se deben usar estándares de desarrollo y no se debe practicar la seguridad por oscuridad.

Actualización: ONTI y AFIP han sido informados sobre la vulnerabilidad para que sea corregida.

Actualización 25/06: AFIP ha modificado la búsqueda por número de documento pero el error en la validación del CAPTCHA persiste.

Actualización 04/07: AFIP ha modificado el CAPTCHA y ha solucionado el problema.

Cristian de la Redacción de Segu-Info

Suscríbete a nuestro Boletín

5 comentarios:

  1. Y quien es el responsable de la base de datos?

    ResponderBorrar
  2. Mas que blog de seguridad, es de inseguridad.
    Gracias por alertar a todo el mundo como explotar una pagina del Estado.

    ResponderBorrar
  3. ¿Tendrán de asesores a los muchachos de Nic.ar?

    http://blog.salinas.com.ar/2006/11/21/nicar-y-el-cuento-de-nunca-acabar/

    Saludos

    ResponderBorrar
  4. Primero se alerta, después se publica. Ustedes perdieron todo código.

    ResponderBorrar
  5. y el cumplimiento a la ley de datos personaleS? bien, gracias no?...

    ResponderBorrar

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!