架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2329|回复: 2

[资料] 【实战】C# 程序通过 Cookie 解密 Discuz 当前用户信息

[复制链接]
发表于 2022-10-23 22:02:39 | 显示全部楼层 |阅读模式
需求:当用户登录成功后,Discuz 程序会将登录凭证以响应的方式写入到 cookie 中,如果知道 cookie 后,如何解密 cookie 中当前登录者的用户 Id 呢?

首先,需要登录到服务器,查看 /config/config_global.php 中如下 2 个配置:

Cookie 前缀:$_config['cookie']['cookiepre']
加解密 Key:$_config['security']['authkey']

以本站为例:$_config['cookie']['cookiepre'] = 'Mqd1_';,所以就查看 cookie 中的:Mqd1_2132_saltkey 和 Mqd1_2132_auth 的值。

原理如下:

$authkey = "*********";这个是秘钥。在config/config_global.php文件中的 $_config['security']['authkey'] = '*******';就是这个,你看看你自己的是什么就是什么.
$salt = $_COOKIE['Mqd1_2132_saltkey'];//这个是discuz产生的随机数
$key = md5($authkey.$salt);//解密key
$info = uc_authcode($_COOKIE['Mqd1_2132_auth'], 'DECODE',$key);

然后打印出来$info得到的结果类似于这种:

bf6b7e1ddd3da431342f550eb8ce19e5 1

我们发现后面有个1或者其他数字,这个数字表示你的用户id,这样我们就获得的用户信息,然后根据这个id获取ucenter的用户信息即可。
知道如何解密后,c# 代码如下:

在程序输入对应信息,执行结果如下:

QQ截图20221023220108.jpg

程序下载:

游客,如果您要查看本帖隐藏内容请回复






上一篇:【实战】搭建家庭媒体 Docker 之迅雷下载、DLNA 服务
下一篇:VDI 产品比较:VMware Horizo​​n 与 Citrix
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-10-24 12:24:43 | 显示全部楼层
学习一下
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2022-10-25 10:13:44 | 显示全部楼层
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-6-18 16:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表