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

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 11436|回复: 19
收起左侧

[CTF] 一道面试的CTF的CrackMe题

  [复制链接]
FoodieOnTheWay 发表于 2016-6-23 22:59
首先先道歉,因为最近Boss让我开始搞apk,所以之前做的《修改ProcessMonitor过TMD壳反监测》就没继续做下去了,中间也有一些收获,本来想分享一下,但是总觉得没啥干货,所以这个注定不会有续集了。作为补偿,把最近的一个面试题给大家分享一个,祝所有应届生和打算找工作的兄弟们都一些顺利,心想事成。

顺带,跟大家推荐那个工具,android killer,真的很好用,就算不是用来分析病毒木马锁屏软件,平时自己没事儿了,看看代码,修改一些功能,自己给自己打包个专用版apk,感觉也挺爽的。而且,这个难度比.Net程序还低哟。

另外,我也希望用我的事情鼓励一下之前可能比较少动手做实践的朋友们:
       之前几个哥们去专门搞移动端样本分析了,而我当时总觉得自己到了移动端,万事都要从头来,就没敢去。
        如今Boss说我们干PC不挣钱,都靠着移动端养活呢,不由分说就让我同时搞安卓。
        这几周边学边干下来,感觉其实没有想象中的那么难,有时候还觉得比搞PE容易不少,等发现有意思的样本的时候再跟大家分享。
        尤其是那些希望从事安全的学生党们,Just Do IT。有些东西,做了就会发现,其实不难。
---------------------------------------------------------------------------




缘分
       应该说,最近跟CFT缘分还是挺大的。上次刚做过一个CTF题(某CTF比赛题解析分享--RSA Roll),然后,这次面试又遇到一个CTF题,还是挺巧的。


破解
1.首先观察样本
       你会先发现样本的按钮是会移动的,当你光标移动过去,鼠标就会偏移。
       具体效果截图也看不出来,大家动手试试吧!


2. 摘掉“会飞的按钮的翅膀”
       用OD加载样本,发现这个样本还有Anti-Debug功能,主要是通过CheckRemoteDebuggerPresent这个API实现的。
       解决方法:那就重新加载一次,然后改一下ZF或者返回值,就可以Bypass。

Anti-Debug

Anti-Debug



       接下来,就可以正常调试了。推测这个让按钮“飞走”的API是MoveWindow。这时候在IDA上打开,找到调用的地方,然后对照着OD,把所有MoveWindow这段全部NOP掉。

MoveWindow

MoveWindow



       不过,我也看到了这个,这时什么鬼,能吃么,能提供线索么?我不知道

tian

tian



       好了,不管它了,继续走,终于,我们可以点击到那个该死的按钮了。
       至于key,我不知道,爆破一下吧,如下图。

crack

crack



        好了,满足了精神上的征服感,我们开动IDA来找找它的key吧。


解题
1.用IDA祭出F5大法看看最后边的检查吧

lastcode

lastcode

laststring

laststring


0x418217(ImageBase按照0x400000算)的值因为有线程里的代码不断改变,可能为0x03, 0x0C, 0x30, 0xC0,但根据最终的检查结果
(edx),它只能为(2),因此,则可以推算出跟Jc14(4A  63 31  34)组合的结果可以是:
  
0x02
  
  
48(H)
  
  
61(a)
  
  
33(3)
  
  
36(6)
  


据此来看,那么key的18-21位就是“Ha36“。



2. 按照检查的顺序,再看看开头的检查
Head.png
前5个字符为"HCTF{",最后一个字符为(})。
因为可以看出来,这个函数在运行时仅检查返回值是否为 TRUE ,调试时我直接把返回值进行了更改




3. 中间部分的分析
mid.png
midcode.png


可以看到,数据弄来弄去的,好乱的样子,我做了个表。根据上述运算,推测出来中间的几个字符为“UareS6cLeVer”
  
Addr
  
  
4191C0
  
  
4190C4
  
  
4190C8
  
  
4190CC
  
  
4190D0
  
  
4190D4
  
  
4190D8
  
  
4190DC
  
  
4190E0
  
  
4190E4
  
  
4190E8
  
  
4190EC
  
  
After Exch
  
  
66
  
  
64
  
  
C8
  
  
68
  
  
75
  
  
75
  
  
14
  
  
0B
  
  
68
  
  
15
  
  
68
  
  
12
  
  
Before
  
  
14
  
  
  
  
75
  
  
68
  
  
12
  
  
C8
  
  
66
  
  
  
  
68
  
  
  
  
  
  
75
  
  
Oct
  
  
20
  
  
100
  
  
117
  
  
104
  
  
18
  
  
200
  
  
102
  
  
11
  
  
104
  
  
21
  
  
104
  
  
117
  
  
Char
  
  
U
  
  
a
  
  
r
  
  
e
  
  
S
  
  
0
  
  
c
  
  
L
  
  
e
  
  
V
  
  
e
  
  
r
  



