AppCrawler 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
AppCrawler 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
AppCrawler 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache-2.0
开发语言 Scala 查看源码 »
操作系统 Android
软件类型 开源软件
所属分类 应用工具网络爬虫
开源组织
地区 国产
投 递 者 Alias_Travis
适用人群 未知
收录时间 2021-09-28

软件简介

AppCrawler 是一个基于自动遍历的 App 爬虫工具。支持 Android 和 iOS,支持真机和模拟器。最大的特点是灵活性,可通过配置来设定遍历的规则。

为什么做这个工具

  • 各大云市场上自动遍历功能都多有限制,企业无法自由定制。
  • 解决 monkey 等工具可控性差的缺点
  • 发现深层次的 UI 兼容性问题
  • 通过新老版本的 diff 可以发现每个版本的 UI 变动范围

设计目标

  • 自动爬取加上规则引导
  • 支持定制化, 可以自己设定遍历深度
  • 支持插件化, 允许别人改造和增强
  • 支持滑动等更多动作
  • 支持自动截获接口请求
  • 支持新老版本的界面对比(开发中)
  • 云端兼容性测试服务利用, 支持 Testin MQC MTC(开发中)

安装依赖

mac 下安装 appium

#安装node和依赖
brew install node
brew install ideviceinstaller
brew install libimobiledevice
#安装appium
npm install -g appium
#检查appium环境正确性
appium-doctor

真机或者模拟器均可. 确保 adb devices 可以看到就行

启动 appium

使用此工具需要一定的 appium 基础知识,目前已经在 appium 1.5.3 下做过测试

启动 appium

appium --session-override

下载 appcrawler

最新版本下载地址: https://pan.baidu.com/s/1dE0JDCH

运行

工具以 jar 包方式发布,需要 java8 以上的运行环境

java -jar appcrawler.jar  

快速遍历

#查看帮助文档
java -jar appcrawler.jar
#运行测试
java -jar appcrawler.jar -a xueqiu.apk

配置文件运行方式

#配置文件的方式运行
#Android测试
java -jar appcrawler.jar -c conf/xueqiu.yaml -a xueqiu.apk
#iOS测试
java -jar appcrawler.jar -c conf/xueqiu.yaml -a xueqiu.app

输出结果

