一、引言
本文我们将以围绕系统安全质量提升为目标,讲述在功能安全测试&安全渗透测试上实践过程。
希望通过此篇文章,帮助大家更深入、透彻地了解安全测试。
二、安全渗透测试实践
安全前置扫描主要是识别白盒漏洞、黑盒漏洞问题,针对JSRC类问题,需要通过渗透测试进行漏洞发现。
1.安全测试类别
安全测试根据开展的阶段不同,测试对象不同,可以分为:功能安全测试、安全渗透测试。
以下是两者定义、两者的区别:
| 两者定义 | 功能安全测试 | 在安全开发生命周期(SDL)的测试验证阶段,对应用系统进行检验,验证是否符合安全需求定义和产品质量标准的过程 。 |
|---|---|---|
| 安全渗透测试 | 在功能安全测试完成后和产品正式上线发布前,以黑客视角对应用系统的可以被利用的安全漏洞进行发现和检查,以保护资产和重要数据的机密性、完整性和可用性。 |
| | | 功能安全测试 | 安全渗透测试 |
|---|---|---|---|
| 两者区别 | 出发点不同 | 以发现系统所有可能的安全隐患为出发点 | 以成功入侵系统,证明系统存在安全问题为出发点 |
| 视角不同 | 站在防护者角度思考问题,尽量发现所有可能被攻击者利用的安全隐患,并指导其进行修复 | 渗透测试是以攻击者的角度来看待和思考问题 | |
| 思考域不同 | 以系统所具有的功能为思考域 | 不但包括系统的功能,还有系统的机制、外部环境、应用与数据自身安全风险与安全属性等 |
具体内容:
功能安全测试:
在功能测试阶段进行,由各业务线测试工程师进行,主要包括以下几个方面:
• 人员权限设置,是否满足需求文档中的说明:
1). 是否初始化好所有的角色;
2). 每个角色是否按最小权限进行功能配置;
•权限测试:水平越权、垂直越权、交叉越权;
•敏感信息处理是否符合规范;
1). 加密存储;
2). 显示屏蔽;
3). 脱敏导出;
4). 操作安全日志记录;
安全渗透测试:
| 逻辑安全测试 | 登录逻辑安全测试 | 主要测试登录验证逻辑是否可以绕过,是否存在验证码、是否可以撞库和暴力破解 |
|---|---|---|
| 修改密码逻辑安全测试 | 针对修改密码逻辑顺序绕过问题测试,针对修改密码中短信、邮件发送逻辑和其中验证码逻辑做相关测试 | |
| 验证码逻辑测试 | 对验证码复杂度和验证码验证顺序逻辑、验证码验证重放攻击做安全测试 | |
| 认证模块测试 | 对手机短信、ca证书等强认证模块的绕过测试 | |
| 客户端安全测试 | XSS测试 | 用户输入畸形脚本及标签过滤转义 |
| CSRF测试 | 验证服务器是否添加会话TOKEN及验证referer | |
| JSON挟持测试 | 检测json格式变化及是否验证referer | |
| XSIO测试 | 测试是否限制图片postion为absolute | |
| 基础认证钓鱼测试 | 检查是否可以修改img标签的src属性构造基础钓鱼页面 | |
| URL跳转测试 | 检测用户能否修改应用的url参数使页面跳转到指定页面 | |
| Flash安全测试(客户端) | 测试Flash配置中allowscriptaccess、allowNetworking是否合理配置 | |
| cookie安全测试 | 测试重点cookie是否使用了HttpOnly | |
| CRLF测试 | 检查用户输入在HTTP头中返回,并且没有过滤%0a%0d | |
| 服务端安全测试 | SQL注入测试 | 在数据库交互操作的输入点,输入sql语句测试是否可以执行 |
| 上传漏洞测试 | 在上传功能点,测试服务端是否对上传文件类型进行有效限制 | |
| 信息泄露测试 | 测试应用是否对系统报错、测试页面等进行有效处理,是否会泄露系统敏感信息 | |
| 文件下载安全测试 | 在文件下载或者读取功能上,测试功能设计是否合理,是否文件名称和路径用户可控 | |
| HTTP头测试 | HTTP头代理伪造、HTTP头PUT请求等畸形数据测试 | |
| 远程代码执行测试 | 提交特定的代码,测试代码是否会被应用执行 | |
| 路径遍历测试 | 访问各个路径,测试是否可以显示路径下文件信息 | |
| 垂直权限测试 | 检测普通用户是否能进入当前用户权限不能进入的功能,执行高权限操作 | |
| Flash安全测试(服务端) | 检查配置文件crossdomain.xml是否配置合理 | |
| 水平权限测试 | 测试用户是否只能操作自己当前用户的资源,是否能够操作其他相同权限用户的资源 | |
| SSRF漏洞 | 测试相关服务是否存在对内部网络探测 | |
| 框架安全测试 | struts框架安全测试 | 针对struts2表达式代码执行漏洞进行测试 |
| springMVC框架安全测试 | 针对springMVC标签多个代码执行漏洞进行测试 | |
| openssl安全测试 | 针对openssl“心脏出血”等漏洞进行测试 |
1.功能安全测试
(1)开展功能安全测试
Step1:确定项目是否需要安全评审
参考标准(来源安全部):
•公司重点战略项目
•外网新系统
•大量外部人员使用的内网系统(建议15人以上)
•含重大商业机密,特殊敏感性的系统;
•新采购的乙方项目或外包项目;
•上面几类系统在重大升级时。
Step2:依托SDL流程开展安全测试:
Step3:测试阶段的功能安全测试:
安全用例设计->测试执行->漏洞报告
Step4:上线前的提交渗透测试
(2)功能安全在项目中开展
SDL测试阶段开展功能安全测试:
①确定测试方案:功能安全测试、安全渗透测试、代码白盒扫描、应用黑盒扫描。
②安全用例设计
③功能安全用例: 基于功能点,从权限控制、越权类、数据类 维度进行用例设计。
SDL上线前提交安全渗透测试.
如果你对网络安全入门感兴趣,那么你点击这里👉优快云大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享
如果你对网络安全感兴趣,学习资源免费分享,保证100%免费!!!(嘿客入门教程)
👉网安(嘿客)全套学习视频👈
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
👉网安(嘿客红蓝对抗)所有方向的学习路线👈
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
学习资料工具包
压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

面试题资料
独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!
👉嘿客必备开发工具👈
工欲善其事必先利其器。学习嘿客常用的开发软件都在这里了,给大家节省了很多时间。
本文详述了功能安全测试与安全渗透测试在确保系统安全质量中的作用。功能安全测试关注于验证系统是否符合安全需求,而安全渗透测试则是从黑客视角发现潜在漏洞。文章介绍了安全测试的不同阶段、测试内容,包括权限测试、敏感信息处理、各种安全漏洞的检测方法等,并提供了SDL流程中的测试策略。




1505

被折叠的 条评论
为什么被折叠?



