passwords - 使用开膛手约翰生成回文
问题描述
如何配置John the Ripper以仅从单词列表中生成损坏的(巨型)回文来破解密码哈希?(我用谷歌搜索过,但只找到“如何避免回文”)
解决方案
在john/john.conf
(例如 9 和 10 字母回文)中 - 在末尾附加以下规则:
# End of john.conf file.
# Keep this comment, and blank line above it, to make sure a john-local.conf
# that does not end with \n is properly loaded.
[List.Rules:palindromes]
f
f D5
然后john
使用您的单词表和新创建的“回文”规则运行:
$ john --wordlist=wordlist.lst --rules:palindromes hashfile.hash
规则f
只是将自身的反射附加到词表中的当前词,例如 P4ss!-> P4ss!!ss4P
rulef D5
不仅反映了单词,而且还删除了第5个字符,例如 P4ss!-> P4ss!ss4P
我还没有找到“删除中间字符”的方法,所以到目前为止,必须将规则调整为所需的回文长度,例如f D4
长度为7, f D6
长度为11等。
编辑:可变长度的可能解决方案(尚未测试):
f
Mr[6
M
= 记住当前单词,r
= 反转整个单词,[
= 删除第一个字符,6
= 将保存到内存中的单词添加到当前单词
使用这种方法,回文还可以“从里到外”(单词表中的单词在结果回文的末尾而不是开头)
f
Mr[6
Mr]4
M
= 记住当前单词,r
= 反转整个单词,]
= 删除最后一个字符,4
= 将保存到内存中的单词附加到当前单词
推荐阅读
- javascript - 如何在函数中获取状态?
- directory - 从 zip 文件夹中读取 .plg,删除一些行并将更新文件存储在 zip 文件夹内
- javascript - 从 URL 加载 Instagram 图像作为背景图像
- go - go 1.16 中无法识别的导入路径“gopkg.in/yaml.v2”
- r - 将列添加到 tribble
- java - javamailsender 总是抛出 500 错误(springboot api rest)
- owl-carousel - 无法从 Owl Carousel 2.3.4 复制文本值
- angular - 在窗口上添加EventListener并使用Angular触发茉莉花测试中的处理程序
- sql - oracle中如何将十进制值转换为时间值?
- python - 类型错误:+ 不支持的操作数类型:“sqlite3.Cursor”和“int”