zoukankan      html  css  js  c++  java
  • 初识安全测试

    APP端安全测试

    安装包测试

    1.APP发版前是否会进行加固和混淆,目的是为了能否反编译代码

    常见的反编译工具: dex2jar、jd-gui

    2.安装包是否有签名(IOS端可忽略)

    3.完整性校验

    常用做法:检查文件的MD5值,一般会用自动化去校验

    4.权限设置检查

    限制没必要的权限获取,如通讯录、定位、文件夹等权限,若没必要,需要去除

    可在manifest文件检查

    敏感信息测试

    1.数据库是否包含明显信息,避免账户被盗用等

    如:缓存、cookie =   jsessionid=XXXXX

    logout之后需要对敏感信息删除、cookie类数据,需要设置合理的过期时间

    2.日志当中是否包含敏感信息

    包括APP端和server端

    3.配置文件是否包含敏感信息

    软键盘劫持

    第三方应用劫持 银行卡密码、支付密码,IOS8以上也需要注意(因IOS8以上支持了第三方输入法安装使用)

    账户安全

    1.密码明文存储

    密码,SMScode(验证码)

    2.密码传输是否需要加密

    对称加密与非对称加密

    3.账户锁定策略

    用户密码输入次数过多时,会进行临时锁定

    4.同时会话策略

    当其他手机登录该账户时,弹出提示

    5.注销机制

    数据通信安全

    1.关键信息是否加密

    2.关键链接是不是用来安全通信(HTTPS)

    3.是否对数字证书合法性进行验证(证书校验、签名校验)

    4.是否校验数据合法性

    组件安全测试

    activity、service、contentProvider、broadcast可通过drozer去调用

    服务端的接口测试

    1.SQL注入

    2.XSS(拖库)

    3.CSRF

    SQL<XSS<CSRF

  • 相关阅读:
    使用 Spring data redis 结合 Spring cache 缓存数据配置
    Spring Web Flow 笔记
    Linux 定时实行一次任务命令
    css js 优化工具
    arch Failed to load module "intel"
    go 冒泡排序
    go (break goto continue)
    VirtualBox,Kernel driver not installed (rc=-1908)
    go运算符
    go iota
  • 原文地址:https://www.cnblogs.com/Nick1994/p/8870208.html
Copyright © 2011-2022 走看看