4. 拼接字符串
Key = “HCTF{UareS0cLeVerHa36}”。
可能作者给破解人增加难度,增加了两个线程不断修改两个数值,导致最后无法顺利弹出“OK”窗口,不过我相信作者的本地就是逆向出整个思路,这里应该不是考察的地方。

key的意思是,You are so clever,最后几个我不太懂,跟甜党有关么,我这么吃货怎么居然不知道?
看官们也试试吧,或许你们能明白出题者的用意,聪明的小孩们!
success.png

最后,作为资深吃货,我也要振臂高呼:甜党万岁!!!
豆腐脑和粽子就应该是甜的,吃咸的的人都应该被火烧死,哼哼



无害的逆向.zip

90.04 KB, 下载次数: 61, 下载积分: 吾爱币 -1 CB

无害的逆向-CTF

免费评分

参与人数 13威望 +2 吾爱币 +1 热心值 +13 收起 理由
Kainarx + 1 + 1 谢谢@Thanks!
Sound + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
SSMNXXX + 1 豆腐脑是甜的没意见。粽子必须是咸的
still1414 + 1 谢谢@Thanks!
960064995 + 1 谢谢@Thanks!
AWEIWEI + 1 用心讨论,共获提升!
WYWZ + 1 用心讨论,共获提升!
Hmily + 2 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
Hyabcd + 1 用心讨论,共获提升!
榻榻米 + 1 用心讨论,共获提升!
Cizel + 1 用心讨论,共获提升!
wnagzihxain + 1 用心讨论,共获提升!
小宅博士 + 1 我很赞同!

查看全部评分

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

xxxioneAald 发表于 2016-6-25 07:02 来自手机
很幽默啊

免费评分

参与人数 1热心值 +1 收起 理由
FoodieOnTheWay + 1 去年开始在带新人,所以不得不试图从古板大叔转变为猥琐大哥

查看全部评分

 楼主| FoodieOnTheWay 发表于 2016-6-25 22:32
still1414 发表于 2016-6-25 20:19
现场看病毒。。PC端的难度怎么样啊?我也分析过精华帖里的一些样本,不知道面试的样本和那些比起来有差多 ...

上一次面试某个APT相关的职位,让我分析了一个JS样本,加密过的,不过可以用动态调试,还原后来看,其实就是一个TrojanDownloader,应该说还是很简单的。也有次是分析一个.Net样本,环境中没有ILSpy,就只好用IDA看了,结果自然不太好,不过后来跟面试官相谈甚欢,就算是过了技术面。
still1414 发表于 2016-6-25 20:19
FoodieOnTheWay 发表于 2016-6-25 19:09
会让现场看病毒样本,见过PC的,安卓的,JS的。但是这个需要还原算法的,需要很长时间,一般都是带回来做 ...

现场看病毒。。PC端的难度怎么样啊?我也分析过精华帖里的一些样本,不知道面试的样本和那些比起来有差多远,最近也想着去面试病毒分析师,可以问下大概都问什么问题么?
11212122 发表于 2016-6-23 23:12
豆腐脑,粽子我只吃甜的,其他人我不管

免费评分

参与人数 1热心值 +1 收起 理由
FoodieOnTheWay + 1 握爪

查看全部评分

小宅博士 发表于 2016-6-23 23:13
LZ,请教该怎么开始CTF,该学习什么,本人就了解过C语言,暑假准备学python
still1414 发表于 2016-6-23 23:19
面试的时候会让你直接现场破解么?
jackfang 发表于 2016-6-24 00:46
谢谢分享
 楼主| FoodieOnTheWay 发表于 2016-6-25 19:07
小宅博士 发表于 2016-6-23 23:13
LZ,请教该怎么开始CTF,该学习什么,本人就了解过C语言,暑假准备学python

我也是因为最近几个实习生参加CTF,才接触到的,同样不太熟。我最近收藏了《CTF Binary小技巧》by Eins0n,还有@Lightless 分享的CTF例子。
 楼主| FoodieOnTheWay 发表于 2016-6-25 19:09
still1414 发表于 2016-6-23 23:19
面试的时候会让你直接现场破解么?

会让现场看病毒样本,见过PC的,安卓的,JS的。但是这个需要还原算法的,需要很长时间,一般都是带回来做,这个让我熬了一夜
hxsoft 发表于 2016-6-25 20:22
这个涨姿势了,谢谢楼主。
您需要登录后才可以回帖 登录 | 注册[Register]

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

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

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

GMT+8, 2024-5-10 05:07

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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