吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

领取今日签到奖励
查看: 5222|回复: 124

[原创绿化] 有道词典-8.5.1.0 PC版本去广告

  [复制链接]
发表于 2019-2-12 16:29
本帖最后由 nevinhappy 于 2019-2-19 20:09 编辑

觉得有道词典还是比较轻快的,只是界面上的广告让人非常烦,所以抽点时间来看看怎么去掉(非破解)。

0:01,进程分析

procexp.exe中看到主要有5个进程:
YoudaoDict.exe.
+---YoudaoDictHelper.exe
+---YoudaoEH.exe
+---YoudaoWSH.exe
+---YoudaoDictHelper.exe
并不太清楚它们的分工,不过从结构看YoudaoDict.exe.应该是主功能进程,所以先从它开始分析。

找到YoudaoDict.exe文件,进行IDA载入,等待代码分析结果。

从反编译识别的函数信息可以看到比较多的CEF前缀信息,先找一下相关信息:
1, 相关的github工程:https://github.com/karllen/cef3-duilib-YDDemo
2, 相关的介绍:CEF(Chromium Embedded Framework)是在C++客户端里面嵌入webkit。
代码仓库:https://bitbucket.org/chromiumembedded/cef
大体知道词典使用的是什么框架进行开发了,从上面的框架信息,初步判断是使用C++ 和 JS开发框架,如果业务逻辑使用JS实现,应该就不需要逆向分析YoudaoDict.exe文件了。
所以接下来去查看安装目录信息。

0x3, 安装目录:

从目录中查找到一些关键的目录文件信息,结构如下:
+---8.5.1.0
+---skins
|         +---strings.xml  # 控件名和中文对应定义。
|         +---main_layout.xml # 定义主界面控件和布局。
|         +---main_wnd_layout.xml
|         +---mini_wnd_layout.xml
|         +---pop_wnd_layout.xml
+---resultui
|         +---js
|          |  +---manifest.js
+…
这样基本验证了上面的猜测,业务逻辑都是在JS和XML中定义,其中string.xml定义了控件名和中文映射。XXX_layout.xml文件定义了界面布局信息,其中main_layout.xml是主界面的布局定义。
所以基本可以考虑通过编辑main_layout.xml来裁剪界面上的功能(即可以达到去广告的目的)。

0x4, 功能裁剪:

有几个功能觉得在本地不需要,所以考虑进行裁剪:
1,        人工翻译
2,        同传
3,     精品课
4,        广告
在string.xml中通过对应中文找到控件名,再进行删除就OK了,其中广告的清除有点麻烦,可以通过Adv关键字进行清除,测试下来OK!具体结果见附件XML文件,进行替换文件后,重启词典可验证。
效果图:
0..png

0x05, VIP权限:

已经去广告已经是明显告诉有技术水平的同学,可以看XML和JS来修改词典的行为了,获取VIP也并不复杂,对文件进行字符查找“vip”,找到有关的文件lexicon.min.js,

        function n(t, e, a, i) {
            var s = this;
            s.vipInfo = u.default.get("dict_vipInfo") || {}, i ? ydk.isLogin({
                success: function (i) {
                    i.isLogin ? s.vipInfo.isVip ? s.eableDownloadResource(t, e, a) : s.openDialog() : ydk.login({
                        success: function (i) {
                            "success" == i.status && (s.vipInfo.isVip ? s.eableDownloadResource(t, e, a) : s.openDialog())
                        }
                    })
                }
            }) : s.eableDownloadResource(t, e, a)
        }

