请选择 进入手机版 | 继续访问电脑版

解决wps2019专业版密钥失效的分析笔记

[复制链接]
查看241 | 回复18 | 2021-11-25 19:10:29 | 显示全部楼层 |阅读模式
一直在用WPS2019专业版,前段时间发现打字不行,只能复制粘贴.
后来发现密钥过期!
201059wefwj1wwlzfizrrb.png

密钥之前说是 永久激活的 694BF-YUDBG-EAR69-BPRGB-ATQXH 重新输入之后 发现确实是无限制的
猜测是软件启动或者进入编辑状态的情况下,对密钥进行了服务器的校验.
于是打开抓包工具,HttpAnalyzerStdV7 抓包发现,当WPS文字进入编辑状态的情况下 触发这个+
201059ve9eitg1399b86a6.png


POST /auth/serialNumber HTTP/1.1
Accept: */*
Content-Type: application/x-www-form-urlencoded
User-Agent: Kingsoft client
Host: cloudservice7.kingsoft-office-service.com
Cache-Control: no-cache
Content-Length: 64

serialNumber=694BF-YUDBG-EAR69-BPRGB-ATQXH&platform=PC&deviceId=
HTTP/1.1 200
Content-Security-Policy: media-src
Content-Type: application/json;charset=UTF-8
Date: Wed, 01 Jul 2020 03:12:48 GMT
Server: nginx/1.12.1
Vary: Accept-Encoding
Vary: Accept-Encoding
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Connection: keep-alive
Content-Length: 114

{"code":0,"msg":"already expired","data":{"isValid":0,"startTime":1585299998,"endTime":1585299998,"totalTimes":1}}

通过对返回数据的时间戳转换 发现 开始和结束时间 是 2020-03-27 17:06:38 可能是我当时安装的时间,我不太记得了 Msg 提示已经过期.
因为已经过期了,所以先删除许可,重新输入 又提示无限制了
解决方法1  可以在Hosts加入  127.0.0.1 cloudservice7.kingsoft-office-service.com 解决过期问题.

201100j39gozm2el3oe23g.png


但,这不是我们文章的重点,既然,我们已经知道了是通过提交数据进行校验的,那么,接下来,用OD打开WPS  抓包软件不要退出,可以清晰的看到封包什么时候提交的
通过前面测试,得知,新建文档,进行编辑的时候 进行注册码的校验,所以,直接运行wps!
对 WSASend  下断 看下能否拦截到封包信息之类的  
新建一个文档 会断下
201100njjsa442ifzjsb2l.png


esp+0x8对应封包数据指针
我习惯字节形式查看
db [[esp+0x8]+0x4]
201100eba7qb0blt7clxab.png


按F9放行 看下能否找到 对应的数据
发现新建没有拦截到 等待过程中 发现自动断下 拦截类似数据如下
201100w3x3k7ef73gf3bux.png


先记录堆栈,其他都是其次 因为有关系  
201100xwp4p4aybbb3cp4h.png

发现堆栈中 调用的是 wininet 的API
也就是说WPS通过调用 wininet 实现了一次网页数据的POST提交
可以搜索资料查看一下 wininet 提交数据数据的整个过程
其中  InternetReadFile 是用来读取返回数据的
对这个API下断,重复之前的动作 删除许可 输入许可,重新新建 等待关键

经过新建文档 等待下断之后

201101vtd55cbv5wg55vt9.png


117EEDC0   55C57CC4  返回到 acm.55C57CC4 来自 wininet.InternetReadFile
返回上一层 循环下面下断
201101dx4xeje8j8zumv8p.png

看到了和抓包数据一致的返回数据
201101hw2ihiu7f2qw2qfi.png


在该函数头部下断 发现了提交的数据,猜测 这个就是用来进行验证的函数
这时候 可以直接对这个函数进行NOP 或者ret 都可以
201101exnf0gpcfxwxpt9g.png


但是,我们继续,返回上一层 定位到
rgb
rgb
rgbacm.dll 中

操作方法 可以对这个函数头部 进行Ret 或者Nop也可以 自行操作即可
本来附带一些IDA分析,但是要吃饭去了:lol

经过反复测试,我还发现一个很神奇的地方,直接删除  rgbacm.dll  文件也可以实现 授权不过期.



来源:来搜网盘搜索引擎 https://www.laiso.net
回复

使用道具 举报

3yu3 | 2021-11-25 19:14:08 | 显示全部楼层
楼主再查查有没有收集个人信息回传服务器的操作,免得它抓住版权问题秋后算帐。
回复

使用道具 举报

xbxbxbxb | 2021-11-25 19:17:25 | 显示全部楼层
你看看吧,应该是类似的。WPS 2019 永久激活工具.7z
回复

使用道具 举报

onlychinese | 2021-11-25 19:23:25 | 显示全部楼层
直接删除   acm.dll  文件也可以实现 授权不过期.
回复

使用道具 举报

千百度 | 2021-11-25 19:26:44 | 显示全部楼层
原理看https://www.52pojie.cn/thread-1191616-1-1.html这个帖子
回复

使用道具 举报

橙子味的成子 | 2021-11-25 19:29:25 | 显示全部楼层
我也遇到过很多次,所以我直接用防火墙阻止WPS联网
回复

使用道具 举报

clide2000 | 2021-11-25 19:32:08 | 显示全部楼层
测试发现直接禁止wps的所有进程联网,也可以防止注册反弹
回复

使用道具 举报

寒心浪子 | 2021-11-25 19:37:14 | 显示全部楼层
那个工具用了,就是修改了LICENSE2.DAT文件  但不是只读,是修改了里面的二进制代码大概8位。
回复

使用道具 举报

iflower | 2021-11-25 19:40:39 | 显示全部楼层
回复

使用道具 举报

揰掵佲 | 2021-11-25 19:42:06 | 显示全部楼层
先删除acm.dll  然后 输入序列号就行了 如果你已经过期了,再删除acm.dll也是过期的!
如果已经过期了,就把序列号删了 再添加一次就行了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

9

主题

20

帖子

45

积分

新手上路

Rank: 1

积分
45