加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Frida应用基础及APP https证书验证破解

发布时间:2019-06-04 00:21:45 所属栏目:建站 来源:牛冠杰
导读:一、Frida简介 1. 基本先容 Frida是合用于开拓职员、逆向工程师和安详研究职员的轻量级Hook器材,它应承将JavaScript代码或库注入Windows、macOS、GNU / Linux、iOS、Android和QNX上的本机应用措施。另外, Frida还提供了一些基于Frida API构建的简朴器材
副问题[/!--empirenews.page--]

一、Frida简介

1. 基本先容

Frida是合用于开拓职员、逆向工程师和安详研究职员的轻量级Hook器材,它应承将JavaScript代码或库注入Windows、macOS、GNU / Linux、iOS、Android和QNX上的本机应用措施。另外, Frida还提供了一些基于Frida API构建的简朴器材。

Frida应用基本及APP https证书验证破解

Frida的四大特点:

  • 可编写剧本:将剧本注入黑盒历程,无须源代码即可挟制任何成果函数,监督加密API或跟踪私有应用措施代码;然后编辑,点击生涯,即可查察功效,不必要举办编译或从头启动措施。
  • 可移植的:合用于Window、macOS、GNU / Linux、iOS、Android和QNX。从npm安装绑定的Node.js,从PyPI获取Python包,或通过其Swift绑定、.NET绑定、Qt / Qml绑定或C API行使Frida。
  • 免费的:Frida是而且将永久是免费软件(免费自由)。
  • 颠末拭魅战检讨:此刻安详职员正在行使Frida对大局限移动应用举办快速、深入的说明。 Frida拥有全面的测试套件,并颠末多年的严酷测试,涵盖了普及的用例。

Frida会见解点:https://github.com/frida/frida。

2. 与其他Hook器材的比拟

(1) Xposed的优弱点

  • 利益:在编写Java层hook插件的时辰很是好用,这一点完全良好于FridaSubstrateCydia,由于它也是Android项目,可以直接编写Java代码挪用种种api举办操纵,并且可以安装得手机上直接行使。
  • 弱点:设置安装情形繁琐,兼容性差,在Hook底层的时辰就很无助了。

(2) Frida的优弱点

  • 利益:设置情形简朴,操纵也很便捷,对付破解者来说开拓阶段很是好用。支持Java层和Native层的hook操纵,只是在Native层hook假如长短根基范例的话操纵有点贫困。
  • 弱点:由于它只得当破解者在开拓阶段行使,因此它无法像Xposed那样用于实践。好比写一个微信外挂,用Frida写必定不可,由于它无法在手机端运行。

(3) SubstrateCydia的优弱点

  • 利益:和Xposed相同可以运行在手机端。支持Java层和Native层的hook操纵,可是Java层hook不怎么常用,用得较量多的是Native层的hook操纵,由于它也是Android工程,可以挪用体系api,操纵更为利便。
  • 弱点:和Xposed一样安装设置情形啰嗦,兼容性差。

以上3个器材可以说是此刻用得最多的hook器材了,总结一句话就是,写Java层hook照旧Xposed利便,写Native层hook适实用SubstrateCydia,而对付处在开拓阶段的破解者来说,则照旧Frida最靠谱。

二、Frida Hook示例

1. 毗连Android装备

(1)必要一台已经root的Android装备(可以行使Android模仿器),支持4.2~6.0版本。

(2)必要行使来自Android SDK中的adb器材毗连Android装备。

(3)在https://github.com/frida/frida/releases中下载响应的frida-server应用,示例行使夜神Android模仿器4.4版本,下载的frida处事端是frida-server-12.2.16-android-x86.xz。

(4)启动夜神Android模仿器4.4版本,运行adb devices呼吁,即可乐成毗连Android装备,如图2.1所示。

毗连 Android 装备

图2.1毗连 Android 装备

(5)运行如下呼吁,将frida-server复制到Android装备上,晋升权限并运行。

  1. $ adb push frida-server /data/local/tmp/  
  2. $ adb shell "chmod 777 /data/local/tmp/frida-server" 
  3. $ adb shell "/data/local/tmp/frida-server &" 

(6)运行adb shell ps呼吁,查察frida-server已乐成运行,如图2.2所示。

Frida-Server 乐成运行

图2.2 Frida-Server 乐成运行

(7)运行adb shell netstat呼吁,搜查frida-server监听端口,默以为27042,如图2.3所示。

端口监听乐成

图2.3 端口监听乐成

(8)运行adb forward tcp:27042 tcp:27042呼吁,把Android装备端口转发到PC端。

(9)运行frida-ps –R呼吁,即可查询Android装备当前运行历程,至此毗连Android装备乐成(见图2.4)。其它,也可以直接通过USB将Android装备与PC端毗连,运行frida-ps –U即可测试是否毗连乐成。

Android 装备毗连乐成检测

图2.4  Android 装备毗连乐成检测

2. HTTPS单向认证强校验Hook示例

本次示例通过在当地搭建Tomcat + SSL自署名证书情形,行使一个开源的Android HTTPS双向认证项目:

https://github.com/Frank-Zhu/AndroidHttpsDemo ,对个中部门代码举办修改后从头编译,构建本次测试的 APP应用。

(1) 根基道理

想要绕过证书锁定抓明文包就必要先知道APP是怎样举办锁定操纵的,然后再针对其操纵举办注入解锁。

Android客户端关于证书处理赏罚的逻辑凭证安详品级分类,如表2.1所示。

Android客户端证书处理赏罚的安详品级分类

表2.1 Android客户端证书处理赏罚的安详品级分类

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读