最近招商银行有一个10元风暴的活动,集喵喵,最高可以兑换5000元礼品卡。但是听同事说,这个兑换需要拼手速。作为工程师,能用程序解决的,坚决不用手解决。(其实是想练习一下遗忘已久的逆向技能

分析思路

第一次尝试,先用Charles抓包,但是发现设置代理之后打开银行app直接闪退,果然大银行,对HTTPS证书进行了校验。失败。
第二次尝试,用rvictl创建iphone的虚拟网络端口,然后用Wireshark监听所有流量,发现确实走的是HTTPS协议,不是tcp。但是由于内容都是加密的,没什么其他收获。
第三次,那就只有祭出必杀器。越狱。

可行的方案

  • 首先对手机进行越狱,由于备用机是iOS13.7,目前没有完美越狱,但是checkra1n可以进行非完美越狱。checkra1n的官网是checkra.in,有一个冒充的钓鱼网站要小心。根据官网的越狱步骤,遇到了一点小问题,我的手机就是无法进入DFU模式,最后把Tyep C的线换成了USB的线才搞定。:(

  • 由于银行对证书有检测,所以必须要干掉证书的检测。github上有一个项目SSL Kill Switch 2可以做这件事儿。而且很顺利,屏蔽掉证书检测之后,可以成功的捕获到所有的HTTPS数据包,但是分析数据包之后,发现并没有什么作用,因为内容都是加密的。

  • 既然数据包没用,那我们就从UI着手,大不了最后模拟点击或者hook事件重放就可以了。既然是内嵌的Webview,第一个想到的就是通过Safair的开发工具进行调试。但是release的App是无法进行调试,因为大部分都不会开启这个功能。但是既然都越狱了,自然有办法。github上的GlobalWebinspect项目可以帮助我们,安装之后,发现可以进行调试了。

  • 既然可以调试web了,那就欢迎进入web的世界~ 剩下的,就是抽丝剥茧找到相应的事件去触发了。

其实,获取礼品不是目的。如何做到,才能技术该追求的。

2020-12-20

⬆︎TOP