深度字典攻击(实操笔记·红笔思考)

一、前置思考(实操习惯养成)

  1. 爆破优先从小规模开始:避免直接大规模爆破导致目标告警、资源耗尽,同时便于验证字典有效性、调试爆破流程,减少无用功。
  2. 养成使用ln -s(创建软链接)的习惯:相比cp(直接复制文件),软链接不占用额外磁盘空间,修改源文件后链接文件同步更新,尤其适合复用工具目录下的规则文件、字典文件,后续维护更便捷。

二、字典构造(打造高针对性基础字典)

1. 提取网页专属关键词(生成针对性种子字典)

使用cewl等工具爬取目标网页内容,提取页面关键词、高频词汇,生成贴合目标场景的种子字典(避免纯通用字典的低命中率)。

2. 复用hashcat规则文件

bash 复制代码
# 创建软链接,将系统自带的最佳规则文件链接到当前工作目录,方便后续调用
ln -s /usr/share/hashcat/best66.rule .

3. 规则扩展生成基础字典

基于种子字典,通过hashcat调用规则文件进行字符变形(大小写、特殊符号、后缀前缀等),扩展字典覆盖面:

bash 复制代码
# --stdout:仅输出结果不进行破解;-r:指定规则文件;重定向输出为扩展后的基础字典
hashcat --stdout dict -r best66.rule > dict.best66.txt

4. 追加通用高命中率字典(补充覆盖面)

在基础字典后追加通用优质字典,提升爆破成功率:

  1. 直接追加fasttrack通用字典(高命中率常用账户/密码组合)

  2. 从超大通用字典rockyou中筛选针对性内容(减少冗余):

    bash 复制代码
    # -i:忽略大小写;-E:使用扩展正则;筛选包含相关关键词的条目,贴合目标场景
    grep -iE '相关关键词' rockyou >> dict.best66.txt

三、字典优化:去重(保留原有顺序,避免冗余)

推荐方案:awk

bash 复制代码
# 去重,且完全保留字典中原有的条目顺序,不影响后续爆破优先级
awk '!seen[$0]++' dict.best66.txt > dict.final.txt

不推荐:sort -u

原因:sort -u会先对字典条目进行排序,再去重,破坏字典原有条目顺序(而字典顺序通常关联爆破优先级,针对性条目应优先尝试),同时排序会增加额外耗时,不适用于需要保留优先级的深度字典攻击。

总结

  1. 深度字典攻击的核心是「针对性」,从小规模验证入手,再通过规则扩展+通用字典筛选打造高效字典。
  2. ln -s软链接是复用系统工具文件的最优习惯,awk '!seen[$0]++'是保留顺序的字典去重最优解。
  3. 字典构造流程:cewl提取关键词hashcat规则扩展追加筛选通用字典awk去重,最终得到高命中率、低冗余的成品字典。
相关推荐
Jack N9 小时前
2026 浏览器原理 常见面试题(附答案)
前端·html·浏览器
何何____9 小时前
CSS 易混淆易错知识点
前端·css
北山有鸟9 小时前
常用的快捷键
linux·前端·chrome·单片机·学习
KaMeidebaby9 小时前
卡梅德生物技术快报|噬菌体筛选全流程技术方案:弧菌抑菌菌株筛选、特性鉴定与效果测试
前端·数据库·其他·百度·新浪微博
祁白_9 小时前
无字母数字 Webshell 绕过
笔记·web安全·测试·ctf
许长安9 小时前
互斥锁、自旋锁、读写锁使用场景以及底层实现
c++·经验分享·笔记
JiaWen技术圈10 小时前
主流非 JWT 式 Access Token 方案
前端·安全
智者知已应修善业10 小时前
【51单片机独立按键和定时器中断的疑惑验证】2023-11-2
c++·经验分享·笔记·算法·51单片机
ZC跨境爬虫10 小时前
跟着 MDN 学 HTML day_57:(HTML 表格进阶特性与无障碍实践)
java·前端·javascript·ui·html·音视频
Moment10 小时前
刷 Reddit 1 小时没结果?我用这个方法 10 秒挖出真实需求
前端·javascript·后端