首页
社区
课程
招聘
1
[原创]2019看雪CTF 晋级赛Q1 第2题
发表于: 2019-3-23 22:50 4421

[原创]2019看雪CTF 晋级赛Q1 第2题

2019-3-23 22:50
4421

本题是一道android题目。首先分析apk文件
程序入口:com.zhuotong.crackme.MainActivity
入口类继承AppCompiatActivity
public class MainActivity extends AppCompiatActivity
我们看一下AppCompiatActivity内的关键信息:

static {
System.loadLibrary("oo000oo");
}

protected native boolean eq(String arg1) {}

从onStart()方法中可以看出,方法eq(mPassword)进行输入密码判断。为真,进行长度为24的pw字符串拷贝,pw长度不够时,序号补齐。紧跟着后面使用我们输入的pw作为key使用dec()方法进行解密。最终显示解密的flag字串。

通过上面的分析可以发现,此题的关键是eq()函数。

如何真机调试?如何定位JNI_OnLoad这里就不说了,不熟悉的同学可以参考这两篇文章:
定位JNI_OnLoad
搭建Android真机调试环境

JNI_OnLoad 注册了一个native函数sub_784()该函数应该就是eq()函数

如代码中的注释,代码的前半部分是算法的准备工作,与输入的password没有关系,后面才开始对password进行转换。转换是一个类似BASE解码的3变4的操作,最后与字符串“{98gal!Tn?@#fj'j$\g;;”进行比对,相等返回真。


[注意]看雪招聘,专注安全领域的专业人才平台!

收藏
免费 1
支持
分享
赞赏记录
参与人
雪币
留言
时间
PLEBFE
为你点赞~
2023-1-28 00:22
最新回复 (0)
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册