2026/4/18 5:43:31
网站建设
项目流程
网站建设与设计ppt模板下载,站外营销有哪几种主流方式,网站版面的图文是怎么做的,wordpress5.2下载郑重声明#xff1a;本文所涉安全技术仅限用于合法研究与学习目的#xff0c;严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任#xff0c;本人概不负责。任何形式的转载均须明确标注原文出处#xff0c;且不得用于商业目的。 #x1f50b; 点赞 | 能量注入…郑重声明本文所涉安全技术仅限用于合法研究与学习目的严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任本人概不负责。任何形式的转载均须明确标注原文出处且不得用于商业目的。点赞| 能量注入 ❤️关注| 信号锁定 收藏| 数据归档 ⭐️评论| 保持连接立即前往晖度丨安全视界▶ 信息收集▶ 漏洞检测▶ 初始立足点 ➢ 密码攻击 ➢ 密码破解理论中▶ 权限提升▶ 横向移动▶ 报告/分析▶ 教训/修复目录1.密码破解理论与实践1.1 密码破解流程1.2 字典的变异让密码适用新规则1.2.1 为什么要进行字典的变异1.2.2 解决方案创建规则函数1.2.3 规则函数变异密码字典的步骤1.2.3.1 实验准备1.2.3.2 过滤无效密码1.2.3.3 添加数字使用 $ 和 ^ 函数1.创建规则文件2.使用规则文件1变形添加数字1.2.3.4 添加大写字母c函数1.添加规则函数2.使用规则文件1变形添加大写字母及数字1.2.3.5 添加特殊字符完善密码策略1.添加规则函数2.使用规则文件变形添加特殊字符1.2.3.6 部分规则函数总结1.3 基于规则的密码破解实战1.3.1 准备工作1.3.1.2 创建哈希文件和规则文件1.3.1.3 破解执行命令1.破解流程解析2.破解结果分析3.规则攻击效果分析1.3.2 安全启示1.4 使用Hashcat预定义规则函数欢迎❤️ 点赞 | 关注 | ⭐️ 收藏 | 评论1.密码破解理论与实践1.1 密码破解流程详见下一篇文章详细说明。本文先以初步原理结合实践进行表述。1.2 字典的变异让密码适用新规则1.2.1 为什么要进行字典的变异 密码策略的演进近年来密码策略越来越严格普遍要求最小密码长度通常8位以上必须包含多种字符类型大写字母小写字母特殊字符如!#$%数字⚠️ 传统密码字典的不足常用密码字典如rockyou.txt中的大多数密码无法满足现代密码策略要求。如果直接用于具有强密码策略的目标会导致大量无效尝试。示例检测rockyou.txt前10个密码密码大写字母小写字母特殊字符数字是否符合策略123456❌✅❌✅❌12345❌✅❌✅❌123456789❌✅❌✅❌password❌✅❌❌❌iloveyou❌✅❌❌❌princess❌✅❌❌❌1234567❌✅❌✅❌rockyou❌✅❌❌❌12345678❌✅❌✅❌abc123❌✅❌✅❌结果前10个密码无一同时满足大写字母、特殊字符和数字的要求。1.2.2 解决方案创建规则函数在将字典发送到目标前通过规则函数自动修改字典中的密码使其符合密码策略。规则函数的作用添加字符在密码末尾/开头添加固定字符如!2023替换字符将字母替换为相似数字如a→、o→0大小写变换将部分字母转为大写组合操作一个规则可包含多个函数规则文件示例$1$2$3 # 在末尾添加数字123 c # 首字母大写 # 将a替换为 基于规则攻击的影响方面说明✅优势自动化适配密码策略显著提高命中率⚡效率现代硬件可轻松处理长度8位的常见密码变异数量增长规则应用会大幅增加尝试的密码数量精准度针对性强避免无效尝试1.2.3 规则函数变异密码字典的步骤 实战目标创建符合密码策略的规则函数密码策略要求必须包含数字、特殊字符、大写字母每种至少一个1.2.3.1 实验准备将rockyou.txt的前十个密码复制并保存到新创建的passwordattacks目录下的demo.txt文件中。# 创建测试密码文件 demo.txt 123456 12345 123456789 password iloveyou princess 1234567 rockyou 12345678 abc1231.2.3.2 过滤无效密码# 删除纯数字密码示例 $ sed -i /^[0-9]*$/d demo.txt组件符号/命令说明类比理解命令主体sed流编辑器用于对文本进行流式处理和编辑文字处理器中的“查找替换”功能编辑模式-i就地编辑模式直接修改源文件不创建备份直接在原文档上修改不生成副本正则表达式/^[0-9]*$/匹配整行都是数字的行或者空行查找所有纯数字的行的句子操作指令d删除匹配的行将找到的句子完全删除 表达式拆解/^[0-9]*$/符号名称作用详细说明/定界符标记正则表达式的开始和结束类似引号包裹整个表达式^行首锚点匹配行的开头位置确保从行首开始匹配[0-9]字符类匹配任意一个数字0-9相当于[0123456789]*量词匹配前一个元素0次或多次可以没有数字也可以有多个数字$行尾锚点匹配行的结束位置确保匹配到行尾/定界符表达式结束与开头定界符配对执行后如下demo.txt中剩下5个密码。注意原示例sed -i /^1/d demo.txt仅删除以1开头的密码实际应用中需要根据需求调整过滤规则1.2.3.3 添加数字使用$和^函数函数作用示例结果$X末尾添加字符X$1password→password1^X开头添加字符X^3password→3password1.创建规则文件让我们创建一个包含$1的规则文件以将“1”追加到demo.txt字典中的所有密码尾巴上。使用这个规则函数创建一个demo.rule。需要使用转义符“\”来转义特殊字符“$”以便正确地将其输出到文件中如下2.使用规则文件1变形添加数字$ hashcat -r demo.rule --stdout demo.txt组件/选项符号说明是否必需命令主体hashcat密码破解工具支持多种哈希算法✅ 必需规则文件选项-r demo.rule指定规则文件定义密码变换规则 可选输出模式选项--stdout将结果输出到屏幕不进行实际破解 可选输入文件demo.txt原始密码字典文件✅ 必需执行结果所有密码后添加了一个1。1.2.3.4 添加大写字母c函数我们思考一个现实的场景当被通知需要在密码中强制使用大写字符时许多用户倾向于将第一个字符大写。因此我们将在规则文件中添加c规则函数它将第一个字符大写并将其余字符转换为小写。函数作用示例结果c首字母大写其余小写cpassword→Password1.添加规则函数尝试使用两个规则文件进行示例demo1.rule和demo2.rule。两种规则编写方式对比① demo1.rule单行组合规则$1 c执行顺序先在尾部添加数字1 → 再首字母大写如下示例password → password1 → Password1② demo2.rule多行独立规则$1 c生成变体每个密码生成2个变体如下示例password → password1 password → Password2.使用规则文件1变形添加大写字母及数字综上如下图根据这样的情况目前demo1.rule规则文件制作出来的密码字典已经适应了三个密码策略中的两个。 接下来继续处理第三个策略添加一个特殊字符。1.2.3.5 添加特殊字符完善密码策略我们再思考一个场景当被通知需要在密码中强制使用特殊字符时许多用户倾向于常见特殊字符添加使用$!在末尾添加!1.添加规则函数规则文件规则内容执行顺序示例结果demo1.rule$1 c $!数字→大写→特殊Password1!demo2.rule$! $1 c特殊→数字→大写Password!1规则执行顺序从左到右依次应用2.使用规则文件变形添加特殊字符原始密码password经过$1 c $!规则处理password1→password1首字母大写 →Password1添加!→Password1!✅ 满足所有要求大写字母P数字1特殊字符!1.2.3.6 部分规则函数总结函数名称作用常用场景$X追加末尾添加字符X添加年份、序号^X前置开头添加字符X添加前缀标识c首字母大写首字母大写其余小写符合大写要求l全小写所有字母转小写标准化处理u全大写所有字母转大写符合大写要求还有非常多的规则函数可以到Hashcat Wiki网站进行查询1.3 基于规则的密码破解实战 实战背景和目标在目标系统中获取到一个MD5哈希值f621b6c9eab51a3e2f4e167fee4c6860已知目标密码策略必须包含大写字母、数字、特殊字符目标找到MD5哈希值的密码明文1.3.1 准备工作组件路径/内容作用哈希值f621b6c9eab51a3e2f4e167fee4c6860待破解目标字典文件/usr/share/wordlists/rockyou.txt使用基础密码字典哈希文件crackme.txt把目标哈希f621b...存入该文件规则文件demo3.rule密码变异规则1.3.1.2 创建哈希文件和规则文件# 将哈希值保存到文件 $ echo f621b6c9eab51a3e2f4e167fee4c6860 crackme.txt️ 规则文件demo3.rule设计规则策略分析为满足密码策略大写字母数字特殊字符设计多层次规则现实中规则文件会比这个复杂的多c # 首字母大写其余小写 $! # 末尾添加特殊字符 ! $1 # 末尾添加数字 1 $2 # 末尾添加数字 2 $1 $2 $3 # 组合添加数字 123规则行作用示例转换策略满足情况c首字母大写computer→Computer✅ 大写字母$!添加特殊字符computer→computer!✅ 特殊字符$1添加数字1computer→computer1✅ 数字$2添加数字2computer→computer2✅ 数字$1 $2 $3添加数字序列computer→computer123✅ 数字1.3.1.3 破解执行命令完整命令$ hashcat -m 0 crackme.txt /usr/share/wordlists/rockyou.txt -r demo3.rule --force参数详解表参数值作用重要程度-m0指定哈希类型为MD5 关键目标文件crackme.txt包含目标哈希的文件 必需字典路径/usr/share/wordlists/rockyou.txt基础密码字典 必需-rdemo3.rule指定规则文件 重要--force无值忽略警告强制运行 可选1.破解流程解析加载字典读取rockyou.txt中的14,344,391个密码应用规则为每个原始密码生成3个变体根据规则函数计算哈希对每个密码变体计算MD5哈希比对目标与目标哈希值比对输出结果找到匹配项时显示破解结果计算规模原始字典约1400万密码 规则数量3条规则 总尝试次数1400万 × 5 约4200万次尝试2.破解结果分析成功破解破解出的密码Computer123!策略符合性验证要求密码Computer123!符合性大写字母C✅小写字母omputer✅数字123✅特殊字符!✅长度12位✅⏱️ 性能评估破解时间仅用几秒钟运行环境普通CPU非GPU加速效率对比远快于暴力破解3.规则攻击效果分析指标数值说明原始字典大小14,344,391条rockyou.txt原始密码数规则数量3条demo3.rule中的规则理论最大变体43,033,173条原始密码×规则数实际尝试数≤理论最大值Hashcat会去重和优化破解时间几秒钟CPU环境下密码不在原始字典是通过规则生成的新密码1.3.2 安全启示1.对防御方的启示风险点缓解措施规则攻击有效实施更严格的密码策略用户习惯可预测教育用户创建真正随机密码字典规则组合强大监控和阻止多次尝试2.对攻击方的价值优势应用场景高效率时间有限的渗透测试高成功率针对有密码策略的目标资源友好无需强大硬件支持重要在尝试创建用于变异现有字典的规则时应始终考虑密码的人类行为和便利性例如大多数用户使用一个主要单词并将其修改以符合密码策略可能附加数字和特殊字符。当需要大写字母时大多数用户将首字母大写当需要数字时大多数用户将数字添加到密码的末尾并出现“123”这种好记忆的组合当需要特殊字符时大多数用户将特殊字符添加到密码的末尾并依赖键盘左侧的字符如!#因为这些数字易于到达和输入还有一些是用户的出生年月、英文名字、好记的绰号等因此在指定规则函数时需要多考虑以上的因素作为规则以便更容易猜出。1.4 使用Hashcat预定义规则函数 规则文件位置标准路径/usr/share/hashcat/rules/ 预定义规则优势优势说明专家验证由安全专家和社区长期优化全面覆盖包含各种常见密码变异模式即拿即用无需从零创建节省时间实战测试经过大量实际场景验证 常用预定义规则示例规则文件规则数量适用场景特点best64.rule64条通用快速攻击最有效的64条规则dive.rule数千条深度渗透测试全面覆盖各种变异rockyou-30000.rule30,000条针对常见密码基于真实泄露数据InsidePro-PasswordsPro.rule数百条专业渗透测试商业级规则集合⚡ 快速使用示例# 使用best64规则进行攻击 $ hashcat -m 0 target_hash.txt rockyou.txt -r /usr/share/hashcat/rules/best64.rule # 使用多个规则文件 $ hashcat -m 0 target_hash.txt rockyou.txt -r best64.rule -r dive.rule 规则选择策略场景推荐规则原因快速初步尝试best64.rule效率高覆盖常见模式深度渗透测试dive.rule全面覆盖不遗漏可能变异针对特定目标自定义规则基于已知策略精准打击未知环境组合多个规则最大程度覆盖可能性预定义规则是强大的“工具箱”但最有效的攻击永远是“量体裁衣”——基于具体目标信息定制策略。在没有特定情报时预定义规则提供了最佳起点获得情报后应立即转向针对性更强的自定义规则。欢迎❤️ 点赞 | 关注 | ⭐️ 收藏 | 评论每一份支持都是我持续输出的光。