【安全服务系列】企业源代码安全审计工作这个锅应该由谁来背?

news/2024/9/28 14:17:09

随着应用系统安全技术越来越受业主和承建方(甲方)的重视,对于源代码安全审计层面是进行安全漏洞的防范,避免产生所谓的“0-day”漏洞,现在已是所有提测客户的共识,已经形成了一种共鸣,成为构建软件安全保障体系中的必备环节。但也常常听到有人抱怨“源代码安全审计很难开展,总是遇到这样那样的问题,分工不明,权责不清,配合变成对抗,最后导致虎头蛇尾,甚至是执行不下去,留以形势,无法产生实际作用“。

那么今天我们就来讨论一下,企业内部怎样开展源代码测试?到底谁来背源代码审计这个锅,才能使其有效地执行,事半功倍?

源代码安全审计工作到底归准?这个锅由谁来背呢

软件源代码安全测试工作到底应该归属于哪个部门?是测试部门?是安全部门?还是开发部门?这个问题时候我们企业管理人员、企业高层必须思考和解决的。因为只有真正弄明白这个问题,才能清楚地根据用户的实际需求,为用户提供真正有效的帮助。

这个问题看上去确实不难回答,但在实际工作分配的时候,你会发现好像交给谁,他们都会说“不太合适”。

我们逐个来分析一下:

1、测试部门

测试部分首当其冲,企业中很多人都会想到这个“源代码安全审计工作”当然由测试部门来完成,当然这属于测试部门的工作。当把源代码安全审计工作交给测试部门的时候,他们会告诉你:“对不起,我们只懂测试。功能和性能测试交给我们没有问题,可是我们不太懂安全和安全漏洞,还是源代码级别的安全漏洞,我们一是看不懂代码,二是不明白什么是安全漏洞,这是安全工作,你还是找安全部门人员”。但是很少企业有“安全测试部门”或者“安全部门”,很多业主企业几乎没有安全部门的,根本没有实力进行“源代码安全审计工作”,只能向专业的第三方软件评测机构进行提测申请,出具专业的《源代码安全审计验收测试报告》。

2、安全部门

安全测试部门对所熟知的一些测试,如漏洞扫描,渗透测试等都是属于安全工作职责。可安全人员却会说:“这是源代码安全,属于代码安全优化和加固,我们安全人员90%的人员来自于网络安全背景,基本上看不懂代码,更不会编写代码。同时,软件源代码我们一般也很少拿得到源代码,拿到了也不会构建测试环境。这还是开发部门做比较合适。”得,这个锅就到了研发部门这边了。

3、开发部门

既然前两个部门的人员都共同指出了他们看不懂代码,不会编码,所以做不好源代码安全审计。那就由开发部门来做吧。可开发部门做源代码安全测试,他们能同意吗?从经验上看,一般他们会以“开发时间紧、任务重;功能开发都无法按时完成;安全问题是安全部门考虑的”等等一系列“借口”给你推掉。要是遇到较为“强势”的开发部门,他们会说:“安全测试的活都要我们做,那还要安全部门和测试干什么?”不过在我们看来,即使开发人员做了源代码安全测试,他们也都会以“各种各样的理由,而将“问题”判定为‘误报’,不去修复”。这种即作“选手”,又作“裁判”的情况,也很难真正发挥源代码安全测试的功能。

制定企业内部源代码安全审计体系

那到底该谁来负责实施源代码安全测试工作?以我们评测机构多年对评测服务的经验来看,这项工作需要安全、测试、开发和管理四个部门有效地配合才能真正执行下去。

我们将四个相互独立的部门,在源代码安全上进行地贯穿,相互牵动,形成一个上通下达的有效的整体,各个部门分工明确,权责清楚,再加以积极配合即可实现源代码安全审计保障。具体上讲,就是建立以“源代码安全测试标准”中心,“审计式测试和开发者测试”为两个基本点的源代码安全测试制度,以“安全测试与安全开发”两手都要抓,两手都硬的原则来开展源代码安全审计工作,并最终形成“有法可依,有法必依,执法必严,违法必究”的管理格局。

具体要点如下:

“源代码安全测试标准”为中心。在以安全部门为主,开发和测试为辅的方式下,合理地制定出源代码安全测试标准。该标准要即能满足安全部门安全防范的要求,又要能让测试和开发部门能够执行得下去,避免矫枉过正。然后由管理部门制定和发布执行。形成“有法可依”。

