Cómo encontré una vulnerabilidad en QIWI y gané $ 200

Érase una vez, soñé con convertirme en un especialista en seguridad de la información y hurgué diligentemente en varios sitios web en busca de vulnerabilidades. Mi mayor victoria fue encontrar una vulnerabilidad en el sistema de pago QIWI, por lo que los buenos desarrolladores me dieron 200 dólares. Como resultado, el problema descubierto se resolvió solo 3.5 años después de la queja, y después de eso fue posible contarle al Universo al respecto. Lo curioso es que descubrí esta vulnerabilidad completamente por accidente y fácilmente podrías estar en mi lugar.



En 2015, usé tarjetas de débito virtuales QIWI para pedir a mi hermana pequeña nishtyaki de AliExpress. El sistema era simple: tienes cierta cantidad de dinero en tu cuenta QIWI, haces clic en el botón "Emitir una tarjeta virtual" y recibes información para los pagos en Internet. Lo obtienes de una manera engañosa: puedes ver algo en la interfaz web (los primeros y últimos 4 dígitos del número de la tarjeta, fecha de vencimiento), pero lo más interesante te llega a través de SMS (8 dígitos centrales del número de la tarjeta, CVV2). Una vez que algo salió mal: el primer y los últimos 4 dígitos del número de la tarjeta todavía se mostraban en la interfaz web, y de repente comenzaron a llegar en SMS. Los 8 números restantes, aparentemente, tuvieron que ser calculados telepáticamente.



Soy una persona sencilla: veo un problema, me quejo al soporte técnico. La respuesta me llegó muy rápidamente: “Este es un error temporal, los expertos están trabajando para solucionar esta situación. Nos disculpamos por cualquier inconveniente causado." ¡Bueno!



Después de un par de días, todo funcionó, pero no de la misma manera que antes. Los primeros y últimos 4 dígitos del número de la tarjeta aún se enviaban a SMS y el sitio ahora mostraba los 8 dígitos del medio.



Espera un minuto, ¿y si hay un problema de seguridad ?, pensé. Como cualquier persona de una gran ciudad, he visto todo tipo de cheques en mi vida. Suelen indicar los últimos 4 dígitos del número de la tarjeta, lo que significa que estos datos no son un secreto. También se ven a menudo en los sitios donde ingresa y guarda los detalles de su tarjeta. Un par de veces vi los recibos de caja, donde también se indicaban los primeros 4 dígitos. Al mirar las tarjetas bancarias de mi familia, descubrí que todas tenían el mismo prefijo. También un secreto, entonces. Entonces, los datos secretos anteriores llegaron a través de SMS, el sitio mostraba datos públicos, ¡pero ahora todo se ha vuelto al revés!



Me senté frente a la computadora y escribí un informe de error detallado para el programa de búsqueda de vulnerabilidades., en el camino buscando en Google todo tipo de cosas interesantes sobre los números de tarjetas bancarias. Mi pensamiento principal fue: "Todo estaba bien, pero se volvió malo". Después de 9 meses me dieron dinero por esto, y después de otros 2,5 años arreglaron el error y permitieron la divulgación de la historia. ¿Qué puedes hacer, a veces necesitas poder esperar? En la siguiente iteración, QIWI aplicó un concepto diferente, que me parece más conveniente y seguro: para ver todos los detalles en el sitio, debe ingresar el código de confirmación del SMS en él.



Cualquiera podría haberse dado cuenta y quejarse de este error, incluido usted, querido amigo. Como puede ver, esto no requirió ningún conocimiento específico de seguridad de la información e incluso una búsqueda especial del problema, todo sucedió casi por sí solo.



Sean gatos, quejen a los desarrolladores sobre vulnerabilidades y errores, ¡y todos estarán bien!



El original fue publicado en mi blog el 23/03/19.



All Articles