的攻击者发生在web_攻击者在攻击某网站时发现

hacker|
277

网站攻击如何处理

大家众所周知,随着互联网的高速发展,然而国内的服务器已经无法满足客户的需求。面临着灰色产品的蓬勃发展。为了逃避国内的一些打击。选择海外机房才是日后的王道!

如何选购合适的抗攻击服务器,这是很多站长都比较迷茫的一个问题,下面为您详细解说一下具体的选购方法:

1.机房总硬防多少,单台提供多大防护是衡量抗攻击效果的一个重要因素.

机房总硬防的大小,决定着机房防御能力的强弱,在租用海外服务器的时候。首先ping一下,如果能ping通 80%的服务器抗攻击能力不行。这个只是一些经验,不代表ping不同就防护高!最后在通过DDOS压力测试。测试一下。真金不怕火炼。测试是很有必要的!

2.如果超过防护能力,机房的处理办法是什么,这个是最重要的因素.

国内客户,动辄几十G流量攻击。这样的攻击,不论在哪个机房,都会受到影响的。所以,在攻击超过防火墙的防御能力之后,我们就需要了解机房的处理方式了。一般的美国机房,遇到这种情况,都是封IP,或者直接拔线关机,更甚者直接没收服务器。所以;在租用服务器的时候,一定要选择被攻击不关机不拔线,这样的话,即使超过防御能力,也会在攻击停止的第一时间恢复正常。当然,如何去知道机房不拔线。前面说到的测试就可以来证明!

3.机器的价格很重要,不能一味求低,理性看待服务器价格.

硬件防火墙造价非常昂贵,而且,在运行防护的时候,都是要消耗大量的带宽和流量资源,所以,一般防御能力较强的服务器,价格方面都会比没有硬防的服务器要高一些。这也就是一分价钱一分货的道理。

最好选择租用一些集群抗DDOS防御体系的机房。

举个例子,10G攻击,如果单独攻击一台服务器的话,那么这台服务器死掉的可能性在90%以上,但是如果它攻击的是10台服务器呢?平均一下每台承受1G,这样一来死掉的可能性就不是那么大了,进一步说,如果是20台服务器呢?一台服务器只有一个点,多台服务器集群,就能实现多点构成的一个防御网面,这样一来,防御能力就能大大提升,攻击所带来的影响也会大大降低。

如果网站被cc攻击怎么办?

CC攻击是DDoS攻击的一种类型,使用代理服务器向受害服务器发送大量貌似合法的请求。CC根据其工具命名,攻击者使用代理机制,利用众多广泛可用的免费代理服务器发动DDoS攻击。许多免费代理服务器支持匿名模式,这使追踪变得非常困难。

CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃。CC主要是用来攻击页面的,每个人都有这样的体验:当一个网页访问的人数特别多的时候,打开网页就慢了,CC就是模拟多个用户不停地进行访问那些需要大量数据操作的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直至网络拥塞,正常的访问被中止。

网站被CC攻击该如何防御?

1、取消域名绑定:一般cc攻击都是针对网站的域名进行攻击,比如我们的网站域名是:,那么攻击者就在攻击工具中设定攻击对象为该域名然后实施攻击。对于这样的攻击我们的措施是取消这个域名的绑定,让cc攻击失去目标。

2、域名欺骗解析:如果发现针对域名的cc攻击,我们可以把被攻击的域名解析到127.0.0.1这个地址上。我们知道127.0.0.1是本地回环ip是用来进行网络测试的,如果把被攻击的域名解析到这个ip上,就可以实现攻击者自己攻击自己的目的,这样再多的肉鸡或者代理也会宕机,让其自作自受。

3、更改Web端口:一般情况下Web服务器通过80端口对外提供服务,因此攻击者实施攻击就以默认的80端口进行攻击,所以,我们可以修改web端口达到防CC攻击的目的。

4、屏蔽ip:我们通过命令或在查看日志发现了cc攻击的源ip,就可以在防火墙中设置屏蔽该ip对web站点的访问,从而达到防范攻击的目的。

