DevTools

《Android抓包指南①: 使用Fiddler抓HTTP/HTTPS包》

上一章,我们使用Fiddler对应用抓HTTP/HTTPS包,并且解决了Android7.0及以上的抓不到包的问题。
本章,我们借助DevTools,同样可以实现对第三方应用内嵌的WebView与服务端的HTTP/HTTPS通信进行抓包分析,还可以调试页面Javascript,多种手段多管齐下,助力对第三方应用的逆向分析。

DevTools 原本的用途,是Google提供给Android开发者的一个调试工具,用于调试自己开发的APP内嵌的WebView中的内容,具体用法可以参考Google官方文档:
https://developers.google.com/web/tools/chrome-devtools/remote-debugging/
https://developers.google.com/web/tools/chrome-devtools/remote-debugging/webviews

将手机与电脑通过USB线连接,打开手机的USB调试功能,然后在电脑上打开Chrome浏览器,在地址栏输入

chrome://inspect

就可以看到连接的Android手机和打开的WebView页面,点击 [inspect] 就可以打开调试大门。

和Chrome调试普通WEB页面没有什么太大区别,点击[刷新]就可以看到所有HTTP/HTTPS请求内容。除了可以实现抓包效果,还可以进一步分析它的AJAX请求是怎么构造的请求参数,从而自行编码模拟发送请求,从而实现一些 Interesting 的自动化效果,嘿嘿嘿。。。

WebViewDebugHook

但是这个调试方法有一个前提,就是APP自身必须调用WebView.setWebContentsDebuggingEnabled(true); 才会允许被DevTools调试,毕竟这是一个给开发者在开发阶段调试自身应用的功能,而不是提供给你窥探别人APP内容的工具,出于安全考虑,当然不可能随便调试别人的应用。但是,还记得我们之前在《Windows抓包指南①:Proxifier+Fiddler对第三方程序强制抓包》中说的吗?

有条件要上,没有条件创造条件也要上!

Root手机,安装Xposed框架,使用WebViewDebugHook模块干它

WebViewDebugHook项目源代码:https://github.com/feix760/WebViewDebugHook

其实也可以自行编写Xposed模块,这里毕竟很简单,只需要在目标APP进程中调用静态方法 WebView.setWebContentsDebuggingEnabled(true); 就打开了调试大门。当然,使用WebViewDebugHook的理由是懒惰,拿来就用。同时WebViewDebugHook针对腾讯的部分加壳做了处理,可用性更高。

Root和Xposed的重要性

最后,不得不说,Root和Xposed框架对Android应用逆向分析人员来说是非常重要的,强烈推荐Google亲儿子手机Nexus/Pixel等,方便Root,方便安装Xposed,甚至还可以自行编译Android AOSP烧写,想怎么改就怎么改,操作系统都在你的掌控之中,何况是跑在上面的应用呢。只要修改了系统API,想给程序返回什么结果,就返回什么结果,就算你APP检测Xposed都没用,你检测不到的,因为我根本没有安装Xposed,仅仅是修改了操作系统源代码而已。玩弄APP于股掌之间。

Let’s Go

最后晒一下我购入的Google亲儿子,老一代的Pixel,几百元而已,爱不释手:



本文由encoderlee发表于CSDN博客: https://blog.csdn.net/CharlesSimonyi/article/details/90518367 转载请注明出处

更多相关文章

  1. 招募Android手机游戏开发团队成员(学员)
  2. Android(安卓)|整理遇到的那些形形色色的问题
  3. 玩Android项目开发6-----体系页面(SearchView查询功能)
  4. Flutter——踩坑之旅(现有Android项目和现有iOS项目引入同一个Flu
  5. Android(安卓)内核相关内容总结
  6. 使用css3中transition的页面切换
  7. Android(安卓)内容提供器---创建内容提供器(设计数据存储)
  8. Android手机时间自动同步
  9. Visual Studio 跨平台开发实战(5) - Xamarin Android(安卓)多页

随机推荐

  1. Android(安卓)相对布局
  2. Android(安卓)API Level对应Android版本
  3. android 实现透明按钮
  4. Android隐藏状态栏和标题栏,相当于全屏效
  5. Android剖析和运行机制
  6. 系统自带theme
  7. android 布局居中
  8. android list item divider line
  9. android 相对布局
  10. Android(安卓)布局属性详解