著名密码破解利器John the Ripper使用方法详解

翻译自自带文档,翻译者不详。

来源:网络

Ubuntu下安装
sudo apt-get install john

源码安装:
wget 
http://www.openwall.com/john/g/john-1.7.8.tar.bz2
cd john-1.7.8/src && makegeneric 
(看操作系统环境)
=========================
John the Ripper 简介
=========================
John the Ripper 是 什 么 东西? 如 果 直 译 其 名 字 的 话 就 是: JOHN 的撕裂 者(工 具)。 翻 译 的 很 难 听 吧。 实 际上 它 是 一 个 工 具 软 件, 用 于 在 已 知 密文 的 情 况 下尝 试 破 解 出 明 文 的 破 解 密码 软 件。目 前 的 最 新 版 本 是 JOHN 1.4 版, 主要 支 持 对DES、 MD5 两 种 加 密 方式 的 密 文 进行 破 解 工 作。 它 可 以 工 作 于 多 中不 同 的机 型 以 及 多种 不 同 的 操作 系 统 之 下, 目前 已 经 测 试 过能 够 正 常 运 行 的 操 作 系统 有: Linux x86,FreeBSD x86, Solaris 2.x SPARC, OSF/1 Alpha, DOS, WinNT/Win95。 在1998 年 年 初,JOHN1.4 已 经针 对 INTEL 的 MMX 处 理 器 进 行 了 针 对 性 的优化, 速 度 可快 30% 左 右。 如 果 你 想 了 解最新 的 动 态, 请 访 问: http://www.openwall.com/john 这 里 是 JOHN 的 窝 点。
——————————
使 用 预 览
——————————
以 下 快 速 入 门 针 对 PC 用 户。
假 设 你 已 经 取 得 了 某 个 SHADOW 文 件, 并 且被 存 为 SHADOW.TXT 文 件。 在 你 的硬 盘 中 建 一个 新 的 目 录, 如 HACK 进 入 这 个 目 录, 将 JOHN1.4 在 此 目 录 中 解 开, 将SHADOW.TXT 同 样 拷入 此 目 录, 这 样 我 们 就 完 成 了 解 密 的准 备 工 作。
现 在 开 始 进 行 解 密 步 骤:
先 消 灭 FOOL USER, 就 是 “笨 蛋 用 户”:
john -single shadow.txt
再 消 灭 稍 微 聪 明 一 点 的 用 户:
john -wordfile:password.lst -rules shadow.txt
最 后 进 行 大 屠 杀:
john -i:all shadow.txt
当 然 了, 第 三 步 可 能 要 你 的 电 脑 跑 上 10000 年。
解 释:
第 一 步 主 要 针 对 笨 蛋 而 进 行 的, 原 理 是 根 据 用 户 的 名 称, 加 上 常 见 的 变 化而 猜 测 密 码。 一 般 所 谓 的 笨 蛋 是 这 样 的, 比 如 此 用 户 叫 fool, 而 他 的 密 码 是fool123、 fool1、 loof、 loof123、 lofo…。 这 样 的 用 户 一 般 在 一 分 钟 内 会 被 全部 消 灭。
第 二 部 是 使 用 字 典 文 件 来 进 行 解 密, 不 为 什 么, 只 是 因 为 设 置 密 码 的是 人 而不 是 机 器, 如 人 们 常 用 hello、 superman、 cooler、 asdfgh、 123456 等 作 为 自己 的 密 码。 而 -rules 参 数 则 在 此 基 础 上 再 加 上 些 变 化, 如 字 典 中 有 单 词 cool,则 JOHN 还 会 尝 试 使 用 cooler、 CoOl、 Cool 等 单 词 变 化 进 行 解 密。 一 般 视SHADOW 中 的 用 户 多 少 及 你 的 字 典 大 小、 你 的 机 器 速 度, 解 密 时 间 从 几 小 时 到 几天 不 等。
第 三 步 是 纯 粹 的 碰 运 气 解 法, 主 要 原 理 是 遍 历 所 有 可 能 的 密 匙 空 间。 JOHN会 尝 试 以 95 个 字 母 (因 为 从 键 盘 上 只 能 输 入 95 种 可 能 的 键 值) 进 行 1-8 (8 个字 母 是 密 码 的 最 长 值, 所 有 密 码 中 8 位 以 后 的 部 分 均 不 会 被 使 用, 目 前 的 DES 加密 体 系 就 是 这 样 的) 个 长 度 的 所 有 组 合, 这 是 很 漫 长 的 过 程, 我 们 计 算 一 下: 以 仅攻 击 一 个 用 户 为 例, MMX200 微 机 一 台 (攻 击 速 度 18000 次/秒), 假 设 遍 历 50% 的密 码 空 间, 需 要 的 时 间 为:
(95^8+95^7+95^6+95^7+95^6+…..+95^1)/2/18000
=6.7047809E15/18000
=3.7248783E11秒
=10346884.19小时
=4311201.745天
=11811.5年
还 好 在 JOHN 可 以 进 行 自 动 预设 取 值。 所 以 这 样 破 解 密 码 还 是 可 能的, 一 般 的经 验 是 20 个 小 时 可 能 破 解 一个, 可 能 什 么 都 没 有。
本 文 后 面 介 绍 的 经 验 可 以 帮 助 你 尽快 地 进 行 破 解。
————————–
详 细 功 能 说 明
————————–
John the Ripper 1.4 是 目 前比 较 好 的 破 解 密 码 工 具, 在 解 密 过 程中 会 自 动定 时 存 盘, 你 也 可 以 强 迫 中 断解 密 过 程 (用 ctrl+c), 下 次 还 可 以 从 中 断的 地 方 继续 进 行 下 去 (john -restore), 任 何时 候 敲 击 键 盘, 你 就 可 以 看 到 整 个 解密 的 进 行情 况, 所 有 已 经 被 破 解 的 密码 会 被 保 存 在 当 前 目 录 下 的 JOHN.POT 文 件中, SHADOW中 所 有 密 文 相 同 的 用 户 会 被 归成 一 类, 这 样 JOHN 就 不 会 进 行 无 谓 的 重复 劳 动 了。在 程 序 的 设 计 中, 关 键 的 密码 生 成 的 条 件 被 放 在 JOHN.INI 文 件 中, 你可 以 自 行 修改 设 置, 不 仅 支 持 单 词 类型 的 变 化, 而 且 支 持 自 己 编 写 C 的 小 程序 限 制 密 码 的 取 值方 式。 唯 一 的 遗 憾是: 在 自 动 产 生 密 码 的 遍 历 解 密 方 法中 不 支 持 -rules 选 项。 不 过还 好 有 方 法 可以 克 服。
命令行的参数功能解释
———————–
命令行方式: john [-功能选项] [密码文件名]
功 能 选 项 (所 有 的 选 项 均 对 大 小 写 不敏 感, 而 且 也 不 需 要 全 部 输 入, 只 要 在保证 不 与 其 他 参 数 冲 突 的 前 提 下 输 入即 可, 如 -restore 参 数 只 要 输 入 -res 即可):
-pwfile:[,..] 用 于 指 定 存 放 密 文 所 在 的 文 件 名,(可 以 输 入 多 个, 文 件 名一 我 “,” 分 隔, 也 可 以 使 用 * 或 者 ? 这 两 个 通 配 符 引 用 一 批 文 件)。 也 可 以 不 使用 此 参 数, 将 文 件 名 放 在 命 令 行 的 最 后 即 可。
-wordfile:<字典文件名> -stdin 指 定 的 用于 解 密 用 的 字 典 文 件 名。 你 也 可 以 使 用 STDIO 来 输 入, 就 是 在 键 盘 中 输入。
-rules 在 解 密 过 程 中 使 用 单 词 规 则 变 化 功 能。 如 将 尝 试 cool 单 词 的 其 他可 能, 如 COOLER、 Cool 等, 详 细 规 则 可 以 在 JOHN.INI 文 件 中 的[List.Rules:Wordlist] 部 分 查 到, 我 们 在 下 面 详 细 解 释。
-incremental[:<模式名称>] 使 用 遍 历 模式, 就 是 组 合 密 码 的 所 有 可 能 情 况, 同 样 可 以 在 JOHN.INI 文 件 中 的[Incremental:*****] 部 分 查 到, 我 们 在 下 面 详 细 解 释。
-single 使 用 单 一 模 式 进 行 解 密, 主 要 是 根 据 用 户 名 产 生变 化 来 猜 测 解 密,可 以 消 灭 笨 蛋 用 户。 其 组 合 规 则 可 以 在 JOHN.INI 文 件 中 的[List.Rules:Single] 部 分 查 到, 我 们 在 下 面 详 细 解 释。
-external:< 模式名称> 使 用 自 定 义 的 扩展 解 密 模 式, 你 可 以 在 john.ini 中 定 义 自 己 需 要 的 密 码 组 合 方 式。 JOHN 也 在INI 文 件 中 给 出 了几 个 示 例, 在 INI 文 件 的 [List.External:******] 中 所 定 义的 自 订 破 解 功 能。
-restore[:<文件 名>] 继 续 上 次 的 破 解工 作, JOHN 被 中 断 后, 当 前 的 解 密 进 度 情 况 被 存 放 在 RESTORE 文 件 中, 你 可 以 拷贝 这 个 文 件 到 一 个 新 的 文 件 中。 如 果 参 数 后 不 带 文 件 名, J O H N 默 认 使 用RESTORE 文 件。
-makechars:<文件名> 制 作 一 个 字 符 表,你 所 指 定 的 文 件 如 果 存 在, 则 将 会 被 覆 盖。 JOHN 尝 试 使 用 内 在 规 则 在 相 应 密 匙空 间 中 生 成 一 个 最 有 可 能 击 中 的 密 码 组 合, 它 会 参 考 在 JOHN.POT 文 件 中 已 经 存在 的 密 匙。
-show 显 示 已 经 破 解 出 的 密 码, 因 为 JOHN.POT 文 件 中 并 不 包 含 用 户 名, 同时 你 应 该 输 入 相 应 的 包 含 密 码 的 文 件 名, JOHN 会 输 出 已 经 被 解 密 的 用 户 连 同 密码 的 详 细 表 格。
-test 测 试 当 前 机 器 运 行 JOHN 的 解 密 速 度, 需 要 1 分 钟, 它 会 得 出 在 当 前的 情 况 下 解 密 的 各 种 可 能 情 况 下 相 应 的 解 密 速 度, 如 同 时 解 密 100 个 用 户 时 的平 均 速 度, 使 用 遍 历 法 解 密 模 式 时 解 密 的 速 度。 salts 指 用 户 个 数, 如 果 给 出 的对 于 100 个 用 户 解 密 的 平 均 速 度 为 18000 次/秒, 那 么 表 明 同 时 对 100 个 用 户 解密, 解 密的 速 度 为 每 个 180 次/秒。 因 为 绝 大 多 数 的 时 间 被 用 于 密 匙 比 较 过 程 中 了。所 以 应 该 对 用 户 进 行 挑 选。
-users:
-shells:[!][,..] 和 上 面 的 参 数 一 样, 这 一 选 项 可 以 选 择 对 所 有 可 以 使用 shell 的 用 户 进 行 解 密, 对 其 他 用 户 不 予 理 睬。 “!” 就 是 表 示 不 要 某 些 类 型 的用 户。 例 如: “ -shells:csh”。
-salts:[!] 只 选 择 解 密 用 户 大 于 的 帐 号, 可 以 使 你 得 到 选 择 的 权 利, 尽 快的 得 到 所 需 要 的 用 户 的 PASS。
-lamesalts 指 定 用 户 中 密 码 所 使 用 的 cleartext。 (我 不 大 清 楚 此 功 能 的作 用)。
-timeout:<几分钟> 指 定 解 密 持 续 的 时 间是 几 分 钟, 到 时 间 JOHN 自 动 停 止 运 行。
-list 在 解 密 过 程 中 在 屏 幕 上 列 出 所 有 正 在 尝 试 使 用 的 密 码, 建 议 不 要 使用, 它 会 将 大 部 分 时 间 浪 费 在 显 示 上, 极 大 地 拖 慢 解 密 速 度。 一 般 只 是 适 用 于 重定 向 输 出 到 文 件 后, 检 验 你 所 设 定 的 某 些 模 式 是 否 正 常。
-beep -quiet 当 解 密 出 密 码 时 是 否 要 让 PC 喇 叭 叫 一 下, 以 提 醒你。
-noname -nohash 不 使 用 内 存 来 保 存 “用 户 名” 等 内 容。
-des -md5 指 定 使 用 的 解 密 方 式 是 解 DES 还 是 MD5, 对 于 解 密 DES 密 码 不用 理 会 这 一 选 项。
—————————
john 解 密 模 式 详 解
—————————
一、“Single Crack” 模式 — 即“简单解密模式”
这 一 模 式 是 “john” 的 独 到 的 地 方, 主要 原 理 是 根 据 用 户 名 猜 测 其 可 能 的密码, 当 然 了, 解 密 者 是 计 算 机 而 不 是人, 所 以 需 要 人 为 定 义 相 应 的 模 式 内容。 其 模式 的 定 义 在 john.ini 中 的 [List.Rules:Single] 部 分, 我 们 选 取 前 几 行 给大 家做 一 个 解 释, 假 设 有 一 用 户 名 为 fool:
[List.Rules:Single]
###
# Single crack mode rules, extended Crack syntax
###
# Simple rules come first…
:[:cl]———————————–注释1
# These were not included in crackers I’ve seen, but arepretty efficient
# so I include them near the beginning
>6×06————————————注释2
>7lx07———————————–注释3
>6/?ulx06——————————–注释4
>5×05————————————注释5
在 john.ini 中 起 头 为 # 的 行 为 注 释 行, 程序 在 遇 到 此 行 时 自 动 跳过。
“:[:cl]” 此 行 表 示 使 用 用 户 名 自 身 作 为 密 码 进 行 尝 试, 即 fool, 而“[:cl]” 在 保 持 原 字 母 不 变 的 前 提 下, 首 先 强 制 第 一 个字 母 大 写 “c”, 其 余 字 母均 变 为 小 写 “l”, 即: Fool, 也 就 是 说 此 行 导 致 john 尝 试 使 用 fool 和 Fool 两个 单 词 进 行 解 密。
“>6×06” 表 示 当 用 户 名 大 于 6 个 字 符 的 时 候, 从 第 0 个算 起, 截 断 至 第 5 个, 则 共 保 留 下 6 个 字 母, 其 余 丢 弃 不 用。 如: 用 户 名 为foolers, 则 会 产 生 如 下 被 尝 试 的 密 码: 即 fooler。
“>7lx07” 和 上 面 相 同, 此 行 对 于 >7 的用 户 名, 截 断 至 7 个 字 母, 而 且 使 用 “l” 强 制 使 用 小 写 字 母。
“>6/?ulx06” 表 示 对 于 长 度 >6 的 用 户名, 截 断 至 6 个, 强 制 小 写, “/?u” 则 表 示 只 有 在 用 户 名 中包 含 小 写 字 母 “u” 才 有效, 否 则 跳 过 整 条 规 则,不 进 行 尝 试。 例 如 对 于 “foolers” 此 规 则 不 起 作 用, 因 为“foolers” 中 不 包 含 小 写 字 母 “u”。
“>5×05” 和 上 几 个 例 子 相 同, 不 用 解 释 了。
其 余 部 分 自 己 参 考 john.ini, 具 体 参 数解 释 如 下:
john.ini中的每一行均由“条件指令”+“规则指令”组成。
位 于 起 始 部 分 的 “条 件 指 令”:
: 表示保持字母不变。
>n 表 示 满 足 条 件 的 是 字 符 长 度 >n 的单 词, n 的 取 值 范 围 为 0-9。
^x 表 示 在 某 单 词 前 部 添 加 字 母 “x”。
$y 表 示 在 某 单 词 尾 部 加 上 一 个 字 母“y”。
l 强 制 整 个 单 词 全 为 小 写 字。
u 强 制 整 个 单 词 全 为 大 写 字。
c 强 制 单 词 第 一 个 字 为 大 写 (单 词 的 其 余 部 分 不 受 到 影 响)
r 将 单 词 反 序 排 列: 如 “fool” -> “loof”。
d 进 行 单 词 加 倍: 如 “fool” -> “foolfool”。
f 进 行 单 词 加 倍,后 部 单 词 反 向 写: 如 “fool” ->“foolloof”。
p 以 一 个 字 母 为 限 度, 在 保 持 单 词 不 变 的 前 提 下, 尝 试 单 词 的 所 有 组 成 字母 的 大 小 写 组 合, 如 (“fool” -> “Fool”、 “fOol”、 “foOl”、“fooL)”。
onx 从 某 单 词 的 第 n (由 0 开 始 计 数) 个 字 母 开 始, 将 原 来 的 字 母 取 代 为 字母 “x”。 例 如: “o1A” 则 对 于 “fool” 则 产 生 “fAol”。
inx 从 某 单 词 的 第 n (由 0 开 始 计 数) 个 字 母 开 始, 在 字 母 前 插 入 以 字 母“x”。 例 如: “i1A” 则 对 于 “fool” 则 产 生 “fAool”。备 注:如 果 指 定 的 值n> 单 词 总 长 度, 则 相 应 的 插 入 字 符 将 会 添 加 到 单 词的 尾部。
xnm 从 单 词 的 第 n 位 开 始, 将 单 词 截 成 最 长 度 为 m 个 的 单 词。 具 体 的 例 子就 不 列 举 了, 上 面 已 经 谈 过 了。
以 下 是 一 些 用 于 字 母 变 化 的 命 令:
sxy 字 母 替 换, 将 某 单 词 中 的 所 有 为 “x” 的 字 母 替 换 成 字 母 “y”。
s?cy 用 字 母 “y” 来 替 换 单 词 中 的 所 有 包 含 于 “c 字 母 组” 中 的 字 母。 关于“字 母 组” 下 面 讨 论。
@x 删 除 单 词 中 所 有 “x” 字 母。
@?c 删 除 单 词 中 所 有 包 含 于 “c 字 母 组” 中 的 字 母。
!y 跳 过 所 有 包 含 含 有 字 母 “y” 的 单 词。
!?c 跳 过 所 有 包 含 含 有 “c 字 母 组” 中 字 母 的 单 词。
/x 包 含 字 母 “x” 的 单 词 有 效。
/?c 包 含 在 “c 字 母 组” 中 字 母 的 单 词 为 有 效。
=nx 所 有 指 定 位 置 n 的 字 母 为 “x” 的 单 词 才 有 效。
=n?c 所 有 指 定 位 置 n 的 字 母 包 含 于 “c 字 母 组” 的 单 词 才 有 效。备 注: 和 上面 一 样, 起 始 字 母 位 数 从 0 开 始 计。
“字 母 组” 的 定 义 如 下:
?? 等 于 字 母 “?”。
?v 等 于 所 有 的 元 音 字 母 “aeiouAEIOU”。
?c 等 于 所 有 的 辅 音 字 母“bcdfghjklmnpqrstvwxyzBCD FGHJKLMNPQRSTVWXYZ”。
?w 等 于 “白 色 空 格” 符 号: “ ”;
(原 文 的 whitespace 不 晓 得 如 何 解 释 好, 好 象 可 以 解 释 为 “空 格” 或 者 是“EOF 结 尾 符”。)
?p 等 于 所 有 标 点 符 号 “.,:;’”?!`”。
?s 等 于 特 殊 符 号“$%^&*()-_+=|\<>[]{}#@/~”。
?l 等 于 所 有 26 个 小 写 字 母 (“a” 到 “z”)。
?u 等 于 所 有 26 个 大 写 字 母 (“A” 到 “Z”)。
?d 等 于 10 个 阿 拉 伯 数 字 (“0” 到 “9”)。
?a 包 括 所 有 26 个 字 母 的 大 小 写 形 式 (“a” 到 “z” + “A” 到 “Z”)。
?x 包 括 26 个 字 母 大 小 写 + 10 个 阿 拉 伯 数 字(“a-z”+“A-Z”+“0-9”)。
备 注: 组 名 可 以 用 大 小 写 的 区 别 来 表 示 “逻 辑 非” 的 关 系, 小 写 表 示 肯 定, 大写 表 示 否 定。例 如: 用 ?d 可 以 表 示 “所 有 数 字”, 而 大 写 ?D 就 表 示“所 有 非 数 字的”。
以 下 是 一 些 附 加 的 指 令:
{ 单 词 循 环 左 移 一 位: “fool” -> “oolf”, 当 然 要 左 移动 两 位 就 表 示 为 “{{”, 以 下 同。
} 单 词 循 环 右 移 一 位: “fool” -> “lfoo”。
Dn 删 除 n 位 的 字 母 (由 0 开 计), 切 开 的 右 面 的 单 词 部 分 自 动 接 上, 不 会 流下 空 格。
P “crack” -> “cracked”, 使 用 单 词 的 过 去 式, 只 针 对小 写 单 词 有 效。
G “crack” -> “cracking”, 使 用 单 词 的 现 在 进 行 式, 同样 只 针 对 小 写 单 词 有 效。
~i 根 据 键 盘 的 排 列 规 则, 转 换 为 “shift 键” + “对 应 键” 所 得 到 的 单 词, 如“12345” -> “!@#$%”。
~I 进 行 字 母 大 小 写 转 换, 不 影 响 数 字 及 非 字 母 的 其 他 值, 如 “Fool123”-> “fOOL123”。
~v 将 单 词 中 所 有 元 音 字 母 转 为 小 写, 如 “Crack96” ->“CRaCK96”。
~> 根 据 键 盘 的 排 列 方 式 将 所 有 的 字 母 右 移 一 格。 例 如 我们 可 以 看 到 键 盘 字 母 “c” 键 的 右 边 是 “v” 键, 则 “Crack96”-> “Vtsvl07”。
~< 和 上 一 个 一 样, 不 过 是 左 移, 如 “Crack96”> “Xeaxj85”。
针 对 “single crack” 模 式 的 专 用 指令
专 用 指 令 有 双 字 串 支 援, 控 制 这 些 指 令 要 套 用 指 令 时 需 要 用 到 下 列 的 命令:
1 对 第 一 个 单 词 的 规 则
2 对 第 二 个 单 词 的 规 则
+ 对 于 完 成 以 上 1、 2 规 则 变 换 后 所 得 到 的 单 词 再 进 行 其 他 的 变换。
(要 求 “+” 必 需 只 用 在 “1” 或 “2” 之 後, 也 就 是 1+2 或 2+1)
(Chinaroot 备 注: 以 下 一 段 我 不 太 明 白, 所 以 英 文 照 抄, 天 晓 得 “GECOS”是 什 么 东 西, !@$#$%&%$)
If you use some of the above commands in a rule, it will onlyprocess word pairs (full names, from the GECOS information), andreject single words.A ‘+’ is assumed at the end of any rule thatuses some of these commands,unless you specify it manually. Forexample, ’1l2u’ will convert the first word to lowercase, thesecond one to uppercase, and use the concatenation of both. The usefor a ‘+’ might be to apply some more commands: ’1l2u+r’willreverse the concatenation of both words, after applying somecommands to them separately.
(根 据 本 人 开 始 的 猜 测, 估 计 应 该 是 将 规 则 按 你 要 求 的 顺 序 执 行, 后 来 发 现猜 错 了, 现 在 终 于 明 白 了。 我 们 已 经 知 道 “l” 命 令 将 字 母 转 为 小 写, 而 “u” 命 令将 字 母 转 为 大 写, “r” 命 令 将 字 母 的 顺 序 颠 倒, 所 以 对 于 以 下 的 shadow, 进 行 尝试 的 结果 如 下:
首 先 是 shadow 部 分:
root:!2dR3.pEo6#Q:0:1:Super-User:/:/bin/csh
foolers:% dY).p*12Ver:0:1:AppleUser:/:/bin/csh
abc:QkzL@4htGHI:201:200::/home1/ahb:/bin/csh
最 后 得 到 如 下 两 个 结 果:
“1l2u” ———— “superUSE”、 “userSUPE”
现 在 终 于 明 白 了, 原 来 此 命 令 只 使 用 shadow 中 的 用 户 注 解 名 (GECOS) 而非 用 户 名, 而 且 只 对 于 可 区 分 的 由 两 个 单 词 组 成 的 词 组 才 有 效, 如 上 例 的“Super-User”, 由 于 其 中 间 使 用 了 连 词 符 号 “-”, 被 区 分 为 “Super” +“User”, 系 统 自 动 进 行 “左 结 右” 和 “右 接 左” 的 单 词 组 合, 组 合 后 超 过 8 位 的 部分 被 截 断; 而 “AppleUser”、 “ahb” 却 未 被 使 用。所 以 基 于 同 样 的 原 理, 以 下 命 令可以 得 到 的 结 果 如 下:
“1l2u+r” ———- “RESUrepu”、“REPUSres”。
批 处 理 规 则:
你 可 以 使 用 “[]” 来 使 用 一 批 字 符, 如 “[0-9]” 则 表 示 “0-9” 这 10 个 数字, 你 也 可 以 混 合 使 字 母 列 表 加 批 量 的 格 式, 如 “[aeiou1-9]” 则 表 示 包 括 所 有的 元 音 字 母 + “0-9” 十 个 数 字。 简 单 的 例 子 还 有 “[A-Z]”、 “[a-z]”、“[A-Z0-9]”。 比 方 说: 我 们 加 入 一 行 如: “l$[0-9]”, 则 表 示 强 制 使 用 小 写 字 母,并 且 在 每 个 字 母 后 面 加 入 “0-9” 这 十 个 数 字, 即: 如 果 用户 名 为 fool, 则 john 尝试 使 用 fool0、 fool1、 fool2、 …… fool9, 尝 试 进 行 解 密。
二、 “Wordlist Crack” 模式 — 即“字典解密模式”
此 解 密 模 式 需 要 用 户 指 定 一 个 字 典 文 件, john 读 取 用 户 给 定 的 字 典 文 件中 的 单 词 尝 试 进 行 解 密。 原 理 是: 用 户 经 常 使 用 象 hello、 superman、computer、 … 之 类 的 有 意 义 单 词 作 为 自 己 的 密 码。 john 中 自 己 带 了 一 个 字 典,文 件 名 为: password.lst, 里 面 包 含 了 一 些 常 被 用 来 作 为 密 码 的 单 词。 以 下 给 出几 个:
12345、abc123、passwd、123456、Hockey、asshole、newpass、internet、Maddock、newuser、12345678、computer
00、Horses、Internet、duck2、Mickey、Cowboys、fiction
当 然 了 所 带 的 字 典 比 较 小, 如 果 你 觉 得 不 够 用, 可 以 到 ftp://coast.cs.purdue.edu/pub/dict里 找, 可 以 找 到 好 几 十 兆 的 大 字 典 文 件。 使 用 方 法 很 简 单, 假 设 字 典 文 件 名 为:password.lst, shadow 为 shadow.txt, 则 命 令 为:
john -word:password.txt shadow.txt
和 “single mode” 一 样, 使 用 “字 典 解 密 模 式” 时, 也 可 以 使 用 “规 则”, 具体规 则 的 定 义 在 john.ini 中 的 [List.Rules:Wordlist] 部 分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值