“审计式测试”第一个基本点。在以测试部门为主,选择业界最佳的安全产品解决方案(如北京尚拓云测科技有限公司的安全测试团队),以此建立尽可能全自动化的源代码安全测试平台。来实现测试成本最小的“审计式测试”。其中“审计式测试”是指在系统阶段版本发布或者系统发布之前的安全测试,由测试部门完成。安全部门执行监督。确保任何一个系统在发布之前都执行了安全测试,并符合“源代码安全测试标准”。

“开发者测试”第二个基本点。开发部门在经过几次安全问题测试和修复过程后,就会发现“与其被动测试,被动修复问题,不如主动防范错误”,打铁还需自身硬。这样一方面开发人员就会加强和重视源代码安全编码方面的质量,避免出错。另一方面,如安全测试过程基是全自动化的,测试成本很低,开发人员会主动地在开发程中进行源代码安全测试。开发者测试还带来的另一个好处是,及时地发现安全问题,修复成本变化极低。

通过上面详细的分析和总结,我相们大家已经明白了软件源代码安全审计工作的特点以及对实施这项目工作的工作重点。那么就形成统一的测试整体体系,各部门有效地积极配合才能让整个企业安全开发水平、测试水平、理水平得到提高,真正达到事半功倍的效果。从而这个锅每个执行部门都要背,都要积极的去面对才能做好源代码安全审计工作。

原创 软件测评实验室

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hjln.cn/news/47310.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

只需要一份Yaml文件,即可实现UI自动化

Pytest + Selenium/Appium + Yaml + allure 实现的UI自动化测试框架使用环境allure-pytest==2.13.5 Appium-Python-Client==4.0.0 Faker==25.8.0 Jinja2==3.1.4 PyMySQL==1.1.1 pytest==8.2.2 pytest-xdist==3.6.1 PyYAML==6.0.1 selenium==4.21.0实现逻辑初始驱动,返回 drive…

React18

React18 + Redux9 + ReactRouter6 + TypeScript0x01 React 基础 (1)概述React 框架由 Meta(原 Facebook)研发并发布 用于构建 Web 和原生交互界面的库 优点:使用组件化的开发方式,性能较优 具有丰富生态,并且支持跨平台(2)创建开发环境 a. 第一个工程需要提前安装并配…

7-Zip

最牛掰的解压缩的开源软件!赏!!!!概述 7-Zip 是一款免费开源的文件归档和压缩软件,由于其高压缩比和支持多种格式等优势,越来越受到用户的青睐。7-Zip 最初由一位俄罗斯程序员开发,现已经成为全球领先的压缩软件之一。 作为开源免费的 7-Zip 解压缩工具,除了常见的压缩…

FQC外检机使用Profibus转Modbus网关提升工作效率

本文介绍了PLC通过Profibus转Modbus网关(XD-MDPB100)与视觉传感器实现通讯,在FQC外检机中提升自动化和检测效率。控制器通过Profibus转Modbus网关(XD-MDPB100)与视觉传感器实现通讯,在FQC外检机的应用为生产流程的自动化和优化提供了重要支持。在工业自动化领域,PLC常被…

Flutter 借助SearchDelegate实现搜索页面,实现搜索建议、搜索结果,解决IOS拼音问题

使用Flutter自带的SearchDelegate组件实现搜索界面,通过魔改实现如下效果:搜素建议、搜索结果,支持刷新和加载更多,解决IOS中文输入拼音问题。搜索界面使用Flutter自带的SearchDelegate组件实现,通过魔改实现如下效果:搜素建议 搜索结果,支持刷新和加载更多 IOS中文输入…

.NET Core 3.x 基于AspectCore实现AOP,实现事务、缓存拦截器

最近想给我的框架加一种功能,就是比如给一个方法加一个事务的特性Attribute,那这个方法就会启用事务处理。给一个方法加一个缓存特性,那这个方法就会进行缓存。这个也是网上说的面向切面编程AOP。AOP的概念也很好理解,跟中间件差不多,说白了,就是我可以任意地在方法的前面…

内存调优实战

实战篇1、内存调优1.1 内存溢出和内存泄漏内存泄漏(memory leak):在Java中如果不再使用一个对象,但是该对象依然在GC ROOT的引用链上,这个对象就不会被垃圾回收器回收,这种情况就称之为内存泄漏。内存泄漏绝大多数情况都是由堆内存泄漏引起的,所以后续没有特别说明则讨论…

团队开发日记4

日期:2024年5月11日标题:校园兼职招聘系统开发日记 - 收藏功能和邮箱功能实现 项目概述:今天我们完成了用户收藏功能和邮箱功能的设计和实现,增强了系统的个性化和通知能力。 当天的工作内容:李健龙负责了用户收藏兼职和帖子的页面设计和数据存储逻辑。 郑盾实现了系统的邮…