动态Web易惹“毒”上身

2009-10-16 06:26
中国计算机报 2009年38期
关键词:源代码攻击者浏览器

那 罡

过去,网站的内容大多是静态的。网站管理员对合法网站上的内容进行管理,能够分辨出可信站点和不可信站点。但如今,Web内容逐渐趋于动态化,最终用户持续不断地更新现有内容,共享应用程序,并通过多种渠道进行即时通信。

即使采用最佳的策略制定方法,某些不良内容或恶意软件也会随时弹出(甚至一些知名网站也会经常中招),使公司的重要信息和网络暴露于极为危险的环境之下。

脆弱的Web应用

Gartner的调查显示,信息安全攻击有75%都是发生在Web应用层而非网络层面上。同时,数据也显示,2/3的Web站点都相当脆弱,易受攻击。可以说,绝大多数企业将大量的投资花费在网络和服务器的安全上,没有从真正意义上保证Web业务本身的安全,才给了黑客可乘之机。世界知名的Web安全研究组织OWASP提供的报告称,目前对Web业务系统威胁最严重的两种攻击方式是注入漏洞和跨站脚本漏洞。

注入漏洞攻击特别是SQL注入漏洞,主要是利用目标网站程序未对用户输入的字符进行特殊字符过滤或合法性校验,可直接执行数据库语句,导致网站存在安全风险。

Web程序员在编写Web系统时对Web的安全性考虑不够,对用户输入的数据没有进行有限的验证及过滤,从而会引发SQL注入漏洞。如果我们的新闻系统或者OA办公系统出现SQL注入漏洞,那么攻击者通过构造的特殊SQL语句就可以查看、插入、删除数据并可以执行主机的系统命令等,具有很大的危害。

跨站脚本漏洞攻击指目标网站对用户提交的变量代码未进行有效的过滤或转换,允许攻击者插入恶意Web代码(通常是一些经过构造的JavaScript语句)、劫持用户会话、篡改网页信息甚至引入蠕虫病毒等。

从以往发生的安全事件来看,Web攻击可导致的后果极为严重。攻击者通过上述手段将一个合法正常网站攻陷,并利用获取到的相应权限在网页中嵌入恶意代码,然后将恶意程序下载到存在客户端漏洞的主机上,从而实现攻击目的。如:盗取各类用户账号,包括机器登录账号、用户网银账号、各类管理员账号,控制企业数据,包括读取、篡改、添加、删除企业敏感数据,盗窃企业重要的具有商业价值的资料,控制受害者机器向其他网站发起攻击等。

三招防范Web风险

鉴于上述对Web常见攻击的分析,对Web及客户端的保护已经刻不容缓。联想网御的安全专家给出三点建议:

第一,采取源代码审计与部署入侵防护系统相结合的方式解决Web服务器端安全问题。源代码审计是经过专业安全人员对Web应用程序源代码进行安全性检查,对程序的输入输出函数进行安全测试,最大程度保障Web程序的自身代码安全,并通过部署入侵防护系统,针对跨站脚本、SQL注入、参数篡改等Web攻击方式进行的主动防护。

第二,防范远程恶意代码执行漏洞解决Web浏览客户端安全。远程恶意代码执行漏洞的原理是:通过构造精心设计的格式错误数据,由攻击者触发系统漏洞,并在客户端软件中更改代码执行路径,来执行由攻击者随格式错误数据附带恶意代码或程序的利用过程。如果客户端浏览器中存在未修补的恶意代码执行漏洞或0day漏洞,当用户访问受恶意代码感染的站点时,该站点会自动在登录用户的浏览器中运行攻击者的恶意代码,并利用Web浏览器漏洞安装恶意病毒、木马程序,如密码窃取恶意软件等。这些恶意行为是利用了浏览器本身的系统后台漏洞执行,所有这一切根本无需任何用户交互操作。

所以用户应尽量使用已采用常规堆栈保护措施版本的Web浏览器,来防止基于堆栈和基于堆的缓冲区溢出攻击。目前最新版本的Microsoft IE浏览器已经提供基于数据执行保护(DEP)或不执行(NX)的内存保护措施,IE8平台在Internet控制面板选项开启“启用内存保护帮助减少联机攻击”的选项就可以有效防止远程代码攻击。另外建议用户部署统一的内网管理系统,统一对关键应用程序和系统补丁进行时时监控和统一升级,保证客户端和内网安全。

第三,建立统一病毒防护体系解决木马问题。建议用户安装终端防病毒、防火墙软件并保持时时更新,开启入侵防护系统病毒木马防护策略,建立统一病毒防护体系。如在网络边界部署网络防毒墙,对关键服务器和客户端进行重点防护,并对其网络连接进行入侵检测监控,保证安全风险在一个可控的范围内。

猜你喜欢
源代码攻击者浏览器
人工智能下复杂软件源代码缺陷精准校正
基于微分博弈的追逃问题最优策略设计
基于TXL的源代码插桩技术研究
反浏览器指纹追踪
软件源代码非公知性司法鉴定方法探析
正面迎接批判
揭秘龙湖产品“源代码”
环球浏览器
有限次重复博弈下的网络攻击行为研究