5、使用高防ip:高防ip是为服务器大流量cc攻击的防御产品,用户可通过配置高防ip,将攻击引流到高防ip,确保源站的服务稳定。购买高防ip服务后,Web业务把域名解析指向高防ip;非web业务,把业务ip替换成高防ip,并配置源站ip,确保源站的服务稳定。

网站被ddos攻击了怎么办?

DDoS攻击防御是一个非常庞大的工程,下面我们就从三个方面(网络设施、防御方案、预防手段)来谈谈抵御DDoS攻击的一些基本措施、防御思想及服务方案。

一.网络设备设施

网络架构、设施设备是整个系统得以顺畅运作的硬件基础,用足够的机器、容量去承受攻击,充分利用网络设备保护网络资源是一种较为理想的应对策略,说到底攻防也是双方资源的比拼,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失。相应地,投入资金也不小,但网络设施是一切防御的基础,需要根据自身情况做出平衡的选择。

1. 扩充带宽硬抗

网络带宽直接决定了承受攻击的能力,国内大部分网站带宽规模在10M到100M,知名企业带宽能超过1G,超过100G的基本是专门做带宽服务和抗攻击服务的网站,数量屈指可数。但DDoS却不同,攻击者通过控制一些服务器、个人电脑等成为肉鸡,如果控制1000台机器,每台带宽为10M,那么攻击者就有了10G的流量。当它们同时向某个网站发动攻击,带宽瞬间就被占满了。增加带宽硬防护是理论最优解,只要带宽大于攻击流量就不怕了,但成本也是难以承受之痛,国内非一线城市机房带宽价格大约为100元/M*月,买10G带宽顶一下就是100万,因此许多人调侃拼带宽就是拼人民币,以至于很少有人愿意花高价买大带宽做防御。

2. 使用硬件防火墙

许多人会考虑使用硬件防火墙,针对DDoS攻击和黑客入侵而设计的专业级防火墙通过对异常流量的清洗过滤,可对抗SYN/ACK攻击、TCP全连接攻击、刷脚本攻击等等流量型DDoS攻击。如果网站饱受流量攻击的困扰,可以考虑将网站放到DDoS硬件防火墙机房。但如果网站流量攻击超出了硬防的防护范围(比如200G的硬防,但攻击流量有300G),洪水瞒过高墙同样抵挡不住。值得注意一下,部分硬件防火墙基于包过滤型防火墙修改为主,只在网络层检查数据包,若是DDoS攻击上升到应用层,防御能力就比较弱了。

3. 选用高性能设备

除了防火墙,服务器、路由器、交换机等网络设备的性能也需要跟上,若是设备性能成为瓶颈,即使带宽充足也无能为力。在有网络带宽保证的前提下,应该尽量提升硬件配置。

二、有效的抗D思想及方案

硬碰硬的防御偏于“鲁莽”,通过架构布局、整合资源等方式提高网络的负载能力、分摊局部过载的流量,通过接入第三方服务识别并拦截恶意流量等等行为就显得更加“理智”,而且对抗效果良好。

4. 负载均衡

普通级别服务器处理数据的能力最多只能答复每秒数十万个链接请求,网络处理能力很受限制。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性,对DDoS流量攻击和CC攻击都很见效。CC攻击使服务器由于大量的网络传输而过载,而通常这些网络流量针对某一个页面或一个链接而产生。在企业网站加上负载均衡方案后,链接请求被均衡分配到各个服务器上,减少单个服务器的负担,整个服务器系统可以处理每秒上千万甚至更多的服务请求,用户访问速度也会加快。

5. CDN流量清洗

CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率,因此CDN加速也用到了负载均衡技术。相比高防硬件防火墙不可能扛下无限流量的限制,CDN则更加理智,多节点分担渗透流量,目前大部分的CDN节点都有200G 的流量防护功能,再加上硬防的防护,可以说能应付目绝大多数的DDoS攻击了。相关链接

6. 分布式集群防御

分布式集群防御的特点是在每个节点服务器配置多个IP地址,并且每个节点能承受不低于10G的DDoS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。

三.预防为主保安全

DDoS的发生可能永远都无法预知,而一来就凶猛如洪水决堤,因此网站的预防措施和应急预案就显得尤为重要。通过日常惯性的运维操作让系统健壮稳固,没有漏洞可钻,降低脆弱服务被攻陷的可能,将攻击带来的损失降低到最小。

7. 筛查系统漏洞

及早发现系统存在的攻击漏洞,及时安装系统补丁,对重要信息(如系统配置信息)建立和完善备份机制,对一些特权账号(如管理员账号)的密码谨慎设置,通过一系列的举措可以把攻击者的可乘之机降低到最小。计算机紧急响应协调中心发现,几乎每个受到DDoS攻击的系统都没有及时打上补丁。统计分析显示,许多攻击者在对企业的攻击中获得很大成功,并不是因为攻击者的工具和技术如何高级,而是因为他们所攻击的基础架构本身就漏洞百出。

8. 系统资源优化

合理优化系统,避免系统资源的浪费,尽可能减少计算机执行少的进程,更改工作模式,删除不必要的中断让机器运行更有效,优化文件位置使数据读写更快,空出更多的系统资源供用户支配,以及减少不必要的系统加载项及自启动项,提高web服务器的负载能力。

9. 过滤不必要的服务和端口

就像防贼就要把多余的门窗关好封住一样,为了减少攻击者进入和利用已知漏洞的机会,禁止未用的服务,将开放端口的数量最小化就十分重要。端口过滤模块通过开放或关闭一些端口,允许用户使用或禁止使用部分服务,对数据包进行过滤,分析端口,判断是否为允许数据通信的端口,然后做相应的处理。

10. 限制特定的流量

检查访问来源并做适当的限制,以防止异常、恶意的流量来袭,限制特定的流量,主动保护网站安全。

对抗DDoS攻击是一个涉及很多层面的问题,抗DDoS需要的不仅仅是一个防御方案,一个设备,更是一个能制动的团队,一个有效的机制。面对攻击大家需要具备安全意识,完善自身的安全防护体系才是正解。随着互联网业务的越发丰富,可以预见DDoS攻击还会大幅度增长,攻击手段也会越来越复杂多样。安全是一项长期持续性的工作,需要时刻保持一种警觉,更需要全社会的共同努力。

网站被CC攻击该如何防御?

网站被攻击是一件十分让人恼火的事情,不仅仅是让网站速度变慢、访问异常,导致用户体验变差,用户大量流失,而且还会导致网站关键词排名下降甚至被降权,极大干扰了网站的正常稳定运行。那面对CC攻击,该如何进行防御呢?

1、把网站做成静态页面:大量事实证明,把网站尽可能做成静态页面,不仅能大大提高抗攻击能力,而且还给骇客入侵带来不少麻烦,至少到现在为止关于HTML的溢出还没出现。像新浪、搜狐、网易等大型门户网站基本上都是静态页面。

2、利用Session做访问计数器:利用Session针对每个IP做页面访问计数器或文件下载计数器,防止用户对某个页面频繁刷新导致数据库频繁读取或频繁下载某个文件而产生大额流量。

3、在存在多站的服务器上,严格限制每一个站允许的IP连接数和CPU使用时间,这是一个很有效的方法。还有SQL注入,不光是一个入侵工具,更是一个DDOS缺口。CC的防御要从代码做起,一个脚本代码的错误,可能带来的是整个站的影响,甚至是整个服务器的影响!

4、在IDC机房前端部署防火墙或者流量清洗的一些设备,还可以接入像墨者安全那样的专业高防服务,隐藏服务器真实IP,利用新的WAF算法过滤技术,综合大数据分析变种穿盾CC保护或者采用大带宽的高防机房来清洗DDOS攻击。此外,服务器上部署的其他域名也不能使用真实IP解析,全部都使用CDN来解析。

XSS攻击原理是什么?

