首页
社区
课程
招聘
[原创]QQ连连看单机版分析总结
发表于: 2017-4-23 13:53 13242

[原创]QQ连连看单机版分析总结

2017-4-23 13:53
13242

因为步骤很多,我怕贴错图了,你们看到有错误的请指正

尽可能写的详细啰嗦每步都载图上去,方便初学者能看得懂吧

QQ连连看单机版:qqllk.exe

使用到的工具:

CE

虚拟机win7平台32位


1.初始界面

我们发现打开一个真正程序经过了了两层广告。

当我们直接点击真正程序

OD打开发现wmain函数的代码都错误的,仿佛代码给人抽掉了。

总结:

         qqllk.exe(大广告)->qqllk.ocx(小广告)->kyodai.exe(真正代码,但是它代码给抽取了),套路一层接着一层


1.找出真正的程序

1.1 使用PE工具查询基本信息

切记:别直接往OD丢一顿瞎跟,遇到很多call每个按回车键大概看一眼锁定一个最可疑的,千万别都跟进去(浪费时间)

一般分析程序流程应该是:

1.测试软件是否有BUG或则弱密码

2.使用PE工具、资源工具、火绒剑之类的辅助工具帮助你收集信息

3.有目标的用OD(IDA)跟踪

程序:VC6编写

壳:无加壳

TLS:无

异常:无(注意SetUnhandledExceptionFilter之类的函数)

切入点:CreateProcessA或则B(因为它要创建进程(百度广告))


3:使用OD工具跟踪程序

思路:

我们通过测试软件发现程序是通过打开2个广告,再运行真正的程序。

那么就下CreateProcessA或则W断点

2.1:大广告(QQ连连看启动器)

总结:

         大广告调用小广告


2.2:小广告(百度连接)

思路:

直接下CreateProcessA或则W断点

可疑地方:

   这里线程挂起很可疑,我们之前直接打开(真正程序)发现PE文件给修改,然而通过广告间接打开主程序却可以正常运行,我们可以怀疑是(小广告百度连接)把PE文件代码给还原的。


2.3 F8跟出去CreateProcess函数让线程创建完成

2.4 当程序挂起的时候用OD附加主程序(最好在恢复线程之前附加

我们发现这软件是典型的VC6.0编写的:

找到wmain函数


此时wmain的代码还没被修复

2.5 当我们通过广告二(百度连接)运行起来再附加

总结:

   我们可以推测程序是通过这两个广告修复才可以正常运行的。因为我们在第二个广告发现线程停,当运行完广告二(百度连接)程序的时候再附加真正程序就发现修复完毕,那么我们就可以判断程序是通过广告二(百度连接)在挂起线程与恢复线程之间修复完成的。

通过以上的特征:

   我们可以大胆推断程序大概用到的API

一般远程修改对方内存数据都是用到

//1.打开进程

   OpenProcess 打开进程

//2.写入到对方进程空间中

参数说明:

BOOL WINAPI WriteProcessMemory(
  _In_   HANDLE hProcess,
                       //进程句柄
  _In_   LPVOID lpBaseAddress,
            //要写的数据的指针
  _In_   LPCVOID lpBuffer,
                       //缓冲区地址
  _In_   SIZE_T nSize,
                                  //要写入的字节
  _Out_  SIZE_T *lpNumberOfBytesWritten
     //返回实际读取,写入字节
);

 

   SuspendThread 暂停线程

  ResumeThread  恢复线程

 

注意:

OD附加失败处理方法


2.6 开两个其中一个OD附加kyodai.exewinmain下个断点,方便知道什么时候对它修改过


2.7:开两个OD其中一个OD附加广告二(百度链接)下WriteProcessMemory断点

F8执行完这个函数

并且记住修改的地址:43817A

 转到另外一个附加的kyodai.exe主程序查看修改的地方 (刚好是wmain函数call里面)


当执行完WriteProcessMemory函数,然后跟进wmaincall里面发现代码给修复了


2.8 可以在程序执行完WriteProcessMemory就把主程序Dump出来或则在恢复线程ResumeThread恢复线程之前Dump出来



2.9:使用ImportREC修复IAT


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 1
支持
分享
打赏 + 1.00雪花
打赏次数 1 雪花 + 1.00
 
赞赏  CCkicker   +1.00 2017/05/08
最新回复 (31)
雪    币: 1696
活跃值: (2297)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
学习了
2017-4-23 15:40
0
雪    币: 26205
活跃值: (63302)
能力值: (RANK:135 )
在线值:
发帖
回帖
粉丝
3
精彩
2017-4-23 15:52
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
精彩,學習了
2017-4-23 17:14
0
雪    币: 230
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
好屌啊    这么厉害。。学习了。。。找了好久
2017-4-23 19:09
0
雪    币: 2347
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
精彩  学习了
2017-4-24 11:00
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
学习了
2017-4-24 16:06
0
雪    币: 196
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
恭喜叶同学的原创加精,six    six    six         
15PB信息安全教育田田妹纸来送祝福啦
2017-4-25 12:01
0
雪    币: 6694
活跃值: (3514)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
9
2017-4-25 17:12
0
雪    币: 6112
活跃值: (1212)
能力值: (RANK:30 )
在线值:
发帖
回帖
粉丝
10
厉害厉害
2017-4-25 22:54
0
雪    币: 12352
活跃值: (5118)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
很强大哟,来学习了。
介么长,录个视频应该更方便吧。
2017-4-26 13:13
0
雪    币: 61
活跃值: (45)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
12
lz厉害了
2017-4-26 16:29
0
雪    币: 745
活跃值: (3823)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
13
不错,分析的很全面
2017-4-27 18:51
0
雪    币: 8231
活跃值: (1301)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
感谢分享  ,厉害了
2017-4-29 11:27
0
雪    币: 1233
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
学习了,谢谢分享
2017-4-29 21:21
0
雪    币: 207
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
很佩服楼主的dump时机
2017-5-1 10:46
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
学习了
2017-5-1 14:29
0
雪    币: 1431
活跃值: (4418)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
18
Howsk 很佩服楼主的dump时机
我研究这个好几天了
2017-5-1 15:17
0
雪    币: 34
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
请问楼主,棋牌游戏的外挂有办法吗
2017-5-4 20:13
0
雪    币: 1431
活跃值: (4418)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
20
沃德法科 请问楼主,棋牌游戏的外挂有办法吗[em_14]
这个不太了解,我只是初学者
2017-5-5 08:45
0
雪    币: 34
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
不知道棋牌外挂相对于游戏外挂软件难点在哪儿,您怎么看的
2017-5-5 12:46
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
谢谢楼主分享
2017-5-5 16:27
0
雪    币: 20907
活跃值: (4100)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
23
很好的教程,跟着学习了一遍  ,谢谢。
2017-5-5 18:24
0
雪    币: 11
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
看到这个文件
QQ连连看的代码/QQLinkGame/QQLinkGame.v12.suo
ene  ~  233333
楼主可以考虑删掉
2017-5-6 15:09
0
雪    币: 11
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25

对了,我跟着lz的做了,中间发现一点小问题,我在xp下做的,中间attach游戏时失败了,发现是线程的问题

具体的原因小白不懂,希望lz具体分析一下代码

图1是失败的线程


这个是成功的线程



2017-5-6 22:22
0
游客
登录 | 注册 方可回帖
返回
//