IRS应用发布之十五:应用安全自测指南

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
公网NAT网关,每月750个小时 15CU
简介: 系统使用所有第三方组件必须为最新无已知公开漏洞版本。

安全要求


  • 系统使用所有第三方组件必须为最新无已知公开漏洞版本。


  • 上架应用必须配置并使用SSL协议, 并且代码和提供的服务中也都使用https协议。


  • 上架应用必须使用浙里办账号体系,使用提供的浙里办免登接口获取用户身份信息,禁止自建登陆体系。


  • 上架应用所有接口都需要结合有效session值进行用户身份鉴定,避免出现未授权访问及其他权限溢出的情况。


  • 如有存储用户文件的场景, 为保证数据安全及稳定性, 禁止文件存储在ECS服务器上, 需使用对象存储OSS存储数据。


抓包改包工具


Tools: Burp Suite


Editions: Community


Download:https://portswigger.net/burp/


或Charles、Fiddler


说明文档:https://portswigger.net/burp/documentation/desktop


端口扫描工具


Tools:Nmap


Download:


Windows:https://nmap.org/book/inst-windows.html


MAC:https://nmap.org/book/inst-macosx.html


说明文档:https://nmap.org/man/zh/



测试说明


上架应用应参考测试用例完成应用安全测试,并根据测试报告模板输出应用安全测试报告。


对于测试用例当中的非漏洞测试项,必须提供测试内容。


对于测试用例当中的漏洞测试项,如无法提供可由三个月内漏洞扫描报告代替。


特殊原因无法提供漏洞测试项测试内容且没有漏洞扫描报告的,应由业主单位提供特殊情况说明文件。特殊情况说明应包括上架应用名称、未测试项名称、未测试原因等关键信息,承诺由此产生的风险由业主单位自行承担,并由业主单位盖章。特殊情况说明可参考特殊情况说明模板。


测试报告模板


XX应用安全测试报告结果(样例)


  • NO.01 开发信息


信息

描述

备注

开发语言

开发框架及版本

数据库类型及版本

连接数据库框架或函数

域名

IP

若没有EIP则只填SLB的IP。


  • 开发语言:JAVA、PYTHON、PHP等


  • 开发框架:SPRINGBOOT 2.0、SHIRO 1.2.4、THINKPHP 5.0等


  • 数据库类型:MYSQL 5.7 、REDIS 5.0.3等


  • 连接数据库框架:MYBATIS、SQLALCHEMY等


  • 域名:提供服务的域名


  • IP:ECS的EIP、SLB的IP


  • NO.02 域名/IP对外开放端口信息


测试情况:


域名/IP

端口开放信息

备注

EIP:

SLB:

域名:


  • 提供EIT、SLB、域名扫描情况截图


  • 要求: EIP仅开放远程连接端口(如22、3389端口)


  • SLB仅开放WEB服务端口(如80、443端口)


  • 域名仅开放WEB服务端口(如80、443端口)


  • 如有特殊端口开放请说明场景。


  • 如有EIP(弹性公网IP),请提供EIP的端口开放信息


  • 如有多个EIP,则需提供所有的EIP端口开放情况。


  • 内网IP端口信息无需提供 NMAP使用命令:NMAP -SV -T4 -PN -P1-65535 IP


  • NO.03 敏感信息存储


测试情况:


数据库字段名

字段描述

敏感级别

安全机制


  • 填写表格(数据库表、字段结构信息),如表和字段较多,仅填写较敏感、敏感和极敏感数据相关的表和字段。要求:


  • 较敏感、敏感和极敏感数据建议加密存储。


  1. 极敏感:私密信息、涉事涉法、资金数量、生理状态


  1. 敏感:姓名、详细信息、身份证号、电话号码、卡号、车牌


  1. 较敏感:特殊职位、地点、知识产权、医疗卫生


  • NO.04 敏感信息展示

测试情况:


场景信息

敏感级别

安全机制

备注


表格填写要求:


  • 较敏感数据默认脱敏展示,如业务需要需明文展示的,应先进行二次身份认证(附文字和截图说明数据脱敏展示情况,如涉及明文展示的,应补充说明二次身份认证通过后的数据展示情况)。


  • 敏感和极敏感数据默认脱敏展示,如业务需要需明文展示的,应先进行二次身份认证,二次身份认证通过后用户可自行在明文展示和脱敏展示之间进行切换(附文字和截图说明数据脱敏展示的情况,如涉及明文展示的,应补充说明二次身份认证通过后用户切换数据展示模式的前后情况)


  • 服务端业务日志没有打印或存储敏感信息。


  • 极敏感:私密信息、涉事涉法、资金数量、生理状态


  • 敏感:姓名、详细信息、身份证号、电话号码、卡号、车牌


  • 较敏感:特殊职位、地点、知识产权、医疗卫生


  • NO.05 越权漏洞