什么是XSS攻击XSS又叫CSS (Cross Site Script) ,跨站脚本攻击。它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。XSS属于被动式的攻击,因为其被动且不好利用,所以许多人常忽略其危害性。而本文主要讲的是利用XSS得到目标服务器的shell。技术虽然是老技术,但是其思路希望对大家有帮助。 [编辑本段]如何寻找XSS漏洞就个人而言,我把XSS攻击分成两类,一类是来自内部的攻击,主要指的是利用程序自身的漏洞,构造跨站语句,如:dvbbs的showerror.asp存在的跨站漏洞。另一类则是来来自外部的攻击,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。如当我们要渗透一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开。

web漏洞攻击有哪些?

一、SQL注入漏洞

SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。

通常情况下,SQL注入的位置包括:

(1)表单提交,主要是POST请求,也包括GET请求;

(2)URL参数提交,主要为GET请求参数;

(3)Cookie参数提交;

(4)HTTP请求头部的一些可修改的值,比如Referer、User_Agent等;

(5)一些边缘的输入点,比如.mp3文件的一些文件信息等。

常见的防范方法

(1)所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到SQL语句中。当前几乎所有的数据库系统都提供了参数化SQL语句执行接口,使用此接口可以非常有效的防止SQL注入攻击。

(2)对进入数据库的特殊字符(’”*;等)进行转义处理,或编码转换。

(3)确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为int型。

(4)数据长度应该严格规定,能在一定程度上防止比较长的SQL注入语句无法正确执行。

(5)网站每个数据层的编码统一,建议全部使用UTF-8编码,上下层编码不一致有可能导致一些过滤模型被绕过。

(6)严格限制网站用户的数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害。

(7)避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者利用这些错误信息进行一些判断。

(8)在网站发布之前建议使用一些专业的SQL注入检测工具进行检测,及时修补这些SQL注入漏洞。

二、跨站脚本漏洞

跨站脚本攻击(Cross-site scripting,通常简称为XSS)发生在客户端,可被用于进行窃取隐私、钓鱼欺骗、窃取密码、传播恶意代码等攻击。

XSS攻击使用到的技术主要为HTML和Javascript,也包括VBScript和ActionScript等。XSS攻击对WEB服务器虽无直接危害,但是它借助网站进行传播,使网站的使用用户受到攻击,导致网站用户帐号被窃取,从而对网站也产生了较严重的危害。

XSS类型包括:

(1)非持久型跨站:即反射型跨站脚本漏洞,是目前最普遍的跨站类型。跨站代码一般存在于链接中,请求这样的链接时,跨站代码经过服务端反射回来,这类跨站的代码不存储到服务端(比如数据库中)。上面章节所举的例子就是这类情况。

(2)持久型跨站:这是危害最直接的跨站类型,跨站代码存储于服务端(比如数据库中)。常见情况是某用户在论坛发贴,如果论坛没有过滤用户输入的Javascript代码数据,就会导致其他浏览此贴的用户的浏览器会执行发贴人所嵌入的Javascript代码。

(3)DOM跨站(DOM XSS):是一种发生在客户端DOM(Document Object Model文档对象模型)中的跨站漏洞,很大原因是因为客户端脚本处理逻辑导致的安全问题。

常用的防止XSS技术包括:

(1)与SQL注入防护的建议一样,假定所有输入都是可疑的,必须对所有输入中的script、iframe等字样进行严格的检查。这里的输入不仅仅是用户可以直接交互的输入接口,也包括HTTP请求中的Cookie中的变量,HTTP请求头部中的变量等。

(2)不仅要验证数据的类型,还要验证其格式、长度、范围和内容。

(3)不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

(4)对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查。

(5)在发布应用程序之前测试所有已知的威胁。

三、弱口令漏洞

弱口令(weak password) 没有严格和准确的定义,通常认为容易被别人(他们有可能对你很了解)猜测到或被破解工具破解的口令均为弱口令。设置密码通常遵循以下原则:

(1)不使用空口令或系统缺省的口令,这些口令众所周之,为典型的弱口令。

