安全测试全面总结-安全体系1-OWASP服务端安全测试体系
再次系统的整理一下深入一下安全测试
正常用户操作网站
正常的用户使用网站,app,会完成一系列的操作,
数据的传输会进入服务器
然后系统返回数据,
这是一个正常的流程,
然后测试工程师比较关注的是等价类,边界值,判定表,等办法,来完成功能的覆盖,
黑客操作网站
我们也可以把黑客理解成为一种特殊的测试工程师,
他们也关注等价类,边界值,判定表,等办法,但是他们会扩展到更大的视角,
1 篡改app使用的数据
黑客使用app的时候,会篡改这个手机app,
比如手机app读取GPS数据的时候,GPS数据是可以被篡改的,
比如钉钉打卡,有人就能开发工具,篡改GPS,达到任意地点打卡,
比如游戏app,会有人开发外挂软件这样的,
2 篡改app本身的数据
同样的app也可以被篡改,
比如充值,他可以改掉,
比如可以更改app的源码,然后绕过一些验证,比如验证账号密码,验证充值数字,
当然在本地篡改可能不解决问题,有很多的验证是双向的验证,不只是在app验证,还在服务端验证,服务端的逻辑不在黑客的控制里面,
3 服务端的安全问题
服务端也是有安全问题的,比如正常的数据带来正常的结果,但是异常的数据呢,会不会给客户带来其他的影响呢
所以在安全领域的测试,将会有一个新的视野的扩展,
应用的安全风险
由此引入了应用的安全问题,
作为一个黑客,或者渗透测试工程师,可以利用应用的漏洞,绕过你的应用端或者服务端的安全验证,
从而控制你的服务端,app端,影响和渗透你的业务逻辑,
这样就会对你企业的资产带来影响,最后影响你企业的商业价值,
简单说就是黑客会对你们公司带来很大的利益影响,
owasp组织
官网:https://owasp.org/
The Open Web Application Security Project
类似一个安全协会
他们会隔一段时间公布一个top 10的安全漏洞,https://owasp.org/www-project-top-ten/
我们可以从他的官网看到最新的2021年的安全漏洞公布
1,中断访问,
2,加密问题,或者叫做数据安全问题,或者敏感数据问题,数据安全是一个很大的问题,各个公司都应该重视,
3,注入漏洞,比如sql注入,xss注入,csrf攻击等, 都是注入,
4,不安全的设计
5,安全配置错误
6,易受攻击和过时的组件,第三方的开源组件的安全问题,
7,识别和身份验证失败
8,软件和数据完整性故障
9,安全日志记录和监视失败
10,服务器端请求伪造
还有一个移动端的安全漏洞威胁,
还有一个安全漏洞的checklist,官网也有提供
owasp的问题
owasp所有的解决方案都是面向安全测试工程师的,
安全本身就是一个独特的领域,专业的领域
不是面向普通的测试工程师的
提供的解决方案,无法在有限的项目周期内完成,
安全问题很多都有自动化的解决方案,可以自动检测,
但是非自动化的,测试工程师也不能完全的执行,
更加专业的安全测试,会有第三方的安全公司来做的,
安全测试工程师的两个范畴
测试工程师安全测试体系
我们将主要聚焦于测试工程师需要掌握的安全技能
1,移动端安全
2,服务端安全
移动端的安全很重要,毕竟这个app是交付到客户手里的,我们只能提高被破解的难度,很难保证完全不被破解,
我们今天关注的是服务端的安全,移动端的后面有机会再研究,
服务端安全分类:
生产环境安全
网络安全
系统安全
系统安全是Linux,服务器系统这样的安全问题,
应用安全 (业务安全)
应用安全
- 应用代码: Java Python PHP Ruby
- 应用框架: Spring Structs Django ThinkPHP Rails应用容器: Tomcat]Boss Apache Nginx
应用安全,比如Nginx,Django,spingboot都爆出来严重的漏洞,如果你跟随更新,你的系统就会有风险,
这个测试参与的不多,谁参与的多,就是运维参与的多,只要慢一步,就要被黑客攻击,
测试更关注的是发布之前的漏洞,发布之后就控制不了了,如果爆出来了漏洞,更多的是运维或者更加专业的安全工程师在参与,
测试还是可以做一部分安全工作的,就是历史出现的漏洞,还有就是手动执行一些安全用例,