Giter VIP home page Giter VIP logo

patator's Introduction

Patator

Patator was written out of frustration from using Hydra, Medusa, Ncrack, Metasploit modules and Nmap NSE scripts for password guessing attacks. I opted for a different approach in order to not create yet another brute-forcing tool and avoid repeating the same shortcomings. Patator is a multi-threaded tool written in Python, that strives to be more reliable and flexible than his fellow predecessors.

Currently it supports the following modules:

* ftp_login      : Brute-force FTP
* ssh_login      : Brute-force SSH
* telnet_login   : Brute-force Telnet
* smtp_login     : Brute-force SMTP
* smtp_vrfy      : Enumerate valid users using the SMTP VRFY command
* smtp_rcpt      : Enumerate valid users using the SMTP RCPT TO command
* finger_lookup  : Enumerate valid users using Finger
* http_fuzz      : Brute-force HTTP/HTTPS
* rdp_gateway    : Brute-force RDP Gateway
* ajp_fuzz       : Brute-force AJP
* pop_login      : Brute-force POP
* pop_passd      : Brute-force poppassd (not POP3)
* imap_login     : Brute-force IMAP
* ldap_login     : Brute-force LDAP
* dcom_login     : Brute-force DCOM
* smb_login      : Brute-force SMB
* smb_lookupsid  : Brute-force SMB SID-lookup
* rlogin_login   : Brute-force rlogin
* vmauthd_login  : Brute-force VMware Authentication Daemon
* mssql_login    : Brute-force MSSQL
* oracle_login   : Brute-force Oracle
* mysql_login    : Brute-force MySQL
* mysql_query    : Brute-force MySQL queries
* rdp_login      : Brute-force RDP (NLA)
* pgsql_login    : Brute-force PostgreSQL
* vnc_login      : Brute-force VNC
* dns_forward    : Brute-force DNS
* dns_reverse    : Brute-force DNS (reverse lookup subnets)
* ike_enum       : Enumerate IKE transforms
* snmp_login     : Brute-force SNMPv1/2 and SNMPv3
* unzip_pass     : Brute-force the password of encrypted ZIP files
* keystore_pass  : Brute-force the password of Java keystore files
* sqlcipher_pass : Brute-force the password of SQLCipher-encrypted databases
* umbraco_crack  : Crack Umbraco HMAC-SHA1 password hashes

The name "Patator" comes from this.

Patator is NOT script-kiddie friendly, please read the full README inside patator.py before reporting.

Please donate if you like this project! :)

paypal

Many thanks! @lanjelot

Install

git clone https://github.com/lanjelot/patator.git
git clone https://github.com/danielmiessler/SecLists.git
docker build -t patator patator/
docker run -it --rm -v $PWD/SecLists/Passwords:/mnt patator dummy_test data=FILE0 0=/mnt/richelieu-french-top5000.txt

Usage Examples

  • FTP : Enumerating users denied login in vsftpd/userlist
