`

移动APP测试之安全性测试策略分析

 
阅读更多


随着互联网发展,APP应用的盛行,最近了解到手机APP相关的安全性测试,以webview为主体的app,站在入侵或者攻击的角度来讲,安全隐患在于http抓包,逆向工程。
  
目前大部分app还是走的http或者https,所以防http抓包泄露用户信息以及系统自身漏洞是必要的,通过抓包当你查看一个陌生用户信息时,一些手机号,qq等信息页面上应该不显示的,但这些信息不显示并不代表服务器没有下发,好多都是客户端限制的,通过抓包,完全可以查看到陌生用户的app。再如好多发帖,push消息的应用,如果没有消息有效性的验证,抓到包之后篡改消息,服务器一点反应都没,这就会留有极大的隐患。逆向工程对于Android就很好理解了,反编译,修改或者插入自己的代码,以达到相应目的。
  
安全性测试策略
  
1. 用户隐私
检查是否在本地保存用户密码,无论加密与否
检查敏感的隐私信息,如聊天记录、关系链、银行账号等是否进行加密
检查是否将系统文件、配置文件明文保存在外部设备上
部分需要存储到外部设备的信息,需要每次使用前都判断信息是否被篡改

本地存储数据可以查看看应用的SharedPreferences文件和数据库文件中的数据(root后在应用安装目录内,或者查看外部存储中有没有写入敏感数据)。
  
2. 文件权限
检查App所在的目录,其权限必须为不允许其他组成员读写
  
3. 网络传输
检查敏感信息在网络传输中是否做了加密处理,重要数据要采用TLS或者SSL

http请求默认是明文的,如果安全验证和加密机制很烂,通过网络嗅探扫描,很容易被猜到和模拟请求,也可能被注入。
    
4. 运行时解释保护
对于嵌有解释器的软件,检查是否存在XSS、SQL注入漏洞
使用webiew的App,检查是否存在URL欺骗漏洞
  
5. Android组件权限保护
禁止App内部组件被任意第三方程序调用。
若需要供外部调用的组件,应检查对调用者是否做了签名限制
  
6. 升级
检查是否对升级包的完整性、合法性进行了校验,避免升级包被劫持
  
7.应用自身安全性
对某个应用进行逆向,看反编译后的代码有没有敏感信息暴露。反编译后对代码修改,插入劫持代码后重新打包,如果存在这种漏洞,对用户和开发者都构成极大的威胁。

要求对应用进行加密,防止静态破解,盗取源码,然后嵌入恶意病毒、广告等行为再利用工具打包、签名,形成二次打包应用
  
8.界面截取

通过adb shell命令或第三方软件获取root权限,在手机界面截取用户填写的隐私信息,随后进行恶意行为。
  
对移动应用中,安全性测试占据App测试的比重越来越重要,用户信息等的安全性也是决定着一款应用是否能成功,就更不用说手机银行,金融证劵类App对安全的高度重视。
分享到:
评论

相关推荐

    移动App测试中的最佳做法

    在可用性测试中,测试员需要检查移动 App 的可用性,看看用户是否能够轻松地使用移动 App。 四、结论 移动 App 测试是一个复杂的过程,需要测试员具备多种技能和知识。为了确保移动 App 的质量,测试员需要遵循...

    移动app测试的22条军规

    ### 移动APP测试的22条军规 #### 一、设备和平台 1. **操作系统**:针对不同的操作系统(如iOS、Android),需要确保应用程序能够在这些平台上正常运行,并且能够兼容各种版本的操作系统。 2. **设备硬件**:考虑到...

    移动APP安全测试总结.doc

    总的来说,移动APP安全测试涵盖风险分析、反编译防护、二次打包防范以及组件安全等多个方面。有效的安全策略应结合代码保护、签名验证、组件管理等多种手段,以全方位保护APP及用户的数据安全。对于开发者而言,持续...

    移动APP测试经验分享

    6. **安全性测试**:对APP进行安全评估,防止数据泄露、恶意攻击或滥用。这包括隐私保护、数据加密、身份验证、网络通信安全等方面。 7. **自动化测试**:利用工具如Appium、JUnit、Espresso等进行自动化测试,提高...

    大话移动APP测试 Android与iOS应用测试指南

    5. **安全性测试**:检查数据加密、权限管理、隐私保护等方面,确保用户数据安全。 6. **自动化测试**:介绍使用如JUnit、Espresso等工具进行单元测试和UI自动化测试的方法。 7. **兼容性套件测试(CTS)**:对于...

    车联网移动APP信息安全研究与分析.pdf

    在车联网移动APP的信息安全研究中,渗透测试是评估安全性的主要方法之一。通过对市场主流的车联网移动APP进行渗透测试,可以从多个维度分析其安全性,包括客户端安全、业务安全、通信安全和数据安全等。测试结果的...

    移动App端接口测试技术研究.pdf

    这两种工具都需要在第三方平台或浏览器插件上操作,对于复杂测试需求,特别是安全性测试,可能有所不足。 3. 自动化测试技术 针对测试效率和复杂性的挑战,基于HTTP协议的接口自动化测试技术被提出。通过自动组织...

    移动app测试学习资源.zip

    本压缩包中的学习资源可能涵盖了以上各个方面的教程、案例分析、实战项目和最佳实践,帮助你系统地学习移动App测试,提升专业技能。通过深入学习和实践,你将成为一名合格的移动App测试工程师。

    基于移动平台的APP软件测试研究.pdf

    6. **安全性测试**:评估APP的数据保护机制,确保用户隐私和数据安全,防止非法访问或数据泄露。 7. **性能测试**:分析APP的启动速度、运行效率、内存占用等,确保其在高负载下仍能保持稳定和高效。 **回归测试**...

    移动应用APP中间人攻击的分析与测试.pdf

    本文通过对移动应用APP中间人攻击基本原理的概述,详细分析了造成移动APP中间人攻击的原因,以及在实际安全测试中遇到的问题和解决办法。 中间人攻击是移动应用APP中的主要安全风险之一。它是指攻击者分别与通讯的...

    移动app测试的22条军规.

    ### 移动APP测试的22条军规详解 #### 1. 设备和平台 - **操作系统**:测试人员必须了解目标用户所使用的操作系统版本(如iOS、Android),并确保应用程序能够在这些版本上正常运行。 - **设备硬件**:包括处理器...

    APP测试相关资料_appium_app测试相关资料_Monkey_

    除了以上工具,移动APP测试还包括功能测试、性能测试、兼容性测试、安全性测试等多个方面。功能测试验证应用是否按预期工作,性能测试关注启动速度、内存占用等;兼容性测试涵盖不同设备、操作系统版本、网络环境;...

    互联网 背景下的手机APP安全性测试研究.pdf

    APP安全性测试策略主要包括三个方面: 1. APP代码验审:通过反编译工具如Dex2jar、JD-GUI、ApkTool、Smali2dex等对APP代码进行分析,查找可能存在的安全隐患,如不安全的代码片段。 2. APP渗透测试:模仿黑客攻击...

    移动APP测试大全.doc

    移动APP测试是一个涵盖广泛领域的实践,它涉及到许多不同的技术和工具,确保应用程序在各种条件下都能正常运行。本篇文章将深入探讨移动APP测试的关键方面,包括使用Genymotion进行虚拟环境测试、ADB命令的运用、...

    移动app测试点

    根据给定文件的信息,我们可以将移动App测试的关键知识点归纳如下: ### 移动App测试概述 移动App测试是一项系统性的质量保证活动,旨在确保应用程序在各种设备、操作系统和网络环境下的稳定性和可用性。测试过程...

    app测试资料合集

    - 兼容性测试:确保app在不同设备、操作系统、网络环境下的正常运行。 - 用户界面(UI)/用户体验(UX)测试:检查界面美观度和操作便捷性。 3. **Monkey测试**: - Monkey测试是一种随机的黑盒测试方法,通过...

    移动APP测试方法.doc

    移动APP测试方法是确保应用程序质量的关键环节,涵盖了多个方面的考虑。测试人员不仅是寻找错误的专业人士,他们的工作更多的是提出问题、探索可能性并确保产品的全面性。本文档提供了超过100个问题,帮助测试人员...

    APP测试基本流程

    APP测试是软件开发过程中的重要环节,特别是对于移动应用来说,确保其稳定性和用户体验至关重要。以下将详细阐述APP测试的基本流程及其涉及的关键知识点。 一、APP测试基本流程 1. **需求分析**:测试的起点是理解...

Global site tag (gtag.js) - Google Analytics