移动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对安全的高度重视。

时间: 2024-11-05 16:39:45

移动APP测试之安全性测试策略分析的相关文章

Android中app卡顿原因分析示例

在知乎回答了一个“为什么微博的app在iPhone比Android上流畅”的问题.后面部分是一个典型的动画卡顿的性能分析过程,因此帖在这里.有编程问题可以在这里交流.知乎链接. ========================================================= 我来说下我所知道的事情.我不知道iOS为什么流畅,但我知道一些Android为什么不流畅的原因. 首先,就题主所说的问题,我用iPad和小米Pad对比了一下微博滑动滚屏这件事情(2014年8月10日目前微博

Android - app闪退log分析

以下为主要log: 01-21 18:21:48.238: D/AndroidRuntime(10851): Shutting down VM 01-21 18:21:48.240: E/AndroidRuntime(10851): FATAL EXCEPTION: main 01-21 18:21:48.240: E/AndroidRuntime(10851): Process: com.android.email, PID: 10851 01-21 18:21:48.240: E/Andro

破解图灵测试之困,量化分析机器与人类智慧之争

作者:刘锋 1.关于机器与人类智慧未来的分歧 2011年2月18日,超级电脑"沃森"打败了人类,站在了与人类智力竞赛的最高领奖台上.著名的未来学家库兹韦尔相信,由于信息技术正朝着"超人类智能"的奇点迈进.当这个信息奇点在2045年到来的时候,人工智能将超越人类智慧. 但也有不少科学家认为机器智慧超越人类智慧还只是一个科学幻想,包括麻省理工的计算机学教授罗勃?米勒(Rob Miller),Facebook人工智能实验室主任.深度学习专家Yann LeCun,都认为机器

安卓app测试之cpu监控

安卓app测试之cpu监控,如何获取监控的cpu数据呢? 一.通过Dumpsys 来取值 1.adb shell dumpsys cpuinfo 二.top 1.top -d 1|grep packageName adb shell "top -d 1|grep tv.danmaku.bili" 原文地址:https://www.cnblogs.com/wuzm/p/10969003.html

[经验交流] (最新)移动App应用安全漏洞分析报告 !

漏洞扫描方式主要分为静态和动态,静态扫描的漏洞类型主要包含SQL注入风险.webview系列.文件模式配置错误.https不校验证书.database配置错误等.动态扫描的漏洞类型主要包含拒绝服务攻击.文件目录遍历漏洞.file跨域访问等. 本报告选取11类android app中同等数量的热门app,其活跃用户量可覆盖83%的移动端网民,根据阿里巴巴移动安全中心对这些app的漏洞检测,得到以下结论: 参与检测的android app中,近97%的app都存在漏洞问题,且平均漏洞量高达40个.

(最新)移动App应用安全漏洞分析报告 !

漏洞扫描方式主要分为静态和动态,静态扫描的漏洞类型主要包含SQL注入风险.webview系列.文件模式配置错误.https不校验证书.database配置错误等.动态扫描的漏洞类型主要包含拒绝服务攻击.文件目录遍历漏洞.file跨域访问等. 本报告选取11类android app中同等数量的热门app,其活跃用户量可覆盖83%的移动端网民,根据阿里巴巴移动安全中心对这些app的漏洞检测,得到以下结论: 参与检测的android app中,近97%的app都存在漏洞问题,且平均漏洞量高达40个.

性能测试之性能问题分析

开始性能测试前需要了解的内容: 1.项目具体需求. 2.指标:响应时间在多少以内,并发数多少,tps多少,总tps多少,稳定性交易总量多少,事务成功率,交易波动范围,稳定运行时长,资源利用率,测哪些交易,哪些接口,测试哪些场景. 3.环境:生产环境服务器数量,测试环境服务器数量,按照资源配比得出测试指标. 4.协议:系统用什么协议进行通讯. 5.压力机数量:如果并发用户数太多,需要把压力发到不同的压力机,不然可能会存在压力机瓶颈问题,导致tps和响应时间抖动. 6.交易占比:分析线上日志得出tp

包建强的培训课程(3):App竞品技术分析

Normal 0 10 pt 0 2 false false false EN-US ZH-CN X-NONE $([{£¥·‘“〈<「『[[[〝﹙﹛﹝$(.[{£¥ !%),.:;>?]}¢¨°·ˇˉ―‖’”…‰′″›℃∶.."〉>」』]]]〞︶︺︾﹀﹄﹚﹜﹞!"%'),.::?]`|}-¢ /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0;

App竞品技术分析 (3)减小安装包的体积(转)

http://blog.csdn.net/JspAndAsp/article/details/49339403 1 从几件小事说起 春节在家帮姐姐的iPhone手机安装市面上形形色色的App,忘记她是使用4G流量包月了,于是在下载了10个App后,不但耗尽了流量,还按照0.3元/兆的价格扣了七八十元流量费用.后来我检查了这几个App的体积,发现每个App体积都是40-50M的样子,这让我很吃惊,因为我记得两年前这些App也就在10-20M的样子. 另一件记忆犹新的事情,是去公园景点游玩,当时公园