推荐肉丝r0ysue课程(包含安卓逆向与js逆向):
jeb载入查看MainActivity

可以发现是将用户输入,与encflag传入了native方法中去,native方法的返回值就是显示结果

而encflag是从assets文件夹下的flag文件中获取的

之后IDA查看so文件
JNI_OnLoad动态注册了函数


查看逻辑
将input与字符串相加,再减去64,和93一并传入sub_10C0函数
之后将返回值加上32得到字符串结果。
将得到的字符串与参数二也就是encflag进行比较,返回比较结果

而sub_10C0函数,则是判断a2是否等于0,然后来判断执行哪个函数
由于a2的值恒定为93,所以只执行sub_1028()函数


sub1028虽然有些长,但是逻辑很简单,返回的结果就是a1除以a2的商

动调后发现结果不一致,找到sub_10C0函数的最后,将商R0再乘以R2=93,然后让R1减去相乘后的结果
也就是说10C0函数实际上返回的值是除以93的余数

所以程序的流程就是
将用户输入的每个字符,加上内置data字符串对应的下标的字符,然后再减去64;
得到的结果,取余93后,进行比较

exp为

enc_flag = "Ku@'G_V9v(yGS"
data = "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;"
data = [ord(i) for i in data]def main():enc = [ord(i) for i in enc_flag]flag = [0]*len(enc)for i in range(len(enc)):flag[i] = (enc[i]-32)+64-data[i]while flag[i] < 0x32:flag[i] += 93while flag[i] > 125:flag[i] -= 93print("".join([chr(i) for i in flag]))if __name__ == '__main__':main()
# CISCN{GJ5728}

得到flag为 CISCN{GJ5728}

re学习笔记(93)攻防世界 - mobile进阶区 - Illusion相关推荐

  1. re学习笔记(98)攻防世界 mobile进阶区 ill-intentions

    推荐肉丝r0ysue课程(包含安卓逆向与js逆向): 题目描述:Do you have have ill intentions? 打开查看MainActivity,仅仅注册了一个广播接收者 而这个广播 ...

  2. 攻防世界web进阶区Web_python_block_chain详解

    攻防世界web进阶区Web_python_block_chain详解 题目 详解 51% 双花攻击 题目 详解 我们整理一下 Announcement: The server has been res ...

  3. 攻防世界高手进阶区 ——Mary_Morton

    攻防世界高手进阶区 --Mary_Morton 不容易呀,这都已经是第七题了,继续加油! 一,老规矩,先分析一下文件 checksec一下 发现开启了栈溢出,可能这个题就是学习栈溢出漏洞绕过的. 运行 ...

  4. 攻防世界MISC进阶区刷题记录

    文章目录 攻防世界MISC进阶区刷题记录 Ditf 运用stegextract进行分离 glance-50 gif图片分离组合脚本 hit-the-core Test-flag-please-igno ...

  5. 攻防世界 pwn进阶区----No.012 babyfengshui 解题思路

    攻防世界 pwn进阶区----No.012 babyfengshui 解题思路 1.本题解题思路 1.先期工作 1.运行程序查看基本逻辑 创建用户 展示用户 更新用户 删除用户 到这里就可以猜测这题有 ...

  6. 攻防世界高手进阶区——dice_game

    攻防世界高手进阶区--dice_game 题目里面啥都没有. 一.分析文件 checksec 只有栈溢出保护关闭了,其他都是开着的. 运行 可以看出是要猜数字,猜对50次. ida逆向 __int64 ...

  7. 攻防世界高手进阶区 ——forgot

    攻防世界高手进阶区 --forgot 看了半天,啥也没看懂,做出来了才发现啥也不是. 一,分析文件 checksec 还好,只开启了堆栈不可执行. 运行一下 翻译了一下,应该是判断邮箱是否合乎规矩. ...

  8. 攻防世界web进阶区Web_php_wrong_nginx_config详解

    攻防世界web进阶区Web_php_wrong_nginx_config详解 题目 详解 题目 打开发现无论我们输入什么他都会弹出网站建设不完全 那么我们使用御剑进行扫描,扫描到了admin和robo ...

  9. 攻防世界高手进阶区 ——反应釜开关控制

    攻防世界高手进阶区 --反应釜开关控制 题目没什么信息.在这里插入图片描述 1.分析文件 运行一下,可能为栈溢出的题. checkse 无栈溢出保护,无地址随机化,只有堆栈不可执行. 栈溢出可能性大. ...

最新文章

  1. nginx 启动脚本
  2. 确定NTFS权限应用的位置
  3. querySelector用法改进
  4. php gearmanclient addoptions,gearman PHP7扩展安装
  5. InputStreamReader 和 OutputStreamWriter类用法简介,及演示。
  6. 我38岁,从外企技术高管到失业在家,只因为做错了这件事
  7. 【转】Unity利用WWW http传输Json数据
  8. 【情感识别】基于matlab支持向量机(SVM)语音情感识别【含Matlab源码 543期】
  9. oracle sql 分区查询语句_Oracle分区表跨分区查询数据为空
  10. 【Ansys Workbench】—响应面优化操作步骤
  11. 三相桥式全控整流电路simulink仿真_维修电工实训仿真软件-电工入门与提高
  12. C++实现24点游戏
  13. 一键生成AppIcon 多种尺寸图标
  14. jmeter 接口测试 签名_JMeter处理接口签名(sign)
  15. GoLang之浅析unsafe.Pointer与uintptr
  16. 常见下载方式之BT下载实现过程详解
  17. 爬取初试----猫眼电影,猫眼评分
  18. 网络基础之DNS、网关
  19. 分享两个视频转场作品
  20. BIM时代要来了?有了这份职业规划who怕who

热门文章

  1. 关于百家号自媒体软文代发
  2. 基于单片机的交通信号灯系统设计(#0405)
  3. php校园寝室分配查询系统 毕业设计源码032027
  4. 抄底美股?用 Python 分析美股实际收益率
  5. linux php扩展编译安装,Linux下单独编译安装PHP扩展包
  6. 飞腾交叉编译环境搭建之交叉编译工具链配置
  7. 在线!在线!在线 !疫情推动传统企业数字化转型!
  8. cocos creator 倒计时代码 (5秒倒计时)
  9. android音乐播放器主页面设计,Android项目之旅二 简易Mp3播放器页面设计
  10. Java汉字转拼音pinyin4j用法