腾讯网首页·手机腾讯网·加入收藏·设为首页·导航
don't delete

您所在的位置: 腾讯首页 > 科技频道 > 正文

 

腾讯李旬保:WASL-Web应用安全的思考
http://tech.QQ.com  2008年03月20日14:35   腾讯科技    评论0

腾讯科技讯 3月19日,由中国最大的互联网综合服务提供商腾讯发起和组织的互联网安全峰会进入第二天。包括微软、盛大、新浪等互联网界各大巨头的技术专家,学者和专业人士参与了此次的交流。此次峰会是今年以来首场由中国互联网各顶尖企业共同参与的大型网络安全专业盛会。

来自腾讯的李旬保,在现场发表演讲。以下为文字实录:

主持人:大家都知道Web安全逐渐也被广泛应用了,针对应用层面的黑客攻击也是越来越多了,有没有办法防范外面更加专业、更加体系的攻击呢。下面有请腾讯李旬保给大家带来的WASL-WEB应用安全的思考。

李旬保:大家好,很高兴能代表腾讯参加这次峰会。首先自我介绍一下,我叫李旬保,06年6月从武汉点击查看武汉及更多城市天气预报大学信息安全系毕业。毕业后一直在腾讯公司安全中心从事Web应用安全的工作。这次我演讲的主题是WASL-WEB应用安全的思考。在纯技术更高层面做一点思考,怎么样更好地开展Web安全工作。

这是这次演讲的主要内容(图),首先从现状出发,讲一下现在开发模式的缺陷、WASL体系介绍、应用WASL困难与挑战、最后对Web安全做一下总结与展望。

首先从业务体系开始说起,自从98年腾讯公司成立以来,我们从只有单一的IM业务开始经过9年多的发展,现在已经发展到包括互联网增值业务、无线、互动娱乐、电子商务、广告、网络媒体几大平台组成的比较大的互联网企业。我们的注册用户现在已经有5亿多,活跃用户有2亿多。其中包月付费用户有2000多万。互联网的繁荣也促进了Web应用发展,其中我们有很多业务,除了IM这种是在客户端的,大部分业务都是通过Web来进行的。围绕我们IM平台展开,构成一个比较有机的业务体系。这些应用的迅猛发展给网民带来了很多很好的体验,给公司带来很多利润的同时,我们也发现了很多问题,比如说刷Q币、刷会员、刷天数。去年我们公司就联合公安网监联合打掉了数个盗号、盗Q币的团伙,这个给我们一个信号,除了业务不断创造价值的同时,也有一些反面力量企图从我们这里非法获取利益。我们这个业务体系就像一个网络帝国,它越扩张,它的边界就越大。就意味着我们面临更多的威胁。每一个web门户就相当于进入这个帝国一个城门,一旦一个地方出现了薄弱环节,他就可以通过Web界面长驱直入,到达我们帝国里面。

在现在这种情况下,Web应用安全形势比较严峻的情况下,我们怎么样保卫我们领土呢?首先从Web安全现状讲起。现在很多人都知道“google hacking”,在我写这个PPT的时候,我想到一个最简单的例子,就是查找有哪些站点配置了目录浏览。服务器目录浏览是一个不安全的配置,我搜索到这个,可以看到还是有不少网站是可以看到目录下的文件,当然这里面只是一个纯粹的网页,好像没有什么发现。但是看另外一个公司,这里面就有一些有趣的东西,打开其中一个文本文件,看起来好像是一些聊天的历史记录。但是这个东西对某些人还是没有很大兴趣。我们看第三个网站,这次我们很有收获,可以看到脚本里写有备份数据的脚本,包括mysql用户名、密码、DB。这里面没有用到特殊技巧,只是用到浏览器就可以看到有这么多东西。而且我们也知道,过去也有报道过这样的问题,把敏感log放在Web目录上,又开放了浏览目录权限,使得黑客直接访问这个目录就把这些敏感的log打开就获取到了明文的用户名、密码。这还是最简单的不安全配置。可以看到这种配置到现在还是很普遍的。如果这种这么简单的安全配置还是这么普遍,可以想象其他更复杂的问题应该是更普遍的存在,也就知道我们现在Web应用的安全是处于怎样的境地。

为什么会出现这种情况呢?这跟我们现在Web业务开发和我们怎么做应用安全的方法有关系。现在是怎么样开发的呢?在国内很多互联网企业都有这样一个特点,就是说业务第一,等有了一大部分用户再完善,而安全呢只是一个锦上添花、可有可无的属性。如果没有时间的话,就忽略掉。如果有兴趣的话,就搞一搞。这在观念、策略上就把安全放在很低的位置。其次很多互联网企业觉得安全就是防火墙,做一下渗透测试。局限于安全技术,但是安全也不仅仅是技术。我们组织上可能有一个安全部门,会响应这些安全事件。外面报告一个漏洞,然后急急忙忙赶回来把它处理掉,这并不是一种有效的安全体制。没有办法从根本上杜绝安全问题以后不再出现,代码质量很难保证。如果不能解决这个问题,安全缺陷数量无法收拢。业务长期高风险运行。有很多业务员会有这样的一个错觉,认为我这个程序已经跑了2、3年,从来没都有出现问题,所以我不用关心它。从来没有出现问题,并不代表问题不存在。总有一天有一个人发现了这个问题,就会造成入侵事故。最主要就是说我们当前这种模式还不能保证Web应用的安全。我们有安全部门,但是在实际中更像一个救火队。哪里出现火情,就急急忙忙赶过去。很多安全界的朋友都经历过半夜被电话叫醒,赶到公司处理安全事件的情况。另外,还有一种情况,互联网应用的开发周期都很短,主要是为了更快把业务推出去。通常采用的开发模式就是一种敏捷开发模式,开发周期通常限制在一个月,长一点也就是2个月到6个月。这么短的时间对安全投入也是大大的限制。不可能像其他做大型软件的厂商可以把几年时间投入到里面去。这样子,开发出来的代码安全隐患是很多的。从里面发生安全事故的几率也很大。一旦发布出去,发生事故后补救的成本也就非常高。并且我们很难从这些事故中吸取教训。

怎么解决这个问题呢?怎么样从根本上解决Web应用安全问题。我们就提出了WASL,Web应用安全生命周期体系。简单来说,Web安全是安全教育、安全技术、安全制度的综合,是一个持续演进的过程,不仅仅局限于技术。这是一个通常情况下我们采用的Web应用开发生命周期图,从业务开始建模然后到它的计划最后到需求,然后到分析设计、然后到编码实现、测试,最后发布版本、部署、上线。这里面就得到一个初始的版本,这个过程又重新整理新的需求,根据用户反馈,新的需求又被更新、设计,加到新的开发计划里去。这是一个迭代的过程。通常一般迭代过程会在2个星期到6个月时间是比较短的周期,每个周期都很紧凑。这是一个分布。从这一个分布得到一种策略,如果我们能够有一种方法,把最多的这种问题解决,我们就收拢了绝大部分的漏洞。然后再对其他的类型,比如说比较难的一些类型,我们通过一些措施能够预防或者降低风险的话,也就解决了剩下部分80%的问题。最后面的,如果很难解决的那些我们就通过其他措施,比如应急响应这些就把所有风险降到最低。我们应该在Web应用开发周期里用什么样的策略呢?这还是刚才Web应用的开发周期,通过漏洞的简单分析。对于跨站、跳转、注入漏洞这些,大多数都是非常简单的不安全编码疏忽所导致的,可以在编码这个阶段通过使用一些安全编码实践来避免掉。我们对这两种检测也有比较成熟的检测方法可以检测出来,在这个阶段就把它解决掉。而对于不安全配置这种更多的属于服务器配置的问题。这是运营环境了,我们可以在运营这个阶段,通过静态检查以及通过监测方式,把这些问题在这个阶段发现出来。对于第三方合作,可以通过清理的方式,不使用不安全的链接或者使用监视,过一段时间就检查这个链接是否还是安全的,有没有被更改。通过一种报警的方式来解决。然后剩下的是一种逻辑的漏洞,这种是比较难解决。我们可以通过为这些业务在需求阶段提供一些安全的属性、安全的需求,然后在设计和实践的时候把安全需求实现,把常见的这些逻辑问题,比如登陆的身份验证问题解决掉,对于更高级别的逻辑问题,把它的风险降到最低。WASL技术也就是基于这样的分析。

怎么样应用WASL或者说WASL包括哪些内容?大家可以看到右边这个图(图),这里包括几个部分,最高一级就是制度和规范。然后下来是Web应用开发的生命周期,在每一个步骤都会实施这个安全教育,并且使用了相关的安全技术,来保证常见的Web缺陷能够在成本最低的阶段把它解决掉。剩下的就是漏网之鱼,通过安全相应流程把它处理。这里面第一步是需要定义角色、职责。角色和职责的作用就是说明确你这个组织里面谁应该做什么事情,他对这个事情应该负到什么责任。如果他违反了这个职责,应该受到什么样的处理。一个典型的结构包括管理决策层负责安全制度的决策,然后签署相关的政策文件。专业的安全部门是负责安全技术的开发、研发,然后还有架构的安全审核、安全流程开发、漏洞的响应,这是一个专业的团队。而对于业务部门也同样需要有相应的安全人员。通过设立一个安全专员,他就是负责整个项目、整个流程里面所有的这些安全需求、安全规范,这些措施都能很好实施,并且作为一种沟通和协调的角色。安全接口人是作为业务部门和安全部门起到一个沟通作用。通过这样一个结构,每个人担当什么角色都明确定义出来,这样每个人就能知道具体做哪些事情。角色和职责确定之后,下面也就是安全意识的培养。如果没有安全意识的话,这里面的安全也就是很难保证的。

一个很小的例子,上班路上看到有横幅提醒说请不要使用烟道式直排是的热水器,可能会有安全隐患,这也是安全意识教育的一种形式。这种就是提示你自己会不会也有这个问题呢?我看到整个横幅的时候,就会想家里的热水器是不是直排式或者烟道式,脑子里就有了这样的一种生命安全的意识。还有通过历史案例教育,我们历史上出现的严重问题,它是怎么样发展的、造成怎样的严重后果、为什么会发生,我们会不会在同样地方犯了类似的错误呢,通过历史案例学习可以得到教训。然后针对这个开发生命周期里每个阶段都会会一些针对性课程,比如安全需求怎么提出、安全编码是怎样的、怎样设计安全架构、安全测试是怎么样进行的,一些针对性的课程加深业务人员对安全的理解。安全编程实践主要是通过开发人员,因为所有的实现最终还是通过编码实现,如果编程人员安全编成意识和技术都不够熟练的话,就很难保证安全措施的实现。然后还可以提供渗透实践与演习,我们可以搭建有各种各样问题的一个实践演习系统,通过组织,业务人员来参加这个实践的演习,让他们能够从黑客这种角度怎么样通过这些漏洞入侵到系统里,加深他们对Web安全的理解。而这个教育过程要持续进行。并且这个教育还必须有一个体系来确保达到相应效果。我们可以通过考核或者一些激励措施,相当于安全知识的认证。比如你每年都要通过一个考试,能够达到这样一个水平,然后才能继续开发。

一旦进入开发周期了,最开始在需求这个阶段就必须得把安全需求提出来。这里面安全需求的提出可能由业务这边来提出,这就需要业务人员、需求人员也有一些安全的意识。就是说我这个业务哪一些东西需要保护、哪一些是最有价值的。如果我这个业务有人非正常使用的话,比如误用、滥用或者一些异常使用的话,他应该是怎样的应对。在开发过程中,还可能有需求变更的情况。如果需求变更了,对现有系统有哪些影响。这些都需要在需求这个阶段确定,并且要保证安全需求能够持续得到跟踪,主要通过安全专员来确保。

