为什么安全是Java开发人员的首要任务?

大多数人都可能有以下经历,在亚马逊上订购商品、通过优步叫车、在Airbnb上预订房间、在在 Netflix上看过电影或节目、在Instagram上发布过照片、在Pinterest上固定过商品或在谷歌上查了一些东西,在这期间无形中就在使用了Java。

简而言之,Java是一种让成千上万的应用程序和网站无缝运行的编程语言。

Java于1995年由Sun Microsystems首次推出,现在是Oracle的产品,它是世界顶级的编程语言,运行着从科学超级计算机、数据中心和电子商务网站到手机、游戏机和网上银行的一切事物。

很多程序员一直从事Java语言代码的编写,完成一个又一个软件应用。但在说起如何确保软件应用安全时,知道的人少之又少。

Infosec Skills的作者 Larry Ricker表示,“自互联网以来,网络安全性一直在增长,而这一需求一直是互联网创造的一个问题,Ricker称,他最近在信息安全技能中发布了《用Java编写安全代码学习路径》(Writing Secure Code Learning Path in Infosec Skills)。“如果你在做任何编程或编写应用程序,并且身处一个有客户的环境中,你就在收集人们的信息,你需要保护这些信息。”

学习Java安全性

作为软件开发人员,我们有必要了解人们可以用来攻击软件的跨站点请求伪造和攻击,”Ricker说。“所以现在在进行安全代码审查并查看人们的代码时,更热衷于他们可能正在做的可能会打开漏洞或易受攻击的事情。”

易受攻击的代码导致网络攻击

今年早些时候,一名道德黑客利用开源开发工具,侵入了苹果、微软、Netflix、贝宝、Shopify、特斯拉和优步等科技公司的系统。

安全研究员 Alex Birsan 开发的代码被注入到常用工具中,用于在开发者项目中安装依赖项。他利用的漏洞在超过35个企业中被检测到,主要使用三种编程语言——Python、Ruby和Java。

去年,SolarWinds遭到黑客攻击,影响了该公司约1.8万名客户,这些客户下载了一个植入恶意代码的软件更新。包括微软、英特尔和思科在内的100多家公司受到影响。包括财政部、司法部、能源部和国防部在内的联邦政府机构也是如此。

隐私法强调安全

由于机构和社交媒体收集了大量的个人信息,国外的隐私法和国内的《个人信息保护法》正在收紧。欧盟通过了保护个人隐私的法规,并对侵犯个人隐私的行为实施严厉惩罚。国内的《个人信息保护法》也在11月1日开始实施。 这些正在施行的法规对企业的影响都是真实的。

“作为开发人员和编码人员,我们正在收集大量个人信息,我们必须保护这些数据。这涉及到设计层面,在应用软件开发前期就必须开始考虑安全问题。

当某些平台出于营销目的收集大量信息,这会使企业承担安全上的责任。所以每个人都需要意识到这种环境下的安全性。”

提高Java的安全

静态代码安全检测工具是一个常见且有效的检测方式,静态代码检测在不执行代码的情况下检测所有可执行路径,并且面向源码分析多种问题。静态代码分析是在研发阶段开始找到并修复多种问题,节省大量时间、人力成本。

提高Java编码的安全性对企业来说不仅局限于软件安全性上,在经济上也能减少相当一部分开销。数据显示,在测试、发布阶段纠正缺陷的成本是编码阶段发现并纠正缺陷的成本的15-90倍,如果在交付用户之后才发现并解决缺陷,这个数字将达到50-200倍。因此,在编码实现阶段发现并解决尽可能多的缺陷,能够极大降低缺陷管理成本,据相关统计数字估计,这个成本至少可以降低 1/3.在安全漏洞被疯狂利用的今天,通过静态代码分析技术来提高软件安全是企业的重要措施。

哪些企业应该提高Java安全?

随着数字时代的加速发展,越来越多的企业进行数字化转型,网络攻击分子更盯住金融服务、互联网等巨头企业,同时医疗保健和关键基础设施等组织也是其重点目标。在企业开发软件或确认来自第三方供应商软件时,加强对代码缺陷和安全漏洞的检测有助于企业维持安全稳健的网络环境,同时也有助于企业业务的健康发展。