SUSCTF|WP:CrakeMe 一道android逆向

前言可能是第一次单字节手动爆flag开始这题是一个涉及到so动态调试的apk。我之前都是用红米note来进行动态调试的,因为android4.4感觉脱壳比较容易,但这次的版本要求为api 26也就是android8.0.这就有点蛋疼了,还好我自己用的手机够格,所以就拿自己手机上了。先是搭了一波环境,64位32位搞不清了都,ida附加了半天没附加上去,最后使用64位来调的。 check1函数的过
摘要由CSDN通过智能技术生成

前言

可能是第一次单字节手动爆flag

开始

这题是一个涉及到so动态调试的apk。我之前都是用红米note来进行动态调试的,因为android4.4感觉脱壳比较容易,但这次的版本要求为api 26也就是android8.0.这就有点蛋疼了,还好我自己用的手机够格,所以就拿自己手机上了。先是搭了一波环境,64位32位搞不清了都,ida附加了半天没附加上去,最后使用64位来调的。
这里写图片描述
这里写图片描述

check1函数的过程比较的简单,关键在native层的check函数。

这里写图片描述

check函数中最棘手的恐怕是srand()rand()这两个随机数了,它是产生一个随机数然后和我们的输入相加,在和一个固定的数组进行比较,flag长度为28位。我采用的方法比较笨,就是动态去跟,得到每次的随机数然后求出正确的v4,最后可以得到全部的输入序列。在通过脚本解密序列,得到flag。我在求解flag时,懒得的整体的脚

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值