【SDL实践指南】人工代码审计思路

文章前言

在SDL安全测试环节的代码审计部分我们通常会使用代码审计工具对源代码进行安全扫描并对扫描结果进行审核从而筛选出其中存在的安全问题并以安全单的形式提交给研发人员进行修复,代码审计工具的好处在于快速全量,但是也会存在很多的误报和漏报问题,故而部分企业在有时间的情况下还会采用人工审核的方式对源代码进行二次安全审计,但是人工审计也存在一个普遍的安全问题就是耗时长且难以保证代码的完全覆盖

审计思路

下面以JAVA项目代码审计为例给出其审计思路:

代码层面

审计人员可以通过对项目代码中存在的不安全编码和使用不安全函数进行检索来查找存在的常见风险,例如:OWASP TOP 10漏洞

  • XXE

  • SQL注入

  • 命令执行

  • 文件上传

  • 文件读取

  • JNID注入

  • 反序列化漏洞

  • ......

业务层面

审计人员可以通过查阅项目文件夹目录、文件名称以及文件源码中关于代码功能的注释来猜解该部分代码对应的业务功能,之后寻找常见的业务功能设计缺陷:

  • 用户登录

  • 用户注册

  • 密码找回

  • 账号充值

  • 修改个人资料

  • ......

组件框架

审计人员可以通过查阅项目pom文件确定是否使用不安全的第三方开源组件,并通过查看项目文档等说明书确定项目是否有使用不安全的框架:

  1. 框架类漏洞

  1. 第三方库类漏洞

  1. ......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FLy_鹏程万里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值