您当前的位置:首页 > 电脑百科 > 网络技术 > 网络知识

新冠疫情给 CTO 们带来的几点启示

时间:2020-02-25 14:01:14  来源:  作者:

作者 | 梁宇宁、Gavin Bu

责编 | 唐小引

头图 | CSDN 下载自东方 IC

出品 | CSDN(ID:CSDNnews)

看到这篇文章的时候,作为 CTO 尤其是在中国的你,是否正在为不能够及时复工短兵缺将而发愁?又或许你正在努力地管理在家办公的团队来保证业务系统及时上线?

确实,这次在武汉爆发的新型冠状病毒(COVID-19)感染的肺炎疫情对社会和经济发展造成的阻碍,远远超过我们的预期。这次突发的公共卫生事件就好比一次由于软件漏洞而造成的软件安全事件,而我们该从中汲取怎样的经验和教训呢?

1.是内忧还是外患?

每一天,软件研发人员特别是产品经理、QA、CTO 们都在高度关注产品上线情况,为了增加线上日活量呕心沥血、绞尽脑汁,为了满足业务的需求和交付期限,他们常常会忽视系统里仍然存在的隐患——那些 Blocker Bug 静静地躺在那里无人问津。

质量检查团队为了追赶测试计划,通常会导致缺乏对程序的全面分析。一些欲言又止的 QA 只能望着上线倒计时牌无可奈何。软件成功上线皆大欢喜,直到软件漏洞被黑客恶意利用。

通过安全编码方法或使用正确的源代码分析工具能尽早发现漏洞。扁鹊有句名言:君有疾在腠理,不治将恐深。换句话说,最好的医师是防止患者生病,而不是在患者病情加重时去试图挽救他们。疾病如此,更何况软件合规性和安全性,这就是为什么在 SDLC 中“左移”测试正被广泛采用。一个重要的教训是“不要把安全留到最后”。

导致软件安全事件的原因到底是什么?

毛主席在他的著作《矛盾论》中提到“事物发展的根本原因,不是在事物的外部而是在事物的内部,在于事物内部的矛盾性。外因是变化的条件,内因是变化的根据,外因通过内因而起作用。”

企业组织首先采取的(有时是唯一的)行动是保护自己免遭受来自外部的攻击。很多企业一贯注重杀毒软件、防火墙、加固等防范外部侵入的可能,但却往往忽视企业研发人员本身的整体素质培养和代码质量的管理。企业的防火墙可以被攻破,但如果代码是安全的,则攻击者可能没有机会利用其入侵。

不安全的应用程序可能导致数据泄露,丢失服务,拒绝服务,系统损坏,所有这些都可以使企业损失数百万美元。这里的教训就是确保设计安全作为标准的工作方式。

2.公司有高准确率的“核酸检测试剂”吗?

新闻报道称新冠肺炎的核酸检测准确率并不是 100%,这说明检测的结果可能是混杂着假阳性和假阴性的患者。假阳性是错误的检测到某个特定条件下的结果。假阴性说明病毒未被检测到,但病人实际已感染。对于假阳性的患者来说,医师们不得不花费更多的时间和使用不同医学检测手段来逐一排除每个假阳性患者。这无疑是在浪费资源和时间。

另一方面,一旦患者没有被限制行动范围,“假阴性”将导致病毒继续传播的严重后果。

反观软件应用程序安全测试(SAST)的过程中,发人员需要能够以较少的假阳性和假阴性来提供高度准确的缺陷识别工具。静态代码分析用于通过安全编码标准(例如 CERT)在 SDLC 的早期识别缺陷,该标准使用来自全世界的方法来帮助避免编写不安全的代码。

所有 CTO 和开发人员都应该问自己一个问题:我们是否有最合适的“核酸检测试剂”来定位系统中的漏洞?这里的教训是你需要一个好的静态代码分析工具来完成这项工作。

3.如何避免遭遇公司级的“COVID-19”?

1. 抛弃侥幸心理,坚持质量第一的心态。

不能急功近利去看待对于质量管理体系提升的投入产出比,也不是说有了某套系统就希望每年来一次“疫情”让它发挥伟大作用。而是要长远看到这个体系的投资效益。

2. 建议加大对于安全质量管理体系的投入。

提高开发人员的安全编码态度和技能,以便他们在编写代码的同时检查漏洞。虽然存在早期投入,但这是公司整体运营质量的提高,是公司应对风险能力的提升。设计安全性应该成为研发人员的第二天性。

3. 严格控制质量,并使用静态代码分析工具。

