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

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7959|回复: 17
收起左侧

[原创] 【Rreversing.kr】 MusicPlayer

[复制链接]
whklhh 发表于 2017-9-24 01:43
本帖最后由 whklhh 于 2017-9-24 01:47 编辑

Reversing.kr是韩国的一个逆向题目网站
有分国度的排行榜,还是挺有意思的
本题即来自于第四关MusicPlayer
http://reversing.kr/challenge.php可以下载到文件

下载的压缩包解开有三个文件
ReadMe.txt显示,现有程序只能播放1分钟,我们需要绕过这个显示从而得到flag,程序有多次检测。

从图标和提供的msvbvm60.dll可以知道是VB写的
OD加载发现从ntdll以后F9就直接飞了
IDA加载也空空如也,只有三个子函数call dll,应该是反调机制?

1.png


遂打开VB Decompiler,这次清晰地得到了结构和事件
我本来以为程序是OPEN文件以后,点击PLAY时间轴出现0:00/1:00
是直接截取前一分钟的内容加载播放
在PLAY的代码里找了半天,也只发现一个HS_POS.MAX=CINT(600)
前后搜索了一下都没找到相关内容,按地址去OD中下断可以断下来
但是没有找到600

无奈,去翻了下大佬的WriteUp,发现实际上是播放到1:00时弹窗,然后停止
VB弹窗调用的API是rtcMsgBox

在模块中查找未果
估计是因为根目录下提供了msvbvm60.dll,把它改了个名字,Ctrl+G就可以看到加载的dll换成c盘的系统msvbvm60.dll了,这个时候再查看所有调用可以找到rtcMsgBox,不过调用树中仍然是空的

在函数内部下断,运行,断住,ALT+F9返回程序领空才终于找到调用:


向上翻几句,发现时间对比和关键跳转:

```
0040455D    8B85 5CFFFFFF   mov eax,dword ptr ss:[ebp-0xA4]
00404563    3D 60EA0000     cmp eax,0xEA60                           ; 时间比较
00404568    8945 E8         mov dword ptr ss:[ebp-0x18],eax
0040456B    0F8C 8D000000   jl Music_Pl.004045FE                     ; 关键跳

```
将关键跳改为jmp,运行发现报错:

`运行时错误:380`

参照WriteUp,断Kernel32.RaiseException(同样调用树无结果,在函数内部下断)
似乎是OD的分析问题,断点位置的代码分析不整齐,导致再运行的时候理应被断住的地方报错了
不过没关系,虽然提示不太一样,在OD中F12暂停下来仍然可以找到调用
理论上来说ALT+K应该就能找到调用,不知道为什么仍然是空的
但是堆栈中还是可以看到,向上翻直到出现用户模块Music_Pl的调用:


找到调用后向上看一眼就能发现关键跳转,重新运行jmp掉即可:



最后password出现在标题中,完成。


最后复盘的时候想起,这个事件应该来自于计时器
每秒检查一次时间是否超过60000ms
正好在VB Decompiler中有TMR_POS_Timer事件,检查发现:

确实反编译出来了,未通过则调用STOP事件
不过之后的弹窗理论上来说应该在goto loc_00404795之前
但是这里的反编译却毫无显示


学长说应该是反调或者花指令……之后得研究一下OD的去花插件了_(:з」∠)_

Music_Player.zip

689.91 KB, 下载次数: 8, 下载积分: 吾爱币 -1 CB

免费评分

参与人数 10吾爱币 +16 热心值 +9 收起 理由
Tar_Rasha + 1 + 1 谢谢@Thanks!
qq7156792 + 3 + 1 我很赞同!
lies2014 + 1 + 1 用心讨论,共获提升!
Three_fish + 1 + 1 谢谢@Thanks!
朦胧丶kat + 1 + 1 用心讨论,共获提升!
Sound + 5 + 1 已经处理,感谢您对吾爱破解论坛的支持!
qwerttqqaz + 1 + 1 我很赞同!
YYL7535 + 1 + 1 谢谢@Thanks!
Ravey + 1 谢谢@Thanks!
工口大佐 + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| whklhh 发表于 2017-10-14 23:11
本帖最后由 whklhh 于 2017-10-15 01:12 编辑
gunxsword 发表于 2017-10-13 19:20
这个破CM,在XP下运行当一下就没了,WIN7下到是能运行了,播MP3就报MCI初始化错误,不想折腾,允许我做个弊,求个 ...

想了一下还是不要公布flag吧_(:з」∠)_不自己做就没意义了嘛,少一个分数又不影响其他关卡……
 楼主| whklhh 发表于 2017-9-24 22:06
Sound 发表于 2017-9-24 17:30
1年多之前我就做了这一些,当时截了个图留了下来。后面就给他做完了。 练手很不错。

嗯嗯0-0之前都在做CTF的逆向,感觉这个网站的类型区别挺大的,能学到很多东西
seazer 发表于 2017-9-24 01:45
爱飞的猫 发表于 2017-9-24 03:15
VB6 生成的代码实在是太难懂... 已经放弃了...
工口大佐 发表于 2017-9-24 09:48
强无敌aaa
zz0147 发表于 2017-9-24 11:49
棒子的什么东东。
.kr是缓存文件吗?
apppp130 发表于 2017-9-24 14:30
支持一下了
yaoguen 发表于 2017-9-24 14:54
多谢分享
 楼主| whklhh 发表于 2017-9-24 17:04
zz0147 发表于 2017-9-24 11:49
棒子的什么东东。
.kr是缓存文件吗?

棒子的一个逆向题目网站,.kr是域名结尾撒
Sound 发表于 2017-9-24 17:30
psb.png   

1年多之前我就做了这一些,当时截了个图留了下来。后面就给他做完了。 练手很不错。
zbnysjwsnd8 发表于 2017-9-24 17:38
Sound 发表于 2017-9-24 17:30
1年多之前我就做了这一些,当时截了个图留了下来。后面就给他做完了。 练手很不错。

CRC1怎么做?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

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

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

GMT+8, 2024-4-25 15:32

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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