51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1770|回复: 1
打印 上一主题 下一主题

怎么看待移动APP的安全测试

[复制链接]
  • TA的每日心情
    擦汗
    昨天 09:53
  • 签到天数: 433 天

    连续签到: 2 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2018-12-10 13:11:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    随着互联网发展,APP应用的盛行,最近了解到手机APP相关的安全性测试。目前手机App测试还是以发现bug为主,主要测试流程就是服务器接口测试,客户端功能性覆盖,以及自动化配合的性能,适配,压测等,对于App安全性测试貌似没有系统全面统一的标准和流程,其实安全性bug也可以是bug的一种,只不过更加隐秘,难以发现,尤其针对于手机App。

    特别是以webview为主体的app,先简单说说,站在入侵或者攻击的角度来讲,安全隐患在于http抓包,逆向工程。

    目前大部分app还是走的http或者https,所以防http抓包泄露用户信息以及系统自身漏洞是必要的,通过抓包当你查看一个陌生用户信息时,一些手机号,qq等信息页面上应该不显示的,但这些信息不显示并不代表服务器没有下发,好多都是客户端限制的,通过抓包,完全可以查看到陌生用户的app。再如好多发帖,push消息的应用,如果没有消息有效性的验证,抓到包之后篡改消息,服务器一点反应都没,这就会留有极大的隐患。逆向工程对于Android就很好理解了,反编译,修改或者插入自己的代码,以达到相应目的。

    那么安全性测试策略是怎样的呢?

    对用户隐私,检查是否在本地保存用户密码,无论加密与否;检查敏感的隐私信息,如聊天记录、关系链、银行账号等是否进行加密;检查是否将系统文件、配置文件明文保存在外部设备上;部分需要存储到外部设备的信息,需要每次使用前都判断信息是否被篡改。

    对文件权限,检查App所在的目录,其权限必须为不允许其他组成员读写。

    对网络传输,检查敏感信息在网络传输中是否做了加密处理,重要数据要采用TLS或者SSL。http请求默认是明文的,如果安全验证和加密机制很烂,通过网络嗅探扫描,很容易被猜到和模拟请求,也可能被注入。

    • 对运行时解释保护,对于嵌有解释器的软件,检查是否存在XSS、SQL注入漏洞;使用webiew的App,检查是否存在URL欺骗漏洞
    • 对Android组件权限保护,禁止App内部组件被任意第三方程序调用。若需要供外部调用的组件,应检查对调用者是否做了签名限制
    • 对迭代升级,检查是否对升级包的完整性、合法性进行了校验,避免升级包被劫持。
    • 对界面截取,通过adb shell命令或第三方软件获取root权限,在手机界面截取用户填写的隐私信息,随后进行恶意行为。


    安全测试是目前移动应用的App测试中很重要的一项,特别是一些对用户账户保密性较高的,在手游测试,金融类App的测试中,占据很大比例。



    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏1
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-6-19 04:02 , Processed in 0.064549 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表