免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: corbie
打印 上一主题 下一主题

linux查看原密码的方法 [复制链接]

论坛徽章:
0
51 [报告]
发表于 2006-10-05 02:01 |只看该作者
原帖由 非凡公子 于 2006-10-5 00:26 发表


这里提供的工具算出来是一样的
kelela老兄,可不可以讲讲,如果两次的结果不一样,它是用什么方法来验正对错呢?有什么原则呢?

验证方法我并不清楚,因为我也没去了解md5的代码和机制(我希望如果有人真正理解,那么站出来指出,前面拿出一幅教训人模样的merlinyu,如果你真的看过代码,你说说看,我想大家是都愿意知道的)
我几个md5加密的工具中发现这一点,一开始我也认为密文是单一的,但是grub-md5-crypt和/etc/shadow(如果用md5加密的话)的实验证明了密文不是唯一的
用grub-md5-crypt是最简单的方法,大家都可以一试.
输入密码,并确认,然后会输出一个加密后的字串,你可以发现,每次不一定相同
但grub如果使用md5加密,这些不同密文对应的原密码是唯一的.

论坛徽章:
0
52 [报告]
发表于 2006-10-05 10:51 |只看该作者
启动linux,然后按e键
   2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/),然后按e键
   3. 修改你现在见到的命令行,加入single,结果如下:
      kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/
   4. 回车返回,然后按b键启动,即可直接进入linux命令行
   5. #vi /etc/shadow
      将第一行,即以root开头的一行中root:后和下一个:前的内容删除,
      第一行将类似于
      root::......
      保存
   6. #reboot重启,root密码为空


stdio大哥贴过的答案,就是先用单用户single模式进入,再去改密码,你试看看了哦

论坛徽章:
0
53 [报告]
发表于 2006-10-05 11:42 |只看该作者
原帖由 kelela 于 2006-10-5 02:01 发表

验证方法我并不清楚,因为我也没去了解md5的代码和机制(我希望如果有人真正理解,那么站出来指出,前面拿出一幅教训人模样的merlinyu,如果你真的看过代码,你说说看,我想大家是都愿意知道的)
我几个md5加密的工具中发现这一点,一开始我也认为密文是单一的,但是grub-md5-crypt和/etc/shadow(如果用md5加密的话)的实验证明了密文不是唯一的
用grub-md5-crypt是最简单的方法,大家都可以一试.
输入密码,并确认,然后会输出一个加密后的字串,你可以发现,每次不一定相同
但grub如果使用md5加密,这些不同密文对应的原密码是唯一的.


明明是你错了,你先了解一下grub-md5-crypt的用途吧.

另外再想想MD5的主要作用是什么,MD5加密同一段明文的结果一定是相同的(只要加密的位数相同),不然怎么拿它来验证证密码.难道连这点你也想不通么?

你总是拿grub-md5-crypt来说,为什么不仔细了解一下grub-md5-crypt呢?

[ 本帖最后由 笨狼追风 于 2006-10-5 11:44 编辑 ]

论坛徽章:
0
54 [报告]
发表于 2006-10-05 11:52 |只看该作者
原帖由 笨狼追风 于 2006-10-5 11:42 发表


明明是你错了,你先了解一下grub-md5-crypt的用途吧.

另外再想想MD5的主要作用是什么,MD5加密同一段明文的结果一定是相同的(只要加密的位数相同),不然怎么拿它来验证证密码.难道连这点你也想不通么?

你总 ...

那么用md5加密的/etc/shadow呢?密文仍然不相同.
我所知道的grub-md5-crypt就是产生md5密文,而使用md5加密的的shadow的第二列仍然是密文
一个问题,请问验证密码的机制是什么,你知道么?
说了半天,除了说我错,却没有论据或者实例,这并不能说明问题.
“MD5加密同一段明文的结果一定是相同的(只要加密的位数相同),不然怎么拿它来验证证密码.难道连这点你也想不通么?”--这只是你的推测,而没经过验证,是吧。我最初也是这么认为的,但看到这个主题后做的几个实验,我觉得这个结论不一定成立。

[ 本帖最后由 kelela 于 2006-10-5 12:05 编辑 ]

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
55 [报告]
发表于 2006-10-05 13:47 |只看该作者
google了一下,总结如下:
我所知的:纯md5算出来的东西肯定是一样的,单向加密肯定是这样,不然没法比较了嘛
找到的东西:grub-md5,这个在加密的时候加了个随机种子,所以每次生成的不一样。
<--
Encrypted: $1$cnCHJ0$IkwhLIGSLSuX0G4855iti1
那我說清楚好了,$$區隔欄位
第一個欄位若為1是使用 MD5-crypt 另一種是 apr1 是針對Apache 所使用password 認證方式
第二個欄位為salt如cnCHJ0,當然你也可以自己給它salt...程式隨機產生為6碼
第三個欄位為密文 IkwhLIGSLSuX0G4855iti1
-->
有人说:其实这个密码字符串是有规律的,就是有变化。它里面有部分字符串是用来表示时间的,也就是说计算哈希值时同时结合了时间的判定,因此,就算是同样的密码,计算出来的哈希值也会不一样,但多试几次你就会发现,似乎哈希值的计算中用到的时间仅仅根秒数的个位数有关系,也就是说你算出 10 个以上的哈希值的话,就一定会有重复的发生了
加上种子,主要是为了防止“字典”攻击的。现在的字典中只能存明码,再根据加密的密码即使生成md5码,而不能直接存md5加密码(因为种子不一定),这样就大大延长了字典攻击所需的时间。
不记得在哪儿看到的了,说grub在写入的时候会把这个种子记录下来,下次有这个种子就可以生成相同的密文了,不过命令行上怎么用我没试出来,也没有找到相关的资料。

论坛徽章:
0
56 [报告]
发表于 2006-10-05 13:58 |只看该作者
原帖由 非凡公子 于 2006-10-5 13:47 发表
google了一下,总结如下:
我所知的:纯md5算出来的东西肯定是一样的,单向加密肯定是这样,不然没法比较了嘛
找到的东西:grub-md5,这个在加密的时候加了个随机种子,所以每次生成的不一样。
<--
Encrypt ...

谢谢探讨。
我再找找shadow的md5密文生成机制的文档看看,也许可以发现字串不同的原因。
如果shadow的机制和grub加密类似,那么得出原密码的可能性会非常小。
如果没有多少文档可查,也只能看代码了

论坛徽章:
0
57 [报告]
发表于 2006-10-05 17:22 |只看该作者
把密码复制不行吗?

论坛徽章:
0
58 [报告]
发表于 2006-10-05 17:25 |只看该作者
不如直接把密码清掉直接。

禁用账户,直接把密码字段改成*就行了

论坛徽章:
0
59 [报告]
发表于 2006-10-06 15:31 |只看该作者
md5规范 http://www.faqs.org/rfcs/rfc1321.html
md5只有输入内容是变量,所以同样的内容加密结果是不变的

论坛徽章:
0
60 [报告]
发表于 2006-10-06 16:30 |只看该作者
把刀架在他的脖子上 看他招不招
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP