程序员是应用安全的第一道闸

标签: 程序员 应用 安全 | 发表时间:2013-04-09 10:19 | 作者:
出处:http://www.iteye.com


绝大多数的企业,都是在Web应用设计结束后才开始考虑应用安全的问题,应用安全与应用开发之间的脱节是导致各种严重的安全漏洞的根源。

对很多互联网企业来说, Web应用安全往往在开发过程中被忽略。VentureBeat的专栏作者John Jacott最近发表了一篇博文认为安全的第一个也是最重要的环节是程序员。由IT经理网编译如下:

如今,你随处都能听到各种各样Web应用被攻破的新闻。黑客们针对Web应用发起攻击,盗取敏感企业或个人数据等。各种黑客组织出于各种原因,针对不同的组织进行攻击。

绝大多数的企业,都是在Web应用设计结束后才开始考虑应用安全的问题。他们可能在应用开发结束后才进行安全测试,或者在应用正式上线前进行测试。有的甚至在正式上线后才进行安全测试。其实,业界中有很多著名的公司就是这么做的。这也就是你为什么经常能够听到那些大公司的Web应用遭受攻击或者数据被盗取的新闻。

造成这一情况的根源,在于应用安全与应用开发之间的脱节导致各种严重的安全漏洞。一般来说,应用开发程序员往往不是安全专家,而大部分安全专家则并不是程序员。因此,在对付应用安全问题上,需要这两方面的人员更好,更早地在开发过程中进行合作。

在开发早期就要重视质量控制(QA)

通常, QA是一个事后过程,或者是在开发后期才会考虑的问题。一个180天的开发项目,可能在最后20天是留给QA的,而安全测试则可能只有3天。

这样会产生几个问题,由于QA和安全测试在测试一个完整的应用程序,测试可能会发现一些严重问题,而这些问题需要程序员来解决。

这样问题来了,当这些问题被发现的时候,程序员可能已经结束项目了,在规定期限内完成了项目要求,或者已经去别的项目了。而这时候出现的安全问题可能已经不是程序员们需要解决的重点了。

程序员介入安全问题越早越好

程序员在早期介入安全问题,就意味着那些对应用最熟悉的人,能够有最多的时间和精力去解决安全问题。

我们不能指望在开发结束后,程序员转到另外的项目以后,才开始考虑安全问题。对安全问题的考虑,必须是渐进的,贯穿整个开发过程的。同样的,安全测试也是如此。

不少人都知道,程序员们一般都抵触安全问题,因为他们没有时间,没有能力,没法理解在完成应用的同时还要去满足一系列安全的要求。如果你开发一个产品的同时还对你提出一堆安全性的要求。你可能也会这么认为。而且,你如何保证程序员们都是安全测试的专家,而安全测试的专家们又不介入程序开发。

不少网络安全公司都针对程序员进行一些如跨站攻击(XSS)的培训。然而,我们却发现这样的漏洞却越来越多。有些漏洞甚至都存在了15年。这样的培训往往不成功,因为很多企业并没有采取正确的开发流程。

安全测试人员要善于与程序员沟通

安全测试专家需要更好地了解应用开发的过程,需要给出程序员能够理解的明确要求。通过技术和流程来测试应用的质量和安全性以及代码的质量和安全性。

安全测试人员不要在项目结束后才提出测试要求。对代码的测试需要按照天为单位,或者在代码提交后就进行测试。对代码的缺陷要用程序员能够理解的方式告诉他们,并对他们如何修改提供具体的指导。

这也就是为什么企业需要在开发开始时就开始让程序员介入安全测试。程序员们对应用的熟悉程度最高,可以实时地处理发现的安全问题。

采取程序员优先的应用安全的最佳实践

尽管很多企业还没有意识到应用安全应该作为Web应用的一项重要的要求,也有不少企业已经意识到了。

这些企业理解应用开发过程。他们愿意让程序员去和QA或者安全人员进行沟通。他们采取了一系列方式来倡导程序员优先的应用安全开发,包括培训,内部奖励(比如对程序员冠以“安全专家”,比如搞一些促进程序员, QA和安全等不同小组之间合作的活动等等)。而这样的企业,能够开发出更好,更加安全的应用。

感谢 WnouM 投递这篇资讯

资讯来源: IT经理网

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [程序员 应用 安全] 推荐:

程序员是应用安全的第一道闸