(2)口令长度不小于8个字符。

(3)口令不应该为连续的某个字符(例如:AAAAAAAA)或重复某些字符的组合(例如:tzf.tzf.)。

(4)口令应该为以下四类字符的组合,大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。

(5)口令中不应包含本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail地址等等与本人有关的信息,以及字典中的单词。

(6)口令不应该为用数字或符号代替某些字母的单词。

(7)口令应该易记且可以快速输入,防止他人从你身后很容易看到你的输入。

(8)至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。

四、HTTP报头追踪漏洞

HTTP/1.1(RFC2616)规范定义了HTTP TRACE方法,主要是用于客户端通过向Web服务器提交TRACE请求来进行测试或获得诊断信息。当Web服务器启用TRACE时,提交的请求头会在服务器响应的内容(Body)中完整的返回,其中HTTP头很可能包括Session Token、Cookies或其它认证信息。攻击者可以利用此漏洞来欺骗合法用户并得到他们的私人信息。该漏洞往往与其它方式配合来进行有效攻击,由于HTTP TRACE请求可以通过客户浏览器脚本发起(如XMLHttpRequest),并可以通过DOM接口来访问,因此很容易被攻击者利用。

防御HTTP报头追踪漏洞的方法通常禁用HTTP TRACE方法。

五、Struts2远程命令执行漏洞

ApacheStruts是一款建立Java web应用程序的开放源代码架构。Apache Struts存在一个输入过滤错误,如果遇到转换错误可被利用注入和执行任意Java代码。

网站存在远程代码执行漏洞的大部分原因是由于网站采用了Apache Struts Xwork作为网站应用框架,由于该软件存在远程代码执高危漏洞,导致网站面临安全风险。CNVD处置过诸多此类漏洞,例如:“GPS车载卫星定位系统”网站存在远程命令执行漏洞(CNVD-2012-13934);Aspcms留言本远程代码执行漏洞(CNVD-2012-11590)等。

修复此类漏洞,只需到Apache官网升级Apache Struts到最新版本:

六、文件上传漏洞

文件上传漏洞通常由于网页代码中的文件上传路径变量过滤不严造成的,如果文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,攻击者可通过 Web 访问的目录上传任意文件,包括网站后门文件(webshell),进而远程控制网站服务器。

因此,在开发网站及应用程序过程中,需严格限制和校验上传的文件,禁止上传恶意代码的文件。同时限制相关目录的执行权限,防范webshell攻击。

七、私有IP地址泄露漏洞

IP地址是网络用户的重要标示,是攻击者进行攻击前需要了解的。获取的方法较多,攻击者也会因不同的网络情况采取不同的方法,如:在局域网内使用Ping指令,Ping对方在网络中的名称而获得IP;在Internet上使用IP版的QQ直接显示。最有效的办法是截获并分析对方的网络数据包。攻击者可以找到并直接通过软件解析截获后的数据包的IP包头信息,再根据这些信息了解具体的IP。

针对最有效的“数据包分析方法”而言,就可以安装能够自动去掉发送数据包包头IP信息的一些软件。不过使用这些软件有些缺点,譬如:耗费资源严重,降低计算机性能;访问一些论坛或者网站时会受影响;不适合网吧用户使用等等。现在的个人用户采用最普及隐藏IP的方法应该是使用代理,由于使用代理服务器后,“转址服务”会对发送出去的数据包有所修改,致使“数据包分析”的方法失效。一些容易泄漏用户IP的网络软件(QQ、MSN、IE等)都支持使用代理方式连接Internet,特别是QQ使用“ezProxy”等代理软件连接后,IP版的QQ都无法显示该IP地址。虽然代理可以有效地隐藏用户IP,但攻击者亦可以绕过代理,查找到对方的真实IP地址,用户在何种情况下使用何种方法隐藏IP,也要因情况而论。

八、未加密登录请求

由于Web配置不安全,登陆请求把诸如用户名和密码等敏感字段未加密进行传输,攻击者可以窃听网络以劫获这些敏感信息。建议进行例如SSH等的加密后再传输。