使用工具:抓包工具


测试情况:


相关接口 功能描述 备注





需要结合自己的业务场景进行测试,填写表格, 并附测试情况截图,要求:


  • 所有接口都需进行测试,并且都不存在越权漏洞,但截图可仅提供部分接口的测试截图。


  • 截图要求:至少需要两张截图, 一张A用户正常的请求,一张A用户修改了URL参数的请求。截图需能看出请求的URL及返回的内容。


  • NO.06 XSS漏洞


测试情况:


存在输入输出内容的页面

功能描述

备注



填写表格, 并附测试情况截图,要求:


  • 所有存在输入内容的页面都需进行测试,并且都不存在XSS漏洞,但截图可仅提供部分接口的测试截图。


  • 截图要求:至少需要一张截图, 查看内容被插入了HTML代码的页面。截图需能看出内容中的HTML代码未被执行。或使用Appscan等漏洞扫描工具检测证明不存在XSS漏洞


  • NO.07 SQL注入漏洞


测试情况:


SQL操作的代码实现方式 备注






填写表格, 并附测试情况截图。截图要求:


使用Sqlmap等工具检测证明不存在SQL注入漏洞或将执行SQL语句相关的关键代码进行截图。使得能够看出来未使用拼接SQL语句的方式。


  • NO.08 跨站请求伪造漏洞


使用工具:抓包工具


测试情况:



相关接口

功能描述

备注








填写表格, 并附测试情况截图,要求:


  • 所有接口都需进行测试,并且都不存跨站请求伪造漏洞漏洞,但截图可仅提供部分接口的测试截图。


  • 截图要求: 至少需要两张截图, 一张正常的Referer或CSRF-Token的请求,一张修改了Referer或CSRF-token的请求。截图需能看出请求的内容及返回的内容。或使用Appscan等漏洞扫描工具检测证明不存在CSRF漏洞。


  • NO.09 文件上传漏洞


测试情况:


检查项

检查结果

是否存在文件上传功能

文件上传至()

上传文件类型限制

上传文件重命名


上传文件查看


其他处理措施补充说明



填写表格, 并附测试情况截图。


截图要求:截图能支撑检查结果。


  • 如文件上传至oss,访问已上传文件的url:oss-cnhangzhou.aliyuncs.com/1291723234/3e34j4u4dkdo.jpg,将地址栏信息一并截图。


  • 其余对代码部分截图,要能看出应用对上传文件做了相应限制。


相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
3天前
|
小程序 开发工具 数据库
零基础开发小程序第三课-列表功能开发
零基础开发小程序第三课-列表功能开发
|
3天前
|
设计模式 Java 测试技术
软件测试/测试开发/全日制|Page Object模式:为什么它是Web自动化测试的必备工具
软件测试/测试开发/全日制|Page Object模式:为什么它是Web自动化测试的必备工具
57 0
|
存储 缓存 移动开发
|
8月前
|
自然语言处理 安全
Web3.0钱包系统开发(开发功能)/指南教程/步骤流程/方案设计/项目逻辑/规则玩法/案例源码
Wallet type selection: Determine the type of wallet, which can be a browser plugin wallet, mobile application wallet, or online web wallet. The choice of wallet type should be based on the target user group and usage environment.
|
8月前
|
安全
交易所系统开发详细项目丨案例规则丨方案设计丨步骤需求丨逻辑功能丨源码程序
Requirement analysis and planning: Collaborate with customers to clarify the requirements and goals of the coin exchange system. Understand the customer's business model, target user group, and currencies to be supported by the exchange, and develop a detailed demand plan.
|
存储 移动开发 JavaScript
IRS应用发布之十一:应用部署发布
开发商工作台基于Docker体系和NodeJS构建发布系统,Docker镜像版本为NodeJS Long Term Support (LTS)版(node:lts),根据NodeJS升级计划自动更新默认版本。构建流程如下所示:
IRS应用发布之十一:应用部署发布
|
11月前
|
小程序 开发工具 开发者
零基础开发小程序第三课-列表功能开发(一)
零基础开发小程序第三课-列表功能开发(一)
|
11月前
|
小程序 数据库 容器
零基础开发小程序第三课-列表功能开发(二)
零基础开发小程序第三课-列表功能开发(二)
|
运维 测试技术 数据库
测试思想-流程规范 关于预发布环境的一些看法
测试思想-流程规范 关于预发布环境的一些看法
446 0
|
测试技术 BI Android开发
测试思想-流程规范 软件测试版本管理与版本发布
测试思想-流程规范 软件测试版本管理与版本发布
156 0