8.7 KiB
Toma de Control de Cuenta
{% hint style="success" %}
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repos de github.
Problema de Autorización
Se debe intentar cambiar el correo electrónico de una cuenta, y el proceso de confirmación debe ser examinado. Si se encuentra débil, el correo electrónico debe ser cambiado al del víctima previsto y luego confirmado.
Problema de Normalización de Unicode
- La cuenta del víctima previsto
victim@gmail.com
- Se debe crear una cuenta usando Unicode
por ejemplo:vićtim@gmail.com
Como se explicó en esta charla, el ataque anterior también podría realizarse abusando de proveedores de identidad de terceros:
- Crear una cuenta en el proveedor de identidad de terceros con un correo electrónico similar al del víctima usando algún carácter unicode (
vićtim@company.com
). - El proveedor de terceros no debería verificar el correo electrónico.
- Si el proveedor de identidad verifica el correo electrónico, tal vez puedas atacar la parte del dominio como:
victim@ćompany.com
y registrar ese dominio y esperar que el proveedor de identidad genere la versión ascii del dominio mientras la plataforma del víctima normaliza el nombre de dominio. - Iniciar sesión a través de este proveedor de identidad en la plataforma del víctima que debería normalizar el carácter unicode y permitirte acceder a la cuenta del víctima.
Para más detalles, consulta el documento sobre Normalización de Unicode:
{% content-ref url="unicode-injection/unicode-normalization.md" %} unicode-normalization.md {% endcontent-ref %}
Reutilización de Token de Restablecimiento
Si el sistema objetivo permite que el enlace de restablecimiento sea reutilizado, se deben hacer esfuerzos para encontrar más enlaces de restablecimiento utilizando herramientas como gau
, wayback
o scan.io
.
Pre Toma de Control de Cuenta
- El correo electrónico del víctima debe ser utilizado para registrarse en la plataforma, y se debe establecer una contraseña (se debe intentar confirmarla, aunque carecer de acceso a los correos del víctima podría hacer esto imposible).
- Se debe esperar hasta que el víctima se registre usando OAuth y confirme la cuenta.
- Se espera que el registro regular sea confirmado, permitiendo el acceso a la cuenta del víctima.
Configuración Incorrecta de CORS para Toma de Control de Cuenta
Si la página contiene configuraciones incorrectas de CORS, podrías ser capaz de robar información sensible del usuario para tomar el control de su cuenta o hacer que cambie la información de autenticación con el mismo propósito:
{% content-ref url="cors-bypass.md" %} cors-bypass.md {% endcontent-ref %}
CSRF para Toma de Control de Cuenta
Si la página es vulnerable a CSRF, podrías ser capaz de hacer que el usuario modifique su contraseña, correo electrónico o autenticación para que luego puedas acceder a ello:
{% content-ref url="csrf-cross-site-request-forgery.md" %} csrf-cross-site-request-forgery.md {% endcontent-ref %}
XSS para Toma de Control de Cuenta
Si encuentras un XSS en la aplicación, podrías ser capaz de robar cookies, almacenamiento local o información de la página web que podría permitirte tomar el control de la cuenta:
{% content-ref url="xss-cross-site-scripting/" %} xss-cross-site-scripting {% endcontent-ref %}
Misma Origen + Cookies
Si encuentras un XSS limitado o una toma de control de subdominio, podrías jugar con las cookies (fijándolas, por ejemplo) para intentar comprometer la cuenta del víctima:
{% content-ref url="hacking-with-cookies/" %} hacking-with-cookies {% endcontent-ref %}
Atacando el Mecanismo de Restablecimiento de Contraseña
{% content-ref url="reset-password.md" %} reset-password.md {% endcontent-ref %}
Manipulación de Respuesta
Si la respuesta de autenticación podría ser reducida a un simple booleano, solo intenta cambiar falso a verdadero y ver si obtienes acceso.
OAuth para Toma de Control de Cuenta
{% content-ref url="oauth-to-account-takeover.md" %} oauth-to-account-takeover.md {% endcontent-ref %}
Inyección de Encabezado Host
- El encabezado Host se modifica tras la iniciación de una solicitud de restablecimiento de contraseña.
- El encabezado proxy
X-Forwarded-For
se altera aattacker.com
. - Los encabezados Host, Referer y Origin se cambian simultáneamente a
attacker.com
. - Después de iniciar un restablecimiento de contraseña y optar por reenviar el correo, se emplean los tres métodos mencionados anteriormente.
Manipulación de Respuesta
- Manipulación de Código: El código de estado se altera a
200 OK
. - Manipulación de Código y Cuerpo:
- El código de estado se cambia a
200 OK
. - El cuerpo de la respuesta se modifica a
{"success":true}
o un objeto vacío{}
.
Estas técnicas de manipulación son efectivas en escenarios donde se utiliza JSON para la transmisión y recepción de datos.
Cambiar correo electrónico de la sesión actual
De este informe:
- El atacante solicita cambiar su correo electrónico por uno nuevo.
- El atacante recibe un enlace para confirmar el cambio del correo electrónico.
- El atacante envía al víctima el enlace para que lo haga clic.
- El correo electrónico del víctima se cambia al indicado por el atacante.
- El atacante puede recuperar la contraseña y tomar el control de la cuenta.
Esto también ocurrió en este informe.
Cookies Antiguas
Como se explicó en esta publicación, fue posible iniciar sesión en una cuenta, guardar las cookies como un usuario autenticado, cerrar sesión y luego iniciar sesión nuevamente.
Con el nuevo inicio de sesión, aunque se podrían generar cookies diferentes, las antiguas comenzaron a funcionar nuevamente.
Referencias
- https://infosecwriteups.com/firing-8-account-takeover-methods-77e892099050
- https://dynnyd20.medium.com/one-click-account-take-over-e500929656ea
{% hint style="success" %}
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a los HackTricks y HackTricks Cloud repos de github.