Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/nil0x42/duplicut
通用工具密码破解实用工具与框架
GitHubnil0x42/duplicut

duplicut

从超大规模词表中去除重复项,无需排序(用于基于字典的密码破解)

查看仓库
98096710个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Duplicut :scissors:

快速去重海量字典文件,同时保持原有顺序 推文


github 测试 codacy 代码质量 github codeql codecov 覆盖率

已在 awesome-pentest 中被提及

由 nil0x42 与 贡献者 共同创建


📖 概述

如今,创建密码字典通常需要将多个数据源拼接在一起。

理想情况下,最可能的密码应位于字典的开头,这样最常见的密码就能被瞬间破解。

借助现有的 去重工具,你不得不做出选择: 是 保留顺序 OR 处理海量字典。

不幸的是,字典创建这两者都需要

因此我用高度优化的 C 语言编写了 duplicut,以满足这个非常特定的需求 🤓 💻



💡 快速上手

root@kitploit:~
git clone https://github.com/nil0x42/duplicut  # 下载 ...
cd duplicut/ && make                           # 编译 ...
./duplicut wordlist.txt -o clean-wordlist.txt  # 去重 !!!

🔧 选项

root@kitploit:~
-o, --outfile <FILE>       将结果写入 <FILE>
-t, --threads <NUM>        最大线程数(默认最大)
-m, --memlimit <VALUE>     限制最大使用内存(默认最大)
-l, --line-max-size <NUM>  最大行长度(默认 1024,最大 4095)
-p, --printable            仅保留 ASCII 可打印行
-c, --lowercase            将字典转换为小写
-C, --uppercase            将字典转换为大写
-D, --dupfile <FILE>       将重复项写入 <FILE>(会减慢 duplicut 速度)
-h, --help                 显示此帮助并退出
-v, --version              输出版本信息并退出
  • 特性:

    • 处理海量字典,即使是那些大小超过可用 RAM 的字典
    • 通过 --line-max-size 选项按最大长度过滤行
    • 通过 --printable 选项过滤掉包含非可打印 ASCII 字符的行
    • 将已发现的重复项保存到另一个文件(--dupfile 选项)
    • 通过 --lowercase 或 --uppercase 选项忽略大小写
    • 显示带有预计剩余时间(ETA)的进度条
  • 实现:

    • 用纯 C 代码编写,设计为快速运行
    • 在 64 位平台上压缩哈希映射项
    • 支持多线程
  • 限制:

    • --line-max-size 最大不能超过 4095

📖 技术细节

🔸 1- 内存优化:

一个 uint64 足以在哈希映射中对行进行索引,通过将 size 信息打包进指针的额外位:

🔸 2- 大文件处理:

如果整个文件无法放入内存,则将其分割成 个虚拟块,使得每个块尽可能使用更多 RAM。

然后将每个块加载到哈希映射中,进行去重,并针对后续块进行测试。

这样,执行时间最多减少到 th 三角形数:

💡 故障排除

如果你发现错误,或某些功能未按预期工作,请以调试模式编译 duplicut 并在 issue 中附带输出内容:

root@kitploit:~
# 调试级别可以从 1 到 4
make debug level=1
./duplicut [OPTIONS] 2>&1 | tee /tmp/duplicut-debug.log
下载工具