庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>安全技术>黑客攻防>工具使用>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

John the Ripper使用说明

 作者:本站收集   日期:2005-5-20
字号选择〖 〗/ 双击滚屏 单击停止   
=========================
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.false.com/security/john, 这里是 JOHN 的窝点。

-----------------------------
使 用 预 览
------------------------------

以下快速入门针对 PC 用户。
假设你已经取得了某个 SHADOW 文件,并且被存为 SHADOW.TXT 文 件。 在你的硬盘中建一个新的目录, 如 HACK 进入这个目录,将 JOHN1.4 在 此目录中解开,将 SHADOW.TXT 同样拷入此目录,这样我们就完成了解密的准备工作。

现在开始进行解密步骤:

  1. 先 消 灭 FOOL USER, 就是 “笨蛋用户”:
    john -single shadow.txt
  2. 再消灭稍微聪明一点的用户:
    john -wordfile:password.lst -rules shadow.txt
  3. 最 后 进 行 大 屠 杀:
    john -i:all shadow.txt
    当然了, 第三步可能要你的电脑跑上 10000 年。

解 释:

  1. 第一步主要针对笨蛋而进行的,原理是根据用户的名 称, 加上常见的变 化 而猜测密码。 一般所谓的笨蛋是这样的, 比如此用户叫 fool, 而他 的密码是 fool123、 fool1、 loof、 loof123、 lofo...。 这样的用户一般在一分钟内会被全部消灭。
  2. 第 二 部 是 使 用 字 典 文 件 来 进 行 解 密, 不 为 什 么, 只 是 因 为 设 置 密 码 的是 人 而 不 是 机 器, 如 人 们 常 用 hello、 superman、 cooler、 asdfgh、 123456 等 作 为 自 己 的 密 码。 而 -rules 参 数 则 在 此 基 础 上 再 加 上 些 变 化, 如 字 典 中 有 单 词 cool, 则 JOHN 还 会 尝 试 使 用 cooler、 CoOl、 Cool 等 单 词 变 化 进 行 解 密。 一 般 视 SHADOW 中 的 用 户 多 少 及 你 的 字 典 大 小、 你 的 机 器 速 度, 解 密 时 间 从 几 小 时 到 几 天 不 等。
  3. 第 三 步 是 纯 粹 的 碰 运 气 解 法, 主 要 原 理 是 遍 历 所 有 可 能 的 密 匙 空 间。 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:[,..] 只 破 解 某 类 型 的 用 户 或 者 属 于 某 个 组 的 用 户。 如 果 得 到 的 PASSWD 文 件 没 有 包 含 密 文, 那 么 在 得 到 SHADOW 后 应 该 进 行 组 合, JOHN 的 附 带 程 序 UNSHADOW.EXE 可 以 完 成 这 一 过 程, 当 然 了, 你 也 可 以 手 工 做。 一 般 的 能 够 进 入 CSH 的 用 户 都 是 解 密 的 首 选 对 象。 也 可 以 要 UID=0 的 ROOT 级 别 的 用 户。


-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 are pretty efficient
# so I include them near the beginning
>6x06------------------------------------注释2
>7lx07-----------------------------------注释3
>6/?ulx06--------------------------------注释4
>5x05------------------------------------注释5


在 john.ini 中 起 头 为 # 的 行 为 注 释 行, 程序 在 遇 到 此 行 时 自 动 跳 过。



  1. “:[:cl]” 此 行 表 示 使 用 用 户 名 自 身 作 为 密 码 进 行 尝 试, 即 fool, 而 “[:cl]” 在 保 持 原 字 母 不 变 的 前 提 下, 首 先 强 制 第 一 个字 母 大 写 “c”, 其 余 字 母 均 变 为 小 写 “l”, 即: Fool, 也 就 是 说 此 行 导 致 john 尝 试 使 用 fool 和 Fool 两 个 单 词 进 行 解 密。
  2. “>6x06” 表 示 当 用 户 名 大 于 6 个 字 符 的 时 候, 从 第 0 个 算 起, 截 断 至 第 5 个, 则 共 保 留 下 6 个 字 母, 其 余 丢 弃 不 用。 如: 用 户 名 为 foolers, 则 会 产 生 如 下 被 尝 试 的 密 码: 即 fooler。
  3. “>7lx07” 和 上 面 相 同, 此 行 对 于 >7 的 用 户 名, 截 断 至 7 个 字 母, 而 且 使 用 “l” 强 制 使 用 小 写 字 母。
  4. “>6/?ulx06” 表 示 对 于 长 度 >6 的 用 户 名, 截 断 至 6 个, 强 制 小 写, “/?u” 则 表 示 只 有 在 用 户 名 中包 含 小 写 字 母 “u” 才 有 效, 否 则 跳 过 整 条 规 则,不 进 行 尝 试。 例 如 对 于 “foolers” 此 规 则 不 起 作 用, 因 为 “foolers” 中 不 包 含 小 写 字 母 “u”。
  5. “>5x05” 和 上 几 个 例 子 相 同, 不 用 解 释 了。

