南京正厚软件技术培训学校

7x24小时咨询热线

400-660-3310

当前位置 : 好学校 南京正厚软件技术培训学校 学习资讯 资讯详情

干货分享 | 安全测试

2022-06-27

严老师的干货分享

——成都正厚软件

安全测试在做什么?

扫描?在很多人的眼中,做安全的就是整天拿个工具在哪里做扫描操作,使用各种不同的工具做扫描。是的,扫描是安全测试的很重要的一部分,扫描可以快速有效的发现问题。扫描工具的易用性、方便性决定了重要地位。但是扫描工具的局限性、程序的不够灵活等缺点也是显而易见的。不管是扫描报告的分析、漏洞的深度挖掘、测试的组织等等的工作都离不开安全测试人员,所以只能说扫描工具减轻了测试人员的工作量,是安全测试的一种手段。

安全的本质是什么? 

信任、人性(网络安全的漏洞是人)、止损、攻防

1.概念定义:

敏感数据:敏感数据的具体范围取决于产品具体的应用场景,产品应根据风险进行分析和判断。典型的敏感数据包括口令、银行帐号、大批量个人数据、用户通信内容和密钥等。个人数据:指直接通过该数据或者结合该数据与其他的信息,可以识别出自然人的信息。

匿名化:指对个人数据进行的更改(例如单向散列、截短、替换等,如需保留个人数据真实值与替换值之间的对应关系,可以使用对称加密或映射表方式,但密钥/映射表必须由数据所有者控制),使原来有关个人的信息不再能归属到一个可识别的自然人,或推理这种归属需要耗费过多、不相称的时间、费用和精力

2.我们应该如何去着手

如何着手去做这个系统安全测试呢?作为一个测试人员要**系统整体的安全,这就需要有一个整体的结构的框架,就像盖房子一样,先造钢筋混凝土框架,然后砖块去填充它。这里的钢筋混凝土框架就是安全特性方向,其实就是从整体方向上的一个划分,可以有如下简单的划分。

教学

2.1.测试的特性

安全特性:操作系统安全、数据库安全、WEB安全、软件的发布和安装安全、协议与接口攻防、敏感数据保护、手机端安全、静态代码分析。

2.1.1.操作系统安全操作系统安全我们可以把它分为以下几块:系统漏洞(操作系统补丁)、系统配置(安全加固),业界权威工具Nessus,其他如retina、绿盟、天镜等。开源的工具可以使用OpenVAS。

2.1.2.数据库

数据库安全我们可以把它分为以下几块:数据库漏洞(补丁)、数据库配置特产(安全加固),工具可以使用Ngs。2.1.3.web安全

数据库安全我们可以把它分为以下几块:身份验证、验证码、会话管理、权限管理、敏感信息传输、安全审计、信息泄露、输入校验、输出编码、上传下载、异常处理、注释代码等,容器的安全(tomcat),应用软件安全(nginx、负载均衡软件、jquery等),扫描工具:appScan、awvs2.1.4.软件的发布与安装安全发布件的完整性校验(签名、哈希)防病毒:需要安装的软件需要经过常用的杀毒软件(如360、卡巴斯基、金山毒霸等)的扫描,**没有病毒特种码,以免被杀软处理掉。2.1.5.协议与接口攻防业务交互数据在网络中使用的协议安全性测试,协议测试工具:codenomical对外开放的端口:系统对外开放的端口必须是必须的,禁止开放无用端口端口扫描工具:Nmap,近端可以直接在服务器上使用命令查看接口:接口接受的数据需要做严格的处理,接口数据严格校验测试2.1.6.敏感数据保护识别敏感数据:密码、秘钥、会话标识;个人信息、商业机密、客户信息等保护:加密、存储位置、传输方式;获取数据脱敏、匿名化

2.1.7.手机端安全1、app的签名、反逆向2、用户隐私3、文件权限4、网络通讯5、运行时解释保护6、组件权限保护7、升级8、3rd库2.1.8.静态代码分析(纯白盒)白盒测试主要是通过对代码的浏览来发现问题,当然问题的类型可能是跟我们黑灰盒总结的一致,拿出来单独讲是因为其不同于其他的测试方式。1、危险函数、方法2、工具检测3、逻辑漏洞

灰盒:结合白盒和黑盒的一些思路,在实际的代码审计中建议采用灰盒的方式,在需要的地方对代码进行动态调试查看。审计中思路可以考虑如下这些部分:

1、涉及敏感数据的时候,检查是get、post哪种形式发送数据Get传输的数据会被记录在代理、浏览器、web容器tomcat等的日志中

2、提交铭感数据的时候是否有防止csrf的token、refer、验证码等

3、sql注入1)Statement和preparestatement2)mybitas框架 #和$

4、XSS我们用的antisamy只能过滤基于标签的XSS伪造,其他的无法过滤,需要做二次过滤

5、逻辑:此处是指,逻辑思路不合理,不符合安全的一些思想,如权限最小化等等

6、参数范围是否造成dos或者影响系统性能

7、权限校验、越权:横、纵、多步骤关联性

8、session会话管理1)常规cookie及session形式2)把token作为session的形式,特别注入登录用户和token的绑定关系

9、参数是否是简单形式,是否可以造成遍历

10、代码中使用的第三方插件、开源软件是否是嘴新、是否有安全漏洞

11、代码中所使用的加密算法,是否是安全的

12、跳转中的redirect形式中不要带敏感信息,会被发回客户端重新请求的,相当于把这些参数放在了get请求

13、SSRF服务端请求伪造,注意url中含有另外一个url的请求1)源码中使用urlconnection 支持的协议除了http和https以外,还有file、ftp、jar、mailto等2)request、httpurlconnecttion、httpClient、URL等发起网络请求

14、加密算法的使用,是否使用的是不合场景的弱算法

15、数据插入自增Id攻击数据传入过来做插入动作,并且使用spring自动绑定对象方法获取数据,之后使用生成的插入sql,此时自动增长id不要写到更新语句中,如果写入可能造成恶意注入integer范围最da值2147483647,使功能不可用dos

16、Spring自动绑定参数,参数扩展攻击后台使用的对象参数自动绑定获取,相应的sql使用了自动的if是否为null和为空的判断条件,前台可以根据猜测注入队形的相应的属性实现非预料结果。

收藏
分享到:

相关课程

相关资讯

南京正厚软件技术培训学校

南京正厚软件技术培训学校

认证等级

信誉良好,可安心报读

南京正厚软件技术培训学校

已获好学校V2信誉等级认证

信誉值

  • (60-80)基础信誉积累,可放心报读
  • (81-90)良好信誉积累,可持续信赖
  • (91-100)充分信誉积累,推荐报读

与好学校签订读书保障协议:

  • 100%
  • 65
  • 12378
在线咨询
;