安装包是7.apk,要求获取flag

题目来源:2018看雪ctf团队赛第五题交响曲 题目:安装包是7.apk,要求获取flag 知识点:jeb使用、python脚本 解题过程:该apk未加壳,没有native函数,纯java实现,主要通过分析java的算法,判断输入是否正确。 如下是该apk算法部分的核心代码,密码主要是年月日+m数组某成员组成的字符串,经过如下a函数运算处理,如果最终运算结果等于34,则验证成功。
下面主要通过解读java代码,可以使用python编写破解代码,但对我而言c比较熟练,所以利用c写出破解代码,如下是破解代码的核心,其中函数名和变量名与原java函数中保持一致,且逻辑与上面java实现也保持了一致,如下代码最终将会把密码打印出来。
核心代码部分中a_func/d_func/e_func/f_func/g_func/h_func函数实现如下所示。
编译运行用c写的破解代码,得到如下密码,即“1995020305to07”,经手机验证正确。

原文标题:逆向基础题七:获取flag
文章出处:【微信公众号:linux逆向】欢迎添加关注!文章转载请注明出处。

今年三季度全球热销手机前十名中有五款来自三星
摩尔定律影响模组级电源管理(MLPM)系统地位
三代线程撕裂者GeekBench跑分曝光 超出2950X90%
两倍iPhone7的价格?华为Mate9保时捷版配置曝光!靓到爆炸!
晶圆代工供应端吃紧,整合触控暨驱动IC已转为卖方市场
安装包是7.apk,要求获取flag
双向可控硅结构原理及应用
复合材料的的特性与分类
影响气体超声波流量计计量精度的主要因素
一款新的入门级企业电子邮件软件包,目标用户是“无桌面”用户
Intel各项业务提升 竞争对手AMD的增速更快
git拉取远程分支到本地的两种方法
时序分析中的一些基本概念
福州工地扬尘监测系统24小时治理动态
5G必须是全民的话题和全国的关注点
华为5G高端新机面临滞销压力,台湾供应链受惠难说
BAT在物联网的发展以及AI和物联网融合的的分析
研究人员正在开发一种新型COVID-19生物传感器
华为荣耀Magic发布会经典回顾:未来手机缔造者
在线式音叉密度浓度计介绍