$ ftp_login host=10.0.0.1 user=FILE0 0=logins.txt password=asdf -x ignore:mesg='Login incorrect.' -x ignore,reset,retry:code=500
19:36:06 patator    INFO - Starting Patator v0.7-beta (https://github.com/lanjelot/patator) at 2015-02-08 19:36 AEDT
19:36:06 patator    INFO -
19:36:06 patator    INFO - code  size    time | candidate                          |   num | mesg
19:36:06 patator    INFO - -----------------------------------------------------------------------------
19:36:07 patator    INFO - 230   17     0.002 | anonymous                          |     7 | Login successful.
19:36:07 patator    INFO - 230   17     0.001 | ftp                                |    10 | Login successful.
19:36:08 patator    INFO - 530   18     1.000 | root                               |     1 | Permission denied.
19:36:17 patator    INFO - 530   18     1.000 | michael                            |    50 | Permission denied.
19:36:36 patator    INFO - 530   18     1.000 | robert                             |    93 | Permission denied.
...

Tested against vsftpd-3.0.2-9 on CentOS 7.0-1406.

  • SSH : Time-based user enumeration
$ ssh_login host=10.0.0.1 user=FILE0 0=logins.txt password=$(perl -e "print 'A'x50000") --max-retries 0 --timeout 10 -x ignore:time=0-3
17:45:20 patator    INFO - Starting Patator v0.7-beta (https://github.com/lanjelot/patator) at 2015-02-08 17:45 AEDT
17:45:20 patator    INFO -
17:45:20 patator    INFO - code  size    time | candidate                          |   num | mesg
17:45:20 patator    INFO - -----------------------------------------------------------------------------
17:45:30 patator    FAIL - xxx   41    10.001 | root                               |     1 | <class '__main__.TimeoutError'> timed out
17:45:34 patator    FAIL - xxx   41    10.000 | john                               |    23 | <class '__main__.TimeoutError'> timed out
17:45:37 patator    FAIL - xxx   41    10.000 | joe                                |    40 | <class '__main__.TimeoutError'> timed out
...

Tested against openssh-server 1:6.0p1-4+deb7u2 on Debian 7.8.

  • HTTP : Brute-force phpMyAdmin logon
$ http_fuzz url=http://10.0.0.1/pma/index.php method=POST body='pma_username=COMBO00&pma_password=COMBO01&server=1&target=index.php&lang=en&token=' 0=combos.txt before_urls=http://10.0.0.1/pma/index.php accept_cookie=1 follow=1 -x ignore:fgrep='Cannot log in to the MySQL server' -l /tmp/qsdf
11:53:47 patator    INFO - Starting Patator v0.7-beta (http://code.google.com/p/patator/) at 2014-08-31 11:53 EST
11:53:47 patator    INFO -
11:53:47 patator    INFO - code size:clen       time | candidate                          |   num | mesg
11:53:47 patator    INFO - -----------------------------------------------------------------------------
11:53:48 patator    INFO - 200  49585:0        0.150 | root:p@ssw0rd                      |    26 | HTTP/1.1 200 OK
11:53:51 patator    INFO - 200  13215:0        0.351 | root:                              |    72 | HTTP/1.1 200 OK
^C
11:53:54 patator    INFO - Hits/Done/Skip/Fail/Size: 2/198/0/0/3000, Avg: 29 r/s, Time: 0h 0m 6s
11:53:54 patator    INFO - To resume execution, pass --resume 15,15,15,16,15,36,15,16,15,40

Payload #72 was a false positive due to an unexpected error message:

$ grep AllowNoPassword /tmp/qsdf/72_200\:13215\:0\:0.351.txt
... class="icon ic_s_error" /> Login without a password is forbidden by configuration (see AllowNoPassword)</div><noscript>

Tested against phpMyAdmin 4.2.7.1.

  • IKEv1 : Enumerate transforms supported by VPN peer
# ike_enum host=10.0.0.1 transform=MOD0 0=TRANS aggressive=RANGE1 1=int:0-1 -x ignore:fgrep='NO-PROPOSAL'
16:52:58 patator    INFO - Starting Patator v0.7-beta (https://github.com/lanjelot/patator) at 2015-04-05 16:52 AEST
16:52:58 patator    INFO -
16:52:58 patator    INFO - code  size    time | candidate                          |   num | mesg
16:52:58 patator    INFO - -----------------------------------------------------------------------------
16:53:03 patator    INFO - 0     70     0.034 | 5,1,1,2:0                          |  1539 | Handshake returned: Enc=3DES Hash=MD5 Group=2:modp1024 Auth=PSK (Main)
16:53:03 patator    INFO - 0     72     0.031 | 5,1,65001,2:0                      |  1579 | Handshake returned: Enc=3DES Hash=MD5 Group=2:modp1024 Auth=XAUTH&PSK (Main)
16:53:03 patator    INFO - 0     76     0.033 | 5,1,1,2:1                          |  1540 | Handshake returned: Enc=3DES Hash=MD5 Group=2:modp1024 Auth=PSK (Aggressive)
16:53:03 patator    INFO - 0     78     0.034 | 5,1,65001,2:1                      |  1580 | Handshake returned: Enc=3DES Hash=MD5 Group=2:modp1024 Auth=XAUTH&PSK (Aggressive)
16:53:06 patator    INFO - 0     84     0.034 | 7/128,2,1,2:0                      |  2371 | Handshake returned: Enc=AES KeyLength=128 Hash=SHA1 Group=2:modp1024 Auth=PSK (Main)
16:53:06 patator    INFO - 0     90     0.033 | 7/128,2,1,2:1                      |  2372 | Handshake returned: Enc=AES KeyLength=128 Hash=SHA1 Group=2:modp1024 Auth=PSK (Aggressive)
16:53:06 patator    INFO - 0     86     0.034 | 7/128,2,65001,2:0                  |  2411 | Handshake returned: Enc=AES KeyLength=128 Hash=SHA1 Group=2:modp1024 Auth=XAUTH&PSK (Main)
16:53:06 patator    INFO - 0     92     0.035 | 7/128,2,65001,2:1                  |  2412 | Handshake returned: Enc=AES KeyLength=128 Hash=SHA1 Group=2:modp1024 Auth=XAUTH&PSK (Aggressive)

+ 10.0.0.1:500 (Main Mode)
    Encryption       Hash             Auth       Group
    ---------- ----------       ----------  ----------
          3DES        MD5              PSK    modp1024
          3DES        MD5        XAUTH&PSK    modp1024
        AES128       SHA1              PSK    modp1024
        AES128       SHA1        XAUTH&PSK    modp1024

+ 10.0.0.1:500 (Aggressive Mode)
    Encryption       Hash             Auth       Group
    ---------- ----------       ----------  ----------
          3DES        MD5              PSK    modp1024
          3DES        MD5        XAUTH&PSK    modp1024
        AES128       SHA1              PSK    modp1024
        AES128       SHA1        XAUTH&PSK    modp1024
16:53:11 patator    INFO - Hits/Done/Skip/Fail/Size: 8/3840/0/0/3840, Avg: 284 r/s, Time: 0h 0m 13s
  • SNMPv3 : Find valid usernames
$ snmp_login host=10.0.0.1 version=3 user=FILE0 0=logins.txt -x ignore:mesg=unknownUserName
17:51:06 patator    INFO - Starting Patator v0.5
17:51:06 patator    INFO -
17:51:06 patator    INFO - code  size | candidate                          |   num | mesg
17:51:06 patator    INFO - ----------------------------------------------------------------------
17:51:11 patator    INFO - 0-0   11   | robert                             |    55 | wrongDigest
17:51:12 patator    INFO - Progress:  20% (70/345) | Speed: 10 r/s | ETC: 17:51:38 (00:00:26 remaining)
17:51:33 patator    INFO - 0-0   11   | myuser                             |   311 | wrongDigest
17:51:36 patator    INFO - Hits/Done/Skip/Fail/Size: 2/345/0/0/345, Avg: 11 r/s, Time: 0h 0m 30s
  • SNMPv3 : Find valid passwords
$ snmp_login host=10.0.0.1 version=3 user=robert auth_key=FILE0 0=passwords_8+.txt -x ignore:mesg=wrongDigest
17:52:15 patator    INFO - Starting Patator v0.5
17:52:15 patator    INFO -
17:52:15 patator    INFO - code  size | candidate                          |   num | mesg
17:52:15 patator    INFO - ----------------------------------------------------------------------
17:52:16 patator    INFO - 0-0   69   | password123                        |    16 | Linux thug 2.6.36-gentoo #5 SMP Fri Aug 12 14:49:51 CEST 2011 i686
17:52:17 patator    INFO - Hits/Done/Skip/Fail/Size: 1/50/0/0/50, Avg: 38 r/s, Time: 0h 0m 1s
  • DNS : Forward lookup
$ dns_forward name=FILE0.hsc.fr 0=names.txt -x ignore:code=3
03:18:46 patator    INFO - Starting Patator v0.5 (http://code.google.com/p/patator/) at 2012-06-29 03:18 PMT
03:18:46 patator    INFO -
03:18:46 patator    INFO - code  size | candidate                          |   num | mesg
03:18:46 patator    INFO - ----------------------------------------------------------------------
03:18:46 patator    INFO - 0     41   | www                                |     4 | NOERROR [www.hsc.fr. IN A 217.174.211.25]
03:18:46 patator    INFO - 0     81   | mail                               |    32 | NOERROR [mail.hsc.fr. IN CNAME itesec.hsc.fr.][itesec.hsc.fr. IN A 192.70.106.33]
03:18:46 patator    INFO - 0     44   | webmail                            |    62 | NOERROR [webmail.hsc.fr. IN A 192.70.106.95]
03:18:46 patator    INFO - 0     93   | test                               |    54 | NOERROR [hsc.fr. IN SOA itesec.hsc.fr. hostmaster.hsc.fr. 2012012301 21600 3600 1209600 3600]
03:18:46 patator    INFO - 0     40   | wap                                |    66 | NOERROR [wap.hsc.fr. IN A 192.70.106.33]
03:18:46 patator    INFO - 0     85   | extranet                           |   131 | NOERROR [extranet.hsc.fr. IN CNAME itesec.hsc.fr.][itesec.hsc.fr. IN A 192.70.106.33]
03:18:46 patator    INFO - 0     81   | news                               |   114 | NOERROR [news.hsc.fr. IN CNAME itesec.hsc.fr.][itesec.hsc.fr. IN A 192.70.106.33]
03:18:46 patator    INFO - 0     93   | mailhost                           |   137 | NOERROR [mailhost.hsc.fr. IN A 192.70.106.33][mailhost.hsc.fr. IN AAAA 2001:7a8:1155:2::abcd]
03:18:46 patator    INFO - 0     47   | lists                              |   338 | NOERROR [lists.hsc.fr. IN MX 10 itesec.hsc.fr.]
03:18:46 patator    INFO - 0     93   | fr                                 |   319 | NOERROR [hsc.fr. IN SOA itesec.hsc.fr. hostmaster.hsc.fr. 2012012301 21600 3600 1209600 3600]
03:18:47 patator    INFO - 0     40   | gl                                 |   586 | NOERROR [gl.hsc.fr. IN A 192.70.106.103]
Records ------------------------------------------
                  extranet.hsc.fr.   IN CNAME   itesec.hsc.fr.
                        gl.hsc.fr.   IN A       192.70.106.103
                           hsc.fr.   IN SOA     itesec.hsc.fr. hostmaster.hsc.fr. 2012012301 21600 3600 1209600 3600
                    itesec.hsc.fr.   IN A       192.70.106.33
                     lists.hsc.fr.   IN MX      10 itesec.hsc.fr.
                      mail.hsc.fr.   IN CNAME   itesec.hsc.fr.
                  mailhost.hsc.fr.   IN A       192.70.106.33
                  mailhost.hsc.fr.   IN AAAA    2001:7a8:1155:2::abcd
                      news.hsc.fr.   IN CNAME   itesec.hsc.fr.
                       wap.hsc.fr.   IN A       192.70.106.33
                   webmail.hsc.fr.   IN A       192.70.106.95
                       www.hsc.fr.   IN A       217.174.211.25
Hostmap ------------------------------------------
                   mailhost.hsc.fr 2001:7a8:1155:2::abcd
                   mailhost.hsc.fr 192.70.106.33
                        wap.hsc.fr 192.70.106.33
                     itesec.hsc.fr 192.70.106.33
                   extranet.hsc.fr
                       mail.hsc.fr
                       news.hsc.fr
                    webmail.hsc.fr 192.70.106.95
                         gl.hsc.fr 192.70.106.103
                        www.hsc.fr 217.174.211.25
Domains ------------------------------------------
                            hsc.fr 10
Networks -----------------------------------------
                                   2001:7a8:1155:2::abcd
                                   192.70.106.x
                                   217.174.211.25
03:18:53 patator    INFO - Hits/Done/Skip/Fail/Size: 11/1000/0/0/1000, Avg: 133 r/s, Time: 0h 0m 7s

Also notice that test.hsc.fr. is the start of a new zone because we got NOERROR and no IP address.

  • DNS : Reverse lookup two netblocks owned by Google
$ dns_reverse host=NET0 0=216.239.32.0-216.239.47.255,8.8.8.0/24 -x ignore:code=3 -x ignore:fgrep!=google.com -x ignore:fgrep=216-239-
03:24:22 patator    INFO - Starting Patator v0.5 (http://code.google.com/p/patator/) at 2012-06-29 03:24 PMT
03:24:22 patator    INFO -
03:24:22 patator    INFO - code  size | candidate                          |   num | mesg
03:24:22 patator    INFO - ----------------------------------------------------------------------
03:24:22 patator    INFO - 0     46   | 216.239.32.10                      |    11 | NOERROR [216.239.32.10 IN PTR ns1.google.com.]
03:24:22 patator    INFO - 0     45   | 216.239.32.11                      |    12 | NOERROR [216.239.32.11 IN PTR ns.google.com.]
03:24:22 patator    INFO - 0     48   | 216.239.32.15                      |    16 | NOERROR [216.239.32.15 IN PTR time1.google.com.]
03:24:23 patator    INFO - 0     47   | 216.239.33.5                       |   262 | NOERROR [216.239.33.5 IN PTR proxy.google.com.]
03:24:23 patator    INFO - 0     47   | 216.239.33.12                      |   269 | NOERROR [216.239.33.12 IN PTR dns1.google.com.]
03:24:23 patator    INFO - 0     51   | 216.239.33.22                      |   279 | NOERROR [216.239.33.22 IN PTR transfer.google.com.]
03:24:23 patator    INFO - 0     50   | 216.239.33.20                      |   277 | NOERROR [216.239.33.20 IN PTR esc-out.google.com.]
03:24:23 patator    INFO - 0     46   | 216.239.34.10                      |   523 | NOERROR [216.239.34.10 IN PTR ns2.google.com.]
03:24:23 patator    INFO - 0     48   | 216.239.34.15                      |   528 | NOERROR [216.239.34.15 IN PTR time2.google.com.]
^C
Records ------------------------------------------
                     216.239.32.10       IN PTR      ns1.google.com.
                     216.239.32.11       IN PTR      ns.google.com.
                     216.239.32.15       IN PTR      time1.google.com.
                     216.239.33.12       IN PTR      dns1.google.com.
                     216.239.33.20       IN PTR      esc-out.google.com.
                     216.239.33.22       IN PTR      transfer.google.com.
                      216.239.33.5       IN PTR      proxy.google.com.
                     216.239.34.10       IN PTR      ns2.google.com.
                     216.239.34.15       IN PTR      time2.google.com.
Hostmap ------------------------------------------
                    ns1.google.com 216.239.32.10
                     ns.google.com 216.239.32.11
                  time1.google.com 216.239.32.15
                  proxy.google.com 216.239.33.5
                   dns1.google.com 216.239.33.12
                esc-out.google.com 216.239.33.20
               transfer.google.com 216.239.33.22
                    ns2.google.com 216.239.34.10
                  time2.google.com 216.239.34.15
Domains ------------------------------------------
                        google.com 9
Networks -----------------------------------------
                                   216.239.32.x
                                   216.239.33.x
                                   216.239.34.x
03:24:29 patator    INFO - Hits/Done/Skip/Fail/Size: 9/872/0/0/4352, Avg: 115 r/s, Time: 0h 0m 7s
03:24:29 patator    INFO - To resume execution, pass --resume 91,75,93,73,84,95,94,95,83,89
  • ZIP : Crack a password-protected ZIP file (older pkzip encryption used not to be supported in JtR)
$ unzip_pass zipfile=challenge1.zip password=FILE0 0=rockyou.dic -x ignore:code!=0
10:54:29 patator    INFO - Starting Patator v0.5 (http://code.google.com/p/patator/) at 2012-06-29 10:54:29 PMT
10:54:29 patator    INFO -
10:54:29 patator    INFO - code  size | candidate                          |   num | mesg
10:54:29 patator    INFO - ----------------------------------------------------------------------
10:54:30 patator    INFO - 0     82   | love                               |   387 | 0 [82] No errors detected in compressed data of challenge1.zip.
^C
10:54:31 patator    INFO - Hits/Done/Skip/Fail/Size: 1/1589/0/0/5000, Avg: 699 r/s, Time: 0h 0m 2s
10:54:31 patator    INFO - To resume execution, pass --resume 166,164,165,166,155,158,148,158,155,154

PyInstaller

Bundling on Windows 5.2.3790 x86

Install python-2.7.9.msi from Python. Install pywin32-219.win32-py2.7.exe from PyWin32. Install vcredist_x86.exe from Microsoft. Install Git-1.9.5.exe from Git (and select "Use Git from Windows Command Prompt" during install). Add c:\Python27;c:\Python27\Scripts to your PATH.

pip install pycrypto pyopenssl
pip install impacket
pip install paramiko
pip install IPy
pip install dnspython
pip install pysnmp

cd c:\
git clone https://github.com/lanjelot/patator
git clone https://github.com/pyinstaller/pyinstaller
cd pyinstaller
git checkout a2b0617251ebe70412f6e3573f00a49ce08b7b32 # fixes this issue: https://groups.google.com/forum/#!topic/pyinstaller/6xD75_w4F-c
python pyinstaller.py --clean --onefile c:\patator\patator.py
patator\dist\patator.exe -h

The resulting stand-alone patator.exe executable was confirmed to run successfully on Windows 2003 (5.2.3790), Windows 7 (6.1.7600), Windows 2008 R2 SP1 (6.1.7601) and Windows 2012 R2 (6.3.9600), and is likely to work fine on other Windows versions.

Refer to #50 for more info.

patator's People

Contributors

asolino avatar cbastienbaron avatar cclauss avatar fvcr avatar g0tmi1k avatar haxxinen avatar hypn0s avatar lanjelot avatar laxa avatar mrtchuss avatar szlam avatar valdikss avatar zamanry avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

patator's Issues

Dont't work ignore action with SSH bruting.

I'm try to ignore all fail messages contains 'Unable to connect' using fgrep condition, but nothing happens...

./patator.py ssh_login host=192.168.0.1 user=COMBO00 password=COMBO01 0=/root/Desktop/patator-master/wordList.txt -x free=host:code=0 -x ignore:mesg='Authentication failed.' -x ignore:fgrep='Unable to connect to' -l /root/Desktop/patator-master/logs
Directory '/root/Desktop/patator-master/logs' is not empty, do you want to wipe it ? [Y/n]: y
19:38:12 patator    INFO - Starting Patator v0.7-beta (https://github.com/lanjelot/patator) at 2015-07-21 19:38 UTC
19:38:12 patator    INFO -                                                                              
19:38:12 patator    INFO - code  size    time | candidate                          |   num | mesg
19:38:12 patator    INFO - -----------------------------------------------------------------------------
19:38:13 patator    FAIL - xxx   96     1.034 | n/a:admin                          |     1 | <class 'paramiko.SSHException'> Unable to connect to 192.168.0.1: [Errno 111] Connection refused
19:38:13 patator    FAIL - xxx   96     1.030 | n/a:                               |     2 | <class 'paramiko.SSHException'> Unable to connect to 192.168.0.1: [Errno 111] Connection refused
19:38:13 patator    FAIL - xxx   96     1.036 | l2:l2                              |     3 | <class 'paramiko.SSHException'> Unable to connect to 192.168.0.1: [Errno 111] Connection refused

Crash in before_egrep functionality of http_fuzz module

When using the before_egrep option, patator crashes if the specified regex is not found, because "group()" is called on the result of the regex match without checking whether the result is None.
Just inserting an if-statement at this place was not sufficient to solve the problem.

Having a specific option for the result table only

Hello there,

It seems that you added CSV and XML as an ouput format, but it is bound to the global log option -l.
For those like me that usually don't care that much about logging every request/response, could it be possible for you to add a specific option to output only the result table (with the different formats available) ?

Thank you.
Cheers.

Add in readme info about all-in-one windows compilation

If I install dependencies listed in patator.py and compile with information from README.md, I still need to install python and all dependencies to use exe file.
Whats the matter compile it, if it does not contains all dependencies?

Set diferent port on http_fuzz (other than 80)

How do I set the port to a different port, other than the 80? my Mikrotik runs in another port (the web interface I mean, I guess I could change it, but just asking, is there such a option?

mysql-python undermaintained.

Wanted to test mysql_login against my server with patator (on osx.) soo...

$ pip install mysql-python
Collecting mysql-python
  Using cached MySQL-python-1.2.5.zip
    Complete output from command python setup.py egg_info:
    sh: mysql_config: command not found
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/private/tmp/pip-build-9MBN5W/mysql-python/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "setup_posix.py", line 25, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/tmp/pip-build-9MBN5W/mysql-python

which lead me to farcepest/MySQLdb1#98. Maybe we could change the connection module to https://pypi.python.org/pypi/mysqlclient ?

Any plans to support ipv6? (I think it doesn't currently)

There are not many password attack tools supporting ipv6 currently - which leaves very limited options on a pentest in a v6 network.

I got Hydra working with ssh and ipv6 a while back, but even that doesn't seem to work any more (in 8.5 I can't get this working any more).

I.e. I want to be able to guess credentials for something like ssh benw@fe80::7b95:bca6:7457:d9ce%eth0

Any thoughts on how much work this would be?

http_fuzz + add brute multipart/form-data authentication

Hi,
Suggestions for future versions.
Please add brute "multipart/form-data" support to this script.
Usual method=POST sends enctype="application/x-www-form-urlencoded"
Encountered form with method=POST sends enctype="multipart/form-data"
Example form:

form enctype="multipart/form-data" method="post" action="/login.cgi">
input type="text" name="user" />
input type="password" name="pass" />
input type="submit" value="Login" />
/form>

work request:=========================
POST /login.cgi HTTP/1.1
Host: 127.0.0.1
Content-Type: multipart/form-data; boundary=123
Content-Length: 142

--123
Content-Disposition: form-data; name="user"

root
--123
Content-Disposition: form-data; name="pass"

rootpass
--123--
work request:=========================

response 200 Ok - if not valid pair user/pass
response 302 Found - if valid pair user/pass

I think in patator syntax make as simple POST with an additional option, conditionally "--multipart":

http_fuzz url=https://127.0.0.1/login.cgi method=POST --multipart body='user=root&pass=FILE0' ...

Patator break with updated pip

Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 761, in process_logs
pname, action, args = pipe.recv()
EOFError
Process Consumer-4:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-6:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-5:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
Process Consumer-7:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-8:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-9:
Traceback (most recent call last):
File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(_self._args, *_self._kwargs)
File "patator.py", line 1745, in consume
logger.debug('product: %s' % prod)
File "patator.py", line 663, in debug
self.send('debug', msg)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
ERROR:root:[Errno 32] Broken pipe
Traceback (most recent call last):
File "patator.py", line 1489, in fire
self.monitor_progress()
File "patator.py", line 1819, in monitor_progress
self.report_progress()
File "patator.py", line 1851, in report_progress
logger.result('fail', resp, current, offset)
File "patator.py", line 648, in result
self.send('result', *args)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Traceback (most recent call last):
File "patator.py", line 4453, in
powder.fire()
File "patator.py", line 1501, in fire
self.report_progress()
File "patator.py", line 1851, in report_progress
logger.result('fail', resp, current, offset)
File "patator.py", line 648, in result
self.send('result', *args)
File "patator.py", line 639, in send
self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe

.txt files

Hi,

Which directory is logins.txt and passwords.txt?

Whenever I get an error 'IOError: [Errno 2] No such file or directory:' logins.txt '

And as if I put a full path

IOError: [Errno 2] No such file or directory: /usr/bin/passwords.txt

Thank you.

can you replace the exception

can you replace the exception
"<class 'paramiko.ssh_exception.SSHException'> Unable to connect to 127.0.0.1: [Errno 10061] No connection could be made because the target machine actively refused it"
with pretty massage

and thank you for this terrific tool 👍

RDP Support

Please add RDP support to this script. We definitely need a better alternative to Ncrack which is still Alpha based software.

Globbing support for the -x ignore:code http switch

Hello,

As we sometimes need to ignore a lot of HTTP response code, would it be possible to have the ignore:code option support a globbing parameter, like for instance a ignore:code=40* to ignore all 40x codes ?

I don't know if it is relevant for all modules supporting the code directive.

Thank you.

Bug in handling select() function under Windows

OS Windows 7, Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)],

C:\Python27\python.exe C:/Users/StupidUser/PycharmProjects/Nagibator/patator.py dummy_test data=RANGE0 0=hex:0x00-0xffff
02:50:21 patator    INFO - Starting Patator v0.6 (http://code.google.com/p/patator/) at 2015-03-03 02:50 ���������� ����� (����)
Traceback (most recent call last):
  File "C:\Python27\lib\logging\__init__.py", line 859, in emit
    msg = self.format(record)
  File "C:\Python27\lib\logging\__init__.py", line 732, in format
    return fmt.format(record)
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 641, in format
    return logging.Formatter.format(self, record)
  File "C:\Python27\lib\logging\__init__.py", line 471, in format
    record.message = record.getMessage()
  File "C:\Python27\lib\logging\__init__.py", line 335, in getMessage
    msg = msg % self.args
TypeError: not all arguments converted during string formatting
Logged from file patator.py, line 1674
02:50:21 patator    INFO -                                                                              
02:50:21 patator    FAIL - (10038, '\xd1\xe4\xe5\xeb\xe0\xed\xe0 \xef\xee\xef\xfb\xf2\xea\xe0 \xe2\xfb\xef\xee\xeb\xed\xe8\xf2\xfc \xee\xef\xe5\xf0\xe0\xf6\xe8\xfe \xed\xe0 \xee\xe1\xfa\xe5\xea\xf2\xe5,')
Traceback (most recent call last):
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 1321, in fire
    self.monitor_progress()
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 1618, in monitor_progress
    self.monitor_interaction()
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 1675, in monitor_interaction
    i, _, _ = select([stdin], [], [], .1)
error: (10038, '\xd1\xe4\xe5\xeb\xe0\xed\xe0 \xef\xee\xef\xfb\xf2\xea\xe0 \xe2\xfb\xef\xee\xeb\xed\xe8\xf2\xfc \xee\xef\xe5\xf0\xe0\xf6\xe8\xfe \xed\xe0 \xee\xe1\xfa\xe5\xea\xf2\xe5,')
02:50:21 patator    INFO - code  size   time | candidate                          |   num | mesg
02:50:21 patator    INFO - -----------------------------------------------------------------------------
02:50:21 patator    INFO - Hits/Done/Skip/Fail/Size: 0/0/0/0/65536, Avg: 0 r/s, Time: 0h 0m 0s
02:50:21 patator    INFO - To resume execution, pass --resume 0,0,0,0,0,0,0,0,0,0

Process finished with exit code 0

In current version of patator bug is in 1736 line.
i, _, _ = select([stdin], [], [], .1)

From python docs:

Note: File objects on Windows are not acceptable, but sockets are. On Windows, the underlying select() function is provided by the WinSock library, and does not handle file descriptors that don’t originate from WinSock.

Some bug arising from features of the windows command line

OS Windows 7, Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)],
Patator v 0.6, but in new patator issue was reproduced, Exception throws:

C:\Python27\python.exe "C:\Program Files\JetBrains\PyCharm Community Edition 4.0.3\helpers\pydev\pydevd.py" --multiproc --client 127.0.0.1 --port 52935 --file C:/Users/DD/PycharmProjects/Nagibator/patator.py http_fuzz url=http://10.0.0.1/phpmyadmin/index.php method=POST follow=1 accept_cookie=1 body='pma_username=root&pma_password=FILE0&server=1&lang=en' 0=passwords.txt -x ignore:fgrep='Cannot log in to the MySQL server'
pydev debugger: process 4416 is connecting

Connected to pydev debugger (build 139.1001)
Traceback (most recent call last):
  File "C:\Program Files\JetBrains\PyCharm Community Edition 4.0.3\helpers\pydev\pydevd.py", line 2222, in <module>
    globals = debugger.run(setup['file'], None, None)
  File "C:\Program Files\JetBrains\PyCharm Community Edition 4.0.3\helpers\pydev\pydevd.py", line 1648, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 4097, in <module>
    powder = ctrl(module, [name] + argv[1:])
  File "C:/Users/DD/PycharmProjects/Nagibator/patator.py", line 1186, in __init__
    for k, v in self.expand_key(arg):
ValueError: need more than 1 value to unpack

I run pataror under debugger and found some interesting feature:

argv = ['http_fuzz', 'url=http://10.0.0.1/phpmyadmin/index.php', 'method=POST', 'follow=1', 'accept_cookie=1', "body='pma_username=root&pma_password=FILE0&server=1&lang=en'", '0=passwords.txt', '-x', "ignore:fgrep='Cannot", 'log', 'in', 'to', 'the', 'MySQL', "server'"] 

Windows console doesn't understand that ignore:fgrep='Cannot log in to the MySQL server' is a single element.
But problem may be solved if instad of ' using ": ignore:fgrep="Cannot log in to the MySQL server"

Should i close issue, or it will be fixed for compatibility?

PicklingError: Can't pickle <function <lambda>

OS Windows 7, Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)],
Patator was started with next params: ftp_login host=NET0 user=anonymous password=[email protected] 0=192.168.0.1/250

And give that:

C:\Python27\python.exe C:/Users/StupidUser/PycharmProjects/Tup/patator.py ftp_login host=NET0 user=anonymous [email protected] 0=192.168.0.1/250
Traceback (most recent call last):
  File "C:/Users/DD/PycharmProjects/Tup/patator.py", line 638, in <module>
    manager.start(lambda: signal.signal(signal.SIGINT, signal.SIG_IGN))
  File "C:\Python27\lib\multiprocessing\managers.py", line 524, in start
    self._process.start()
  File "C:\Python27\lib\multiprocessing\process.py", line 130, in start
    self._popen = Popen(self)
  File "C:\Python27\lib\multiprocessing\forking.py", line 277, in __init__
    dump(process_obj, to_child, HIGHEST_PROTOCOL)
  File "C:\Python27\lib\multiprocessing\forking.py", line 199, in dump
    ForkingPickler(file, protocol).dump(obj)
  File "C:\Python27\lib\pickle.py", line 224, in dump
    self.save(obj)
  File "C:\Python27\lib\pickle.py", line 331, in save
    self.save_reduce(obj=obj, *rv)
  File "C:\Python27\lib\pickle.py", line 419, in save_reduce
    save(state)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 649, in save_dict
    self._batch_setitems(obj.iteritems())
  File "C:\Python27\lib\pickle.py", line 681, in _batch_setitems
    save(v)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 562, in save_tuple
    save(element)
  File "C:\Python27\lib\pickle.py", line 286, in save
    f(self, obj) # Call unbound method with explicit self
  File "C:\Python27\lib\pickle.py", line 748, in save_global
    (obj, module, name))
pickle.PicklingError: Can't pickle <function <lambda> at 0x01CD3270>: it's not found as __main__.<lambda>

Process finished with exit code 1

Its known bug with trying to pickle lambda.

Bug in the 638 line:
manager.start(lambda: signal.signal(signal.SIGINT, signal.SIG_IGN))
But i can't understand... Is manager.start(lambda: signal.signal(signal.SIGINT, signal.SIG_IGN)) not equal manager.start(signal.signal(signal.SIGINT, signal.SIG_IGN))?? Is it useful hack?))

Memory Consumption

Not sure if this is a true issue, but this thing seems to be hogging more and more memory the longer it runs. On an ubuntu 14 LTS system I can sit and watch the memory climb.

Anyone else have this issue or know of a fix?

Will it max out on how much memory it wants or will it go until my system crashes? only time will tell I guess.

Issue is occurring with ssh brute force and a 13GB word list.

timeout error & debug func at http_fuzz

Regular getting this error.
Traceback (most recent call last): File "patator.py", line 3485, in debug_func def debug_func(t, s): File "patator.py", line 1195, in raise_timeout raise TimeoutError('timed out') __main__.TimeoutError: timed out
Last times with next setting
python patator.py http_fuzz method=POST url="https://somesite.com/wp-login.php" body="log=admin&pwd=FILE0&wp-submit=Login" --threads=15 -x ignore:code=200 -x ignore,reset,retry:code=503 -x ignore,reset,retry:code=502 accept_cookie=1 -x quit:code=200,fgrep!='Forget Password' follow=1 header='Cookie: wlsid=ce5a9a166b1f312d9b4751d5bffa9cf9' --rate-limit=0 --timeout=15 --max-retries=-1 -l /root/Desktop/patator/Results/ 0=/usr/share/wordlists/seclists/Passwords/10_million_password_list_top_100000.txt

this error doesn't crash script brute process, but appear every 5-10 minutes.

save output

Hello
Thank you for your script
But we have a big problem
When you perform a brute-force command
./patator.py mysql_login host=FILE0 user=FILE1 password=FILE2 0=ip.txt 1=user.txt 2=pass.txt -x ignore:fgrep='Access denied for user' -L login.txt -t 50

The script save all the results in a file RESULTS.csv

20:27:16,INFO,1130,67,0.138,23.89.169.181:root:amp1,3890,Host '158.0.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1045,73,0.141,23.105.52.82:astedb:root,3495,Access denied for user 'asteriskdb'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1130,67,0.132,23.104.253.183:admin:a1,4046,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1045,71,0.151,23.105.52.3:ragnarok:amp1,3047,Access denied for user 'ragnarok'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1130,67,0.132,23.104.253.182:aste:amp111,4100,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.132,23.104.253.212:ast:root,4131,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1045,68,0.141,23.105.52.233:admin:a1,3536,Access denied for user 'admin'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1045,68,0.141,23.105.52.233:admin:root,3537,Access denied for user 'admin'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1130,67,0.132,23.104.253.59:root:root,3939,Host '178.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.136,23.104.253.59:admin:Bobo1337,3940,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1045,73,0.140,23.105.52.33:astdb:amp111,3194,Access denied for user 'asteriskdb'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1130,67,0.132,23.104.253.182:ragnarok:Bobo1337,4096,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1045,67,0.140,23.105.52.40:root:Bobo1337,3097,Access denied for user 'root'@'158.69.33.139' (using password: YES)
20:27:16,INFO,1130,67,0.132,23.104.253.81:admin:Bobo1337,4150,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.132,23.104.253.64:admin:a11,4181,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.132,23.104.253.121:ragnarok:Bobo1337,3586,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.26,23.104.253.121:ragnarok:ampt1,3587,Host '158.69.33.139' is not allowed to connect to this MySQL server
20:27:16,INFO,1130,67,0.132,23.104.253.190:asteb:amp111,3989,Host '158.69.33.139' is not allowed to connect to this MySQL server

I want to save the results of a successful entry only
IP USERNAME PASSWORD

Thank you in waiting for a reply

PEP8

You might run

$ flake8 patator.py

to fix some PEP8 problems

'exceptions.AttributeError'> 'module' object has no attribute 'PRIMARY_PORT' in http_fuzz module

When i run patator with these arguments it's giving me the error message displayed in the title of this post in the "message" part of the printed text in my terminal.

patator.py http_fuzz url=http://example.org/admin/index.php method=POST body="log=administrator&pwd=FILE0&wp-submit=Log+In&redirect_to=http%3A%2F%2Fexample.org%2Fwp-admin%2F&testcookie=1" 0=C:\passwords.txt

Don't know what's up with that, any light you could shed on the issue would be greatly appreciated.

Ability to hide exceptions

Hello @lanjelot,

Could it be possible to have a specific option (or better, make it default) to hide requests raising exceptions (for whatever reason, due a lib bug or just an expected condition) such as the following
"<class 'pycurl.error'> (6, 'Could not resolve host: http')":

$ patator http_fuzz url=http://10.0.0.1:8080
20:46:51 patator    INFO - Starting Patator v0.5 (http://code.google.com/p/patator/) at 2016-06-20 20:46 BST
20:46:51 patator    INFO - 
20:46:51 patator    INFO - code size:clen     | candidate                        |   num | mesg
20:46:51 patator    INFO - ----------------------------------------------------------------------
20:47:00 patator    FAIL - xxx  58:-1         |                                  |     1 | <class 'pycurl.error'> (6, 'Could not resolve host: http')
20:47:00 patator    INFO - Hits/Done/Skip/Fail/Size: 0/1/0/1/1, Avg: 0 r/s, Time: 0h 0m 9s

For large engagements this constitutes a huge spam in the result window.

Thanks !

patator issue Kali 2.0

hi i had this issue with patator on kali 2.0

Traceback (most recent call last):
File "/usr/bin/patator", line 3755, in
powder = ctrl(module, [name] + argv[1:])
File "/usr/bin/patator", line 1032, in init
for k, v in self.expand_key(arg):
ValueError: need more than 1 value to unpack

Request a new optional

A new method rdplogin. When users and hosts are already known, only need to brute force the password.

Sorry for my English

patator phpmyadmin brute force

Hello , i tested patator on localhost and it was ok, (wamp server phpmyadmin).

but now i test it on online webserver and it respond http ok for every password!.

where is my problem?

22:00:58 patator INFO - 200 686:0 0.139 | 111111 | 21 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 686:0 0.129 | iloveu | 22 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 686:0 0.124 | 000000 | 23 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 686:0 0.119 | monkey | 14 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 688:0 0.153 | lovely | 15 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 688:0 0.147 | sunshine | 26 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 688:0 0.148 | michael | 18 | HTTP/1.1 200 OK
22:00:58 patator INFO - 200 686:0 0.133 | qwerty | 20 | HTTP/1.1 200 OK


post method is like this:
pma_username=root&pma_password=root&server=1&target=index.php&token=47280f4e9dac7db66d3864bd6f61f4c0

Adding proxy to SSH_login module

There's some useful addition that allow to use proxy in SSH login process.

try:
  import socks #importing SocksiPy library that allow use proxy (http://socksipy.sourceforge.net)
except ImportError:
  notfound.append('socksipy')

#Modified SSH_login class
class SSH_login:
  '''Brute-force SSH'''

  usage_hints = (
    """%prog host=10.0.0.1 user=root password=FILE0 0=passwords.txt -x ignore:mesg='Authentication failed.'""",
    )

  available_options = (
    ('host', 'target host'),
    ('port', 'target port [22]'),
    ('user', 'usernames to test'),
    ('password', 'passwords to test'),
    ('auth_type', 'type of password authentication to use [password|keyboard-interactive|auto]'),
    ('keyfile', 'file with RSA, DSA or ECDSA private key to test'),
    #Proxy options
    ('proxy_type', 'type of the proxy server [SOCKS4|SOCKS5|HTTP]'),
    ('proxy_addr', 'IP address or DNS name of the proxy server'),
    ('proxy_port', 'port of the proxy server [1080 for socks|8080 for http]'),
    ('proxy_rdns', 'boolean flag than modifies the behavior regarding DNS resolving (if True, DNS resolving will be \
    preformed remotely (Socks4a, Socks5, HTTP) [True]'),
    ('proxy_username', 'for Socks5 servers this allows simple username / password authentication, for Socks4 servers, \
    this parameter will be sent as the userid, ignored if an HTTP server is being used'),
    ('proxy_password', 'parameter is valid only for Socks5 servers and specifies the respective password for the \
    username provided')
    )
  available_options += TCP_Cache.available_options

  Response = Response_Base

  # connect method take some addition attributes for proxying
  def connect(self, host, port, user, proxy_type=None, proxy_addr=None, proxy_port=None, proxy_rdns=True,
              proxy_username=None, proxy_password=None):

    # Replace paramiko socket with socksipy object if proxy is defined.
    if proxy_type and proxy_addr is not None:
        socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS4 if proxy_type.upper() == 'SOCKS4' else socks.PROXY_TYPE_SOCKS5
                              if proxy_type.upper() == 'SOCKS5' else socks.PROXY_TYPE_HTTP, proxy_addr, int(proxy_port),
                              proxy_rdns, proxy_username, proxy_password)
        paramiko.client.socket.socket = socks.socksocket

    fp = paramiko.Transport('%s:%s' % (host, int(port)))
    fp.start_client()

    return TCP_Connection(fp, fp.remote_version)

  def execute(self, host, port='22', user=None, password=None, auth_type='password', keyfile=None, persistent='1',
              **proxy_params): #Proxy parameters sent thorough execute() method in **kwargs

    with Timing() as timing:
      fp, banner = self.bind(host, port, user, **proxy_params)
    try:
      if user is not None:

        if keyfile is not None:
          key = load_keyfile(keyfile)

        with Timing() as timing:

          if keyfile is not None:
            fp.auth_publickey(user, key)

          elif password is not None:
            if auth_type == 'password':
              fp.auth_password(user, password, fallback=False)

            elif auth_type == 'keyboard-interactive':
              fp.auth_interactive(user, lambda a,b,c: [password] if len(c) == 1 else [])

            elif auth_type == 'auto':
              fp.auth_password(user, password, fallback=True)

            else:
              raise NotImplementedError("Incorrect auth_type '%s'" % auth_type)

      logger.debug('No error')
      code, mesg = '0', banner

      self.reset()

    except paramiko.AuthenticationException as e:
      logger.debug('AuthenticationException: %s' % e)
      code, mesg = '1', str(e)

    if persistent == '0':
      self.reset()

    return self.Response(code, mesg, timing)

Building standalone exe for WIndows

Followed the short guide in Readme for making an *exe for windows machines. I met no errors while compiling however the compiled exe doesnt work.

When I am trying to do patator.exe -h or patator.exe ssh_login the console prints nothing. No errors, no crashes.

I tried to compile on 2 machines: Windows 8 and Windows XP, both same result.
Any ideas what to do now?

Thanks.

Globbing for file inputs

Hey @lanjelot,

It would be cool to be able to provided globbed filename for inputs, especially for credentials bruteforcing.
For instance

$ python patator http_fuzz url=http://yolo.swag/ user_pass=yolo:FILE0 0=/my/path/to/a/dir/containg/lot/of/wordlist_*.txt

Cheers.

A freerdp version check should be included

In a system where the version of FreeRDP 1.0.2 or previous, patator will return the following error:

"protocol security negotiation failure". This is an error coming from FreeRDP because of the invalid options used.

Of course this is not Patator's fault. But by adding an extra check for the version of freerdp many people will know what they have to do to fix it the error.

Older FreeRDP version use this structure for accessing desktops:
Username with -u, password with -p and so on and so forth.
While, patator supposing the FreeRDP is the latest, it uses the /:v , /:u and /:p command structure.

An idea might be to provide support for even the old structure. Otherwise, an version check of the freerdp might be useful for the feature users that will encounter this error.

RuntimeError (Compat branch)

OS Windows 7, Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)],
i'm tested 'compat' branch. Problem with lambda function is resolved, but some exception throws:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Python27\lib\multiprocessing\forking.py", line 380, in main
    prepare(preparation_data)
  File "C:\Python27\lib\multiprocessing\forking.py", line 495, in prepare
    '__parents_main__', file, path_name, etc
  File "C:\Users\DD\PycharmProjects\Patator\patator.py", line 645, in <module>
    manager.start()
  File "C:\Python27\lib\multiprocessing\managers.py", line 524, in start
    self._process.start()
  File "C:\Python27\lib\multiprocessing\process.py", line 130, in start
    self._popen = Popen(self)
  File "C:\Python27\lib\multiprocessing\forking.py", line 258, in __init__
    cmd = get_command_line() + [rhandle]
  File "C:\Python27\lib\multiprocessing\forking.py", line 358, in get_command_line
    is not going to be frozen to produce a Windows executable.''')
RuntimeError: 
            Attempt to start a new process before the current process
            has finished its bootstrapping phase.

            This probably means that you are on Windows and you have
            forgotten to use the proper idiom in the main module:

                if __name__ == '__main__':
                    freeze_support()
                    ...

            The "freeze_support()" line can be omitted if the program
            is not going to be frozen to produce a Windows executable.
Traceback (most recent call last):
  File "C:/Users/DD/PycharmProjects/Patator/patator.py", line 645, in <module>
    manager.start()
  File "C:\Python27\lib\multiprocessing\managers.py", line 528, in start
    self._address = reader.recv()
EOFError

I can't understand yet why it occurs. Using freeze_support() in main thread doesn't resolve this poblem.

Timeout rising bug

If timeout expires while executed except block of consume method, consumer process crashed.

Process Consumer-76:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1788, in consume
    sleep(try_count * .1)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1132, in raise_timeout
    raise TimeoutError('timed out')
TimeoutError: timed out

Problem with pop_login module

Hi

I meet next problem with patator in Kali 2.0. patator version 0.5-0kali1

# proxychains patator pop_login host=172.16.0.10 [email protected] password=FILE0 0=/usr/share/ncrack/default.pwd -x ignore:code=-ERR
ProxyChains-3.1 (http://proxychains.sf.net)
|DNS-response|: kali does not exist
09:21:43 patator    INFO - Starting Patator v0.5 (http://code.google.com/p/patator/) at 2015-09-24 09:21 EEST
09:21:43 patator    INFO - 
09:21:43 patator    INFO - code  size | candidate                          |   num | mesg
09:21:43 patator    INFO - ----------------------------------------------------------------------
|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-12
7.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<>
<>-172.16.0.10:110-|S-chain|-<>-127.0.0.1:9050-<><>-172.16.0.10:110-<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
<><>-OK
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-3:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-5:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-6:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out
Exception in thread Thread-7:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-8:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

Exception in thread Thread-9:
Traceback (most recent call last):
  File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.7/threading.py", line 763, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/bin/patator", line 1450, in consume
    module.reset()
  File "/usr/bin/patator", line 1743, in reset
    c.close()
  File "/usr/bin/patator", line 2351, in close
    self.fp.quit()
  File "/usr/lib/python2.7/poplib.py", line 259, in quit
    resp = self._shortcmd('QUIT')
  File "/usr/lib/python2.7/poplib.py", line 160, in _shortcmd
    return self._getresp()
  File "/usr/lib/python2.7/poplib.py", line 132, in _getresp
    resp, o = self._getline()
  File "/usr/lib/python2.7/poplib.py", line 112, in _getline
    line = self.file.readline(_MAXLINE + 1)
  File "/usr/lib/python2.7/socket.py", line 476, in readline
    data = self._sock.recv(self._rbufsize)
timeout: timed out

09:24:11 patator    INFO - Hits/Done/Skip/Fail/Size: 0/190/0/0/5083, Avg: 1 r/s, Time: 0h 2m 27s
Exception socket.timeout: timeout('timed out',) in <bound method POP_login.__del__ of <__main__.POP_login instance at 0x7fc5d95b1050>> ignored

Quiet Option

I'm trying to use Patator in a integration system.
The problem is that it doesn't wait enter key to print the Progress into the console output, it makes many many many useless verbose.
I couldn't find quiet option I tried to change some code by my side but it leads into anempty report or an endless script. (because I don't get all the program of course).
Is it possible to produce a quiet global options so you just get the reports at the end ?

maybe it's already available but I couldn't see it.
Thanks.

EDIT :
Found how to do it. It's a bit dirty but that's what I changed :
Patator.py :
line 1328 add > opt_grp.add_option('-q', '--quiet', dest='quiet', type='int', default=0, metavar='N', help='No progress report')
line 1373 add > self.quiet = opts.quiet
line 1998 add > if self.quiet == 0:
then include the logger.info inside the if.

start patator and add option : -q 1 for example.

Does not see impacket on Archlinux

localhost ~ smb_login --help       
ERROR: impacket svn#765 (http://oss.coresecurity.com/projects/impacket.html) is required to run smb_login.
Please read the README inside for more information.
localhost ~ pacman -Ss impacket
community/impacket 0.9.14-3 [installed]
    Collection of classes for working with network protocols
localhost ~ pacman -Qll impacket
impacket /usr/
impacket /usr/bin/
impacket /usr/bin/atexec.py
impacket /usr/bin/esentutl.py
impacket /usr/bin/goldenPac.py
impacket /usr/bin/ifmap.py
impacket /usr/bin/karmaSMB.py
impacket /usr/bin/lookupsid.py
impacket /usr/bin/loopchain.py
impacket /usr/bin/mssqlclient.py
impacket /usr/bin/mssqlinstance.py
impacket /usr/bin/netview.py
impacket /usr/bin/nmapAnswerMachine.py
impacket /usr/bin/ntfs-read.py
impacket /usr/bin/opdump.py
impacket /usr/bin/os_ident.py
impacket /usr/bin/ping.py
impacket /usr/bin/ping6.py
impacket /usr/bin/psexec.py
impacket /usr/bin/raiseChild.py
impacket /usr/bin/rdp_check.py
impacket /usr/bin/registry-read.py
impacket /usr/bin/rpcdump.py
impacket /usr/bin/samrdump.py
impacket /usr/bin/secretsdump.py
impacket /usr/bin/services.py
impacket /usr/bin/smbclient.py
impacket /usr/bin/smbexec.py
impacket /usr/bin/smbrelayx.py
impacket /usr/bin/smbserver.py
impacket /usr/bin/smbtorture.py
impacket /usr/bin/sniff.py
impacket /usr/bin/sniffer.py
impacket /usr/bin/split.py
impacket /usr/bin/tracer.py
impacket /usr/bin/uncrc32.py
impacket /usr/bin/wmiexec.py
impacket /usr/bin/wmipersist.py
impacket /usr/bin/wmiquery.py
impacket /usr/lib/
impacket /usr/lib/python2.7/
impacket /usr/lib/python2.7/site-packages/
impacket /usr/lib/python2.7/site-packages/impacket-0.9.14-py2.7.egg-info
impacket /usr/lib/python2.7/site-packages/impacket/
impacket /usr/lib/python2.7/site-packages/impacket/Dot11Crypto.py
impacket /usr/lib/python2.7/site-packages/impacket/Dot11Crypto.pyc
impacket /usr/lib/python2.7/site-packages/impacket/Dot11Crypto.pyo
impacket /usr/lib/python2.7/site-packages/impacket/Dot11KeyManager.py
impacket /usr/lib/python2.7/site-packages/impacket/Dot11KeyManager.pyc
impacket /usr/lib/python2.7/site-packages/impacket/Dot11KeyManager.pyo
impacket /usr/lib/python2.7/site-packages/impacket/ICMP6.py
impacket /usr/lib/python2.7/site-packages/impacket/ICMP6.pyc
impacket /usr/lib/python2.7/site-packages/impacket/ICMP6.pyo
impacket /usr/lib/python2.7/site-packages/impacket/IP6.py
impacket /usr/lib/python2.7/site-packages/impacket/IP6.pyc
impacket /usr/lib/python2.7/site-packages/impacket/IP6.pyo
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Address.py
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Address.pyc
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Address.pyo
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Extension_Headers.py
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Extension_Headers.pyc
impacket /usr/lib/python2.7/site-packages/impacket/IP6_Extension_Headers.pyo
impacket /usr/lib/python2.7/site-packages/impacket/ImpactDecoder.py
impacket /usr/lib/python2.7/site-packages/impacket/ImpactDecoder.pyc
impacket /usr/lib/python2.7/site-packages/impacket/ImpactDecoder.pyo
impacket /usr/lib/python2.7/site-packages/impacket/ImpactPacket.py
impacket /usr/lib/python2.7/site-packages/impacket/ImpactPacket.pyc
impacket /usr/lib/python2.7/site-packages/impacket/ImpactPacket.pyo
impacket /usr/lib/python2.7/site-packages/impacket/NDP.py
impacket /usr/lib/python2.7/site-packages/impacket/NDP.pyc
impacket /usr/lib/python2.7/site-packages/impacket/NDP.pyo
impacket /usr/lib/python2.7/site-packages/impacket/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/cdp.py
impacket /usr/lib/python2.7/site-packages/impacket/cdp.pyc
impacket /usr/lib/python2.7/site-packages/impacket/cdp.pyo
impacket /usr/lib/python2.7/site-packages/impacket/crypto.py
impacket /usr/lib/python2.7/site-packages/impacket/crypto.pyc
impacket /usr/lib/python2.7/site-packages/impacket/crypto.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/atsvc.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/atsvc.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/atsvc.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/comev.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/comev.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/comev.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/oaut.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/oaut.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/oaut.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/scmp.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/scmp.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/scmp.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/vds.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/vds.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/vds.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/wmi.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/wmi.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcom/wmi.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcomrt.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcomrt.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dcomrt.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/drsuapi.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/drsuapi.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/drsuapi.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dtypes.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dtypes.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/dtypes.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/enum.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/enum.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/enum.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/epm.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/epm.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/epm.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsad.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsad.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsad.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsat.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsat.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/lsat.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/mgmt.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/mgmt.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/mgmt.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/ndr.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/ndr.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/ndr.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/nrpc.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/nrpc.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/nrpc.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rpcrt.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rpcrt.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rpcrt.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rrp.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rrp.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/rrp.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/samr.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/samr.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/samr.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/sasec.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/sasec.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/sasec.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/scmr.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/scmr.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/scmr.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/srvs.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/srvs.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/srvs.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/transport.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/transport.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/transport.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/tsch.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/tsch.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/tsch.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/wkst.py
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/wkst.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dcerpc/v5/wkst.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dhcp.py
impacket /usr/lib/python2.7/site-packages/impacket/dhcp.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dhcp.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dns.py
impacket /usr/lib/python2.7/site-packages/impacket/dns.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dns.pyo
impacket /usr/lib/python2.7/site-packages/impacket/dot11.py
impacket /usr/lib/python2.7/site-packages/impacket/dot11.pyc
impacket /usr/lib/python2.7/site-packages/impacket/dot11.pyo
impacket /usr/lib/python2.7/site-packages/impacket/eap.py
impacket /usr/lib/python2.7/site-packages/impacket/eap.pyc
impacket /usr/lib/python2.7/site-packages/impacket/eap.pyo
impacket /usr/lib/python2.7/site-packages/impacket/ese.py
impacket /usr/lib/python2.7/site-packages/impacket/ese.pyc
impacket /usr/lib/python2.7/site-packages/impacket/ese.pyo
impacket /usr/lib/python2.7/site-packages/impacket/examples/
impacket /usr/lib/python2.7/site-packages/impacket/examples/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/examples/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/examples/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/examples/logger.py
impacket /usr/lib/python2.7/site-packages/impacket/examples/logger.pyc
impacket /usr/lib/python2.7/site-packages/impacket/examples/logger.pyo
impacket /usr/lib/python2.7/site-packages/impacket/examples/remcomsvc.py
impacket /usr/lib/python2.7/site-packages/impacket/examples/remcomsvc.pyc
impacket /usr/lib/python2.7/site-packages/impacket/examples/remcomsvc.pyo
impacket /usr/lib/python2.7/site-packages/impacket/examples/serviceinstall.py
impacket /usr/lib/python2.7/site-packages/impacket/examples/serviceinstall.pyc
impacket /usr/lib/python2.7/site-packages/impacket/examples/serviceinstall.pyo
impacket /usr/lib/python2.7/site-packages/impacket/helper.py
impacket /usr/lib/python2.7/site-packages/impacket/helper.pyc
impacket /usr/lib/python2.7/site-packages/impacket/helper.pyo
impacket /usr/lib/python2.7/site-packages/impacket/hresult_errors.py
impacket /usr/lib/python2.7/site-packages/impacket/hresult_errors.pyc
impacket /usr/lib/python2.7/site-packages/impacket/hresult_errors.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/
impacket /usr/lib/python2.7/site-packages/impacket/krb5/__init__.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/__init__.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/__init__.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/asn1.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/asn1.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/asn1.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/ccache.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/ccache.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/ccache.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/constants.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/constants.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/constants.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/crypto.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/crypto.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/crypto.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/gssapi.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/gssapi.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/gssapi.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/kerberosv5.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/kerberosv5.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/kerberosv5.pyo
impacket /usr/lib/python2.7/site-packages/impacket/krb5/types.py
impacket /usr/lib/python2.7/site-packages/impacket/krb5/types.pyc
impacket /usr/lib/python2.7/site-packages/impacket/krb5/types.pyo
impacket /usr/lib/python2.7/site-packages/impacket/nmb.py
impacket /usr/lib/python2.7/site-packages/impacket/nmb.pyc
impacket /usr/lib/python2.7/site-packages/impacket/nmb.pyo
impacket /usr/lib/python2.7/site-packages/impacket/nt_errors.py
impacket /usr/lib/python2.7/site-packages/impacket/nt_errors.pyc
impacket /usr/lib/python2.7/site-packages/impacket/nt_errors.pyo
impacket /usr/lib/python2.7/site-packages/impacket/ntlm.py
impacket /usr/lib/python2.7/site-packages/impacket/ntlm.pyc
impacket /usr/lib/python2.7/site-packages/impacket/ntlm.pyo
impacket /usr/lib/python2.7/site-packages/impacket/pcap_linktypes.py
impacket /usr/lib/python2.7/site-packages/impacket/pcap_linktypes.pyc
impacket /usr/lib/python2.7/site-packages/impacket/pcap_linktypes.pyo
impacket /usr/lib/python2.7/site-packages/impacket/pcapfile.py
impacket /usr/lib/python2.7/site-packages/impacket/pcapfile.pyc
impacket /usr/lib/python2.7/site-packages/impacket/pcapfile.pyo
impacket /usr/lib/python2.7/site-packages/impacket/smb.py
impacket /usr/lib/python2.7/site-packages/impacket/smb.pyc
impacket /usr/lib/python2.7/site-packages/impacket/smb.pyo
impacket /usr/lib/python2.7/site-packages/impacket/smb3.py
impacket /usr/lib/python2.7/site-packages/impacket/smb3.pyc
impacket /usr/lib/python2.7/site-packages/impacket/smb3.pyo
impacket /usr/lib/python2.7/site-packages/impacket/smb3structs.py
impacket /usr/lib/python2.7/site-packages/impacket/smb3structs.pyc
impacket /usr/lib/python2.7/site-packages/impacket/smb3structs.pyo
impacket /usr/lib/python2.7/site-packages/impacket/smbconnection.py
impacket /usr/lib/python2.7/site-packages/impacket/smbconnection.pyc
impacket /usr/lib/python2.7/site-packages/impacket/smbconnection.pyo
impacket /usr/lib/python2.7/site-packages/impacket/smbserver.py
impacket /usr/lib/python2.7/site-packages/impacket/smbserver.pyc
impacket /usr/lib/python2.7/site-packages/impacket/smbserver.pyo
impacket /usr/lib/python2.7/site-packages/impacket/spnego.py
impacket /usr/lib/python2.7/site-packages/impacket/spnego.pyc
impacket /usr/lib/python2.7/site-packages/impacket/spnego.pyo
impacket /usr/lib/python2.7/site-packages/impacket/structure.py
impacket /usr/lib/python2.7/site-packages/impacket/structure.pyc
impacket /usr/lib/python2.7/site-packages/impacket/structure.pyo
impacket /usr/lib/python2.7/site-packages/impacket/system_errors.py
impacket /usr/lib/python2.7/site-packages/impacket/system_errors.pyc
impacket /usr/lib/python2.7/site-packages/impacket/system_errors.pyo
impacket /usr/lib/python2.7/site-packages/impacket/tds.py
impacket /usr/lib/python2.7/site-packages/impacket/tds.pyc
impacket /usr/lib/python2.7/site-packages/impacket/tds.pyo
impacket /usr/lib/python2.7/site-packages/impacket/uuid.py
impacket /usr/lib/python2.7/site-packages/impacket/uuid.pyc
impacket /usr/lib/python2.7/site-packages/impacket/uuid.pyo
impacket /usr/lib/python2.7/site-packages/impacket/version.py
impacket /usr/lib/python2.7/site-packages/impacket/version.pyc
impacket /usr/lib/python2.7/site-packages/impacket/version.pyo
impacket /usr/lib/python2.7/site-packages/impacket/winregistry.py
impacket /usr/lib/python2.7/site-packages/impacket/winregistry.pyc
impacket /usr/lib/python2.7/site-packages/impacket/winregistry.pyo
impacket /usr/lib/python2.7/site-packages/impacket/wps.py
impacket /usr/lib/python2.7/site-packages/impacket/wps.pyc
impacket /usr/lib/python2.7/site-packages/impacket/wps.pyo
impacket /usr/share/
impacket /usr/share/doc/
impacket /usr/share/doc/impacket/
impacket /usr/share/doc/impacket/ChangeLog
impacket /usr/share/doc/impacket/LICENSE
impacket /usr/share/doc/impacket/README.md
impacket /usr/share/doc/impacket/testcases/
impacket /usr/share/doc/impacket/testcases/ImpactPacket/
impacket /usr/share/doc/impacket/testcases/ImpactPacket/__init__.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/runalltestcases.bat
impacket /usr/share/doc/impacket/testcases/ImpactPacket/runalltestcases.sh
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_ICMP6.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_IP6.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_IP6_Address.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_IP6_Extension_Headers.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_TCP.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_TCP_bug_issue7.py
impacket /usr/share/doc/impacket/testcases/ImpactPacket/test_ethernet.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/
impacket /usr/share/doc/impacket/testcases/SMB_RPC/__init__.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/dcetests.cfg
impacket /usr/share/doc/impacket/testcases/SMB_RPC/rundce.sh
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_dcomrt.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_drsuapi.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_epm.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_lsad.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_lsat.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_mgmt.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_ndr.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_nrpc.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_ntlm.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_rpcrt.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_rrp.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_samr.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_scmr.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_smb.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_spnego.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_srvs.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_tsch.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_wkst.py
impacket /usr/share/doc/impacket/testcases/SMB_RPC/test_wmi.py
impacket /usr/share/doc/impacket/testcases/dot11/
impacket /usr/share/doc/impacket/testcases/dot11/runalltestcases.bat
impacket /usr/share/doc/impacket/testcases/dot11/runalltestcases.sh
impacket /usr/share/doc/impacket/testcases/dot11/test_Dot11Base.py
impacket /usr/share/doc/impacket/testcases/dot11/test_Dot11Decoder.py
impacket /usr/share/doc/impacket/testcases/dot11/test_Dot11HierarchicalUpdate.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlACK.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlCFEnd.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlCFEndCFACK.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlCTS.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlPSPoll.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameControlRTS.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameData.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagement.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementAssociationRequest.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementAssociationResponse.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementAuthentication.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementDeauthentication.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementDisassociation.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementProbeRequest.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementProbeResponse.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementReassociationRequest.py
impacket /usr/share/doc/impacket/testcases/dot11/test_FrameManagementReassociationResponse.py
impacket /usr/share/doc/impacket/testcases/dot11/test_RadioTap.py
impacket /usr/share/doc/impacket/testcases/dot11/test_RadioTapDecoder.py
impacket /usr/share/doc/impacket/testcases/dot11/test_WEPDecoder.py
impacket /usr/share/doc/impacket/testcases/dot11/test_WEPEncoder.py
impacket /usr/share/doc/impacket/testcases/dot11/test_WPA.py
impacket /usr/share/doc/impacket/testcases/dot11/test_WPA2.py
impacket /usr/share/doc/impacket/testcases/dot11/test_helper.py
impacket /usr/share/doc/impacket/testcases/dot11/test_wps.py

New action: Bold/Highlight

Currently there are the following actions in Patator: ignore, retry, free & quit.
Could there be a new one called 'bold'?

This could be then used to highlight results, making it easier to locate certain responses.

The result could be in bold/or a different text colour.

Range and Encoding or Grab other variable

I have 3 variable in a form to bruteforce:

  • Username
  • Password (Range0)
  • Encrypted Password (md5(Password) or md5(Range0))

Would like to understand if there is anyway to configure patator to get other variable such that I can allow encoding to Range0 object or grab other from variable.

Thanks.

RANGE letters with numbers and special characters

Range letters support only letters, it it possible to support for any ASCII character code?

password=RANGE0 0=letters:0000-zzzzzz

Process Producer:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "./patator.py", line 1607, in produce
    it = RangeIter(typ, opt)
  File "./patator.py", line 1085, in __init__
    self.size = count(last) - count(first) + 1
  File "./patator.py", line 1078, in count
    z = charset.index(c) + 1
ValueError: '0' is not in list

Some bug while `multiprocessing` module working.

I'm try to run patator with ssh_login host=NET1 user=COMBO00 password=COMBO01 1=so.many.nets.with/mask 0=/root/Desktop/patator-master/wordList_ssh.txt -x free=host:code=0 -x ignore:mesg="Authentication failed." -x free=host:fgrep="Unable to connect to" -l /root/Desktop/patator-master/logs --max-retries=0 -t 10 --allow-ignore-failures -x ignore:fgrep="paramiko.ssh_exception.SSHException" -d parameters.
OS: Linux kali 3.18.0-kali3-amd64 #1 SMP Debian 3.18.6-1~kali2 (2015-03-02) x86_64 GNU/Linux
Throws an exception:

Process LogSvc:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 761, in process_logs
    pname, action, args = pipe.recv()
UnpicklingError: invalid load key, '7'.
Process Consumer-7:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1745, in consume
    logger.debug('product: %s' % prod)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-0:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1745, in consume
    logger.debug('product: %s' % prod)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
Process Consumer-3:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1805, in consume
    self.register_free(payload, actions['free'])
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1482, in register_free
    logger.debug('free_list updated: %s' % self.ns.free_list)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-9:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1745, in consume
    logger.debug('product: %s' % prod)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
    self.send('debug', msg)
Process Consumer-2:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1745, in consume
Process Consumer-8:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1805, in consume
    logger.debug('product: %s' % prod)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
    self.register_free(payload, actions['free'])
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1482, in register_free
    logger.debug('free_list updated: %s' % self.ns.free_list)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-4:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1779, in consume
    logger.debug('caught: %s' % mesg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-5:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1779, in consume
    logger.debug('caught: %s' % mesg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-1:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1779, in consume
    logger.debug('caught: %s' % mesg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Traceback (most recent call last):
  File "/root/pycharm-community-4.5.3/helpers/pydev/pydevd.py", line 2358, in <module>
    globals = debugger.run(setup['file'], None, None, is_module)
  File "/root/pycharm-community-4.5.3/helpers/pydev/pydevd.py", line 1778, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "/root/PycharmProjects/SSHBrute/j4lpmod.py", line 644, in <module>
    powder.fire()
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1504, in fire
    logger.debug('active: %s' % active)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe
Process Consumer-6:
Traceback (most recent call last):
  File "/usr/lib/python2.7/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
    self._target(*self._args, **self._kwargs)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 1779, in consume
    logger.debug('caught: %s' % mesg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 663, in debug
    self.send('debug', msg)
  File "/root/PycharmProjects/SSHBrute/patator.py", line 639, in send
    self.pipe.send((self.name, action, args))
IOError: [Errno 32] Broken pipe

Problem in encoding "fgep" Cyrillic symbols

fgep does not work with the Cyrillic symbols.
how to solve a problem?
patator.py http_fuzz url=... method=... body=....... follow=1 accept_cookie=1 -x ignore:fgrep="Кириллические символы(Cyrillic symbols)"
I am worked on Windows server 2012 R2

ERROR: xfreerdp 1.2.0-beta1 (https://github.com/FreeRDP/FreeRDP.git) is required to run rdp_login.

Microsoft Windows [Version 6.1.7600]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\Mozilla>cd "C:\Users\Mozilla\Downloads\patator"

C:\Users\Mozilla\Downloads\patator>patator -h
Patator v0.7-beta (https://github.com/lanjelot/patator)
Usage: patator.py module --help

Available modules:

  • ftp_login : Brute-force FTP
  • ssh_login : Brute-force SSH
  • telnet_login : Brute-force Telnet
  • smtp_login : Brute-force SMTP
  • smtp_vrfy : Enumerate valid users using SMTP VRFY
  • smtp_rcpt : Enumerate valid users using SMTP RCPT TO
  • finger_lookup : Enumerate valid users using Finger
  • http_fuzz : Brute-force HTTP
  • pop_login : Brute-force POP3
  • pop_passd : Brute-force poppassd (http://netwinsite.com/poppassd/)
  • imap_login : Brute-force IMAP4
  • ldap_login : Brute-force LDAP
  • smb_login : Brute-force SMB
  • smb_lookupsid : Brute-force SMB SID-lookup
  • rlogin_login : Brute-force rlogin
  • vmauthd_login : Brute-force VMware Authentication Daemon
  • mssql_login : Brute-force MSSQL
  • oracle_login : Brute-force Oracle
  • mysql_login : Brute-force MySQL
  • mysql_query : Brute-force MySQL queries
  • rdp_login : Brute-force RDP (NLA)
  • pgsql_login : Brute-force PostgreSQL
  • vnc_login : Brute-force VNC
  • dns_forward : Forward DNS lookup
  • dns_reverse : Reverse DNS lookup
  • snmp_login : Brute-force SNMP v1/2/3
  • ike_enum : Enumerate IKE transforms
  • unzip_pass : Brute-force the password of encrypted ZIP files
  • keystore_pass : Brute-force the password of Java keystore files
  • umbraco_crack : Crack Umbraco HMAC-SHA1 password hashes
  • tcp_fuzz : Fuzz TCP services
  • dummy_test : Testing module

C:\Users\Mozilla\Downloads\patator>patator rdp_login --help
ERROR: xfreerdp 1.2.0-beta1 (https://github.com/FreeRDP/FreeRDP.git) is required to run rdp_login.
Please read the README inside for more information.

C:\Users\Mozilla\Downloads\patator>

I do not understand what's the problem?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.