Android 逆向工程 —— Crackme 系列 crackme-three

android-crackme-challenge

crackme-one 传送门
crackme-two 传送门

crackme-three 是要求欺骗 APP, 篡改从某个网页上获取的数据。实际上就是要实现一次中间人攻击,但是,与普通的中间人攻击不同,我们不需要用一个节点来冒充网关,我们只要在安装了这个 APP 的手机上设置一个代理, 使用一台 PC 作为跳板,就能够抓取数据包并进行修改了。当然,能够这样做的前提是手机和 PC 都在同一个子网当中

有许多工具都可以用来抓取并修改数据包,我用的是 Fiddler,关于 Fiddler 的使用网上已经有很多很多很棒的教程,如果懒得去找的话,凑合着看看我的也行

  1. 打开 Fiddler 的设置


  2. 切换到 Connections 选项卡,设置允许远程计算机连接


    Android 逆向工程 —— Crackme 系列 crackme-three_第1张图片
  3. Fiddler 是默认不抓取 HTTPS 的数据包的,如果要抓取 HTTPS 数据包的话,就切换到 HTTPS 选项卡,设置抓取 HTTPS 数据包并忽略服务端的证书错误


    Android 逆向工程 —— Crackme 系列 crackme-three_第2张图片
  4. 最后一点,也是坑了我好久的一点,就是一定要在 Filters 里确保安装了 APP 的手机的 IP 在白名单里

Android 逆向工程 —— Crackme 系列 crackme-three_第3张图片

接下来设置手机,找到连接的网络并在高级设置中设置代理

Android 逆向工程 —— Crackme 系列 crackme-three_第4张图片

其中服务器主机名为 PC 的 IP 地址(我的是 192.168.199.243),服务器端口号为设置 Fiddler 时指定监听的端口号(默认是 8888)

再回到 Fiddler,由于我们是要修改返回的网页,所以我们只要在访问 rit.edu 这个 URL 的并收到回复的时候下断点就可以了,在 Fiddler 最下面的命令输入框中输入 bpafter rit.edu

之后打开 crackme-three,稍等片刻后 Fiddler 中就会截取到发出去的请求

点击该请求并切换到 Inspector 选项卡,点击 “Run To Complete”,将这个请求发送出去

Android 逆向工程 —— Crackme 系列 crackme-three_第5张图片

很快就会收到服务器的回复

同样在 Inspector 中查看这个回复,并在其 Body 中加入字符串 “so-much-snow” ,点击 “Run To Complete”,成功!

你可能感兴趣的:(Android 逆向工程 —— Crackme 系列 crackme-three)