**郑重声明:**本文所涉安全技术仅限用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,本人概不负责。任何形式的转载均须明确标注原文出处,且不得用于商业目的。
🔋 点赞 | 能量注入 ❤️ 关注 | 信号锁定 🔔 收藏 | 数据归档 ⭐️ 评论| 保持连接💬
🌌 立即前往 👉晖度丨安全视界🚀

▶ 信息收集
▶ 漏洞检测
▶ 初始立足点 ➢ 密码攻击 ➢ 针对网络服务的密码攻击🔥🔥🔥▶ 权限提升
▶ 横向移动
▶ 报告/分析
▶ 教训/修复
目录
[1.1 概述](#1.1 概述)
[1.2 针对网络服务的密码攻击](#1.2 针对网络服务的密码攻击)
[1.2.1 工具准备](#1.2.1 工具准备)
[1.2.2 SSH密码破解:破解密码](#1.2.2 SSH密码破解:破解密码)
[1.2.2.1 第一步:目标服务确认](#1.2.2.1 第一步:目标服务确认)
[1.2.2.2 第二步:字典文件准备](#1.2.2.2 第二步:字典文件准备)
[1.2.2.3 第三步:执行Hydra攻击](#1.2.2.3 第三步:执行Hydra攻击)
[1.2.2.4 攻击成功分析](#1.2.2.4 攻击成功分析)
[1.2.2.5 安全防御建议](#1.2.2.5 安全防御建议)
[1.2.3 RDP密码喷洒攻击:反向破解用户名](#1.2.3 RDP密码喷洒攻击:反向破解用户名)
[1.2.3.1 Hydra密码喷洒命令详解](#1.2.3.1 Hydra密码喷洒命令详解)
[1.2.3.2 密码喷洒攻击特点](#1.2.3.2 密码喷洒攻击特点)
[1.2.3.3 实际应用场景](#1.2.3.3 实际应用场景)
[1.2.3.4 防御密码喷洒攻击](#1.2.3.4 防御密码喷洒攻击)
[1.2.3.5 高级技巧扩展](#1.2.3.5 高级技巧扩展)
[欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论](#欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论)
1.密码攻击研究
1.1 概述
虽然生物识别、公钥基础设施(PKI)等现代认证方式逐渐普及,但密码认证仍然是当前最主要、最基础的身份验证方法。近年来,针对各类网络服务的密码攻击事件急剧增加,已成为网络安全的主要威胁之一。
暴露在公网上的常见服务(如SSH、RDP、VNC及Web登录表单)往往在启动后几分钟甚至几秒钟内就会遭到自动化攻击。
1.主要攻击目标:
| 服务类型 | 协议/端口 | 常见攻击方式 |
|---|---|---|
| SSH(安全外壳) | TCP/22 | 暴力破解、字典攻击 |
| RDP(远程桌面协议) | TCP/3389 | 暴力破解、字典攻击 |
| VNC(虚拟网络计算) | TCP/5900+ | 暴力破解、字典攻击 |
| HTTP登录表单 | HTTP/HTTPS | 字典攻击、撞库攻击 |
**⚠️ 注意:**这些服务若未配置强密码、失败锁定或二次验证,极易被攻破。
2.密码攻击主要分为两类,其区别如下:
| 攻击类型 | 原理 | 优点 | 缺点 |
|---|---|---|---|
| 暴力破解攻击 | 尝试所有可能的字符组合,直到匹配成功 | 理论上可破解任意密码 | 耗时极长,资源消耗大 |
| 字典攻击 | 使用预置的常见密码列表(字典文件)进行尝试 | 速度快,针对弱密码效率高 | 若密码不在字典中则失败 |
本节采用字典攻击 来发现++网络服务++ 和++HTTP登录表单++的有效凭据。
🔨 暴力破解攻击
-
方法:系统性地遍历字母、数字、特殊字符的所有组合。
-
适用场景:密码长度较短、字符集较小的情况。
-
形象比喻:就像尝试从000到999逐个拨号打开密码锁。
📖 字典攻击
-
方法:使用现成的"密码字典 "(如
rockyou.txt等常见弱密码列表)。 -
适用场景:用户使用常见词汇、弱密码或已泄露密码。
-
形象比喻:就像用**一大串++常用钥匙++**逐一尝试开锁。
3.密码存储与哈希
在实际系统中,密码通常不以明文存储 ,而是经过哈希函数处理:
明文密码 → 哈希算法 → 哈希值(存储)
🔐 哈希的特点:
-
不可逆:无法从哈希值反推原始密码。
-
唯一性:不同密码应产生不同哈希值。
-
抗碰撞:很难找到两个不同密码对应同一哈希值。
🛡️ 即使数据库泄露,攻击者仍需破解哈希才能获得明文密码,这增加了攻击难度。
**🔧 防御建议:**使用强密码、启用失败锁定、实施多因素认证(MFA),并定期更新系统与密码策略。
1.2 针对网络服务的密码攻击
本节介绍:使用Hydra工具攻击分别对SSH和RDP协议进行字典攻击。
1.2.1 工具准备
| 工具 | 用途 | 预装环境 |
|---|---|---|
| THC Hydra | 多功能密码破解工具,支持50+协议 | Kali Linux 内置 |
| rockyou.txt | 包含1400万+常见密码的字典文件,还有别的字典 | Kali Linux 内置(需解压) |
💡 注意 :这些工具已预装在Kali Linux中,无需额外安装。
1.2.2 SSH密码破解:破解密码
📍 攻击场景假设:
-
目标IP :
192.168.50.201 -
目标用户 :
george -
SSH端口 :
2222(非标准端口) -
已知信息: 知道用户名,未知密码,待破解密码
📊 攻击流程图解

1.2.2.1 第一步:目标服务确认
在攻击前,必须确认目标服务是否运行:
bash
$ sudo nmap -sV -p 2222 192.168.50.201
| 参数 | 作用 |
|---|---|
-sV |
服务版本探测,识别端口运行的具体服务版本 |
-p 2222 |
指定扫描端口2222 |

✅ 预期结果:确认端口2222运行SSH服务,版本信息有助于后续攻击策略制定。
1.2.2.2 第二步:字典文件准备
rockyou.txt默认以压缩格式存储,需先解压:
bash
$ sudo gzip -d /usr/share/wordlists/rockyou.txt.gz

⚠️ 重要提醒:该字典包含1400万+密码,解压后约134MB,确保有足够磁盘空间。
1.2.2.3 第三步:执行Hydra攻击
核心攻击命令:
bash
$ sudo hydra -l george -P /usr/share/wordlists/rockyou.txt -s 2222 ssh://192.168.50.201
🛠️ Hydra参数详解表:
| 参数 | 含义 | 示例值 |
|---|---|---|
| -l | 指定目标用户名 | george |
| -P | 指定密码字典路径 | /usr/share/wordlists/rockyou.txt |
| -s | 指定非标准端口 | 2222 |
| 协议目标 | 攻击的服务类型 | ssh://192.168.50.201 |

✅ 成功发现 :用户george的密码为 chocolate
1.2.2.4 攻击成功分析
🔑 关键因素:
-
密码在字典中 :
chocolate属于常见密码,包含在rockyou.txt中 -
已知用户名 :通过信息收集获得有效用户名
george -
服务暴露:SSH服务对外开放且未设置足够防护
🎯 攻击变体场景:
| 场景 | 所需条件 | Hydra命令调整 |
|---|---|---|
| 标准端口SSH | 端口22 | 省略-s参数 |
| 多用户攻击 | 用户名字典 | -L userlist.txt 替代 -l |
| RDP攻击 | 目标运行RDP | rdp:// 替代 ssh:// |
💡 提示 :对于Windows系统,可尝试攻击内置的
Administrator账户;Linux系统可尝试root账户。这些用户名都是自带的,当用户名没有收集到是时候可采用此方法。
1.2.2.5 安全防御建议
| 防护措施 | 实施方法 | 防御效果 |
|---|---|---|
| 强密码策略 | 密码长度>12位,包含大小写、数字、特殊字符 | ★★★★★ |
| 失败锁定机制 | 连续失败5次锁定账户30分钟 | ★★★★★ |
| 端口变更 | 更改SSH默认端口(22→随机高位端口) | ★★★☆☆ |
| 密钥认证 | 禁用密码登录,使用SSH密钥对 | ★★★★★ |
| 防火墙限制 | 仅允许特定IP访问管理端口 | ★★★★★ |
1.2.3 RDP密码喷洒攻击:反向破解用户名
与传统的知道用户名破解密码 不同,密码喷洒(Password Spraying)采用**++已知密码++尝试多个用户名** 的策略,有效规避账户锁定机制。
📍 目标信息
| 参数 | 值 | 说明 |
|---|---|---|
| 目标主机 | 主机名:BRUTE2 | 使用Windows RDP服务 |
| 目标IP | 192.168.50.202 |
远程桌面主机 |
| 已知密码 | SuperS3cure1337# |
已获取的有效密码 |
| 协议 | RDP (Remote Desktop Protocol) | 端口默认3389 |
📈 攻击流程示意图

🎲 攻击假设
-
已通过其他方式获得一个有效密码
-
需要找出使用该密码的用户账户
-
目标系统可能存在++密码复用++情况!!
1.2.3.1 Hydra密码喷洒命令详解
bash
$ sudo hydra -L /usr/share/wordlists/dirb/others/names.txt -p "SuperS3cure1337#" rdp://192.168.50.202
| 参数 | 含义 | 关键点 | 攻击角色 |
|---|---|---|---|
| -L | 指定用户名字典文件 | 使用names.txt包含8000+常见用户名 |
扩大攻击覆盖范围 |
| -p | 指定单个已知密码 | SuperS3cure1337#(已确认有效) |
攻击的核心凭证 |
| rdp:// | 目标协议类型 | 针对Windows远程桌面服务 | 确定攻击向量 |

📊 字典文件信息:
-
路径 :
/usr/share/wordlists/dirb/others/names.txt -
内容:8000+常见用户名(如admin、administrator、user、test等)
-
耗时:约15分钟完成全部尝试
-
特点:包含常见默认账户名、系统账户名、常用姓名等
✅ 成功发现:
bash
[3389][rdp] host: 192.168.50.202 login: daniel password: SuperS3cure1337#
[3389][rdp] host: 192.168.50.202 login: justin password: SuperS3cure1337#
- george、justin - 普通用户账户
💡 关键发现 :同一密码被多个账户 使用,表明存在密码复用的安全隐患。
1.2.3.2 密码喷洒攻击特点
🔍 与传统攻击对比:
| 攻击类型 | 已知信息 | 尝试方向 | 防御规避 |
|---|---|---|---|
| 传统字典攻击 | 用户名 | 密码字典 | 易触发账户锁定 |
| 密码喷洒攻击 | 密码 | 用户名字典 | 绕过锁定策略 |
⚡ 攻击优势:
-
避免锁定:对每个用户只尝试1次,难以触发失败锁定机制
-
高效发现:快速找出使用相同密码的多个账户
-
隐蔽性强:攻击流量分散,难以被传统IDS/IPS检测
1.2.3.3 实际应用场景
- 横向移动攻击
已知密码 → 密码喷洒 → 发现其他账户 → 扩大控制范围
- 密码复用探测
获取一个密码 → 测试所有用户 → 发现共享密码账户
- 默认凭证测试
常见默认密码 → 喷洒所有用户 → 发现未修改的账户
1.2.3.4 防御密码喷洒攻击
| 防护层 | 具体措施 | 防护效果 |
|---|---|---|
| 策略层 | 实施唯一密码策略,禁止密码复用 | ★★★★★ |
| 技术层 | 启用多因素认证(MFA) | ★★★★★ |
| 监控层 | 部署异常登录检测(禁止同一IP尝试多账户登录) | ★★★★☆ |
| 管理层 | 定期密码审计,强制定期更换 | ★★★☆☆ |
高风险行为:
-
多账户使用相同密码
-
管理员与普通用户密码相同
-
密码长期不更换
-
未启用MFA
1.2.3.5 高级技巧扩展
bash
# 1. 目标性喷洒(仅测试管理员账户)
$ sudo hydra -L admin_users.txt -p "Password123!" rdp://target
# 2. 多协议喷洒(测试同一密码在不同服务)
$ sudo hydra -L users.txt -p "Company2024!" ssh://target rdp://target
# 3. 定时喷洒(规避检测)
$ sudo hydra -L users.txt -p "Password" -t 1 -w 30 rdp://target
🎯 攻击成功率提升:
-
使用组织特有的用户名模式(如"姓名缩写+数字")
-
结合社会工程学收集的用户名列表
-
优先喷洒高管、IT管理员等特权账户
⚠️ 伦理提醒:
1.密码喷洒攻击仅限授权测试,未经授权的攻击属于非法行为。
2.字典攻击在日志、事件和流量方面产生大量的噪音。虽然大量的网络流量可能会导致网络崩溃,但各种安全技术的反应可能更加不可取。
3.在盲目启动工具之前,我们必须进行彻底的枚举,以识别和避免这些风险。
欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论
每一份支持,都是我持续输出的光。
