diff options
author | Kent Fritz <fritz.kent@gmail.com> | 2011-11-06 11:52:24 -0200 |
---|---|---|
committer | Robby Workman <rworkman@slackbuilds.org> | 2011-11-26 09:09:08 -0600 |
commit | 9fa285666f440d524ceb7f927634b0cd44fc54fb (patch) | |
tree | 21ac3b316c9da5f4781047d48f779b296323185d /network/hydra/patches | |
parent | 7204d918464c28426d8cb0d4bca4c9a7a8363129 (diff) | |
download | slackbuilds-9fa285666f440d524ceb7f927634b0cd44fc54fb.tar.gz |
network/hydra: Updated for version 7.1 (+new maintainer)
Signed-off-by: Niels Horn <niels.horn@slackbuilds.org>
Diffstat (limited to 'network/hydra/patches')
-rw-r--r-- | network/hydra/patches/hydra-5.4-Makefile_am.patch | 13 | ||||
-rw-r--r-- | network/hydra/patches/hydra-5.4-configure_fixups.patch | 127 | ||||
-rw-r--r-- | network/hydra/patches/hydra-5.4-libssh-0.4.patch | 187 | ||||
-rw-r--r-- | network/hydra/patches/hydra-http-form.patch | 18 |
4 files changed, 0 insertions, 345 deletions
diff --git a/network/hydra/patches/hydra-5.4-Makefile_am.patch b/network/hydra/patches/hydra-5.4-Makefile_am.patch deleted file mode 100644 index 3739d1fb20..0000000000 --- a/network/hydra/patches/hydra-5.4-Makefile_am.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Nur hydra-5.4-src.orig/Makefile.am hydra-5.4-src/Makefile.am ---- hydra-5.4-src.orig/Makefile.am 2006-05-05 09:10:44.000000000 -0500 -+++ hydra-5.4-src/Makefile.am 2009-07-05 11:23:02.983188212 -0500 -@@ -2,7 +2,8 @@ - # Makefile for Hydra - (c) 2001-2006 by van Hauser / THC <vh@thc.org> - # - --OPTS=-I. -Wall -O2 -+EXTRA_CFLAGS= -+OPTS=-I. -Wall $(EXTRA_CFLAGS) - # -ggdb -pedantic - LIBS=-lm - DIR=/bin diff --git a/network/hydra/patches/hydra-5.4-configure_fixups.patch b/network/hydra/patches/hydra-5.4-configure_fixups.patch deleted file mode 100644 index a622d7618b..0000000000 --- a/network/hydra/patches/hydra-5.4-configure_fixups.patch +++ /dev/null @@ -1,127 +0,0 @@ -diff -Nur hydra-5.4-src.orig/configure hydra-5.4-src/configure ---- hydra-5.4-src.orig/configure 2006-01-20 07:44:15.000000000 -0600 -+++ hydra-5.4-src/configure 2009-07-05 21:21:59.288865180 -0500 -@@ -35,11 +35,12 @@ - MANDIR="" - XHYDRA_SUPPORT="" - LIBDIRS=`cat /etc/ld.so.conf 2> /dev/null` -+EXTRA_LIBDIRS?= - STRIP="strip" - echo - - echo "Checking for openssl (libssl/ssl.h) ..." --for i in $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib \ -+for i in $EXTRA_LIBDIRS $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib \ - /*ssl /usr/*ssl /opt/*ssl /usr/local/*ssl /opt/local/*ssl \ - /*ssl/lib /usr/*ssl/lib /opt/*ssl/lib /usr/local/*ssl/lib /opt/local/*ssl/lib . - do -@@ -97,7 +98,7 @@ - fi - - echo "Checking for Postgres (libpq) ..." --for i in $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . -+for i in $EXTRA_LIBDIRS $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . - do - if [ "X" = "X$POSTGRES_PATH" ]; then - if [ -f "$i/libpq.so" -o -f "$i/libpq.dylib" ]; then -@@ -118,11 +119,11 @@ - echo " ... NOT found, module postgres disabled" - fi - --echo "Checking for SVN (ibsvn_client-1 libapr-0.so libaprutil-0.so) ..." --for i in $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . -+echo "Checking for SVN (ibsvn_client-1 libapr-1.so libaprutil-1.so) ..." -+for i in $EXTRA_LIBDIRS $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . - do - if [ "X" = "X$SVN_PATH" ]; then -- if [ -f "$i/libsvn_client-1.so" ]&&[ -f "$i/libapr-0.so" ]&&[ -f "$i/libaprutil-0.so" ]; then -+ if [ -f "$i/libsvn_client-1.so" ]&&[ -f "$i/libapr-1.so" ]&&[ -f "$i/libaprutil-1.so" ]; then - SVN_PATH="$i" - fi - fi -@@ -143,7 +144,7 @@ - fi - - echo "Checking for SAP/R3 (librfc/saprfc.h) ..." --for i in $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . -+for i in $EXTRA_LIBDIRS $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . - do - if [ "X" = "X$SAPR3_PATH" ]; then - if [ -f "$i/librfc.a" -o -f "$i/librfc.dylib" -o "$i/librfc32.dll" ]; then -@@ -183,7 +184,7 @@ - fi - - echo "Checking for libssh (libssh/libssh.h) ..." --for i in $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . -+for i in $EXTRA_LIBDIRS $LIBDIRS /lib /usr/lib /usr/local/lib /opt/local/lib . - do - if [ "X" = "X$SSH_PATH" ]; then - if [ -f "$i/libssh.so" -o -f "$i/libssh.dylib" ]; then -@@ -202,8 +203,8 @@ - fi - fi - if [ "X" = "X$APR_IPATH" ]; then -- if [ -d "$i/apr-0" ]; then -- APR_IPATH="$i/apr-0" -+ if [ -d "$i/apr-1" ]; then -+ APR_IPATH="$i/apr-1" - fi - fi - done -@@ -220,8 +221,8 @@ - fi - fi - if [ "X" = "X$APR_IPATH" ]; then -- if [ -d "$i/apr-0" ]; then -- APR_IPATH="$i/apr-0" -+ if [ -d "$i/apr-1" ]; then -+ APR_IPATH="$i/apr-1" - fi - fi - done -@@ -243,11 +244,11 @@ - - if [ -n "$SSH_PATH" ]; then - echo " ... found" -- echo 'NOTE: ensure that you have libssh v0.11 installed!! Get it from http://0xbadc0de.be !' -+ echo 'NOTE: ensure that you have libssh v0.4 installed!! Get it from http://0xbadc0de.be !' - fi - if [ "X" = "X$SSH_PATH" ]; then - echo " ... NOT found, module ssh2 disabled" -- echo 'Get it from http://0xbadc0de.be/ - use v0.11!' -+ echo 'Get it from http://0xbadc0de.be/ - use v0.4 or later!' - fi - if [ "$SSH_IPATH" = "/usr/include" ]; then - SSH_IPATH="" -@@ -262,7 +263,7 @@ - SYS=`uname -s` - if [ "$SYS" = "SunOS" ]; then - echo "Checking for Solaris libraries ..." -- for i in /lib /usr/lib /usr/local/lib $LIBDIRS . -+ for i in /lib /usr/lib /usr/local/lib $EXTRA_LIBDIRS $LIBDIRS . - do - if [ "X" = "X$NSL_PATH" ]; then - if [ -f "$i/libnsl.so" ]; then -@@ -334,6 +335,9 @@ - if [ -n "$SSH_PATH" ]; then - XDEFINES="$XDEFINES -DLIBSSH" - fi -+ -+XDEFINES="$XDEFINES -D_GNU_SOURCE" -+ - OLDPATH="" - for i in $SSL_PATH $CRYPTO_PATH $SSH_PATH $NSL_PATH $SOCKET_PATH $RESOLV_PATH $SAPR3_PATH $POSTGRES_PATH $SVN_PATH; do - if [ "$OLDPATH" = "$i" ]; then -@@ -379,10 +383,10 @@ - XLIBS="$XLIBS -lpq" - fi - if [ -n "$SVN_PATH" ]; then -- XLIBS="$XLIBS -lsvn_client-1 -lapr-0 -laprutil-0" -+ XLIBS="$XLIBS -lsvn_client-1 -lapr-1 -laprutil-1" - fi - if [ -n "$SVN_PATH" ]; then -- XLIBS="$XLIBS -lsvn_client-1 -lapr-0 -laprutil-0" -+ XLIBS="$XLIBS -lsvn_client-1 -lapr-1 -laprutil-1" - fi - if [ -n "$SSH_PATH" ]; then - XLIBS="$XLIBS -lssh" diff --git a/network/hydra/patches/hydra-5.4-libssh-0.4.patch b/network/hydra/patches/hydra-5.4-libssh-0.4.patch deleted file mode 100644 index d0933e4751..0000000000 --- a/network/hydra/patches/hydra-5.4-libssh-0.4.patch +++ /dev/null @@ -1,187 +0,0 @@ -diff -Naur hydra-5.4-src.orig/hydra-ssh2.c hydra-5.4-src/hydra-ssh2.c ---- hydra-5.4-src.orig/hydra-ssh2.c 2007-03-22 14:04:29.000000000 +0000 -+++ hydra-5.4-src/hydra-ssh2.c 2009-12-18 03:12:56.000000000 +0000 -@@ -7,12 +7,51 @@ - } - #else - --#warning "If compilation of hydra-ssh2 fails, you are not using v0.11. Download from http://www.0xbadc0de.be/" -+#warning "If compilation of hydra-ssh2 fails, you are not using v0.4. Download from http://www.libssh.org/" - - #include <libssh/libssh.h> - - extern char *HYDRA_EXIT; - -+/* try to authenticate with one password */ -+static int -+try_password(ssh_session ssh_session, char *password){ -+ int auth_state; -+ int i; -+ /* printf("ssh-trying pass \"%s\"\n",password); */ -+ /* We try keyboard-interactive when it's supported. kbdint is -+ * what openssh tries first when logging somewhere. -+ */ -+ auth_state = ssh_userauth_kbdint(ssh_session, NULL, NULL); -+ if(auth_state == SSH_AUTH_INFO){ -+ i=0; -+ /* we feed 10 password responses at max. Keybint is challenge-response -+ * based so the server could ask unrelated questions -+ */ -+ while(auth_state == SSH_AUTH_INFO && i<10){ -+ ssh_userauth_kbdint_setanswer(ssh_session, i, password); -+ auth_state = ssh_userauth_kbdint(ssh_session, NULL, NULL); -+ i++; -+ } -+ /* Partial authentication is specific to SSH : the password is valid but -+ * an other authentication token is needed (generaly private key) -+ */ -+ if(auth_state == SSH_AUTH_PARTIAL) -+ auth_state = SSH_AUTH_SUCCESS; -+ if(auth_state == SSH_AUTH_INFO) -+ auth_state = SSH_AUTH_ERROR; -+ return auth_state; -+ } -+ if(auth_state == SSH_AUTH_ERROR) -+ return auth_state; -+ /* Keyboard-interactive is not supported so we run through the password -+ * method */ -+ auth_state = ssh_userauth_password(ssh_session, NULL, password); -+ if(auth_state == SSH_AUTH_PARTIAL) -+ auth_state = SSH_AUTH_SUCCESS; -+ return auth_state; -+} -+ - int - start_ssh2(int s, unsigned long int ip, int port, unsigned char options, char *miscptr, FILE * fp) - { -@@ -21,17 +60,17 @@ - char *buf; - char *rc; - struct sockaddr_in targetip; -- SSH_SESSION *ssh_session; -- SSH_OPTIONS *ssh_opt; -+ ssh_session ssh_session; -+ char buffer[64], firstlogin[128]; - int auth_state; -- int i = 0; -+ const int btrue = 1; - - if (strlen(login = hydra_get_next_login()) == 0) - login = empty; - if (strlen(pass = hydra_get_next_password()) == 0) - pass = empty; - -- ssh_opt=options_new(); -+ ssh_session=ssh_new(); - memset(&targetip, 0, sizeof(targetip)); - memcpy(&targetip.sin_addr.s_addr, &ip, 4); - targetip.sin_family = AF_INET; -@@ -41,16 +80,18 @@ - buf = malloc(20); - inet_ntop(AF_INET, &targetip.sin_addr, buf, 20); - #endif -- options_set_wanted_method(ssh_opt,KEX_COMP_C_S,"none"); -- options_set_wanted_method(ssh_opt,KEX_COMP_S_C,"none"); -- options_set_port(ssh_opt, port); -- options_set_host(ssh_opt, buf); -- options_set_username(ssh_opt, login); -- -- if ((ssh_session = ssh_connect(ssh_opt)) == NULL) { -+ snprintf(firstlogin,sizeof(firstlogin),"%s",login); -+ ssh_options_set(ssh_session, SSH_OPTIONS_SSH1, &btrue); -+ ssh_options_set(ssh_session, SSH_OPTIONS_PORT, &port); -+ ssh_options_set(ssh_session, SSH_OPTIONS_HOST, buf); -+ ssh_options_set(ssh_session, SSH_OPTIONS_USER, login); -+ /* printf("ssh-connecting with login \"%s\"\n",login); */ -+ if (ssh_connect(ssh_session) == SSH_ERROR) { - rc = ssh_get_error(ssh_session); - if ((rc != NULL) && (rc[0] != '\0')) { -- if (strncmp("connect:", ssh_get_error(ssh_session), strlen("connect:")) == 0) -+ snprintf(buffer,sizeof(buffer),"%s",rc); -+ ssh_disconnect(ssh_session); -+ if (strncmp("connect:", buffer, strlen("connect:")) == 0) - return 3; - else - return 4; -@@ -60,43 +101,54 @@ - free(buf); - buf = NULL; - #endif -- -- do { -- /* why this crap? */ -- auth_state = ssh_userauth_kbdint(ssh_session, login, NULL); -- while (i < 10 && auth_state == SSH_AUTH_INFO) { -- ssh_userauth_kbdint_setanswer(ssh_session, i, pass); -- auth_state = ssh_userauth_kbdint(ssh_session, login, NULL); -- i++; -- } -- -- if (auth_state == SSH_AUTH_SUCCESS || ssh_userauth_password(ssh_session, login, pass) == SSH_AUTH_SUCCESS) { -- ssh_disconnect(ssh_session); /* this automagically frees the ssh_opt buffer */ -- hydra_report_found_host(port, ip, "ssh2", fp); -- hydra_completed_pair_found(); -- if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) -- return 2; -- /* free(ssh_opt); */ /* DOUBLE FREE ! */ -+ /* None method is important since it can flag passwordless servers */ -+ auth_state=ssh_userauth_none(ssh_session, login); -+ if(auth_state == SSH_AUTH_SUCCESS){ -+ /* passwordless server */ -+ hydra_report_found_host(port, ip, "ssh2", fp); -+ hydra_completed_pair_found(); -+ ssh_disconnect(ssh_session); -+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) -+ return 2; -+ else - return 1; -- } else { -- if (ssh_error_code(ssh_session) == 1) { -- hydra_completed_pair(); -+ } -+ -+ do { -+ auth_state=try_password(ssh_session, pass); -+ if (auth_state == SSH_AUTH_SUCCESS) { -+ ssh_disconnect(ssh_session); /* this automagically frees the ssh_opt buffer */ -+ hydra_report_found_host(port, ip, "ssh2", fp); -+ hydra_completed_pair_found(); - if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) - return 2; -+ return 1; - } else { -- ssh_disconnect(ssh_session); /* this automagically frees the ssh_opt buffer */ -- hydra_completed_pair(); /* really? */ -- if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) -+ if (auth_state == SSH_AUTH_DENIED) { -+ hydra_completed_pair(); -+ if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0){ -+ ssh_disconnect(ssh_session); - return 2; -- /* free(ssh_opt); */ /* DOUBLE FREE ! */ -+ } -+ /* set a new password to try */ -+ login=hydra_get_next_login(); -+ if(strcmp(login,firstlogin) != 0){ -+ /* we can't try a new login without a new session. */ -+ ssh_disconnect(ssh_session); -+ //hydra_completed_pair_skip(); -+ return 1; -+ } -+ pass=hydra_get_next_password(); -+ /* try again using same session */ -+ } else { -+ ssh_disconnect(ssh_session); /* this automagically frees the ssh_opt buffer */ -+ /* there was an error. The password was not really tried.*/ -+ //hydra_completed_pair_skip(); - return 1; - } - } - } while(1); - -- /* not reached */ -- -- /* free(ssh_opt); */ /* risk of double free */ - return 1; - } - diff --git a/network/hydra/patches/hydra-http-form.patch b/network/hydra/patches/hydra-http-form.patch deleted file mode 100644 index 6dde09cdf1..0000000000 --- a/network/hydra/patches/hydra-http-form.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- hydra-http-form.old 2008-02-06 09:42:49.000000000 +0000 -+++ hydra-http-form.c 2008-02-06 09:43:45.000000000 +0000 -@@ -149,7 +149,6 @@ - } - - if (hydra_send(s, buffer, strlen(buffer), 0) < 0) { -- free(updvariables); - free(upd2variables); - return 1; - } -@@ -183,7 +182,6 @@ - */ - - free(buf); -- free(updvariables); - free(upd2variables); - - if (memcmp(hydra_get_next_pair(), &HYDRA_EXIT, sizeof(HYDRA_EXIT)) == 0) |