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

安全要求

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

  • 上架应用必须配置并使用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/

测试说明

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

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

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

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

测试报告模板

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. 极敏感:私密信息、涉事涉法、资金数量、生理状态

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

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

  • 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,将地址栏信息一并截图。

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

猜你喜欢

转载自blog.csdn.net/qq_21137441/article/details/124863138