检查项 | 风险等级 | 简单测试方法 | |
输入输出校验 | SQL注入 | 高 | 1、输入单引号'看程序是否会报错。 |
XSS | 高 | 1、给任意参数赋值“" '<img> abc ( ) =”看返回的页面中是否有对这些字符进行转义或其它编码处理。 | |
命令注入 | 高 | 1、在目测可能有系统命令字符串的参数中输入常见的系统命令,看返回结果中是否能体现系统命令执行结果。 | |
代码注入 | 高 | 1、根据测试目标应用系统的编程语言类型尝试输入简易的测试语句。 | |
HTTP响应拆分 | 高 | 1、在参数中输入包含%0d%0a%0d%0a的字符串,看返回的请求包是否会被%0d%0a%0d%0a拆分成两个响应头。 | |
URL重定向 | 高 | 1、观察URL或抓包,看请求中是否有指定跳转目标URL的参数,尝试更改这个参数值。 | |
路径操纵 | 高 | 1、观察url或抓取下载请求包,看是否有指定引用文件名的参数,尝试结合../遍历目录。 | |
拒绝服务 | 高 | 1、观察请求中是否包含可能控制或影响服务端程序处理性能的参数,尝试修改为超大值,看应用服务器是否还能正常响应。 | |
安全特性 | 协议混用 | 中 | 1、抓包观察,同一个域名是否混用http、https和其他协议。 |
永久性cookie | 中 | 1、测试cookie是否永久有效。 | |
不安全的随机 | 中 | 1、测试图片验证码或手机认证码及其他随机参数的随机性。 | |
封装 | CSRF | 中 | 1、设定目标请求的参数值,使用代理工具发送请求包,看操作是否能按计划执行成功。 |
系统信息泄露 | 中 | 1、查看正常返回信息或错误信息中是否带有系统信息,如物理路径、机器名等其它系统信息。 | |
环境 | 配置错误 | 高 | 1、机动检查。 |
应用安全 | 登录登出 | 高 | 1、在未登录状态下直接url访问管理页面,看是否有登录状态检查。 |
口令管理 | 高 | 1、密码是否经过加密传输。 2、密码重置前是否经过旧密码校验或其他安全认证。 |
|
错误处理 | 中 | 1、输入单引号看程序是否会报错。 | |
会话管理 | 高 | 1、直接关闭浏览器或点击“退出登录”,重放管理请求(增删改内容或查看管理信息)。 | |
文件上传 | 高 | 1、测试所有文件上传位置,看是否能够上传可执行文件。 | |
文件下载 | 高 | 1、观察url或抓取下载请求包,看是否有指定下载文件名的参数,尝试将其改为其它任意文件名,看是否能够下载目标文件。 | |
文件包含 | 高 | 1、观察url或抓取请求包,看是否有指定加载文件名的参数,尝试将其改为其它服务器本地的或远程的脚本文件,看脚本是否能被正常解析或执行。 | |
加密缺陷 | 高 | 1、检查密文是否采用了易还原的加密算法和容易推测明文的分组加密方式。 | |
图片验证码 | 高 | 1、目测图片验证码易识别度(是否为纯数字、字符是否经过扭曲处理、是否添加了干扰线等) | |
手机验证码 | 高 | 1、手机验证码是否为4位纯数字。 | |
防暴力猜解 | 中 | 1、观察登录界面是否有验证码或隐藏的token。 | |
重放攻击 | 高 | 1、对支付交易、发表新闻等请求实施短时间的多次重放,看重放结果是否能够执行成功。 | |
业务逻辑 | 支付流程 | 高 | 需要结合业务流程进行推敲,没有固定的简单测试方法。 |
电子套现 | 高 | 需要结合业务流程进行推敲,没有固定的简单测试方法。 | |
密码找回 | 高 | 需要结合业务流程进行推敲,没有固定的简单测试方法。 | |
授权绕过 | 高 | 需要结合业务流程进行推敲,没有固定的简单测试方法。 | |
短信轰炸 | 高 | 1、无限重放发送短信的请求包,看手机上是否频繁收到同样内容的短信息。 | |
短信内容伪造 | 高 | 1、抓取发送短信的请求包,看其中是否包含有指定短信内容的参数,尝试伪造短信内容。 | |
身份越权 | 高 | 1、尝试修改请求中的身份标识参数,看是否能获得其他用户或管理员的操作权限。 |