这些工具可以尽早发现软件中的缺陷和潜在风险,具有很高的准确性。

作者简介:梁宇宁,现任上海鉴释科技公司 CEO,主要精力投入到计算机科学的核心基础技术中,以帮助工程师提高编程知识,并优化全球软件的质量和安全。

Gavin Bu,现任上海鉴释科技公司商务总经理,主要负责客户整体解决方案和打造以客户为中心的服务体系,目标是为客户更高质、更卓越的业务运转而创新。在鉴释,我们使用编译器深度分析技术,来检测代码的合规性和漏洞。我们的解决方案可以无缝集成到应用于软件开发过程,以帮助开发人员更早,更准确地发现缺陷。



Tags:CTO   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
看到这篇文章的时候,作为 CTO 尤其是在中国的你,是否正在为不能够及时复工短兵缺将而发愁?又或许你正在努力地管理在家办公的团队来保证业务系统及时上线?...【详细内容】
2020-02-25  Tags: CTO  点击:(73)  评论:(0)  加入收藏
▌简易百科推荐
以京训钉开发平台接口文档为例,使用HttpClient类请求调用其接口,对数据进行增删改查等操作。 文档地址: https://www.yuque.com/bjjnts/jxd/bo1oszusing System;using System.C...【详细内容】
2021-12-28  Wednes    Tags:HttpClient   点击:(1)  评论:(0)  加入收藏
阿里云与爱快路由安装组网教程一、开通好阿里云轻量服务器之后在服务器运维-远程连接处进行远程 二、进入控制台后在root权限下根据需要安装的固件位数复制下面命令。32位:wg...【详细内容】
2021-12-28  ikuai    Tags:组网   点击:(1)  评论:(0)  加入收藏
HTTP 报文是在应用程序之间发送的数据块,这些数据块将通过以文本形式的元信息开头,用于 HTTP 协议交互。请求端(客户端)的 HTTP 报文叫做请求报文,响应端(服务器端)的叫做响应...【详细内容】
2021-12-27  程序员蛋蛋    Tags:HTTP 报文   点击:(5)  评论:(0)  加入收藏
一 网络概念:1.带宽: 标识网卡的最大传输速率,单位为 b/s,比如 1Gbps,10Gbps,相当于马路多宽2.吞吐量: 单位时间内传输数据量大小单位为 b/s 或 B/s ,吞吐量/带宽,就是网络的使用率...【详细内容】
2021-12-27  码农世界    Tags:网络   点击:(3)  评论:(0)  加入收藏
1.TCP/IP 网络模型有几层?分别有什么用? TCP/IP网络模型总共有五层 1.应用层:我们能接触到的就是应用层了,手机,电脑这些这些设备都属于应用层。 2.传输层:就是为应用层提供网络...【详细内容】
2021-12-22  憨猪哥08    Tags:TCP/IP   点击:(35)  评论:(0)  加入收藏
TCP握手的时候维护的队列 半连接队列(SYN队列) 全连接队列(accepted队列)半连接队列是什么?服务器收到客户端SYN数据包后,Linux内核会把该连接存储到半连接队列中,并响应SYN+ACK报...【详细内容】
2021-12-21  DifferentJava    Tags:TCP   点击:(10)  评论:(0)  加入收藏
你好,这里是科技前哨。 随着“元宇宙”概念的爆火,下一代互联网即将到来,也成了互联网前沿热议的话题,12月9日美国众议院的听证会上,共和党议员Patrick McHenry甚至宣称,要调整现...【详细内容】
2021-12-17  王煜全    Tags:Web3   点击:(14)  评论:(0)  加入收藏
一、demopublic static void main(String[] args) throws Exception { RetryPolicy retryPolicy = new ExponentialBackoffRetry( 1000, 3);...【详细内容】
2021-12-15  程序员阿龙    Tags:Curator   点击:(22)  评论:(0)  加入收藏
一、计算机网络概述 1.1 计算机网络的分类按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);按照网络使用者:公用网络、专用网络。1.2 计算机网络的层次结构 TCP/IP四层模...【详细内容】
2021-12-14  一口Linux    Tags:网络知识   点击:(31)  评论:(0)  加入收藏
无论是在外面还是在家里,许多人都习惯了用手机连接 WiFi 进行上网。不知道大家有没有遇到过这样一种情况, 明明已经显示成功连接 WiFi,却仍然提示“网络不可用”或“不可上网”...【详细内容】
2021-12-14  UGREEN绿联    Tags:WiFi   点击:(25)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条