黑客攻击网站十大原因
1.桌面漏洞
Internet Explorer、Firefox和Windows操作系统中包含很多可以被黑客利用的漏洞,特别是在用户经常不及时安装补丁的情况下。黑客会利用这些漏洞在不经用户同意的情况下自动下载恶意软件代码——也称作隐藏式下载。
2.服务器漏洞
由于存在漏洞和服务器管理配置错误,Internet Information Server(IIS)和Apache网络服务器经常被黑客用来攻击。
3.Web服务器虚拟托管
同时托管几个甚至数千个网站的服务器也是恶意攻击的目标。
4.显性/开放式代理
被黑客控制的计算机可以被设置为代理服务器,躲避URL过滤对通信的控制,进行匿名上网或者充当非法网站数据流的中间人。
5.HTML可以从网页内完全不同的服务器嵌入对象
用户可以从特定网站请求浏览网页,只自动地从Google分析服务器等合法网站下载对象广告服务器恶意软件下载网站或者被重新导向至恶意软件网站。
6.普通用户对安全状况不了解
多数用户不了解三种SSL浏览器检查的原因不了解如何验证所下载程序的合法性不了解计算机是否不正常在家庭网络内不使用防火墙也不知道如何区分钓鱼网页和合法网页。
7.移动代码在网站上被广泛使用
在浏览器中禁用JavaScript、Java applets、.NET应用、Flash或ActiveX似乎是个好主意,因为它们都会在您的计算机上自动执行脚本或代码,但是如果禁用这些功能,很多网站可能无法浏览。这为编码糟糕的Web应用开启了大门,它们接受用户输入并使用Cookies,就像在跨站点脚本(XSS)中一样。在这种情况下,某些需要访问与其他开放页面的数据(Cookies)Web应用会出现混乱。任何接受用户输入的Web应用(博客、Wikis、评论部分)可能会在无意中接受恶意代码,而这些恶意代码可以被返回给其他用户,除非用户的输入被检查确认为恶意代码。
8.全天候高速宽带互联网接入的广泛采用
多数企业网络都受防火墙的保护,而无网络地址转换(NAT)防火墙的家庭用户很容易受到攻击而丢失个人信息充当分布式拒绝访问服务(DDOS)的僵尸计算机安装托管恶意代码的Web服务器——家庭用户可能不会对这些状况有任何怀疑。
9.对HTTP和HTTPS的普遍访问
访问互联网必须使用Web,所有计算机都可以通过防火墙访问HTTP和HTTPS(TCP端口80和443)。可以假定所有计算机都能够访问外部网络。很多程序都通过HTTP访问互联网,例如IM和P2P软件。此外,这些被劫持的软件打开了发送僵尸网络命令的通道。
10.在邮件中采用嵌入式HTML
由于SMTP电子邮件网关会在一定程度上限制可以邮件的发送,黑客已经不经常在电子邮件中发送恶意代码。相反,电子邮件中的HTML被用于从Web上获取恶意软件代码,而用户可能根本不知道已经向可以网站发送了请求。
抵御Web威胁的十大方法
1.阻止对恶意软件服务器的访问
当台式机用户从未知的恶意软件服务器请求HTTP和HTTPS网页时,立即阻止此请求,节约带宽并扫描资源。
2.把移动代码限制到值得信任的网站
脚本和活跃代码等移动代码可以让网络更加丰富有趣,但也黑客渗透桌面计算机和运行可执行代码或应用来执行文件中嵌入的脚本。
3.在Web网关处扫描
不要认为您的所有桌面都是最新的,运行反病毒程序(AVP)或访问计算机管理完善。在恶意软件尝试进入您的网络而不是已经进入桌面之前就要进行集中扫描,从而轻松地控制所有进入的Web通信(HTTP、HTTPS和FTP)。
4.使用不同厂商的产品进行桌面和Web网关扫描
现在的攻击在发布之前都针对流行的AVP进行测试。通过恶意软件扫描的多样化增加阻止威胁的机会。
5.定期更新桌面和服务器补丁
多数攻击和威胁都利用应用和系统漏洞散播。降低已知漏洞给您的计算机带来的风险。
6.安装反病毒软件并保持更新
自引导区病毒出现之日起,安装反病毒软件已经成为标准的程序,用来检查进入的文件、扫描内存和当前文件。任何运行Windows的计算机都应当安装最新的反病毒软件。如果“坏东西”已经突破所有其他网络保护,这就是最后的防线。此外,反病毒软件可以很好地抵御通过非网络方法传播的恶意软件,例如光盘或USB闪存。
7.只访问通过所有浏览器检查的HTTPS网站
多数用户不了解三种SSL浏览器检查的重要性,或者不理解不要访问未通过所有三项检查的网站。SSL检查是过期证书不值得信任的发布者以及证书与所请求URL之间的主机名不匹配。
8.只从值得信任的网站下载可执行程序
社会工程在互联网上非常活跃!一种发布恶意软件的有效方式是把其捆绑到看似有用的程序中。执行以后,恶意软件就会为所欲为。这种攻击类型也称作特洛伊木马攻击。
9.不要访问把IP地址用作服务器的网站
最近的攻击越来越多地利用安装有简单Web服务器的家用计算机。受害者的机器通常通过IP地址而不是DNS主机名被导向新的家庭计算机服务器。合法网站的URL会使用主机名。
10.仔细地输入网址避免错误
用户永远不要试图访问恶意软件网站,但意外总是有可能发生。错误地输入网址通常会登录某些坐等您上门的网站。如果您的浏览器未安装所有补丁,您很可能在下载过程中下载到恶意软件。
黑客攻击的目的一、进程的执行
攻击者在登上了目标主机后,或许只是运行了一些简单的程序,也可能这些程序是无伤大雅的,仅仅只是消耗了一些系统的CPU时间。
但是事情并不如此简单,我们都知道,有些程序只能在一种系统中运行,到了另一个系统将无法运行。一个特殊的例子就是一些扫描只能在UNIX系统中运行,在这种情况下,攻击者为了攻击的需要,往往就会找一个中间站点来运行所需要的程序,并且这样也可以避免暴露自己的真实目的所在。即使被发现了,也只能找到中间的站点地址。
在另外一些情况下,假使有一个站点能够访问另一个严格受控的站点或网络,为了攻击这个站点或网络,入侵者可能就会先攻击这个中间的站点。这种情况对被攻击的站点或网络本身可能不会造成破坏,但是潜在的危险已经存在。首先,它占有了大量的处理器的时间,尤其在运行一个网络监听软件时,使得一个主机的响应时间变得非常的长。另外,从另一个角度来说,将严重影响目标主机的信任度。因为入侵者借助于目标主机对目标主机能够访问,而且严格受控的站点或进行攻击。当造成损失时,责任会转嫁到目标主机的管理员身上,后果是难以估计的。可能导致目标主机损失一些受信任的站点或网络。再就是,可能人民者将一笔账单转嫁到目标主机上,这在网上获取收费信息是很有可能的。
二、获取文件和传输中的数据
攻击者的目标就是系统中的重要数据,因此攻击者通过登上目标主机,或是使用网络监听进行攻击事实上,即使连入侵者都没有确定要于什么时,在一般情况下,他会将当前用户目录下的文件系统中的/etc/hosts或/etc/passwd复制回去。
三、获取超级用户的权限
具有超级用户的权限,意味着可以做任何事情,这对入侵者无疑是一个莫大的诱惑。在UNIX系统中支持网络监听程序必需有这种权限,因此在一个局域网中,掌握了一台主机的超级用户权限,才可以说掌握了整个子网。
四、对系统的非法访问
有许多的系统是不允许其他的用户访问的,比如一个公司、组织的网络。因此,必须以一种非常的行为来得到访问的权力。这种攻击的目的并不一定要做什么,或许只是为访问面攻击。在一个有许多windows95
的用户网络中,常常有许多的用户把自己的目录共享出未,于是别人就可以从容地在这些计算机上浏览、寻找自己感兴趣的东西,或者删除更换文件。或许通过攻击来证明自己技术的行为才是我们想像中的黑客行径,毕竟,谁都不喜欢些专门搞破坏,或者给别人带来麻烦的入侵者。但是,这种非法访问的的黑客行为,人们也不喜欢的。
五、进行不许可的操作
有时候,用户被允许访问某些资源,但通常受到许多的限制。在一个UNIX系统中没有超级用户的权限,许多事情将无法做,于是有了一个普通的户头,总想得到一个更大权限。在windowsNT系统中一样,系统中隐藏的秘密太多了,人们总经不起诱惑。例如网关对一些站点的访问进行严格控制等。许多的用户都有意无意地去尝试尽量获取超出允许的一些权限,于是便寻找管理员在置中的漏洞,或者去找一些工具来突破系统的安全防线,例如,特洛伊木马就是一种使用多的手段。
六、拒绝服务
同上面的目的进行比较,拒绝服务便是一种有目的的破坏行为了。拒绝服务的方式很多,如将连接局域网的电缆接地;向域名服务器发送大量的无意义的请求,使得它无法完成从其他的主机来的名字解析请求;制造网络风暴,让网络中充斥大量的封包,占据网络的带宽,延缓网络的传输。
七、涂改信息
涂改信息包括对重要文件的修改、更换,删除,是一种很恶劣的攻击行为。不真实的或者错误的信息都将对用户造成很大的损失。
八、暴露信息
入侵的站点有许多重要的信息和数据可以用。攻击者若使用一些系统工具往往会被系统记录下来如果直接发给自己的站点也会暴露自己的身份和地址,于是窃取信息时,攻击者往往将这些信息和数据送到一个公开的FTP站点,或者利用电子邮件寄往一个可以拿到的地方,等以后再从这些地方取走。
这样做可以很好隐藏自己。将这些重要的信息发往公开的站点造成了信息的扩散,由于那些公开的站点常常会有许多人访问,其他的用户完全有可能得到这些情息,并再次扩散出去。
DoS攻击是网络攻击最常见的一种。它故意攻击网络协议的缺陷或直接通过某种手段耗尽被攻击对象的资源,目的是让目标计算机或网络无法捉供正常的服务或资源访问,使目标系统服务停止响应甚至崩溃,而在此攻击中并不入侵目标服务器或目标网络设备。这些服务资源包括网络宽带、系统堆栈、开放的进程。或者允许的连接。这种攻击会导致资源耗尽,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。任何资源都有一个极限,所以总能找到一个方法使请求的值大于该极限值,导致所提供的服务资源耗尽。DoS攻击有许多种类,主要有Land攻击、死亡之ping、泪滴、Smurf攻击及SYN洪水等。
据统计,在所有黑客攻击事件中,syn洪水攻击是最常见又最容易被利用的一种DoS攻击手法。
1.攻击原理
要理解SYN洪水攻击,首先要理解TCP连接的三次握手过程(Three-wayhandshake)。在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送SYN包((SYN=i)到服务器,并进入SYN SEND状态,等待服务器确认
第二次握手:服务器收到SYN包,必须确认客户的SYN (ACK=i+1 ),同}Jj’自己也发送一个SYN包((SYN j)}即SYN+ACK包,此时服务器进入SYN_RECV状态
第三次握手:客户端收到服务器的SYN十ACK包,向服务器发送确认包ACK(ACK=j+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手,客户端与服务器开始传送数据。
在上述过程中,还有一些重要的概念:
半连接:收到SYN包而还未收到ACK包时的连接状态称为半连接,即尚未完全完成三次握手的TCP连接。
半连接队列:在三次握手协议中,服务器维护一个半连接队列,该队列为每个客户端的SYN包(SYN=i )开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于SYN_ RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。
Backlog参数:表示半连接队列的最大容纳数目。
SYN-ACK重传次数:服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息、从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时也称半连接存活时间为Timeout时间、SYN_RECV存活时间。
上面三个参数对系统的TCP连接状况有很大影响。
SYN洪水攻击属于DoS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,只要这些系统打开TCP服务就可以实施。从图4-3可看到,服务器接收到连接请求(SYN=i )将此信息加入未连接队列,并发送请求包给客户( SYN=j,ACK=i+1 ),此时进入SYN_RECV状态。当服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送SYN包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN 请求
被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。过程如下:
攻击主机C(地址伪装后为C')-----大量SYN包---->彼攻击主机
C'<-------SYN/ACK包----被攻击主机
由于C’地址不可达,被攻击主机等待SYN包超时。攻击主机通过发人量SYN包填满未连接队列,导致正常SYN包被拒绝服务。另外,SYN洪水攻击还可以通过发大量ACK包进行DoS攻击。
2.传统算法
抵御SYN洪水攻击较常用的方法为网关防火墙法、中继防火墙法和SYNcookies。为便于叙述,将系统拓扑图简化为图4-4。图中,按网络在防火墙内侧还是外侧将其分为内网、外网(内网是受防火墙保护的)。其次,设置防火墙的SYN重传计时器。超时值必须足够小,避免backlog队列被填满同时又要足够大保证用户的正常通讯。
(1) 网关防火墙法
网关防火墙抵御攻击的基本思想是:对于内网服务器所发的SYN/ACK包,防火墙立即发送ACK包响应。当内网服务器接到ACK包后,从backlog队列中移出此半连接,连接转为开连接,TCP连接建成。由于服务器处理开连接的能力比处理半连接大得多,这种方法能有效减轻对内网服务器的SYN攻击,能有效地让backlog队列处于未满状态,同时在重传一个未完成的连接之前可以等待更长时间。
以下为算法完整描述:
第一步,防火墙截获外网客户端发向内网服务器SYN数据包,允许其通过,抵达内网服务器。同时在连接跟踪表中记录此事件.
第二步,防火墙截获服务器发向客户端的SYN/ACK响应包,用连接跟踪表中记录的相应SYN包匹配它.
第三步,防火墙让截获的SYN/ACK继续进行(发向客户端)。同时,向内网服务器发送ACK包。这样,对服务器来说,TCP连接三次握手已经完成。系统在backlog队列中删掉此半连接.
第四步,看此TCP连接是否有效,相应产生两种解决方法。如果客户端的连接尝试是有效的,那么防火墙将接到来自客户端的ACK包,然后防火墙将它转发到服务器。服务器会忽略这个冗余的ACK包,这在TCP协议中是允许的.
如果客户端的IP地址并不存在,那么防火墙将收不到来自客户端的ACK包,重转计时器将超时。这时,防火墙重传此连接.
(2) 中继防火墙法
中继防火墙抵御攻击的思想是:防火墙在向内网服务器发SYN包之前,首先完成与外网的三次握手连接,从而消除SYN洪水攻击的成立条件。
以下为算法完整描述:
第一步,防火墙截获外网客户端发向内网服务器SYN数据包.
第二步,防火墙并不直接向内网发SYN数据包,而是代替内网服务器向外网发SYNIACK数据包.
第三步,只有接到外网的ACK包,防火墙向内网发SYN包.
第四步,服务器应答SYN/ACK包.
第五步,防火墙应答ACK包.
(3) 分析
首先分析算法的性能,可以看出:为了提高效率,上述算法使用了状态检测等机制(可通过本系统的基本模块层得以实现)
对于非SYN包(CSYN/ACK及ACK包),如果在连线跟踪信息表未查找到相应项,则还要匹配规则库,而匹配规则库需比较诸多项(如IP地址、端口号等),花费较大,这会降低防火墙的流量。另外,在中继防火墙算法中,由于使用了SYN包代理,增加了防火墙的负荷,也会降低防火墙的流量。
其次,当攻击主机发ACK包,而不是SYN包,算法将出现安全漏洞。一般地,TCP连接从SYN包开始,一旦 SYN包匹配规则库,此连接将被加到连接跟踪表中,并且系统给其60s延时。之后,当接到ACK包时,此连接延时突然加大到3600s。如果,TCP连接从ACK包开始,同时此连接未在连接跟踪表中注册,ACK包会匹配规则库。如匹配成功,此连接将被加到连接跟踪表中,同时其延时被设置为3600s。即使系统无响应,此连接也不会终止。如果攻击者发大量的ACK包,就会使半连接队列填满,导致无法建立其它TCP连接。此类攻击来自于内网。因为,来自于外网的ACK包攻击,服务器会很快发RST包终止此连接(SOs>。而对于内网的外发包,其限制规则的严格性要小的多。一旦攻击者在某时间段内从内网发大量ACK包,并且速度高于防火墙处理速度,很容易造成系统瘫痪。
(4) SYN cookies
Linux支持SYN cookies,它通过修改TCP协议的序列号生成方法来加强抵御SYN洪水攻击能力。在TCP协议中,当收到客户端的SYN请求时,服务器需要回复SYN-SACK包给客户端,客户端也要发送确认包给服务器。通常,服务器的初始序列号由服务器按照一定的规律计算得到或采用随机数,但在SYN cookies中,服务器的初始序列号是通过对客户端IP地址、客户端端口、服务器IP地址和服务器端口以及其他一些安全数值等要素进行hash运算,加密得到的,称之为cookie。当服务器遭受SYN攻击使得backlog队列满时,服务器并不拒绝新的SYN请求,而是回复cookie(回复包的SYN序列号)给客户端,如果收到客户端的ACK包,服务器将客户端的ACK序列号减去1得到。cookie比较值,并将上述要素进行一次hash运算,看看是否等于此cookie。如果相等,直接完成三次握手(注意:此时并不用查看此连接是否属于backlog队列)。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)