This commit is contained in:
veggie spam 2017-03-02 10:46:34 -05:00
commit 35f69ce3a2
3 changed files with 38 additions and 14 deletions

View file

@ -2,8 +2,11 @@ Changelog for hydra
-------------------
Release 8.5-dev
* New command line option:
-b : format option for -o output file (json only so far, happy for patches supporting others :) ) - thanks to veggiespam for the patch
* ./configure now honors the CC enviroment variable if present
* Favor strrchr() over rindex()
* Updated man page with missing command line options
Release 8.4

44
hydra.1
View file

@ -1,11 +1,12 @@
.TH "HYDRA" "1" "24/05/2012"
.TH "HYDRA" "1" "01/03/2017"
.SH NAME
hydra \- a very fast network logon cracker which support many different services
.SH SYNOPSIS
.B hydra
[[[\-l LOGIN|\-L FILE] [\-p PASS|\-P FILE|\-x OPT]] | [\-C FILE]] [\-e nsr]
[\-u] [\-f] [\-F] [\-M FILE] [\-o FILE] [\-t TASKS] [\-w TIME] [\-W TIME]
[\-m OPTIONS] [\-s PORT] [\-S] [\-4/6] [\-vV] [\-d]
[[[\-l LOGIN|\-L FILE] [\-p PASS|\-P FILE|\-x OPT \-y]] | [\-C FILE]]
[\-e nsr] [\-u] [\-f|\-F] [\-M FILE] [\-o FILE] [\-b FORMAT]
[\-t TASKS] [\-T TASKS] [\-w TIME] [\-W TIME] [\-m OPTIONS] [\-s PORT]
[\-S] [\-O] [\-4|6] [\-I] [\-vV] [\-d]
server service [OPTIONS]
.br
.SH DESCRIPTION
@ -18,16 +19,20 @@ show how easy it would be to gain unauthorized access from remote to a
system.
Currently this tool supports:
AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, FTPS,
HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-PROXY,
HTTP-PROXY-URLENUM, ICQ, IMAP, IRC, LDAP2, LDAP3, MS-SQL, MYSQL, NCP, NNTP,
Oracle, Oracle-Listener, Oracle-SID, PC-Anywhere, PCNFS, POP3, POSTGRES,
RDP, REXEC, RLOGIN, RSH, SAP/R3, SIP, SMB, SMTP, SMTP-Enum, SNMP,
SOCKS5, SSH(v1 and v2), SSHKEY, Subversion, Teamspeak (TS2), Telnet,
VMware-Auth, VNC and XMPP.
For most protocols, SSL mode is available (e.g. https-get, ftp-ssl, etc.)
adam6500 afp asterisk cisco cisco-enable cvs firebird ftp ftps
http[s]-{head|get|post} http[s]-{get|post}-form http-proxy
http-proxy-urlenum icq imap[s] irc ldap2[s]
ldap3[-{cram|digest}md5][s] mssql mysql(v4) mysql5 ncp nntp
oracle oracle-listener oracle-sid pcanywhere pcnfs pop3[s]
postgres rdp redis rexec rlogin rpcap rsh rtsp s7-300 sapr3 sip
smb smtp[s] smtp-enum snmp socks5 ssh sshkey svn teamspeak telnet[s]
vmauthd vnc xmpp
For most protocols SSL is supported (e.g. https-get, ftp-ssl, etc.).
If not all necessary libraries are found during compile time, your
available services will be less. Type "hydra" to see what is available.
available services will be less.
Type "hydra" to see what is available.
.SH Options
.TP
.B target
@ -47,6 +52,10 @@ written. No other options are allowed when using \-R
.B \-S
connect via SSL
.TP
.TP
.B \-O
use old SSL v2 and v3
.TP
.B \-s PORT
if the service is on a different default port, define it here
.TP
@ -64,6 +73,9 @@ generate passwords from min to max length. charset can contain 1
The generated passwords will be of length 1 to 2 and contain
lowcase letters, numbers and/or percent signs and dots.
.TP
.B \-y
disable use of symbols in \-x bruteforce, see above
.TP
.B \-e nsr
additional checks, "n" for null password, "s" try login as pass, "r" try the reverse login as pass
.TP
@ -87,6 +99,9 @@ server list for parallel attacks, one entry per line
.B \-o FILE
write found login/password pairs to FILE instead of stdout
.TP
.B \-b FORMAT
specify the format for the \-o FILE: text(default), json, jsonv1
.TP
.B \-t TASKS
run TASKS number of connects in parallel (default: 16)
.TP
@ -109,6 +124,9 @@ verbose mode / show login+pass combination for each attempt
.B \-d
debug mode
.TP
.B \-I
ignore an existing restore file (dont wait 10 seconds)
.TP
.B \-h, \-\-help
Show summary of options.
.SH SEE ALSO

View file

@ -359,7 +359,7 @@ void help(int ext) {
if (ext)
printf(" -o FILE write found login/password pairs to FILE instead of stdout\n");
if (ext)
printf(" -b FORMAT broker -o FILEs in (text[default], json, jsonv1) format\n");
printf(" -b FORMAT specify the format for the -o FILE: text(default), json, jsonv1\n");
if (ext)
printf(" -f / -F exit when a login/pass pair is found (-M: -f per host, -F global)\n");
printf(" -t TASKS run TASKS number of connects in parallel per target (default: %d)\n", TASKS);
@ -2664,6 +2664,9 @@ int main(int argc, char *argv[]) {
bail("You can only use -L OR -l, not both\n");
if (hydra_options.pass != NULL && hydra_options.passfile != NULL)
bail("You can only use -P OR -p, not both\n");
if (hydra_options.outfile_format != 0 && hydra_options.outfile_ptr == NULL)
fprintf(stderr, "[WARNING] output file format specified (-b) - but no output file (-o)\n");
if (hydra_options.restore) {
hydra_restore_read();
// stuff we have to copy from the non-restore part