默认在当前目录下会生成一个包含输出结果的目录, 以时间命名. 包含了如下的测试结果

  • 所有遍历过的控件组成的思维导图
  • 包含了遍历覆盖的 html 报告
  • 用于做 diff 分析的数据文件
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
Apache Log4j 代码问题漏洞
反序列化
Apache Log4j是Apache基金会的一款基于Java的开源日志记录工具。 在Apache Log4j 2.15.0中解决CVE-2021-44228的修复在某些非默认配置中不完整:当日志配置使用具有上下文查找或线程上下文映射模式时,攻击者可以使用 JNDI 查找模式制作恶意输入数据,从而导致信息泄漏和某些环境中的远程代码执行以及所有环境中的本地代码执行。
CVE-2021-45046 MPS-2021-38665
2022-08-08 18:50
commons-codec:commons-codec 存在信息暴露漏洞
信息暴露
commons-codec:commons-codec 是一个包含各种格式(如 Base64 和 Hexadecimal)的简单编码器和解码器的包。此软件包的受影响版本容易受到信息泄露的影响。
MPS-2022-11853
2022-08-08 18:50
spring-beans 远程代码执行漏洞(Spring4Shell)
表达式注入
spring-beans 负责实现 Spring 框架的 IOC 模块。 CVE-2010-1622 中曾出现由于参数自动绑定机制导致的问题, 通过黑名单的方式修复了该漏洞,但是 JDK9之后引入了 Module,使得可以通过 getModule 绕过前者的黑名单限制,导致远程代码执行。 org.springframework:spring-beans的5.3.0 至 5.3.17、5.2.0.RELEASE 至 5.2.19.RELEASE 版本都受到影响。
CVE-2022-22965 MPS-2022-6820
2022-08-08 18:50
Apache Commons Compress 无限循环漏洞
不可达退出条件的循环(无限循环)
Apache Commons Compress是美国阿帕奇(Apache)基金会的一个用于处理压缩文件的库。 Apache Commons Compress存在安全漏洞,该漏洞源于当读取一个特殊制作的7Z归档文件时,构造解码器列表来解压缩条目可能会导致无限循环。
CVE-2021-35515 MPS-2021-10565
2022-08-08 18:50
Vmware Spring Framework存在未明漏洞
输入验证不恰当
Vmware Spring Framework是美国威睿(Vmware)公司的一套开源的Java、JavaEE应用程序框架。该框架可帮助开发人员构建高质量的应用。Vmware Spring Framework存在安全漏洞,攻击者可利用该漏洞通过日志注入绕过Spring框架的访问限制从而修改数据。
CVE-2021-22060 MPS-2021-18854
2022-08-08 18:50
Vmware Spring Framework 注入漏洞
输入验证不恰当
Vmware Spring Framework是美国威睿(Vmware)公司的一套开源的Java、JavaEE应用程序框架。该框架可帮助开发人员构建高质量的应用。 Spring Framework 存在注入漏洞,该漏洞源于通过日志注入绕过 Spring Framework 的访问限制,以更改数据。
CVE-2021-22096 MPS-2021-18890
2022-08-08 18:50
Apache Xalan 存在整数截断问题,组件已不再维护
数值截断错误
Xalan是Apache的开源软件库,Xalan的主要功能是将 XSLT 标准样式表转换 XML 文档。 Xalan的组件XSLT库在处理恶意 XSLT 时会产生整数截断的问题,这可能会破坏由内部 XSLTC 编译器生成的 Java 类文件,最终导致产生执行任意 Java 字节码的危害。 Apache Xalan Java 项目处于休眠状态并处于退役过程中,预计未来 Apache 将不会发布 Apache Xalan Java 新版本。 (OpenJDK等其他java运行时会包含重新打包的 Xalan 版本,目前 OpenJDK 已经修复了此问题。)
CVE-2022-34169 MPS-2022-19461
2022-08-08 18:50
JYaml 代码问题漏洞
反序列化
JYaml是一款用于使用Yaml文件格式的Java库。 JYaml 1.3及之前版本中 load() 函数反序列化存在安全漏洞。攻击者可借助恶意的payload利用该漏洞执行代码。
CVE-2020-8441 MPS-2020-2664
2022-08-08 18:50
Apache Log4j 安全漏洞
Apache Log4j是美国阿帕奇(Apache)基金会的一款基于Java的开源日志记录工具。当配置使用带有 JNDI LDAP数据源URI的JDBC Appender时,导致使用者容易受到远程代码执行 (RCE) 攻击,从而攻击者会控制目标 LDAP 服务器。
CVE-2021-44832 MPS-2021-38327
2022-08-08 18:50
org.apache.maven.shared:maven-shared-utils 存在命令注入漏洞
命令注入
org.apache.maven.shared:maven-shared-utils 是 Maven 中 plexus-utils 的功能替代品。此软件包的受影响版本易受命令注入攻击。 Commandline 类可以在没有适当转义的情况下发出双引号字符串,从而允许 shell 注入攻击。 BourneShell 类应该无条件地单引号发出的字符串(包括被引用的命令本身的名称),其中 {{'"'"'}} 用于嵌入的单引号,以便在实现 POSIX 引用规则超集的 shell 之间实现最大安全性。
MPS-2022-12562
2022-08-08 18:50
Apache Log4j 安全漏洞
Apache Log4j是Apache的一款基于Java的开源日志记录工具。 该工具的漏洞版本由于不能防止不受控制的递归而自引用查找。这允许控制线程上下文映射数据的攻击者在解释精心制作的字符串时导致拒绝服务。
CVE-2021-45105 MPS-2021-38752
2022-08-08 18:50
Vmware Spring Framework 安全特征问题漏洞
大小写敏感处理不恰当
Vmware Spring Framework是美国威睿(Vmware)公司的一套开源的Java、JavaEE应用程序框架。 Vmware Spring Framework的disallowedFields 模式区分大小写,这意味着除非字段同时列出字段的第一个字符小写,包括属性路径中所有嵌套字段的第一个字符的大写和小写,否则远程攻击者利用该漏洞可以绕过实施的安全限制。
CVE-2022-22968 MPS-2022-1098
2022-08-08 18:50
com.fasterxml.jackson.core:jackson-databind 存在拒绝服务漏洞
拒绝服务
com.fasterxml.jackson.core:jackson-databind 是一个库,其中包含Jackson Data Processor的通用数据绑定功能和树模型。当使用 JDK 序列化来序列化和反序列化 JsonNode 值时,此包的受影响版本容易受到拒绝服务 (DoS) 的攻击。
MPS-2022-12500
2022-08-08 18:50
JDOM 代码问题漏洞
XXE
从 2.0.6 到 JDOM 中的 SAXBuilder 中的 XXE 问题允许攻击者通过精心设计的 HTTP 请求导致拒绝服务。
CVE-2021-33813 MPS-2021-8350
2022-08-08 18:50
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
0 评论
10 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部