面对web应用安全威胁 我们应如何应对数文章所要阐述的内容,随着Web2.0、社交网络、微博等等一系列新型的互联网产品的相继诞生,基于web环境的互联网应用越来越广泛,企业信息化的过程中各种应用都架设在Web平台上。
Web业务的迅速发展也引起黑客们的强烈关注,接踵而至的就是web安全威胁的凸显,黑客利用网站操作系统的漏洞和WEB服务程序的SQL注入漏洞等得到Web 服务器 的控制权限,轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害。这也使得越来越多的用户关注应用层的安全问题,对web应用安全的关注度也逐渐升温。
web应用安全威胁日趋严重的原因
目前很多业务都依赖于互联网,例如说网上银行、网络购物、网游等,很多恶意攻击者出于不良的目的对Web 服务器进行攻击,想方设法通过各种手段获取他人的个人账户信息谋取利益。正是因为这样,Web业务平台最容易遭受攻击。同时,对Web服务器的攻击也可以说是形形色色、种类繁多,常见的有挂马、SQL注入、缓冲区溢出、嗅探、利用IIS等针对Webserver漏洞进行攻击。
一方面,由于TCP/IP的设计是没有考虑安全问题的,这使得在网络上传输的数据是没有任何安全防护的。攻击者可以利用系统漏洞造成系统进程缓冲区溢出,攻击者可能获得或者提升自己在有漏洞的系统上的用户权限来运行任意程序,甚至安装和运行恶意代码,窃取机密数据。而应用层面的软件在开发过程中也没有过多考虑到安全的问题,这使得程序本身存在很多漏洞,诸如缓冲区溢出、SQL注入等等流行的应用层攻击,这些均属于在软件研发过程中疏忽了对安全的考虑所致。
另一方面,用户对某些隐秘的东西带有强烈的好奇心,一些利用木马或病毒程序进行攻击的攻击者,往往就利用了用户的这种好奇心理,将木马或病毒程序捆绑在一些艳丽的图片、音视频及免费软件等文件中,然后把这些文件置于某些网站当中,再引诱用户去单击或下载运行。或者通过电子邮件附件和QQ、MSN等即时聊天软件,将这些捆绑了木马或病毒的文件发送给用户,利用用户的好奇心理引诱用户打开或运行这些文件。
黑客们另一种常用的方式,即把木马或病毒编写成一个脚本,然后嵌入到网页、电子邮件及QQ等聊天软件的消息当中,或作一个超级连接指向这个脚本,只要用户打开包含有嵌入这些木马或病毒的网页、电子邮件和聊天信息窗口,或单击指向这些木马及病毒脚本的超级连接,这些木马或病毒程序就这样轻松地进入了用户的PC当中。
网络钓鱼攻击的方式也是多种多样,其中之一便是伪造一个十分相似的网站界面,引诱用户在这个假冒的网上银行网站进行登录操作,有些用户轻易相信引诱信息,再加上粗心大意,其后果就不堪设想了。
现今企业当中,移动办公的趋势越来越明显,大部分的企业员工会把计算机带回家中工作,或者在公共场所接入互联网,他们成为当前Web威胁首先侵入的目标。而企业员工对互联网依赖性的加剧,也使得公司网络比以往更加容易受到将员工做为跳板的恶意程序的攻击。恶意程序的主要入侵途径已经转变为HTTP方式,而且病毒产生速度快、变种多,令本来就脆弱的企业网络雪上加霜。
面对来势汹汹的应用威胁,绝大多数企业并没有真正意识到其中的危机。一方面,恶意网站以600%的年增长速度在迅速增加;另一方面,77%带有恶意代码的网站是被植入恶意攻击代码的合法网站。这些威胁正往定向、复合式攻击发展,其中一种攻击会包括多种web应用安全威胁,比如病毒、蠕虫、特洛伊、间谍软件、僵尸、网络钓鱼电子邮件、漏洞利用、下载程序、社会工程、rootkit、黑客等,造成拒绝服务、服务劫持、信息泄露或篡改等危害。另外,复合攻击也加大了收集所有“样本”的难度,造成的损害也是多方面的,潜伏期难以预测,甚至可以远程可控地发作。
我们又该如何应对
随着多形态攻击的数量越来越多,传统防护手段的安全效果也越来越差,总是处于预防威胁-检测威胁-处理威胁-策略执行的循环之中。更为严峻的是,传统的仅针对终端设备的防病毒解决方案并不能应对当前变化多端的web应用安全威胁。
作为个人用户来说,应该本身对网络安全防范的加深和正确认识,不断提高自身的计算机及网络应用技术水平加固计算机的安全,以及努力克服自己的好奇心,消除贪图小便宜的心理,规范自己的网络操作行为,来缓解决web应用安全问题日趋严重的趋势。
对于企业用户,针对Web应用的安全产品,可以分为网络、Web服务器自身以及程序安全三方面。在网络方面,可以考虑将防火墙、IDS/IPS、安全网关、防病毒墙等产品部署在Web服务器前面,这样可以防御大部分的攻击。此外,可以通过部署更安全的Web服务器、Web服务器自身的保护系统,比如网页防篡改保护系统(防篡改保护和恢复软件)、恶意主动防御系统、访问控制系统、审计系统等产品,做到自动扫描和监控,从而保护系统和文件。目前已经出现了程序安全的研究方向,我们也希望能够早日看到相关产品。

