Durante 2014 registramos muchos eventos que compiten por el título de “hack del año”, pero si esto hubiera llegado a las manos equivocadas, definitivamente se ubicaría en la cima del podio. Un investigador egipcio llamado Yasser Ali descubrió un agujero de seguridad en PayPal que permitía el acceso a cualquier cuenta con un correo falso, un script en Python y un par de clics. ¿La buena noticia? El bug fue corregido, y Ali recibió una merecida recompensa.
Cuando un programa o servicio resuelve un problema de seguridad, estamos inmediatamente ante una buena noticia. El sistema se vuelve más robusto, y los usuarios cuentan con un entorno más seguro, reforzando aspectos como la confianza y la lealtad. Ahora, lo ideal es que dicho problema de seguridad no exista desde el comienzo, sin embargo, quienes crean los programas y servicios son humanos. Como tales, se encuentran expuestos a toda clase de circunstancias, que pueden provocar un error inocente en una línea de código, y que en un par de meses (o tal vez años) tendrán consecuencias desastrosas. Al mismo tiempo, también descubrimos pésimas prácticas en materia de seguridad, como sucedió con el último hack a Sony Pictures, en donde tenían una carpeta llamada “passwords” con todas las contraseñas dentro. Lo último en vulnerabilidades nos lleva a PayPal, y a un experto de nombre Yasser Ali.
Lo que encontró Ali es sin dudas perturbador: Los llamados “tokens CSRF” que se utilizan para validar todas las solicitudes con parámetro “Auth” realizadas por un usuario de PayPal cambian después de cada acción por cuestiones de seguridad, pero Ali descubrió que el CSRF Auth está marcado como reutilizable para ese usuario y su e-mail. Luego, determinó que no sólo podía obtener un token CSRF válido tratando de hacer un envío falso de dinero con el correo de la víctima, sino que al interceptar una solicitud POST en cierta página de PayPal, recibía un CSRF Auth compatible con cualquier usuario. Claro que, para cambiar la contraseña de la cuenta, el atacante debe responder las preguntas de seguridad… pero la historia no termina allí: La solicitud de cambio no está protegida con la contraseña, por lo tanto, el ataque CSRF anterior sigue siendo válido. Preguntas de seguridad, direcciones de correo, métodos de pago, direcciones de correo y direcciones físicas son algunas de las cosas que quedan a merced de esta técnica.
O debería decir “quedaban”. La prueba de concepto que vemos en el vídeo ya no es válida. Ali se contactó con los representantes de PayPal, quienes de forma inmediata corrigieron el bug, y bajo su Bug Bounty Program, la compañía transfirió a Ali la recompensa más alta disponible: 10.000 dólares. No sólo debemos agradecer a Ali por haber tomado la decisión correcta (seamos realistas, podría haber vendido el bug en el mercado negro), sino que esta es una excelente oportunidad para recordar a las compañías que las campañas de prevención de bugs y recompensas destinadas expertos funcionan. Si el estímulo económico es el correcto y la comunicación recibe máxima prioridad, se pueden evitar situaciones muy desagradables.
4 Comments
Leave a Reply