今天简单说一下双向证书的破解,顺便说一个比较好用的工具,案例:c291bA==
破解双向证书: 之前见过单向证书校验,比如企查查、饿了么等,这个最简单的方法就是使用JustTrustMe,当然这个要依赖Xposed,手机没有 root 的话,你也可以使用太极、 VirtualXposed 等一些免 root 的 xposed 框架,这里就不主要说了,今天的重点是双向证书校验的破解。 双向证书校验顾名思义,就是双向认证,服务端会校验客户端(也就是我们的 app )的证书;客户端也会校验服务端的证书,先来看看这篇文章的资料。SSL/TLS 双向认证(一) — SSL/TLS 工作原理_网络_ustccw-CSDN 博客,看完这篇文章就可以了解到,对于双向证书校验要破解有: 1. 证书密码 2. cer 或者 p12 证书 知道上边两点,那就开始探索这个 app 吧。
下载一个 app (豌豆荚下载最新版),然后在资源文件里面找 cer 或者 p12 证书文件。
client.cer
(我这里用的是 jadx )。
load
,这个 load 是干什么的呢???
KeyStore (Java 2 Platform SE 6)根据 JavaApi 文档来看,
SoulNetworkSDK
这个类下面找a
方法。
现在到了 hook 的时候,打开 frida,打开开发工具。。。。。。。其实这里有个问题,它密码会不会在 app 启动的时候就已经初始化了呢??
firda 的 spawn 是可以应对这种问题的(这里我尝试好几次,都没 hook 到,应该是我使用方法有问题。),但是我们今天要说的是另外一个 xposed 工具,很方便、经常用、10 几分钟一个算法都有可能。
工具就是:Inspeckage [GitHub - ac-pm/Inspeckage: Android Package Inspector - dynamic analysis with api hooks, start unexported activities and more. (Xposed Module)]( https://github.com/ac-pm/Inspeckage)
这是我之前看的一篇文章也推荐给大家。Inspeckage 使用笔记( app 安全检测工具)_移动开发_coderchc 的专栏-CSDN 博客 我们安装 Inspeckage,然后在 xposed 里面打钩、重启.
adb forward tcp:8008 tcp:8008
,并打开127.0.0.1:8008
有了密码和证书,我们就该做爬虫改干的事了。
这里推荐一个[GitHub - m-click/requests_pkcs12: Add PKCS#12 support to the Python requests library in a clean way, without monkey patching or temporary files]( https://github.com/m-click/requests_pkcs12)框架,有 p12 和密码就能直接请求。
错误:
这里我比较喜欢用 Charles,不喜欢 fd
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.