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

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2918|回复: 19

[Android 原创] 【世安杯CTF】Android

  [复制链接]
发表于 2017-10-10 02:38 | 显示全部楼层
本帖最后由 whklhh 于 2017-10-10 02:39 编辑

本场CTF是实验吧举办的呢
这个题目的分数并不高,但是由于安卓版本问题真是问题频发……

于是分享一下解决问题的过程


直接打开程序发现是空荡荡的页面



对APK反编译,发现设置了一个Send_to_Activity广播接收函数当收到"msg":"OpenSesame"的广播时设置CTFRevceiver





那我们就用adb连接shell发送一个广播呗


[Shell] 纯文本查看 复制代码
C:\Users\hasee>adb shell
root@x86:/ # am broadcast -a "com.flagstore.ctf.INCOMING_INTENT" --es msg "OpenSesame"
-a "com.flagstore.ctf.INCOMING_INTENT" --es msg "OpenSesame"                 <
Broadcasting: Intent { act=com.flagstore.ctf.INCOMING_INTENT (has extras) }
Broadcast completed: result=0



然后就出现了一个巨大的按钮“BroadCast",点击没有反应
(之前用的夜神模拟器,直接停止运行了→ →调试发现问题出在Utilities.update上)
(后来看了一下这个题目似乎是今年新出的,以为要64位系统,找了半天最后用了雷电模拟器的5.1系统,虽然不是64位不过也能正常运行了~)


分析源码可以发现它生成了两个字符串
然后调用了JNI中的getPhrase函数,最后再生成一个intent把它广播了出去





分析一下so文件可以找到getPhrase函数的操作,应该是三个字符串进行异或



解决办法有很多种
最简单的就是直接用Drozer监听广播,收到最后发送的广播消息
次一点的是用动态调试下断观察变量值(或者打log也一样)
最后是参照源码进行逆向生成字符串,然后依照getPhrase函数进行异或生成flag
(看到的WP中有一篇没有解决堆栈溢出报错的问题,所以IDA远程调控dump下来三个字符串的值再手动异或也一样)


因为懒得安装Drozer了所以直接JEB2动态调了~
首先运行程序,发送广播,等到出现按钮后
在jeb2中附加进程(gdb要先连接上)

  
然后在最后广播的地方下断


查看变量,就能发现三个字符串的值了

而我们的flag由于是放在intent中的,还需要稍微找一下
从代码中可以看出这个intent是v3,查一下发现putExtra的实现实际上是利用的Extra的ArrayMap
(临时抱佛脚百度来的,因为我还没学安卓╮(╯_╰)╭然而逆向之前不研究正向其实是不对的,别学我哟)


这样就找到了flag

参考:
直接Drozer接收广播:https://russtone.io/2017/02/14/bssidessf-2017-flagreceiver/
IDA远程调试找到字符串手动异或:https://ctf.rip/bsides-sf-ctf-2017-flag-receiver-mobile-reverse-engineering/

其中前者用的linux上的x64模拟器,所以也没有报错;而后者也报错了,所以只能从内存中拿到字符串再加工

如果不考虑报错问题的话,这题的确分值不高,只需要读懂反编译然后接收广播或者打log就行了
不过如果算上报错状况这难度一下子就上去了……
刚开始看第二篇WP还以为堆栈溢出是题目准备好的障碍,吓得我都傻了(:з」∠)

下载链接:
http://ctf1.shiyanbar.com/shian-file/android.rar
(文件太大附件不来╮(╯_╰)╭)

免费评分

参与人数 9威望 +2 吾爱币 +20 热心值 +9 收起 理由
techno-geek + 1 + 1 谢谢@Thanks!
a5606495 + 1 + 1 谢谢@Thanks!
极地冷战 + 1 + 1 用心讨论,共获提升!
lumou + 1 + 1 用心讨论,共获提升!
Three_fish + 1 + 1 谢谢@Thanks!
斯杰 + 1 + 1 我很赞同!
junkboy + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
再睡一夏丶 + 1 + 1 和你同样是锋芒初露组,差距为何这么大?
qtfreet00 + 2 + 12 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

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

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

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

发表于 2017-10-11 13:48 | 显示全部楼层
谢谢        学了一些骚操作{:1_931:}

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

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

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

发表于 2017-10-10 12:30 | 显示全部楼层
虽然看的不懂,但是还是感谢您的分享,希望可以帮助到其他人

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

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

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

发表于 2017-10-10 06:10 | 显示全部楼层

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

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

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

发表于 2017-10-10 08:40 | 显示全部楼层
感谢分享

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

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

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

发表于 2017-10-10 10:26 | 显示全部楼层
感谢分享

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

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

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

发表于 2017-10-10 10:36 | 显示全部楼层
thx for share.

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

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

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

发表于 2017-10-10 15:04 | 显示全部楼层
感谢分享

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

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

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

发表于 2017-10-10 20:35 | 显示全部楼层

感谢大神分享

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

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

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

发表于 2017-10-10 21:26 | 显示全部楼层
感谢大神分享,3Q

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

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

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

发表于 2017-10-10 22:00 | 显示全部楼层
CTF最近很火热啊

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

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

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

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则


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

Mail To:Service@52PoJie.Cn

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

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

GMT+8, 2017-12-13 09:22

Powered by Discuz!

© 2001-2017 Comsenz Inc.

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