首页
社区
课程
招聘
[原创]酷狗7去广告---(修改窗口布局文件)
发表于: 2011-10-19 22:58 14509

[原创]酷狗7去广告---(修改窗口布局文件)

2011-10-19 22:58
14509

【软件版本】v7.0.0.8
【发布时间】2011.7.13
【操作平台】Win7
【使用工具】PEiD+OD+WinHex
【作者声明】本人只是对逆向技术感兴趣,没有其他目的。
--------------------------------------------------------------------------------------------------------
前几天在论坛上看到了一个去酷狗7广告的逆向帖子(帖子链接:http://bbs.pediy.com/showthread.php?t=141203),于是自己也想把自己的酷狗7广告去掉。于是我按照帖子上的方法进行了搜索,结果没有发现特征字符串,我就怀疑是不是版本问题。于是我找了一个自己酷狗的版本信息,果然……(新手的毛病)。暂时无头绪,百度大神去……(酷狗7去广告,结果第一条的搜索结果的是:可以修改资源文件,SkinRes.skn,这个文件本质是一个zip文件,通过修改里面的SkinResDef.xml文件可以达到去广告的目的……)。
于是自己赶紧找到酷狗7装目录下的SkinRes.skn文件,


一打开文件,居然要密码,(密码是通过网络传输还是写在程序的变量中呢?),带着这个疑问,开始逆程序。
首先第一步,用PEiD查壳,

结果什么都没发现。。。长叹一口气,(去壳俺不懂啊
既然程序布局是保存在文件里面的,那么就从CreateFile处开始设断点吧。查一下模块间调用,哇,这么多……

没办法,全部设断点,一个个找。于是,一路F9过去,跟了老半天,终于看到一个熟悉的路径D:\Program Files\KuGou7\SkinRes.skn,(离目标貌似近了一步…………)继续F7。迷茫了……有没有头绪了,除了一些字符串处理以及一些看不懂处理过程,似乎不对头了,(再跟几分钟,没戏就换条路……

有希望!!!!我找到了一个函数:

WideCharToMultiByte,这个函数主要是用来把宽字符转换为ASC字符的,使用宽字符的原因应该是增加程序的移植性吧(和unicode有关的)。我已经在代码里面注释了,这个函数先是计算目标字串的长度,然后申请BUF在进行转换的。(看到自己熟悉的函数,有点激动……
而且转换的参数就是刚才那个路径:

继续F7……
来到了一个函数里面,而且在OD的注释栏里面标注着那个ASC:"SkinResDef.xml"(貌似离目标又近了……

(先别激动,继续走),对于当前这个函数,但凡看到一个像地址的,我都会用命令去查看其内容。当跟到那个标注"SkinResDef.xml"没过多久,就在一个函数返回的地址里面看到了熟悉的xml内容:而且我把那些内容复制到一个新的文件里面,其大小和压缩软件的大小是一样的124.1KB,(没错了,就是那个布局文件,既然现在已经出现了明文内容,那么解密处理也许就在前面不远处)

于是我在前面的代码设了断点,重新运行程序,就在跟到那个字符串没多远的地方的一个函数里面,在压栈的参数里面看到了一个字符串:

拿去试试,看是不是密钥,……,当我把那串字符串复制到密码框,点确定以后,顿时我激动了!!没错,这就是密钥。
修改完资源文件后,酷狗的广告果然看不到了。(图我就不贴了,就长那样……想象一下)
新手上路,若有错误,欢迎拍砖。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 6
支持
分享
最新回复 (13)
雪    币: 275
活跃值: (51)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
哥就在旁边见证着·······
不过最新版本的 已经是没有密码的了···
你咋不把xml修改的地方说下···
2011-10-19 23:07
0
雪    币: 102
活跃值: (85)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
3
顶一个先,
2011-10-20 00:21
0
雪    币: 209
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不错啊 这方面的资料不多啊 谢谢共享  学习了
2011-11-3 00:32
0
雪    币: 169
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
大哥啊,
密码是通过网络传输还是写在程序的变量中呢?
这个问题非常好啊,如果用到木马的免杀里面非常无敌了、
哈哈
2011-11-4 05:25
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
楼主思路很好,不过主要环节表述不够清楚。
2011-11-4 16:10
0
雪    币: 2591
活跃值: (1563)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
其实 CreateFile 处用条件断点多好呀?
2011-11-8 12:16
0
雪    币: 261
活跃值: (83)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
主要部分没有写清楚哇,怎么没有下文了呢?!
2011-11-16 10:41
0
雪    币: 328
活跃值: (154)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
9
第一次写这么长的帖子,思路有点乱,以后改正~~
2012-3-25 18:29
0
雪    币: 27
活跃值: (127)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
10
不错,学习了,谢谢:)
2012-3-25 20:05
0
雪    币: 1559
活跃值: (1795)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wbs
11
学习了 谢谢分享
2012-4-1 10:14
0
雪    币: 2194
活跃值: (1001)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
  大致思路还是明白了,不过具体怎么修改那里好像没说,不过这不重要了
2012-4-1 14:42
0
雪    币: 57
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
不错  楼主的新思路 学习下
2012-4-13 08:13
0
雪    币: 275
活跃值: (51)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
14
我勒个去,看雪什么情况,我登陆了没有?
2012-10-16 20:44
0
游客
登录 | 注册 方可回帖
返回
//