九、敏感信息泄露漏洞

SQL注入、XSS、目录遍历、弱口令等均可导致敏感信息泄露,攻击者可以通过漏洞获得敏感信息。针对不同成因,防御方式不同

十、CSRF

Web应用是指采用B/S架构、通过HTTP/HTTPS协议提供服务的统称。随着互联网的广泛使用,Web应用已经融入到日常生活中的各个方面:网上购物、网络银行应用、证券股票交易、政府行政审批等等。在这些Web访问中,大多数应用不是静态的网页浏览,而是涉及到服务器侧的动态处理。此时,如果Java、PHP、ASP等程序语言的编程人员的安全意识不足,对程序参数输入等检查不严格等,会导致Web应用安全问题层出不穷。

本文根据当前Web应用的安全情况,列举了Web应用程序常见的攻击原理及危害,并给出如何避免遭受Web攻击的建议。

Web应用漏洞原理

Web应用攻击是攻击者通过浏览器或攻击工具,在URL或者其它输入区域(如表单等),向Web服务器发送特殊请求,从中发现Web应用程序存在的漏洞,从而进一步操纵和控制网站,查看、修改未授权的信息。

1.1 Web应用的漏洞分类

1、信息泄露漏洞

信息泄露漏洞是由于Web服务器或应用程序没有正确处理一些特殊请求,泄露Web服务器的一些敏感信息,如用户名、密码、源代码、服务器信息、配置信息等。

造成信息泄露主要有以下三种原因:

–Web服务器配置存在问题,导致一些系统文件或者配置文件暴露在互联网中;

–Web服务器本身存在漏洞,在浏览器中输入一些特殊的字符,可以访问未授权的文件或者动态脚本文件源码;

–Web网站的程序编写存在问题,对用户提交请求没有进行适当的过滤,直接使用用户提交上来的数据。

2、目录遍历漏洞

