摘要:随着网上的在线交易、网银、购物、网游、电子商务的发展,网络安全越来越关系着广大用户的切身利益,网络服务器被攻击往往造成较大的社会影响和重大的经济损失。通过对网站服务器常见的攻击方法的介绍,增强人们防范意识。介绍了5种常见服务器攻击方法的原理,并给出具体的防范措施。
关键词:服务器安全;脚本漏洞;旁注;缓冲区溢出;ARP欺骗攻击
伴随互联网的发展,网络安全已经成为一个新兴的职业,网络黑客和网络反黑客之间的斗争日趋白热化。随着互联网进入社会的方方面面,不少黑客为了经济利益铤而走险,非法牟利。另一方面黑客工具软件在互联网的传播,降低了攻击服务器的技术门槛,绝大部分攻击者处于好奇心,抱着尝试的态度,下载黑客攻击对服务器进行攻击,反而这类黑客爱好者的破坏性是最大的。专业的网络安全是一门综合性的学科,包含网络技术、通信技术、计算机程序设计、计算机安全技术等。随着网上的在线交易、网银、购物、网游、电子商务的发展,网络安全事故的数量以及其造成的损失也在成倍地增长[1],网络安全越来越关系着广大用户的切身利益。
1服务器常见攻击方式
通过作者分析大部分的网络攻击者利用网络上可免费下载的黑客工具软件进行攻击,被这类攻击破坏的服务器系统安全问题具有普遍性,通过归纳总结,网站服务器常见的攻击方法有:脚本漏洞注入、域名旁注、缓冲区溢出攻击、ARP欺骗攻击、DDOS拒绝服务攻击等常见方法。服务器安全之黑客攻击手段如图1所示。
2网站服务器安全防范
2.1脚本漏洞注入
SQL注入漏洞的根源在于:程序编写的时候,没有对用户输入的数据的内容进行判断,没有过滤掉会引起安全隐患的数据,从而使攻击者通过地址的提交,返回一些重要的数据。常见的SQL注入代码在互联网上可以随时查到,通过举例来说明:例如:想知道某个网站的管理账号和密码,可以进行如下尝试。先猜测其管理账户为:admin,然后进入网站后台登录界面,进行SQL注入攻击,提交如下地址:.域名名称.com/admin/userlogin.asp?userID=1and(Selectpwdfrom管理员用户表where字段名=‘ad-min’)>某个具体的整数数字这时将返回一个出错页面,返回的出错信息如下:错误类型:[Microsoft][ODBCSQLServerDriver][SQLServer]将varchar值‘admin123456’转换为Int型时发生语法错误。根据这个提示,就得到了账号的管理密码,管理密码就是上面提示的“admin123456”,然后用账号和得到的密码,轻松从该网站后台正常登录该网站。在脚本漏洞类攻击手段中,除了SQL注入漏洞,还有不少脚本漏洞类型可以攻击,但是其共同的防范方法如下。防范方法:(1)程序设计中严格过滤用户提交的数据,包括用户提交数据的长度、内容等。(2)对于别人给的链接要格外谨慎。(3)设置服务器端的出错页面提示,防止通过出错页面提示泄露重要信息。
2.2域名旁注攻击
人们对网络安全的重视,最近兴起了域名旁注攻击这种攻击手段。首先要清楚域名和IP之间的关系,所有的域名都要最终解析到某个IP上,域名旁注就是通过域名解析的IP,然后通过域名查询网站提供的功能,可以看到解析在同一IP上的还有那些域名,并且将这些网站统计记录下来。此类攻击适用于:要攻击的目标网站的安全性非常高,没有漏洞,该网站所在的虚拟主机还有其他站点。通过查询得知该虚拟主机的所有站点域名,然后逐一寻找其他站点的漏洞,拿下该服务器的管理权限,或者通过漏洞站点上传攻击文件(一般是木马程序)对目标网站进行操作。这个过程可以简单地描述为:找到一台服务器上有漏洞的站点,通过攻击该站点,达到对目标站点的攻击目的。防范方法:先让A记录指向一个错误的IP,再在下面添加一个正确的IP,真实的IP被巧妙地隐藏了。具体域名解析操作要注意,现在域名解析的A记录中添加一个错误的解析,然后再设置正确的域名解析IP,因为无论是用Ping命令还是whois查询都只能得到一个域名解析记录,并且是按照顺序查出的。起初设置的错误的域名解析IP,最好使用一个不存在的Web服务器,否则该Web服务器会打开它的默认主站程序。
2.3缓冲区溢出攻击
绝大部分的对网络服务器的攻击都是此类攻击。计算机程序可以将数据存放到内存中的缓冲区中,当然缓冲区的存放空间并不是无限大,是有具体容量限制的,如果程序存放的数据容量超过了缓冲区的上限,就会发生缓冲区溢出。这里要注意,如果仅仅是缓冲区数据溢出,并不会发生安全问题,只有数据溢出到Root权限可以运行的区域才会引起安全问题。如果在Root权限的内存中存在一个程序可以运行的指令,就可以控制这个计算机。通过以上命令,成功在目标服务增加了一个用户“admin-istatro”,密码“ok123”,这个账号和系统默认管理员账号“administrator”极其类似,通过此账户,可以控制该服务器。防范方法:(1)关闭服务器端的139端口。(2)禁用服务器端的icp/ipnetbios服务。除了本文介绍的缓冲区溢出攻击,很多溢出攻击都是利用的这个服务。(3)设置防火墙,可以设置系统自带的防火墙或者安装防火墙软件。(4)更新操作系统,安装重要的操作系统补丁,并开启操作系统的自动更新功能,更新完毕后要重启服务器。
2.4Arp欺骗攻击
Arp是一种将IP转化成以IP对应的网卡物理地址的一种协议,这个协议不同于普通意义上的网络通信协议,首先,它是一个临时的存放在内存中的表,这个表的内容就是IP和MAC地址的对应,其次这个表的内容是会发生变化的。当计算机在进行数据传送时,数据包包含有:源IP地址,源MAC地址和目标主机的IP地址,如果在源主机内存中存放的表能找到目标主机IP地址和MAC地址,则直接把数据包发送到目标主机,如果不存在,则把信息广播出去。如果有目标主机收到该广播信息,则目标主机就会应答源主机,同时把本机的MAC地址返回给对方,从而实现目标主机和源主机的数据传输。如果攻击者收到了源主机的广播信息,伪装成目标主机的IP,把自己的MAC地址返回给源主机,则源主机就会更新内存中的这张表,把IP和欺骗MAC地址对应起来,这样本来该发送到目标主机的数据,都发送给了攻击者。并且攻击主机不停地发送给源主机广播应答,从而使源主机内存中存放的临时表始终保持错误的对应状态。防范方法:主要是加强密码强度和设置好权限。设置好系统用的管理密码和管理好FTP账户的权限,尤其是FTP账户的权限,要把FTP账户的目录权限设置到最小,仅仅操作当前的文件夹,这样,就算有一个FTP账号被破解,也仅仅限于该账户当前的目录内。
2.5DDOS拒绝服务攻击
此种攻击原理很简单,就是利用服务器要对客户端请求发出应答,在短时间内对服务器发起海量请求,从而导致服务器应答瘫痪,正常的访问也无法应答。此类攻击的关键是如何在短时间内发起海量的攻击,攻击者要控制多台网络服务器,并且在这些被控制的服务器上安装DDOS攻击程序,在其中的一台服务器上安装DDOS攻击主控程序,DDOS攻击主控程序主要用来与代理程序通信。只要在某个特定的时间通过主控程序发出指令给代理程序,代理程序收到指令就会向目标主机发动攻击,发送海量的垃圾请求,目标主机在短时间内无法应答这么多的请求,从而导致目标主机瘫痪。防范措施:(1)定期扫描系统内的安全漏洞。(2)设置服务器端的负载均衡。(3)在骨干节点配置专业的抗拒绝服务设备。(4)用足够的服务器承受黑客攻击。(5)充分利用网络设备保护网络资源。(6)过滤不必要的服务和端口。(7)检查访问者的来源。(8)过滤所有RFC1918IP地址。
3结语
针对服务器的网络攻击方法层出不穷[2],介绍了主流的服务器攻击方法,还有很多种服务器攻击方法如:病毒攻击、注册表纂改等。其实任何的防范措施都是落伍的,在服务器安全方面,都是先有攻击再有防范。针对服务器的攻击往往带来巨大的社会影响和经济损失。增强服务器安全防范的同时,要注意重要数据的备份,这样就算有损失也能降到最低程度。
参考文献
[1]雷领红,莫永华.计算机网络安全问题分析与对策研究[J].现代计算机,2010,(8):73-75.
[2]苏剑飞,王景伟.网络攻击技术与网络安全探析[J].通信技术,2010,43(01):91-93.
作者:王正元 郑敏 单位:宁夏大学数学计算机学院 太原理工大学信息管理与建设中心