app自动化测试

news2024/11/14 8:51:53

在实习过程中,我接触到了一些SDL安全提测的工作。原来我是学web端渗透比较多的,移动端这块基本没怎么试过手,结果刚开始一直踩坑,连抓包都抓不到(T▽T)。

 

下面记录下我遇到的部分问题和解决方法,由于问题都太基础了,没好意思请教大佬同事,基本都是自己学习解决的,大家看得不爽轻喷,有误请指教~

移动端抓包配置(Android)

材料:root手机、Magisk框架、EdXposed框架、riru-edxposed模块

这里建议大家可以直接买好root的手机,某宝某鱼都可以,直接让老板帮你把面具和EdXposed框架安装好会节省很多时间,我自己也是直接买了一个小米的root机。

拿到手机,首先和web端抓包一样,需要导入自己的burp证书。从这里导出证书,修改为cer格式,上传安装到手机里。手机通常在设置->系统安全->加密与凭证,可以从存储设备安装。

证书安装以后,配置代理,这里跟web端抓包也是一样的。让手机和电脑处于同一网络下,在burp->Proxy->Options这里添加监听器,ip是电脑ip,端口随意设置即可,其余的都不用修改

移动端这边可以直接在wifi设置里添加手动代理,如果觉得麻烦也可以使用Drony一类的代理软件。

完成这些就可以抓到简单的APP数据包了,如果只需要测试一些无壳或没有什么安全验证机制的APP到这里就差不多了。简单的测试需求直接用模拟器就够了,可以百度下教程很多。

解决证书问题

很多情况下,由于Android 10的一些机制,我们自己导入的证书会不能使用,导致抓不到包。这里我们需要用到Move Certificates模块将用户证书转为系统证书,下面是教程。

Move Certificates模块可以直接在Magisk框架里安装,也可以去github上面下载再本地安装。安装后启动模块

重启手机,可以看到用户证书转为了系统证书

绕过ssl校验

如果APP的流量采取HTTPS协议传输,会对ssl进行校验。我测试过程中遇到很多APP前面的配置都没问题还是抓不到包,查看终端报错信息如下

javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found

或

javax.net.ssl.SSLPeerUnverifiedException: Certificate pinning failure!
  Peer certificate chain:

看起来应该是ssl的检测机制产生的问题,可以使用SSLUnpinning模块绕过。

SSLUnpinning模块可以直接在EdXposed Manager里下载,如果下载不了,可能需要挂一下VPN,也可以去github下载自行安装。

添加完记得把模块启动,不然不会生效

在SSLUnpinning中选择你要测试的app即可,这里貌似随便选一个就会让所有app都实现绕过。

测试可以正常抓包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/833030.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

uni.chooseLocation 安卓端 无法显示地址列表?

uni.chooseLocation 安卓端 无法显示地址列表? 高德官方申请Android服务平台时,提示填写SHA1值,填写之后发现还是不生效? 这里有个巨坑,如果你真的去填写SHA1值,你会发现地址列表还是不会展示,需…

编写一个最简单的Linux服务端和客户端程序

2023年8月3日,周四下午 这篇文章我从下午开始写了几个小时, 这篇文件基本总结了我今天学到的知识, 在写这篇文章的过程中灵感不断涌现、想明白了很多知识点,非常酣畅淋漓。 什么叫做深度学习?这就是深度学习&#…

仅一个月作品获推荐550.51w,视频号内容创作出现新趋势

7月初,视频号上线直播切片授权功能,创作者经授权可对直播内容进行二次加工上传至短视频平台,对新进入的普通创作者来说,切片授权无疑是一种很好的起号策略,吸引了大量用户。 视频号不断丰富内容生态,大批创…

Flink作业调度的9种状态

1.什么是作业调度 Flink 通过 Task Slots 来定义执行资源。每个 TaskManager 有一到多个 task slot,每个 task slot 可以运行一条由多个并行 task 组成的流水线。 这样一条流水线由多个连续的 task 组成,比如并行度为 n 的 MapFunction 和 并行度为 n 的…

WPF上位机8——C#与MySQL

ADO.NET 数据库连接 数据插入、删除、更改 数据查询 带单个参数 带多个参数 基于特性反射DAO通用操作库 ORM对象关系映射 数据库中表映射为实体类 调用ORM框架中提供的新增方法:构建sql语句 创建枚举 根据枚举类型创建sql语句 调用 实体限定 生成参数列表 生成插入…

【项目 进程13】2.28共享内存(1) 2.29共享内存(2)

文章目录 2.28共享内存(1)共享内存(效率最高,比内存映射更高。因为内存映射还需一个文件做载体)共享内存使用步骤共享内存操作函数头文件 2.29共享内存(2)共享内存相关问题共享内存和内存映射的…

MongoDB文档-基础使用-在客户端(dos窗口)/可视化工具中使用MongoDB基础语句