最后我们要做到“两手抓、两手都要硬”,用一句形象的比喻来说明:防火墙/入侵检测系统如同金钟罩铁布衫等外功,防止明枪;而更重要的是需要修炼太极等内功,弥补自身的漏洞,躲避暗箭,内外兼修的效果将使您的企业纵横江湖。
【编辑推荐】
如何让显示器更“长寿”
让显示器更“长寿” 在众多电脑配件中,使用寿命最长的部件就数显示器了。 由于显示器在长时间使用中,容易受到包括温度、湿度、灰尘、电磁干扰、静电等环境因素的影响,造成不同程度的伤害或形成故障。 因此,正确使用显示器,注意显示器的日常保养与维护,是决定其“长命”与否的重要因素。 一、湿度不能太高和太低 显示器使用环境的湿度应保持在30%~80%之间,一旦室内湿度高于80%,显示器内部就会产生结露现象。 电源变压器和其它线圈受潮后也易产生漏电,时间一长甚至有可能霉断连线。 另外显示器的高压部件在湿度过高的情况下也极易产生放电现象,机内元器件受潮容易生锈、腐蚀、严重时会使电路板发生短路。 相反,当室内湿度≤30%时,则会使显示器机械摩擦部分产生静电干扰,内部元器件尤其是高压包被静电破坏的可能性增大,影响显示器正常工作,严重情况下还会造成使用人员受伤及显示器报废。 因此,显示器的使用环境必须注意防潮,长时间不用的显示器,可以定期通电一段时间,让显示器工作时产生的热量将机内的潮气驱赶出去。 同时,为了防止静电,建议将电脑接地,尤其是在北方气候干燥的环境下。 二、控制室内温度 显像管作为显示器的一大热源,在温度过高的环境下工作性能和使用寿命将会大打折扣,某些虚焊的焊点可能由于焊锡熔化脱落而造成开路,使显示器工作不稳定。 同时元器件也会加速老化,轻则导致显示器“罢工”,重则可能击穿或烧毁其它元器件。 因此,要在显示器摆放的周围留下足够的空间,让它“呼吸”。 在炎热的夏季,如条件允许最好把显示器放置在有空调的房间中,或用电风扇吹。 三、避免强光直照 如果显示器受强光照射,时间长了容易加速显像管荧光粉的老化,降低发光效率(在强光照射环境下,面对显示器工作的人员,眼睛也极易受到屏幕反射光线伤害)。 因此,用户不要把显示器摆放在日光照射较强的地方,最好是将显示器放在光线不能直接照射的地方或者将室内的光线调整柔和。 四、防止灰尘 由于显示器内的电压达10kV~30kV,极易吸引空气中的尘埃粒子,尤其是在开关机的刹那。 大量的维修实践证明,灰尘对电脑的威胁是很明显的,在灰尘大的环境中工作,由于印刷电路板会吸附灰尘,灰尘的沉积将会影响电子元器件的热量散发,使得电路板上元器件的温度上升,产生漏电而烧坏元件。 灰尘也可能吸收水分,腐蚀显示器内部的电子线路,造成一些莫名其妙的问题。 所以灰尘虽体积小,但对显示器的危害是不可轻视的。 为有效预防灰尘危害,确保显示器在相对干净的环境中使用,我们应该给显示器购买一个专用的防尘罩,每次用完后应及时用防尘罩罩上(注意不要在关机后立即罩上,因为显示器在关机后需要一定时间来散热)。 同时,我们还应多做清洁,用柔软的干布小心地从屏幕中心,螺旋式地向外擦拭,不正确的擦拭方法会在屏幕上留下划痕,造成永久性伤害。 另外千万不能用酒精之类的化学溶液擦拭、更不能用粗糙的布、纸之类的物品来擦拭显示屏,也不要将液体直接喷到屏幕上(注:一切清洁工作均须在拔掉电源线后进行)。 五、避免磁场干扰 电磁场干扰是指在电路或环境中出现了不该出现的电压电流。 电磁干扰的来源主要有电源、元件、导线、接头、散热风扇、日光灯、雷电和静电放电等,以及电视机、电冰箱、电风扇等耗电量大的家用电器,如果它们距离显示器太近,天长日久这些器件便有可能对显示器产生电磁干扰。 在使用中,我们应把显示器放在离其它电磁场较远的地方(最典型的例子是不要将PC音箱放得离显示器太近,即使是防磁音箱也要注意)。 平时如有条件,可时常使用显示器上的消磁功能消磁。 除了上述的注意事项,我们在实际使用中,还有许多细小的地方值得各位读者高度关注。 其实显示器最大的破坏因素还在于使用者本身,我们的一些不良习惯对显示器的伤害远远大于环境因素对显示器的破坏。 1.不要在显示器上堆放杂物,以免影响显示器的正常散热加速元件老化。 2.在按动显示器面板上的功能旋钮时,要缓慢稳妥,不可猛转硬调,以防损坏旋钮。 3.显示器如线缆拉得过长,可能使显示器的亮度减小,且射线不能聚焦。 4.虽然显示器的工作电压的适应范围比较大,但也可能由于受到瞬时高压冲击而造成元件损坏,所以还是应使用带保险丝的插座。 如条件许可,最好配一个UPS(不间断电源)。 5.使用中,可稍许降低显示亮度(适当),这样可以减缓显像管的荧光粉老化速度。 6.显示器的刷新率设置适当,不必使用太高的刷新频率,以延长显示器的使用寿命。 7.不要在显示器前吸烟,香烟中的焦油物质将会对显示器涂层有伤害。 8.不要经常开关机,开关机的高电压变动对显示器的寿命有很大影响。
电子商务主要面临哪些安全威胁,如何去克服这些问题?
呵呵,你这个问题,足够写一篇上万字的论文了。 三言两语岂能说情。 大体说一下吧。 我个人观点,目前制约电子商务发展的最大的瓶颈有三条,一是物流渠道不够健全,二是网络电子支付平台还不够完善,消费者支付还有顾虑。 三是相关法律不到位,发生纠纷不易处置。 其中你问的问题是第二条,安全威胁问题。 其实,就目前的各大银行的网上银行和电子支付而言,安全性已经很高,尤其是使用了口令卡、U盾、暗语等技术之后,安全性已经大大提高,基本可以杜绝安全隐患。 只是,当前网络用户网络水平不高,对电子支付、电子商务心存疑虑,惧怕资金账户被人窃取或者担心购买的物品的质量,而不敢大胆网络消费。 目前主要的安全威胁是各类木马软件,用来记录密码、帐号等信息。 对于网络安全意识不高、计算机水平不高的普通网民来说,无法彻底杜绝木马入侵,这是一个威胁。 不过前面我说了,使用电子银行提供的口令卡(工商银行)、U盾(工行、建行),安全问题几乎100%保障。 而且成本也极低(口令卡免费领取,U盾60元上下)。 要克服这些问题,改变消费观念,加强网络安全普及最关键。 健全物流系统,配货送货渠道解决,然后完善法规制度,保证有法可依。 总之,我个人认为,电子商务大有前途!!(淘包、易趣吸引大量的风险投资,几亿的投入就为了赌将来的市场,从这一点上讲,电子商务必将大有前途)
谁能知道Java是什么
1966年,一门叫Simula的模拟语言备受人们青睐。 Simula是由Ole-Johan Dahl和Kristen Nygaard创建的,他们当时在奥斯陆的挪威国家计算机中心工作。 当时,Simula具有很多新的、有趣的特点。 例如,Simula可以把一组事件归入一个类别(classification),称之为“类”(class);也可以把某一类组成部分的子集归入另一个类别,称之为“子类”(subclass)。 Bjarne Stroustrup就是Simula的使用者之一。 20世纪70年代末,正在剑桥大学攻读博士学位的Stroustrup想在学位论文上有所突破。 除了这种语言在速度上非常慢之外,他对这种语言的其他方面都比较满意。 为了使模拟器运行得更快,他改写了Martin Richard的Basic Combined Programming Language(BCPL,基本组合程序设计语言)中的程序。 虽然要改变程序非常困难,但最后他还是通过了毕业论文答辩,并且在位于新泽西州Murray Hill的一家名为Bell Telephone Laboratories的电话公司实验室工作,也就是现在的美国朗讯公司。 20世纪70年代,贝尔实验室的一名工作人员Ken Thompson正致力于测试一门基于BCPL的新语言,称为B语言。 Ken Thompson想给B语言添加数据类型,于是在1971年他又发展了一门新的语言,称为C语言。 从那以后,C语言风靡全球。 以至于在1983年,美国国家标准化组织甚至考虑要把它作为该组织的一个标准(称为ANSI C)。 1979年5月,Stroustrup开始利用类(class)来开发一种称为C的项目。 他的目标是将C的速度和他所熟悉的Simula类结合在一起。 他当时还在贝尔实验室工作,并深知速度对于在那里工作的人来说是多么重要。 到了1983年,C++首次投入使用。 后来,C++越来越普及,并广泛应用在各个行业的许多公司里,其中包括位于加州Mountainview的一家名为Sun Microsystems的公司。 在1991年初,Sun公司的软件工程师就已经开始拓展嵌入式系统的市场。 这个被称为Project Green的项目,要求在各种消费者的电子设备中使用廉价的微处理器,这些消费者的电子设备包括个人数字助理(Personal Digital Assistant,PDA)、交互式电视盒以及家用电器。 Sun的另一个成员James Gosling开始扩展C++编译器。 20世纪90年代中期,又出现了一门叫做Oak的新语言。 后来,由于注册商标的问题,这一名称没有延续下来,而改为Java。 尽管Java是为嵌入式系统而设计的,但直到1994年,网络的使用才持续上升。 Java的出现正好适应了基于网络的应用。 尤其是Java具有多平台、简单、安全、强大的功能,而这些都是网络所需要的。 因此,Java的一些功能可以直接追溯到C++中的类(class),而类(class)又源于1966年出现的模拟语言Simula。 此外,Java也借鉴了C语言的一些功能。 实际上,如果详细研究Java语言,就会发现Java几乎没有什么可以称得上新颖的地方。 1.2 什么是Java人们已经习惯用Java这个术语来涵盖各种Java技术。 Java技术包括Java编程语言、支持类库以及Java虚拟机(Java Virtual Machine,JVM)。 Java技术利用Java模型实现了Java程序的运行。 典型的Java模型将利用若干层(也叫底层,substrate)。 Java程序被一个叫做Java虚拟机的底层从硬件中隔离出来。 图1.1显示了一个Java模型。 图1.1 Java模型Java盛行的原因很多。 首先,Java是一门多平台语言。 Java多平台功能的关键元素是peer方法,如图1.1所示。 peer方法提供了一个应用程序接口(Application Program Interface,API)。 该接口的目标就是提供一个从高级Java应用程序接口到初级操作系统子程序的映射。 peer方法提供了一种实现可移植操作系统接口的方法。 操作系统软件接口库提供了一个ANSI C、C++或FORTRAN都没有的编程环境。 这种环境为程序提供外观和运行方式。 例如,C++程序员在Windows下编程,编程环境就像是一个Windows编程环境。 也就是说,可能会调用Microsoft基础类。 如果在UNIX下编程,编程环境就像一个UNIX环境,即要调用X-Window库子程序。 Java的独特之处是它能够提供一个可移植的操作系统软件接口。 例如,不管使用哪种操作系统,用Java编写一个显示对话框的程序都是相同的。 但是,Java的可移植功能也会受到库的跨平台支持的限制。 在这种情况下,使用非可移植库的Java程序将不再是可移植的了。 例如,有人在Java内创建了到C库子程序的链接。 由于要使Java成为可移植的,其他平台上必须提供这些子程序。 把Java臆想成一门“编译一次,走遍天下”式的语言是错误的。 Java在每个平台上都需要测试,有时还需要调试。 因为在一个平台上运行良好的程序在另一个平台上却不能运行,这种情况很常见。 此外,Java以外的语言也可以利用Java技术。 例如,要实现一个非Java编译器来创建可在Java虚拟机(JVM)上运行的Java字节码是有可能的。 1.3 Java模型与HTML模型的比较我们已经知道Java是为嵌入式系统而设计的一门语言。 但是,Java过去并没有广泛用于嵌入式系统。 相反,人们认为可以用Java来补充甚至替代HTML模型。 本节将讲述HTML模型以及Java怎样替代HTML模型。 我们可以在Internet上找到很多文件。 数据结构保存在文件中并需要解码。 可被生成的不同数据文件的数量是不受限制的。 尽管文件格式的数量是可计算的,但通常谁都没有计算,并且该数字将以未知的速度增长。 用于计算不同文件格式数量的工具很少,而用来解码这些文件格式的工具就更少了。 图1.2讲述了数据分布的Web模型。 Web服务器通过超文本文件传输协议(Hyper Text Transfer Protocol,HTTP)把Web页面传给客户端。 浏览器使用包含特定格式代码的插件程序(plug-ins)来进行解码。 不同的文件格式要求用不同的插件程序或辅助程序来显示。 所以,插件程序扩展了浏览器的性能。 使用Java技术的浏览器通过动态下载的算法能够进行解码。 这一过程要求一种能够即时运行程序的方法。 为了明确安全性,Java给即时下载的程序设置了功能限制。 安全管理器(security manager)对即时下载的Java程序的功能进行了准确控制。 用Java模型代替HTML模型的基本前提是,程序可以在不同的平台上按要求运行。 但是,由于Java缺乏统一的支持,所以Java模型没能代替HTML模型。 当前的不利因素包括人们对Java技术及知识产权的争论。 图1.2 Internet1.4 小结与C或C++不同,当用Java编程的时候,编程环境感觉像Java。 另外,C++没有Java所具备的可移植应用编程接口(API)。 如果在Windows中用C++编程,编程环境就像Windows,因此必须学习Windows API。 同样,如果在Macintosh下用C++编程,编程环境就会有一种类似Maxintosh接口的外观和运行方式。 基于上述的讨论,有人认为客户端的Java是一成不变的,HTML模型的变革也不可能发生。 然而,仅在2001年3月到8月短短5个月的时间内,600多万部用Java开发的手机在日本被抢购一空。 无线供应商(NTT DoCoMo、J-Phone和KDDI)已提供了交互式服务。 有人预计,在2001年到2005年期间,有7亿多台Java虚拟机将要被配置到这些新设备上。 或许,这些具有JVM特性的新平台会使客户端Java能够长久地延续下去。
发表评论