其 余 部 分 自 己 参 考 john.ini, 具 体 参 数解 释 如 下:
john.ini中的每一行均由“条件指令”+“规则指令”组成。



  1. 位 于 起 始 部 分 的 “条 件 指 令”:

    : 表示保持字母不变。

    >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 个 的 单 词。 具 体 的 例 子 就 不 列 举 了, 上 面 已 经 谈 过 了。
  2. 以 下 是 一 些 用 于 字 母 变 化 的 命 令:

    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 开 始 计。
  3. “字 母 组” 的 定 义 如 下:

    ?? 等 于 字 母 “?”。
    ?v 等 于 所 有 的 元 音 字 母 “aeiouAEIOU”。
    ?c 等 于 所 有 的 辅 音 字 母 “bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ”。
    ?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 就 表 示“所 有 非 数 字 的”。
  4. 以 下 是 一 些 附 加 的 指 令:

    { 单 词 循 环 左 移 一 位: “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”。
  5. 针 对 “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 only process word pairs (full names, from the GECOS information), and reject single words.A '+' is assumed at the end of any rule that uses some of these commands,unless you specify it manually. For example, '1l2u' will convert the first word to lowercase, the second one to uppercase, and use the concatenation of both. The use for a '+' might be to apply some more commands: '1l2u+r'will reverse the concatenation of both words, after applying some commands 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@4%68tGHI:201:200::/home1/ahb:/bin/csh
    最 后 得 到 如 下 两 个 结 果:
    “1l2u” ------------ “superUSE”、 “userSUPE”
    现 在 终 于 明 白 了, 原 来 此 命 令 只 使 用 shadow 中 的 用 户 注 解 名 (GECOS) 而 非 用 户 名, 而 且 只 对 于 可 区 分 的 由 两 个 单 词 组 成 的 词 组 才 有 效, 如 上 例 的 “Super-User”, 由 于 其 中 间 使 用 了 连 词 符 号 “-”, 被 区 分 为 “Super” + “User”, 系 统 自 动 进 行 “左 结 右” 和 “右 接 左” 的 单 词 组 合, 组 合 后 超 过 8 位 的 部 分 被 截 断; 而 “AppleUser”、 “ahb” 却 未 被 使 用。所 以 基 于 同 样 的 原 理, 以 下 命 令 可以 得 到 的 结 果 如 下:
    “1l2u+r” ---------- “RESUrepu”、“REPUSres”。
  6. 批 处 理 规 则:

    你 可 以 使 用 “[]” 来 使 用 一 批 字 符, 如 “[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” 模式 --- 即“字典解密模式”



  1. 此 解 密 模 式 需 要 用 户 指 定 一 个 字 典 文 件, 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


  2. 和 “single mode” 一 样, 使 用 “字 典 解 密 模 式” 时, 也 可 以 使 用 “规 则”, 具体 规 则 的 定 义 在 john.ini 中 的 [List.Rules:Wordlist] 部 分, 以 下 抽 取 其 中 的 一 小 段:

[List.Rules:Wordlist]
###
# Wordlist mode rules (use -rules to enable)
###
# Try words as they are
:
# Lowercase every pure alphanumeric word
!?Xl
# Capita

上一篇:101款精典黑客小工具    下一篇:对于命令行中得到管理员密码的程序的研究  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-5-20
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