Hooking ya no es un concepto nuevo, muchos proveedores de AV/EDR utilizan esta técnica para monitorizar llamadas API sospechosas. Pero, evidentemente, no siempre se utiliza con motivos defensivos…
Precisamente en esta entrada hablamos de PyHook de Ilan Kalendarov es una implementación en Python del proyecto SharpHook que usa varios hooks de API… pero para obtener credenciales en el sistema comprometido.
PyHook usa Frida para inyectar sus dependencias en el proceso objetivo. Los procesos soportados son:
Proceso | API Call | Objetivo | |
---|---|---|---|
mstsc | CredUnPackAuthenticationBufferW | Usuario y contraseña | |
runas | CreateProcessWithLogonW | Usuario, contraseña y nombre de dominio. | |
cmd | RtlInitUnicodeStringEx | Filtra palabras clave como: PsExec,password etc.. | |
MobaXterm | CharUpperBuffA | Credenciales de logins SSH y RDP | |
explorer (UAC Prompt) | CredUnPackAuthenticationBufferW | Usuario, contraseña y nombre de dominio para el prompt UAC |
Demo
Fuente obtenida de: https://www.hackplayers.com/2021/08/pyhook-api-hooking-ofensivo.html