hydra proxylist

Discussion in 'Песочница' started by Fr13nd, 5 Dec 2017.

  1. Fr13nd

    Fr13nd New Member

    Joined:
    3 Nov 2004
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Всем привет. На этот раз вопрос по гидре.
    Может кто объяснить логику работы программы с прокси листом ?

    1) Что происходит, когда запрос через один из прокси не проходит? Пробует ли программа работать через следующий прокси в списке ?
    2) Помечает ли как-то программа (для себя) нерабочие прокси ?

    А то брут форс идет, и постоянно мелькают такие сообщения

    Process 3505: Can not connect [unreachable], retrying (1 of 1 retries)
    Process 3505: Can not connect [unreachable]
    [ERROR] Child with pid 3505 terminating, cannot connect

    И я не могу понять, толи такие запросы все равно выполнятся, но через следующий прокси в списке. Либо просто попытка помеается как неуспешная из-за нерабочего прокси.

    Спасибо.
     
  2. snam

    snam New Member

    Joined:
    17 Jul 2017
    Messages:
    5
    Likes Received:
    1
    Reputations:
    0
    Hydra+proxychains
     
  3. t0ma5

    t0ma5 Reservists Of Antichat

    Joined:
    10 Feb 2012
    Messages:
    829
    Likes Received:
    815
    Reputations:
    90
    добавь флаг -d (debug mode) гидра расскажет к какой проксе подключается и что происходит
    Code:
        if (debug)
          printf("DEBUG_CONNECT_OK\n");
          ..............
          if (hydra_strcasestr(proxy_string_type, "connect") || hydra_strcasestr(proxy_string_type, "http")) {
            if (proxy_authentication == NULL)
              if (host[0] == 16)
                snprintf(buf, 4096, "CONNECT [%s]:%d HTTP/1.0\r\n\r\n", hydra_address2string(host), port);
              else
                snprintf(buf, 4096, "CONNECT %s:%d HTTP/1.0\r\n\r\n", hydra_address2string(host), port);
            else if (host[0] == 16)
              snprintf(buf, 4096, "CONNECT [%s]:%d HTTP/1.0\r\nProxy-Authorization: Basic %s\r\n\r\n", hydra_address2string(host), port, proxy_authentication);
            else
              snprintf(buf, 4096, "CONNECT %s:%d HTTP/1.0\r\nProxy-Authorization: Basic %s\r\n\r\n", hydra_address2string(host), port, proxy_authentication);
            send(s, buf, strlen(buf), 0);
            recv(s, buf, 4096, 0);
            if (strncmp("HTTP/", buf, 5) == 0 && (tmpptr = index(buf, ' ')) != NULL && *++tmpptr == '2') {
              if (debug)
                printf("DEBUG_CONNECT_PROXY_OK\n");
            } else {
              if (debug)
                printf("DEBUG_CONNECT_PROXY_FAILED (Code: %c%c%c)\n", *tmpptr, *(tmpptr + 1), *(tmpptr + 2));
              if (verbose)
                fprintf(stderr, "[ERROR] CONNECT call to proxy failed with code %c%c%c\n", *tmpptr, *(tmpptr + 1), *(tmpptr + 2));
              err = 1;
            }
    
    
     
    _________________________