KALI LINUX 工具大全---BruteSpray ( 暴力喷雾 )


以下文档会融合kali官方文档和原作者官方文档

官网:https://github.com/x90skysn3k/brutespray

 

简介:

brutespray--基于nmap扫描结果的端口爆破工具

该Python脚本BruteSpray基于nmap扫描输出的gnmap/XML文件,使用Medusa(译者注:Medusa美杜莎 是一款端口爆破工具,速度比Hydra九头蛇快)的默认凭据(译者注:即用户名和密码)自动对服务进行暴力破解。 通过在Nmap中使用-sV,BruteSpray甚至可以找到非标准端口。
译者注:可能遇到很多时候需要对大批的主机进行暴力破解,这时候BruteSpray就派上用场了。该软件也会提供一个非常简单的字典文件,总之该工具比较简单鸡肋并不直接包含在默认的kali安装系统中,要从kali源中指定下载安装


安装:
pip install -r requirements.txt
在kali上:
apt-get install brutespray


命令:
root@kali:~# brutespray -h


                 KALI LINUX 工具大全---BruteSpray ( 暴力喷雾 )

 

 

brutespray.py v1.5.2
作者: Shane Young/@x90skysn3k && Jacob Robles/@shellfail
灵感: Leon Johnson/@sho-luv
Credit to Medusa: JoMo-Kun / Foofus Networks <jmk@foofus.net>

usage: brutespray [-h] -f FILE [-o OUTPUT] [-s SERVICE] [-t THREADS]
[-T HOSTS] [-U USERLIST] [-P PASSLIST] [-u USERNAME]
[-p PASSWORD] [-c] [-i]

Usage: python brutespray.py <OPTIONS>

可选参数:
  -h, --help 显示帮助信息并退出

选项目录:
  核心命令:
    -f FILE, --file FILE                   解析nmap输出的GNMAP或XML文件(译者注:这里是用nmap软件输出的结果文件,是包含服务号的待破解文件)
    -U USERLIST, --userlist USERLIST     引用自定义用户名文件(译者注:用户字典)
    -P PASSLIST, --passlist PASSLIST     引用自定义密码文件(译者注:密码字典)
    -u USERNAME, --username USERNAME  指定一个用户名
    -p PASSWORD, --password PASSWORD  指定一个密码
    -s SERVICE, --service SERVICE      指定要攻击的服务

  附加命令:
    -t THREADS, --threads THREADS      开启medusa线程数
    -T HOSTS, --hosts HOSTS          要同时测试的主机数
    -i, --interactive               交互模式
    -c, --continuous               成功后保持暴力破解(译者注:一般如果是为了破解就一次成功停止,如果是测试弱点就要持续破解)

  输出命令:
    -o OUTPUT, --output OUTPUT       包含成功尝试密码的输出目录
    -m ,--modules                查看暴力破解支持模块列表




用法示例:

首先进行 带有选项-oG nmap.gnmap或-oX nmap.xml的nmap 去扫描。
nmap -v 192.168.23.0/24 -oX nmap.xml

 

1.使用指定的用户列表(unix_users.txt)和密码列表(password.lst)来攻击nas.gnmap文件中的所有服务。(译者注:我们也可以不指定字典,则会使用软件默认的小字典, 爆破成功的结果也会自动保存在程序目录下的output文件夹内.)
root@kali:~# brutespray --file nas.gnmap -U /usr/share/wordlists/metasploit/unix_users.txt -P /usr/share/wordlists/metasploit/password.lst --threads 3 --hosts 1

Starting to brute, please make sure to use the right amount of threads(-t) and parallel hosts(-T)... \

Brute-Forcing...
Medusa v2.2 [http://www.foofus.net] (C) JoMo-Kun / Foofus Networks <jmk@foofus.net>

ACCOUNT CHECK: [mysql] Host: 192.168.86.4 (1 of 1, 0 complete) User: 4Dgifts (1 of 111, 0 complete) Password: !@#$%^& (1 of 88396 complete)(译者注:这里显示的是对破解的主机和服务尝试的用户名密码)
ACCOUNT CHECK: [mysql] Host: 192.168.86.4 (1 of 1, 0 complete) User: 4Dgifts (1 of 111, 0 complete) Password: !@#$% (2 of 88396 complete)
ACCOUNT CHECK: [mysql] Host: 192.168.86.4 (1 of 1, 0 complete) User: 4Dgifts (1 of 111, 0 complete) Password: !@#$%^ (3 of 88396 complete)
...

 


2.指定凭证
brutespray --file nmap.gnmap -u admin -p password --threads 5 --hosts 5

 

 

3.暴力破解指定服务
brutespray --file nmap.gnmap --service ftp,ssh,telnet --threads 5 --hosts 5

 


4. 交互模式,仅暴力破解FTP服务。
root@kali:~# brutespray -i -f nas.gnmap

Loading File: /

Welcome to interactive mode!


WARNING: Leaving an option blank will leave it empty and refer to default


Available services to brute-force:(译者注:这里是对导入文件的带破解服务汇总)
Service: ftp on port 21 with 1 hosts
Service: ssh on port 22 with 1 hosts
Service: mysql on port 3306 with 1 hosts

Enter services you want to brute - default all (ssh,ftp,etc): ftp
Enter the number of parallel threads (default is 2): 4
Enter the number of parallel hosts to scan per service (default is 1): 1
Would you like to specify a wordlist? (y/n): y
Enter a userlist you would like to use: /usr/share/wordlists/metasploit/unix_users.txt
Enter a passlist you would like to use: /usr/share/wordlists/metasploit/password.lst
Would to specify a single username or password (y/n): n

Starting to brute, please make sure to use the right amount of threads(-t) and parallel hosts(-T)... \

Brute-Forcing...

 

 

5.成功后继续:
brutespray.py --file nmap.gnmap --threads 5 --hosts 5 -c

 

 

支持服务:
ssh
ftp
telnet
vnc
mssql
mysql
postgresql
rsh
imap
nntp
pcanywhere
pop3
rexec
rlogin
smbnt
smtp
svn
vmauthd
snmp

 

 

数据指定:
译者注:在新版上可以自定义破解文件,不用依赖于nmap输出

定义JSON格式文件:
{"host":"127.0.0.1","port":"3306","service":"mysql"}
{"host":"127.0.0.10","port":"3306","service":"mysql"}
...

 

上一篇:使用Docker安装MySQL


下一篇:CodeForces 1332-C K-Complete Word(区段回文串)