- - ITeye资讯频道
绝大多数的企业,都是在Web应用设计结束后才开始考虑应用安全的问题,应用安全与应用开发之间的脱节是导致各种严重的安全漏洞的根源. 对很多互联网企业来说, Web应用安全往往在开发过程中被忽略. VentureBeat的专栏作者John Jacott最近发表了一篇博文认为安全的第一个也是最重要的环节是程序员.

程序员都应该了解哪些安全知识

- - 东西-科技
导读:本文来自StackOverflow上的一个问答贴. 网友 M.H 提问: 我是一名IT专业学生,现在是大三,直到现在我们才开始学习很多计算机相关的课程(编程、算法、计算机体系结构、数学等……). 但是还有一个叫“安全”的世界离我们很远,我是指:计算机安全、互联网安全、网络安全、Hacking、破解等.

Javascript程序员也可以开发iOS原生应用

- - php.js.cn
    主要方向是前端的我曾经也想过学学iOS的Object-C或者Android的Java. 但是写习惯Javascript这种弱类型的脚本语言,突然去写严谨的C和繁琐的Java变成一件很煎熬的事情. 所以这个学习过程就逐渐被搁浅了.     HTML5在移动设备上的普及使得前端程序员开心了. 自己的网站稍微改改,使之能够适应移动设备上较小的屏幕,然后再加上几个meta信息,就可以通过iOS上Safari的“添加至主屏幕”功能在桌面上添加一个叫做"Home screen app"的App了.

jprotobuf 1.0.3发布,简化java程序员对google protobuf的应用

- - 开源软件 - ITeye博客
jprotobuf是针对Java程序开发一套简易类库,目的是简化java语言对protobuf类库的使用. 使用jprotobuf可以无需再去了解.proto文件操作与语法,直接使用java注解定义字段类型即可. JProtobuf官方网址: https://github.com/jhunters/jprotobuf .

ANDROID应用安全防御

- - 移动开发 - ITeye博客
Android应用的安全隐患包括三个方面:代码安全、数据安全和组件安全.   代码安全主要是指Android apk有被篡改、盗版等风险,产生代码安全的主要原因是apk很容易被反编译、重打包. 我们可以采用以下方法对apk进行保护:.   代码混淆可以在一定程度上增加apk逆向分析的难度. Android SDK从2.3开始就加入了ProGuard代码混淆功能,开发者只需进行简单的配置就可以实现对代码的混淆.

普通程序员、文艺程序员、2B程序员

- 可可 - 宇宙的心弦
希望能引起广大苦逼的正在学或者已经学过c++人的共鸣和会心一笑吧. 如何辨别自己在现实还是虚拟世界.

ActiveMQ应用笔记三:安全性

- - CSDN博客互联网推荐文章
1.Client(生产者和消费者)连接ActiveMQ需要使用账号;. 2.限制具体的Client对于某个/某些Topic/Queue的操作权限.. 1.conf/activemq.xml中增加如下配置,实现消息授权:. 指定了实用JAAS插件管理权限.

P2P网站应用安全报告

- - WooYun知识库
有关e租宝公司被调查的新闻在微博、朋友圈被引爆刷屏. 许多人看中P2P理财的高收益,却忽视其中的风险. 猎豹移动安全实验室监测发现,P2P网站已成钓鱼欺诈网站的重灾区,大量P2P手机理财软件也存在安全隐患. 网民须小心选择P2P类理财产品. P2P网贷在2007开始传入国内,2015年呈现爆发态势,成交规模已进入万亿元时代.

Android 应用安全风险与防范

- - DiyCode - 致力于构建开发工程师高端交流分享社区社区
Hello,大家好,我是Clock. 最近一段时间在做Android应用安全方面的功课,本文进行简单梳理方便以后Review,有错误和遗漏之处还请大家指出. Android开发除了部分功能采用C/C++编码外,其余主要都是采用Java进行编码开发功能. Java应用非常容易被反编译,Android自然也不例外.

创业中的应用安全体系

- - 胖胖的空间
在创业进程中,可能最开始我们会想着快速上线,一些性能、可用性或安全的问题是有时间就搞搞,没时间就放着;或者对于用户的一些异常行为,一些薅羊毛的行为没有特别的关注;又或者对于用户上传的个人资产没有做特别安全的隔离或保护等等. 虽然现在看起来都没有引发大的问题,但是这些都是应用安全隐患,都是隐藏的雷,一旦被公众引爆,将惊天动地.