目录遍历漏洞是攻击者向Web服务器发送请求,通过在URL中或在有特殊意义的目录中附加“../”、或者附加“../”的一些变形(如“..\”或“..//”甚至其编码),导致攻击者能够访问未授权的目录,以及在Web服务器的根目录以外执行命令。

3、命令执行漏洞

命令执行漏洞是通过URL发起请求,在Web服务器端执行未授权的命令,获取系统信息,篡改系统配置,控制整个系统,使系统瘫痪等。

命令执行漏洞主要有两种情况:

–通过目录遍历漏洞,访问系统文件夹,执行指定的系统命令;

–攻击者提交特殊的字符或者命令,Web程序没有进行检测或者绕过Web应用程序过滤,把用户提交的请求作为指令进行解析,导致执行任意命令。

4、文件包含漏洞

文件包含漏洞是由攻击者向Web服务器发送请求时,在URL添加非法参数,Web服务器端程序变量过滤不严,把非法的文件名作为参数处理。这些非法的文件名可以是服务器本地的某个文件,也可以是远端的某个恶意文件。由于这种漏洞是由PHP变量过滤不严导致的,所以只有基于PHP开发的Web应用程序才有可能存在文件包含漏洞。

5、SQL注入漏洞

SQL注入漏洞是由于Web应用程序没有对用户输入数据的合法性进行判断,攻击者通过Web页面的输入区域(如URL、表单等) ,用精心构造的SQL语句插入特殊字符和指令,通过和数据库交互获得私密信息或者篡改数据库信息。SQL注入攻击在Web攻击中非常流行,攻击者可以利用SQL注入漏洞获得管理员权限,在网页上加挂木马和各种恶意程序,盗取企业和用户敏感信息。

6、跨站脚本漏洞

跨站脚本漏洞是因为Web应用程序时没有对用户提交的语句和变量进行过滤或限制,攻击者通过Web页面的输入区域向数据库或HTML页面中提交恶意代码,当用户打开有恶意代码的链接或页面时,恶意代码通过浏览器自动执行,从而达到攻击的目的。跨站脚本漏洞危害很大,尤其是目前被广泛使用的网络银行,通过跨站脚本漏洞攻击者可以冒充受害者访问用户重要账户,盗窃企业重要信息。

根据前期各个漏洞研究机构的调查显示,SQL注入漏洞和跨站脚本漏洞的普遍程度排名前两位,造成的危害也更加巨大。

1.2 SQL注入攻击原理

SQL注入攻击是通过构造巧妙的SQL语句,同网页提交的内容结合起来进行注入攻击。比较常用的手段有使用注释符号、恒等式(如1=1)、使用union语句进行联合查询、使用insert或update语句插入或修改数据等,此外还可以利用一些内置函数辅助攻击。

通过SQL注入漏洞攻击网站的步骤一般如下:

第一步:探测网站是否存在SQL注入漏洞。

第二步:探测后台数据库的类型。

第三步:根据后台数据库的类型,探测系统表的信息。

第四步:探测存在的表信息。

第五步:探测表中存在的列信息。

第六步:探测表中的数据信息。

1.3 跨站脚本攻击原理

跨站脚本攻击的目的是盗走客户端敏感信息,冒充受害者访问用户的重要账户。跨站脚本攻击主要有以下三种形式:

1、本地跨站脚本攻击

B给A发送一个恶意构造的Web URL,A点击查看了这个URL,并将该页面保存到本地硬盘(或B构造的网页中存在这样的功能)。A在本地运行该网页,网页中嵌入的恶意脚本可以A电脑上执行A持有的权限下的所有命令。

2、反射跨站脚本攻击

A经常浏览某个网站,此网站为B所拥有。A使用用户名/密码登录B网站,B网站存储下A的敏感信息(如银行帐户信息等)。C发现B的站点包含反射跨站脚本漏洞,编写一个利用漏洞的URL,域名为B网站,在URL后面嵌入了恶意脚本(如获取A的cookie文件),并通过邮件或社会工程学等方式欺骗A访问存在恶意的URL。当A使用C提供的URL访问B网站时,由于B网站存在反射跨站脚本漏洞,嵌入到URL中的恶意脚本通过Web服务器返回给A,并在A浏览器中执行,A的敏感信息在完全不知情的情况下将发送给了C。

3、持久跨站脚本攻击

B拥有一个Web站点,该站点允许用户发布和浏览已发布的信息。C注意到B的站点具有持久跨站脚本漏洞,C发布一个热点信息,吸引用户阅读。A一旦浏览该信息,其会话cookies或者其它信息将被C盗走。持久性跨站脚本攻击一般出现在论坛、留言簿等网页,攻击者通过留言,将攻击数据写入服务器数据库中,浏览该留言的用户的信息都会被泄漏。

Web应用漏洞的防御实现

对于以上常见的Web应用漏洞漏洞,可以从如下几个方面入手进行防御:

1)对 Web应用开发者而言

大部分Web应用常见漏洞,都是在Web应用开发中,开发者没有对用户输入的参数进行检测或者检测不严格造成的。所以,Web应用开发者应该树立很强的安全意识,开发中编写安全代码;对用户提交的URL、查询关键字、HTTP头、POST数据等进行严格的检测和限制,只接受一定长度范围内、采用适当格式及编码的字符,阻塞、过滤或者忽略其它的任何字符。通过编写安全的Web应用代码,可以消除绝大部分的Web应用安全问题。

2) 对Web网站管理员而言

作为负责网站日常维护管理工作Web管理员,应该及时跟踪并安装最新的、支撑Web网站运行的各种软件的安全补丁,确保攻击者无法通过软件漏洞对网站进行攻击。

除了软件本身的漏洞外,Web服务器、数据库等不正确的配置也可能导致Web应用安全问题。Web网站管理员应该对网站各种软件配置进行仔细检测,降低安全问题的出现可能。

此外,Web管理员还应该定期审计Web服务器日志,检测是否存在异常访问,及早发现潜在的安全问题。

3)使用网络防攻击设备

