freishner

Capo
Se incorporó
16 Noviembre 2021
Mensajes
299
En éste capítulo express voy a describir el proceso, no la técnica, de la minería de cuentas de usuario.

Quizá no muchos desarrolladores tienen idea del peligro al que se expone un formulario de login si no tiene sistemas secundarios o tercearios de protección como códigos de verificación, bloqueos preventivos, autorizaciones dinámicas, o algún tipo captcha.

¿Qué es la minería de cuentas?

Es un proceso por el cual, se recuperan cuentas de usuario de forma masiva, mediante procesos automatizados.

El proceso

Todo inicia con las filtraciones. De alguna forma, que no vamos a tratar en éste thread, se producen filtraciones de credenciales.
Como bien sabemos por noticias, rrss o el boca a boca, todo termina en internet, ya sea de manera gratuita, o pagada.

Cuando se tienen los datos en bruto, se tienen que procesar de forma individual para testear si dichas credenciales siguen siendo válidas. Ésto se conoce como minería de cuentas de usuario.
En éste punto entran los procesos automatizados que por medio de herramientas variadas, prueban de a una por una las miles de cuentas, clasificandolas como positivas o negativas. Dentro de éstas últimas terminan las bloqueadas, inaccesibles, o las que tienen las medidas de seguridad accesorias que impiden un ingreso directo.

Dicho proceso es parte de una operación mas grande que involucra un proyecto con planeación, itinerarios, tiempos de trabajo, reuniones, etc.
También como se podrán imaginar, todo el equipo tiene sueldos o capitales objetivos. Por lo que para que la minería se lleve a cabo, debe haberse verificado la rentabilidad sobre la operación comercial que transforma la data en transacciones digitales.

Dificultades activas

Como se imaginarán, la principal dificultad es pasar un captcha. Luego existen sistemas inteligentes como Akamai Anti Bot, bloqueos por región, por IP, etc.

Sistemas de resolución de captchas

Existen servicios pagados que permiten resolver captchas mediante apps con humanos reales, así como tambien los automatizados que utilizan algún tipo de IA para el cometido. Todos los proveedores de resolución proveen API's programables para integrar en los sistemas autónomos que se encargan del minado.
Un estudio exhaustivo sobre la integración de los diferentes tipos de captcha que el mercado pagado, gratuito y open source ofrece se hace necesario, para afrontar algunas integraciones y la fabricación misma de los sistemas.

Detección anti bot pasiva y activa

Como comenté anteriormente, existen sistemas que detectan diferentes herramientas que permiten que un sistema autónomo visite portales y apps simulando ser un usuario.
Éstos se diferencian en activos, como el Akamai Anti Bot, y pasivos como los bloqueos por región, por IP, por intentos fallidos, etc.
La gran ventaja de incorporar un sistema activo, es que es capáz de detectar amenazas nuevas de forma dinámica en base a su comportamiento, de acuerdo a reglas definidas.

Bloqueos por IP/Región.

Acá entran el uso de proxies y redes VPN pagadas, con las que un sistema localizado en China puede ingresar a servicios específicos para USA.

Dificultades pasivas

En éste punto agrupo a las dificultades impuestas por las fábricas de software, comunidades o desarrolladores.
Están las ofuscaciones, las encriptaciones, las diversificaciones y complicaciones varias, inclusive los ejecutables binarios compilados.

No toda la tecnología web es accesible con solo mirar el front, mucho del source viene empaquetado, minificado, y comúnmente ofuscado. En éste punto se hacen presentes los servicios de expertos en ingeniería inversa y decompilaciones. Desde .net hasta C, todo es decompilable, y si la operación comercial lo justifica, el servicio tiene demanda.

Tambien existen herramientas mas avanzadas que permiten controlar el browser desde la programación, así como tambien implementaciones de webkit que permiten la realización de análisis avanzados y el debugueo del source a un nivel de mas expertis que el debuger usual de chrome (por ejemplo).

Inclusive me puedo permitir comentar que algunas filtraciones parten por el mismo browser de forma activa.

Recursos físicos

Nada de ésto sería posible sin el hardware.
No se necesitan máquinas al nivel de Watson, un simple ordenador multicore en arquitectura arm, intel o amd, es capáz de ejecutar un motor web. El único requisito es que la plataforma permita el desarrollo de nuevo software. Si la plataforma cuenta con un browser, entonces puede ejecutar un motor web.

Por último la gran pregunta.
¿Qué requisitos tiene que cumplir un sistema/plataforma para ingresar en una operación de minería de cuentas de usuario?

Tarea para la casa...

Gracias
 
Subir