到了设计这个阶段,通常就是包括了架构设计和模块的设计,这里面对于设计的话,也有很多的很好的实践。但是在架构这一层显得有一点点虚,比如说保持简单,大家都知道越复杂的东西就越难实现、也越难测试、也越难保证它是正常工作。但是通常很多业务都复杂,在复杂性和安全性、简单性得到一个平衡。defense in depth,每个步骤都要进行适当防护,只有加强了最弱的链接,整个流程才是安全的。在操作某个资源的时候,你需要给他最小的权限,只需要读的话,就不要给他写的权限。还有信任原则,既使是内部系统,也要坚持最小的信任原则。可能你信任它,但是它这个可能是一个不安全的来源,输入到你这个系统之后,就变成一个危害。Graceful Failure,就是一旦失败的时候,要恰当处理失败的情况。比如有一些业务支付失败,支付到一半的时候应该怎么处理呢?是重新执行一次还是完全拒绝这次服务,让用户重新开始,这里面都是要考虑的,否则的话有可能在这个过程中出现问题。

手机看新闻】 【一键订阅新闻】 【返回科技首页】 【论坛  】【发表评论(0)

热门新闻排行

IT新闻

互联网

通信

网评

张亚勤笑称盖茨租房看奥运花费1亿是假新闻
广州电脑城生意遭遇寒流 传统信用体系遭破坏
盖茨天价租空中四合院看奥运 楼盘未证实
张宝全怒斥中国蓝光高清盗用EVD技术
奥运电脑战:联想宏碁全球“老三”争夺白热化
趋势科技暗指瑞星“云安全”计划没有突破性
电脑软件让失声病人妙手回“声”
盖茨租空中四合院看奥运 一年租费达一亿元
笔记本电脑入围索尼七大支柱业务
微软重组Windows与互联网部门 现任总裁离职
瑞星炮轰奇虎:360杀毒不存在任何本地化
萨达姆坐驾网上拍卖 开价18.5万英镑
网店牌照新政试水广州:不注册将罚款10万元
China Joy:韩国指责多款参展游戏“剽窃”
雅虎又一名高管跳槽 今年辞职人数已达116人
第一财经:中国互联网新三大门户格局初现
深圳首次侦破黑客敲诈案 成员年龄平均22岁
网络视频广告遇冷 九成广告主不会规模化投入
百万网店卖家疑虑:营业执照怎么办?
北京工商:网店办牌不会夭折 8月1日肯定实施
联通无线上网卡涉嫌一号多卖 经销商指其造假
深圳政府摸底山寨机 万余企业等待招安
3G iPhone下月再登陆20个国家 中国不在其中
我国手机用户突破6亿 上半年发短信3441亿条
微软借收购挑战诺基亚 移动互联网竞争白热化
大唐子公司两基站被查 因与奥运无线频段相同
四五十家山寨机厂商悄然洗白 抵御市场寒流
东方早报:山寨机质量不可靠 但很多人爱用它
网通总裁左迅生:他只是个实实在在的通信人
电信联通C网交割进入交涉期 过渡期四个月
网店牌照新政试水广州:不注册将罚款10万元
网店办照新规引发担忧 百万弱势群体或将失业
China Joy:韩国指责多款参展游戏“剽窃”
瑞星炮轰奇虎:360杀毒不存在任何本地化
一号多卖 联通无线上网卡被曝造假
盖茨租空中四合院看奥运 一年租费达一亿元
北京工商:网店办牌不会夭折 8月1日肯定实施
深圳政府摸底山寨机 万余企业等待招安
中国网民数量达2.53亿 网民规模居世界第一
百万网店卖家疑虑:营业执照怎么办?
腾讯博客  娱乐 体育 时尚 文化 思想 财经 动漫

昔日超女已堕落
昔日超女已堕落
新上海滩冯程程
新上海滩冯程程

李亚鹏怒打香港女记者谁之过(图)?
网游美女裙底被偷拍 慈禧身世之谜
林黛玉结局与刘姥姥有关 女星身价
郭晶晶与四个人的恩怨 温碧霞床照
李湘谢娜不和 女人的七个"性阴谋"
王明娟:和胡锦涛主席握手时的感觉
为什么成功女性多是“剩女一号”?

新闻线索

如果你有科技领域的人事变动、重组并购、变革技术出现,以及产品投诉等重要新闻线索,请告诉我们,我们会给予特别关注。

网友意见留言板
关于腾讯 | About Tencent | 服务条款 | 广告服务 | 腾讯招聘 | 腾讯公益 | 客服中心 | 网站导航
Copyright © 1998 - 2008 Tencent Inc. All Rights Reserved
腾讯公司 版权所有