前两种为事前预防方式,是比较理想化的情况。然而在现实中,Web应用系统的漏洞还是不可避免的存在:部分Web网站已经存在大量的安全漏洞,而Web开发者和网站管理员并没有意识到或发现这些安全漏洞。由于Web应用是采用HTTP协议,普通的防火墙设备无法对Web类攻击进行防御,因此可以使用IPS入侵防御设备来实现安全防护。

H3C IPS Web攻击防御

H3C IPS入侵防御设备有一套完整的Web攻击防御框架,能够及时发现各种已经暴露的和潜在的Web攻击。下图为对于Web攻击的总体防御框架。

图1:Web攻击防御框架,参见:

H3C IPS采用基于特征识别的方式识别并阻断各种攻击。IPS设备有一个完整的特征库,并可定期以手工与自动的方式对特征库进行升级。当网络流量进入IPS后,IPS首先对报文进行预处理,检测报文是否正确,即满足协议定义要求,没有错误字段;如果报文正确,则进入深度检测引擎。该引擎是IPS检测的核心模块,对通过IPS设备的Web流量进行深层次的分析,并与IPS攻击库中的特征进行匹配,检测Web流量是否存在异常;如果发现流量匹配了攻击特征,IPS则阻断网络流量并上报日志;否则,网络流量顺利通过。

此Web攻击防御框架有如下几个特点:

1) 构造完整的Web攻击检测模型,准确识别各种Web攻击

针对Web攻击的特点,考虑到各种Web攻击的原理和形态,在不同漏洞模型之上开发出通用的、层次化的Web攻击检测模型,并融合到特征库中。这些模型抽象出Web攻击的一般形态,对主流的攻击能够准确识别,使得模型通用化。

2) 检测方式灵活,可以准确识别变形的Web攻击

在实际攻击中,攻击者为了逃避防攻击设备的检测,经常对Web攻击进行变形,如采用URL编码技术、修改参数等。H3C根据Web应用漏洞发生的原理、攻击方式和攻击目标,对攻击特征进行了扩展。即使攻击者修改攻击参数、格式、语句等内容,相同漏洞原理下各种变形的攻击同样能够被有效阻断。这使得IPS的防御范围扩大,防御的灵活性也显著增强,极大的减少了漏报情况的出现。

3) 确保对最新漏洞及技术的跟踪,有效阻止最新的攻击

随着Web攻击出现的频率日益增高,其危害有逐步扩展的趋势。这对IPS设备在防御的深度和广度上提出了更高的要求,不仅要能够防御已有的Web攻击,更要有效的阻止最新出现的、未公布的攻击。目前,H3C已经建立起一套完整的攻防试验环境,可以及时发现潜在Web安全漏洞。同时还在继续跟踪最新的Web攻击技术和工具,及时更新Web攻击的特征库,第一时间发布最新的Web漏洞应对措施,确保用户的网络不受到攻击。

4) 保证正常业务的高效运行

检测引擎是IPS整个设备运行的关键,该引擎使用了高效、准确的检测算法,对通过设备的流量进行深层次的分析,并通过和攻击特征进行匹配,检测流量是否存在异常。如果流量没有匹配到攻击特征,则允许流量通过,不会妨碍正常的网络业务,在准确防御的同时保证了正常业务的高效运行。

结束语

互联网和Web技术广泛使用,使Web应用安全所面临的挑战日益严峻,Web系统时时刻刻都在遭受各种攻击的威胁,在这种情况下,需要制定一个完整的Web攻击防御解决方案,通过安全的Web应用程序、Web服务器软件、Web防攻击设备共同配合,确保整个网站的安全。任何一个简单的漏洞、疏忽都会造成整个网站受到攻击,造成巨大损失。此外 ,Web攻击防御是一个长期持续的工作,随着Web技术的发展和更新,Web攻击手段也不断发展,针对这些最新的安全威胁,需要及时调整Web安全防护策略,确保Web攻击防御的主动性,使Web网站在一个安全的环境中为企业和客户服务。

原文链接:

0条大神的评论

发表评论