APP抓包踩坑记录

刚刚开始看APP的一些抓包和请求,就遇到很多问题,现在想把一些自己遇到的坑记录下来

下面所有的练习题都是猿人学APP。

第五题 新年彩蛋的题
    public /* synthetic */ void lambda$initListeners$1(o00O000 o00o0002) {
        this.f7781OooO0o0++;
        String str = this.f7781OooO0o0 + o0O000.OooO00o.OooO00o(482154048497611455L) + System.currentTimeMillis();
        String OooO0O02 = DexUtils.OooO00o().OooO0O0(getContext(), this, str);
        OooO0OO oooO0OO = this.f7780OooO0o;
        oooO0OO.OooOO0o(((oo000o) oooO0OO.OooOOOO(oo000o.class)).OooOoO0(str, OooO0O02), new OooO0O0(o00o0002));
    }

在jadx中看到的反编译 是上面这样的,我当时想着是hook OooO0O0 中的第二个参数this, 因为刚开始看frida,所有很多的API都在慢慢琢磨。

  let DexUtils = Java.use("xxxx.DexUtils");
  DexUtils["OooO0O0"].overload('android.content.Context', 'java.lang.Object', 'java.lang.String').implementation = function (a, b, c) {
	  let ret = this.OooO0O0(a, b, c);
	  return ret;
  }

我在开始打印b的时候,发现是这样的

ChallengeFiveFragment{b59b5fd} (24411447-fbca-4fb2-809e-aa3fa48e14c6 id=0x7f0a0179 tag=题目五:2022新年快乐)

我当时想打印 this.f7781OooO0o0 也就是页数的值

        DexUtils["OooO0O0"].overload('android.content.Context', 'java.lang.Object', 'java.lang.String').implementation = function (a, b, c) {

            console.log(b.OooO0o0)
            let ret = this.OooO0O0(a, b, c);
            return ret;
        };

发现打印出来的是一个undefined

历经千辛万苦才在谷歌找见正确的打印方式

let ChallengeFiveFragment = Java.use("com.yuanrenxue.challenge.fragment.challenge.ChallengeFiveFragment");
// 这里应该是先hook这个类
let bbb = Java.cast(b, ChallengeFiveFragment)
// 然后通过Java.cast 去来强转类型 把b转换成ChallengeFiveFragment类型
console.log("bbb-->", bbb.OooO0o0.value)
// bbb--> 2

这样就可以愉快的打印这个变量了。同时修改变量和以前一样 利用等号的方式直接修改 比如

bbb.OooO0o0.value = 10

虽然但是 , 我还是想到一个问题 在这个题目中 this的变量只有一个页数,如果后续遇到别的APP, this的变量数不清呢 ,也需要这么一个一个去hook去传参吗, 应该有更简便的办法吧 但是我没有找到。。。

第九题 双向证书

这道题用了r0ysue的r0capture, 直接获取到了证书和密码,尝试了requests和requests_pkcs12 请求,都是请求成功的状态,

但是遇到一个问题,因为没有抓到包 而r0capture 抓到的直接是一个IP+端口的地址

所以并不确定这道题的请求地址是否有域名。
反正我尝试了前面几道题的域名是失败的!!
等有时间学习一下双向验证怎么用抓包软件抓包

刚开始学习APP抓包才知道坑有多少,,虽然大部分都有大佬帮忙解决掉了。

这边文章仅仅记录路上遇到的坑,同时也希望正在学习APP逆向的小白道友避免这些坑。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值