安卓题导入测试 flag 排坑 receiver:export、background

在 python 这种解释型语言里,经常会看到导入 flag 的语句

from secret import flag

在 java 中,出题人似乎也习惯采用类似的技巧,把 flag 生成器和题目本身分离,然后只给选手提供题目部分。但由于 java 要编译一次,会导致 override flag 没这么容易。

u1s1,logcat 感觉比 debugger 好用多了,有 log 一定要看 log

在 byteCTF 2024 的 jsbMaster 题目里,安卓应用定义了一个 FlagReceiver 组件获取 Intent('flag', <>) 的值,用作 webView 的待获取 Cookie。在出题人给的 apk 里,这个 receiver export=false,只能接受同包名,同签名程序的 broadcast。无法直接 am broadcast 设置值。所以首先要修改 manifest 的值,改成 true。然后重新打包签名安装。万幸的是没报错。

然后再尝试用 am broadcast -n -e 发送广播,发现 logcat 里有系统提示不能给 background 进程发广播。搜索了一下 StackOverflow 说加个参数就好,果然如此。

最后的效果:用 am broadcast 写一个测试 flag 进内存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值