阿丹: 本文章将描述以及研究mongodb在客户端的基础应用以及在spring-boot中整合使用mongodb来完成基本的数据增删改查。 先放官方的文章 MongoDB CRUD操作 - MongoDB-CN-Manual 本文章分为: 在客户端(dos窗口)/可视化工具中使用…

工作流管理系统如何提升生产力

工作流管理工具通过提供无缝沟通和简化流程来提高团队的生产力。如果部署得当,工作流管理可以长期获得回报。 以下是工作场所管理系统如何提高员工的生产力: 1、无需更多的状态更新会议 工作流管理系统使您的员工无需跟踪电子邮件和讨论线程来评估项目…

【Pytorch】下载CIFAR10数据集报错: urllib.error.URLError: <urlopen error name: https>

在使用Pytorch 下载CIFAR10的时候,遇到一个报错, 可能是网络特别慢导致的,一般情况下都会遇到这个报错。 解决办法: 1、到官网直接下载这个压缩包,解压。 http://www.cs.utoronto.ca/~kriz/cifar.html 解压后&#x…

一套ai绘图软件教程帮你打开创作新篇章

在一个寂静的艺术工作室里,住着一个渴望成为画家的年轻人,名叫艾米。她梦想能够运用自己的创造力和手艺,创作出令人叹为观止的艺术作品。然而,面对空白的画布,她感到无从下手,不知道该从何处开始。每次她试…

数据可视化(七)常用图表的绘制

1. #seaborn绘制常用图表 #折线图 #replot(x,y,kind,data) #lineplot(x,y,data) #直方图 #displot(data,rug) #条形图 #barplot&…

MONAI的测试与使用(一)

MONAI的测试与使用(一) 一.Transform 的分类二 普通变换和字典变换的联系与区别三 加载与显示图像 一.Transform 的分类 具体API函数请参考文档:https://docs.monai.io/en/latest/transforms.html 二 普通变换和字典变换的联系与区别 普通变…

DAY2,C高级(shell脚本的使用)

1.今日思维导图&#xff1b; 2.递归实现&#xff0c;输入一个数&#xff0c;输出这个数的每一位&#xff1b; #include<my_head.h>void Output(int num) {if(num 0)return;Output(num/10);printf("%d ",num%10);}int main(int argc, const char *argv[]) {in…

软件测试自动化selenuim的常用方法和属性总结

selenuim其实主要就是使用webdriver实例对象的方法和属性。 常用属性 1 driver.current_url 当前网页的请求地址 2 driver.current_window_handle 句柄&#xff0c;用于页面切换 3 driver.page_source 网页源代码 4 driver.title 网站的title&#xff0c;tab栏上显示的内容…

『Linux学习笔记』Linux服务器硬件配置查看

Linux服务器硬件配置查看 文章目录 一. 操作系统1.1. 发行版本1.2. 查看内核版本 二. CPU2.1. CPU统计信息2.2. CPU型号2.3. 查看物理CPU数目2.4. 每个物理CPU的核数2.5. 查看逻辑CPU的个数 三. GPU四. 内存4.1. 内存使用情况4.2. 内存硬件情况4.3. 查看内存使用信息 五. 硬盘…

幂等性问题 —— 如何防止重复创建订单

幂等性&#xff1a;对接口的多余重复调用的结果和单次调用的结果一致。 一、需要幂等性的场景 二、幂等性实现方案 核心思想&#xff1a;首先要根据业务判断什么是重复相同的请求&#xff0c;然后相同的请求都携带或生成一个唯一的识别码&#xff0c;这样在服务端就可以进行判…

JVM调优工具详解以及实战

准备 事先启动一个web应用程序&#xff0c;用jps查看进程id&#xff0c;接着用各种jdk自带的命令优化应用 Jmap jmap -histo 6160 #查看历史生成的实例 jmap -histo:live 6160 #查看当前存活的实例&#xff0c;执行过程中可能会触发一次full gc jmap -histo:live 6160 &…

关于数据仓库那些事 - 数据质量和数仓主题

数字化时代&#xff0c;数据成为了人类社会中必不可少的元素&#xff0c;也变成了现代企业经营管理中的关键。借助海量的数据&#xff0c;企业进行了深层次的数字化改革&#xff0c;把数据当成了企业发展的核心&#xff0c;但无效的数据即使规模再大&#xff0c;也对企业没有意…

EasyExcel工具类,一键实现表格导入导出,有无对应实体类均可

EasyExcel工具类&#xff0c;一键实现表格导入导出&#xff0c;有无对应实体类均可 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存&#xff0c;poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题&#xff0c;但…

linux du命令解析(递归计算文件子目录大小)(计算大小)(计算容量)

文章目录 du命令简介用法常用选项示例 文档原 中文选项详细解释示例递归统计某个目录下所有文件大小&#xff08;不足单位会向上取整&#xff09;&#xff08;注意&#xff1a;可能会将目录大小也统计进去&#xff0c;目录大小为4096字节4kb&#xff1f;&#xff09; du命令使用…