1
wql 2016-01-24 19:07:19 +08:00 via Android
你直接 md5(密码)在数据库里替换原密码,登录
|
2
virusdefender 2016-01-24 19:50:04 +08:00
直接改数据库啊
|
3
buir OP 不行的 各位 我都试完了的 还是密码错误的! 而且这个不是 MD5 是 MD5 二次加密的!
|
4
songjiaxin2008 2016-01-24 20:09:44 +08:00
你找一个别的主机 安装 typecho 密码就设置你原来的 然后去数据库拷出来 覆盖原来的那个?
|
5
pimin 2016-01-24 20:11:47 +08:00 via iPhone
md5 加盐的而已
搜索引擎有解 |
6
Hello1995 2016-01-24 20:17:34 +08:00 via Android 1
本地新建一个,设置好密码,然后数据库里找出密码,替换你原来的数据库里
|
7
buir OP @Hello1995 兄弟 这我都测过的 都无用 看来只有大手术了。
我也算技术宅了我都搞不定也是醉了 居然还熬夜来弄。主打 Delphi 开发 确确实实很少弄 PHP 感谢楼上各位的热情解答。 估计是内部的数据库或者权限的问题或者一些数据表的版本之类的兼容问题吧 有笨办法解决的。 再次感谢各位的 策略。 谢谢! |
8
Hello1995 2016-01-24 21:03:02 +08:00 via Android
或者换一个思路,本地新建一个 typecho ,把旧数据库的文章和评论的表复制过来,其他表不变。办法总是有的,不要着急,慢慢来
|
9
yeyeye 2016-01-24 21:40:11 +08:00 2
楼上的方式其实都不对,为什么这样说呢,以往遇到这样的问题也是考虑自己去生成,或者去搜索引擎找别人生成的 hash 填入数据库
其实正确的方法应该是(既然楼主也说自己是技术宅了),修改登录页面的代码,在生成 hash 后(对比阶段会运算出页面送来的密码,变成 hash 然后和数据库对比),输出到页面,然后在数据库填入这个 hash ,就好了(盐值应该默认参考数据库的,不用改) 写过登陆逻辑的应该很清楚我在说什么,并且会在右上角点感谢。 |
11
Kilerd 2016-01-24 23:07:23 +08:00
> 而且这个不是 MD5 是 MD5 二次加密的!
你是如何知道是二次加密的,知道了也就证明你找到了加密的代码在哪里,也就等于知道了加密的格式。 那么数据库在你手上,盐你可以查库查出来(如果用到了加盐加密的方法),那么直接生成一个就好了啊 处理不了就证明你压根就不知道怎么处理。 |
12
shuimugan 2016-01-25 00:01:14 +08:00 2
<?php
require 'var/PasswordHash.php'; $hasher = new PasswordHash(8, true); $password = $hasher->HashPassword('你的新密码'); echo $password; ?> 站点根目录丢个 php,内容如上,然后访问,把得到的字符串拿去更新用户表对应数据的 password 字段(记得备份) 然后登录时就可以使用新密码了 1.0 版测试通过 |
13
aprikyblue 2016-01-25 00:05:09 +08:00
搜索可解
> password 改为 e10adc3949ba59abbe56e057f20f883e 密码就是“ 123456 ”了。 知道有盐,但是试过直接这么改没有问题可以登陆。。。没再仔细看具体代码实现 1.0 测试通过。。 |
14
shuimugan 2016-01-25 00:29:48 +08:00
|
15
yeyeye 2016-01-25 00:57:01 +08:00 1
@Hello1995 我没用过这个程序,但是我说的方法,是输出页面运算好后的 hash ,不是说要你去改登陆逻辑里的密码加密算法。
这不就是我们平常的 debug 么,一段代码返回的值不是预期的,你也猜不到它到底输出了什么,那就直接输出这个值不就好了?(按照常规去登陆,就会出现加密后的 hash 了) 反正我一直都是这样干的,去搜索引擎还不一定能找到结果呢,我直接输出一下,然后替换到数据库不就解决了。 |
16
buir OP 已经搞定了 感谢大家的帮忙!!!!!!!谢谢!
|