可以看到获取vip信息是通过u.default.get("dict_vipInfo"),那么set操作呢,通过dict_vipInfo查找,找到文件app.js:

                }), ydk.onVipInfoGot({
                    success: function (t) {
                        console.info("ydk.onVipInfoGot:" + (0, a.default)(t));
                        var n = {isVip: !0, expire: !0, auto: t.auto, open: t.open};   //已经添加了越权修改
                        O.default.set("dict_vipInfo", n), e.$store.dispatch("setIsVip", t.isVip)
                    }
                }), ydk.onLoginStatusChanged({
                    success: function (t) {
                        if (console.info("ydk.onLoginStatusChanged:" + (0, a.default)(t)), 0 == t.status) {
                            var n = {isVip: !0};       // 已经添加了越权修改
                            O.default.set("dict_vipInfo", n), e.$store.dispatch("setIsVip", !1)
                        }
                        e.$store.dispatch("setIsLogin", t.status)
                    }

可以找到对应的VIP权限信息修改,只要将本来为false的标识改为true,就OK了,不过这里作了转换,用“!0”和“!1”表示。
修改后,测试下载VIP离线词库(需要[b][color=#ff0000]有用户登录[/color][/b],不需要VIP),效果:
QQ图片20190219200235.png
有技术的同学自己玩,附件是我修改后的内容。

0x06, 后续:

考虑到软件会自动更新,所以为了避免main_layout.xml被更新,进行了备份,同时配置关闭“自动更新”。

main_layout.rar

5.91 KB, 下载次数: 534, 下载积分: 吾爱币 -2 CB

修改后的文件

app-patched.rar

55 KB, 下载次数: 324, 下载积分: 吾爱币 -2 CB

VIP patch

点评

跟着大神有肉吃,我竟然沾光了,谢谢啊!  发表于 2019-3-10 18:07

免费评分

参与人数 35吾爱币 +36 热心值 +34 收起 理由
qinluezhew3 + 1 大神佩服得五体投地啊
wjkkk + 1 + 1 我很赞同!
chr0247 + 1 + 1 认真看帖,学会了如何操作,此贴强大!!!!!
someGenki + 1 + 1 谢谢@Thanks!
ahaneo + 1 + 1 谢谢@Thanks!
Rhymastic + 1 + 1 鼓励转贴优秀软件安全工具和文档!
灵溪019 + 1 + 1 我很赞同!
路过的螺丝刀 + 1 + 1 热心回复!
lapangxe + 1 + 1 我很赞同!
寒叶零度 + 1 + 1 谢谢@Thanks!
anthonyzeng + 1 + 1 优秀!
ep8c20030 + 1 + 1 楼主厉害啊, 改了以后真的能下新牛津词典了, 感谢感谢!!
ChangeNow + 1 谢谢@Thanks!
lxc0 + 1 + 1 谢谢@Thanks!
yangxiaolu + 1 + 1 下载两个附件,然后官网下载安装,搜索文件,替换,OK
ab10012358 + 1 + 1 热心回复!
Daxx88 + 1 + 1 楼主放下成品呗
maybeldp丶 + 1 + 1 谢谢@Thanks!
liu6933 + 1 官网才V8.0啊,楼主这里都V8.5了?
debugging + 1 谢谢@Thanks!
老湿的完全体 + 1 + 1 用心讨论,共获提升!
zhuyenan0610 + 1 + 1 用心讨论,共获提升!
viper083 + 1 + 1 谢谢@Thanks!
吾爱矮人 + 1 + 1 鼓励转贴优秀软件安全工具和文档!
bin_chb + 1 + 1 热心回复!
jiangsg + 1 + 1 热心回复!
yicong135 + 1 + 1 谢谢@Thanks!
huangki + 1 谢谢@Thanks!
罗比尼奥 + 1 + 1 谢谢@Thanks!
裘马颇清狂 + 1 + 1 热心回复!
redfoxfish + 1 + 1 热心回复!
wszfp00 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
pachino + 1 + 1 鼓励转贴优秀软件安全工具和文档!
云在天 + 6 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
阳光如此温暖 + 2 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】

如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

发表于 2019-2-12 22:48
楼主的教程很不错,成功的避开了我的智商。
找了半天没发现有破解补丁或者破解版,
大家等我15年,那个时候我就退休了,有足够的时间好好学习一下此贴,弄个破解补丁给大家。

点评

为你的幽默点赞!  发表于 2019-3-10 17:47

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
全能玩 + 1 + 1 谢谢@Thanks!

查看全部评分

发表于 2019-2-15 13:09

感谢楼主分享

感谢楼主分享


感谢分享知识,论坛因你而更精彩
发表于 2019-2-12 16:39
发表于 2019-2-12 16:47 来自手机
厉害,看不懂
发表于 2019-2-12 16:51
大佬这是现场教学吗
发表于 2019-2-12 16:55
真的非常好先谢楼主分享
发表于 2019-2-12 20:51
谢谢大佬分享
发表于 2019-2-12 21:10
教程还是非常棒,授人以鱼不如授人以渔,自学了自己搞定。
发表于 2019-2-12 21:50
就怕用着用着就不能用了
发表于 2019-2-12 22:07
谢谢你的经验之谈!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则


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

Mail To:Service@52PoJie.Cn

快速回复 收藏帖子 返回列表 搜索

RSS订阅|手机版|小黑屋|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2019-3-22 12:24

Powered by Discuz!

© 2001-2017 Comsenz Inc.

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