记一次有趣的操作——账号密码强制覆盖

一、背景

今年年初暴雪游戏正式关闭国服,作为wow老玩家还想继续漫步艾泽拉斯,于是搞了一个x服,并且放到了云服务器上,和朋友一起游玩,本文章诞生的主要原因——朋友的密码忘记了!!!

于是我想尽办法想要解决密码问题,具体步骤如下:

二、知己知彼-观察数据库

我这边使用了navicat来连接数据库

之后进入到realmd库中的account(存储账号信息的表格) 

观察表中我们可以得知,用户名肯定是明文存储了,密码经过了sha的加密,还有一个sessionkey、v、s(之前登陆失败,一度以为这些也是某些认证加密)也是一串不知道啥子的东西。

 三、另辟蹊径-注册页突破

就在我无从下手的时候,突然想到,我之前从别的地方套了一个注册页来方便我的朋友们注册账号

 

 那我可以查看修改密码的php源码,从而分析出加密规则

可惜打开cpwd.php文件却发现是乱码,之后我从网上搜索php乱码如何解决,却没有一个方法生效 

四、黑刀显威

观察乱码文件我发现,zend并不像是乱码,于是通过网上搜索,居然是一种php文件加密(见识短浅)

Dezender就是大名鼎鼎的黑刀 (吐槽:这个软件好远古2010年)

解密过程就不放了

之后通过破译以后我们看到了文件源码

找到了最关键的一行代码

 我们可以看到通过sha1加密算法按照格式:用户名:密码的形式 把对应账号id的密码强制覆盖

 五、柳暗花明-成功拿下

那我们以GM3为例

打开百度输入sha1在线加密

之后把这个加密后的密文直接扔进数据库里覆盖尝试登陆却失败了?????不应该啊

到了这里我就考虑是不是后面密文还有相关的认证没法绕过

我注册了一个新的账号发现,新的账号后面居然是空值,在登陆一次后自动赋值,而且从sessionkey来看的话,多半是服务器这边的一个记录 于是将GM3账号的后面删除以后

 成功登陆

六、命令验证

 其实一开始并不是直接用这个方法修改的密码,而是魔改了修改密码网页,写了一个修改页然后访问执行SQL命令,来达到更换密码的目的

在这里直接通过命令实现密码的更改

 至此本文结束,看一下大家有没有对x服感兴趣的,如果人多我会出,如何实现aibot机器人,局域网篇(本地联机),上云服务器篇(异地联机)

本文目的只为提供学习思路,禁止违法行为和用途!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Doomer_0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值