路由攻击与防范
路由攻击与防范(精选11篇)
路由攻击与防范 第1篇
1 网络攻击的目的分析
目前常见的网络攻击的目的大体有以下几种: (1) 获取保密信息 (2) 破坏网络信息的完整性 (3) 攻击网络的可用性 (4) 改变网络运行的可控性 (5) 逃避法律责任。
2 常见网络攻击及防范策略
2.1 口令攻击
所谓口令攻击是指使用某些合法用户的账号和口令登录到目的主机, 然后再实施攻击活动。获得用户账号的方法很多, 如利用日标主机的Finger功能、X.500服务、从电子邮件地址中收集、查看习惯性账号。获取用户的账号后, 利用一些专门软件强行破解用户口令。
2.2 放置特洛伊木马程序
特洛伊木马程序可以直接侵入用户的电脑并进行破坏, 它常被伪装成工具程序或者游戏等诱使用户打开或下载, 一旦用户打开或者执行了这些程序, 它们就会像特洛伊人在敌人城外留下的藏满士兵的木马一样留在自己的电脑中, 并在计算机系统中隐藏一个可以在windows启动时悄悄执行的程序。当你连接到因特网上时, 这个程序就会通知攻击者, 来报告你的IP地址以及预先设定的端日。攻击者在收到这些信息后, 再利用预先潜伏的程序, 就可以任意地修改你的计算机的参数设定、复制文件、窥视你整个硬盘中的内容等, 从而达到控制你的计算机的日的[1]。
2.3 电子邮件攻击
电子邮件是互联网上运用得十分广泛的一种通讯方式。攻击者使用一些邮件炸弹软件或CGI程序向日的邮箱发送大量内容重复、无用的垃圾邮件, 从而使日的邮箱被撑爆而无法使用。攻击者还可以佯装系统管理员, 给用户发送邮件要求用户修改日令或在貌似常的附件中加载病毒或其他木马程序。
2.4 网络监听
网络监听是主机的一种工作模式, 在这种模式下, 主机可以接收到本网段在同一条物理通道上传输的所有信息, 而不管这些信息的发送方和接收方是谁。因为系统在进行密码校验时, 用户输入的密码需要从用户端传送到服务器端, 而攻击者就能在两端之间进行数据监听。此时若两台主机进行通信的信息没有加密, 只要使用某些网络监听工具就可轻而易举地截取包括日令和账号在内的信息资料。
2.5 安全漏洞攻击
许多系统都有这样那样的安全漏洞 (Bugs) 。如缓冲区溢出攻击。由于很多系统在不检查程序与缓冲之间变化的情况, 就任意接受任意长度的数据输入, 把溢出的数据放在堆栈单, 系统还照常执行命令。这样攻击者只要发送超出缓冲区所能处理的长度的指令, 系统便进入不稳定状态。若攻击者特别配置一串准备用作攻击的字符, 他甚至可以访问根目录, 从而拥有对整个网络的绝对控制权。
2.6 电子欺骗入侵
网络中的通信是在双方通过认证和信任的两个前提下进行的。黑客通过在网络上伪造可信任地址的数据包, 得到不该信任的信任关系, 即为电子欺骗。常见的电子欺骗;IP欺骗, TCP劫持、路由欺骗等。
2.7 网络病毒进行攻击
计算机网络病毒破坏性极强, 它不仅仅破坏网络资源, 而且还能破坏网络上的计算机硬分区, 造成主机无法启动, 甚至造成整个网络系统的瘫痪。它具有传染性、自我复制性、隐蔽性等特点。
3 网络安全策略研究
3.1 物理安全策略
物理安全策略的目的是保护计算机系统、网络服务器、打印机等硬件实体和通信链路免受自然灾害、人为破坏和搭线攻击, 包括安全地区的确定、物理安全边界、物理接口控制、设备安全、防电磁辐射等。物理接口控制是指安全地区应该通过合适的入口控制进行保护, 从而保证只有合法员工才可以访问这些地区。设备安全是为了防止资产的丢失、破坏, 防止商业活动的中断, 建立完备的安全管理制度, 防止非法进入计算机控制室和各种偷窃、破坏活动的发生。抑制和防止电磁泄漏 (即TEMPEST技术) 是物理安全策略的一个主要问题。目前主要防护措施有两类:一类是对传导发射的防护, 主要采取对电源线和信号线加装性能良好的滤波器, 减小传输阻抗和导线间的交叉耦合。另一类是对辐射的防护, 这类防护措施又可分为以下两种:一是采用各种电磁屏蔽措施, 如对设备的金属屏蔽和各种接插件的屏蔽, 同时对机房的下水管、暖气管和金属门窗进行屏蔽和隔离;二是干扰的防护措施, 即在计算机系统工作的同时, 利用干扰装置产生一种与计算机系统辐射相关的伪噪声向空间辐射来掩盖计算机系统的工作频率和信息特征。
3.2 访问控制策略
访问控制是网络安全防范和保护的主要策略, 它的目标是控制对特定信息的访问, 保证网络资源不被非法使用和非常访问。它也是维护网络系统安全、保护网络资源的重要手段。访问控制可以说是保证网络安全最重要的核心策略之一。访问控制包括用户访问管理, 以防止未经授权的访问;网络访问控制, 保护网络服务;操作系统访问控制, 防止未经授权的计算机访问;应用系统的访问控制, 防止对信息系统中信息的未经授权的访问, 监控对系统的访问和使用, 探测未经授权的行为。
3.3 信息安全策略
信息安全策略是要保护信息的机密性真实性和完整性。因此, 应对敏感或机密数据进行加密。信息加密过程是由形形色色的加密算法来具体实施的, 它以很小的代价提供很大的安全保护。在目前情况下, 信息加密仍是保证信息机密性的主要方法。信息加密的算法是公开的其安全性取决于密钥的安全性, 应建立并遵守用于对信息进行保护的密码控制的使用策略。密钥管理基于一套标准过程和方法, 用来支持密码技术的使用。信息加密的目的是保护网内的数据、文件、口令和控制信息, 保护网上传输的数据。网络加密常用的方法有链路加密、端点加密和节点加密三种。链路加密的目的是保护网络节点之间的链路信息安全;端一端加密的目的是对源端用户到目的端用户的数据提供保护;节点加密的目的是对源节点到目的节点之间的传输链路提供保护。
3.4 网络安全管理策略
网络安全管理策略包括:确定安全管理等级和安全管理范围;制定有关网络操作使用规程和人员出入机房管理制度;制定网络系统的维护制度和应急措施等。加强网络的安全管理, 制定有关规章制度, 对于确保网络安全、可靠地运行, 将起到十分有效的作用。在网络安全中, 采取强有力的安全策略, 对于保障网络的安全性是非常重要的。
参考文献
[1]谢模乾.计算机信息系统安全培训教程.[M].北京:群众出版社, 2004.
路由攻击与防范 第2篇
DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。DoS网络攻击的一个重要特征是网络中会充斥着大量带有非法源地址的ICMP包,我们可以通过在路由器上对ICMP包配置CAR来设置速率上限的方法来保护网络。
工作机制
CAR是Committed Access Rate的简写,意思是:承诺访问速率,CAR主要有两个作用:对一个端口或子端口(Subinterface)的进出流量速率按某个标准上限进行限制;对流量进行分类,划分出不同的QoS优先级。CAR只能对IP包起作用,对非IP流量不能进行限制,另外CAR只能在支持CEF交换(Cisco Express Forward)的路由器或交换机上使用。
要对流量进行控制我们首先要做的是对数据包分类识别(Packet Classification),然后再对其进行流量控制(Access Rate Limiting),CAR 就是两者的结合。其工作流程如图1所示。
图1
首先我们要定义感兴趣的流量,所谓感兴趣的流量就是对其进行流量控制的数据包类型。可以选择以下几种不同的方式来进行流量识别:
(1)基于IP前缀,此种方式是通过rate-limit access list来定义的。
(2)QoS 分组。
(3)IP access list,可通过standard或extended access list来定义,
采用上述方法定义了感兴趣的流量后,进行第二步的流量限制(Traffic Limitation)。CAR采用一种名为token bucket的机制来进行流量限制(如图2所示)。
图2
限流器使用token bucket的算法监视流量flow的带宽利用率。在每个流入的帧到达的时候,就把它们的长度加到token bucket (记号桶)上。每隔0.25毫秒(四千分之一秒),就从token bucket减去CIR(Committed Information Rate,承诺信息速率)或者说是平均限流速率的值。这样做的思路是,保持token bucket等于0,从而稳定数据速率。
限流器允许流量速率突发超出平均速率一定的量。token bucket增长到突发值(以字节为单位)水平之间的质量是允许的有效突发量,这也叫做in-profile traffic(限内流量)。当token bucket 的大小超过了突发值,限流器就认为流量“过大”了。这时我们可以定义一个PIR(Peak Information Rate,峰值信息速率)。当流量超出最大突发值达到PIR的时候,限流器就认为流量违规,这类流量也叫做out-of-profile traffic(限外流量)。所以当实际的流量通过限流器(token bucket)后, 可以看到会有两种情况发生:
(1)实际流量小于或等于用户希望速率,帧离开bucket的实际速率将和其来到的速率一样,bucket内可以看作是空的。流量不会超过用户的希望值。
浅析ARP攻击与防范 第3篇
【关键词】ARP;局域网;监听;攻击;欺骗
【中图分类号】TP393 【文献标识码】A 【文章编号】1672-5158(2013)03-0067-01
1. 背景
随着信息技术的发展,计算机网络己经成为工作生活中不可或缺的工具。但伴之而来的非法入侵也一直威胁着计算机网络系统的安全,干扰了互联网的正常发展。因此,如何有效地防范各种攻击,增强网络安全性,是一项重要的课题。
局域网内经常性大面积断线;IP地址冲突不断;内网主机互访出错频繁;网站主页给篡改,网页发现病毒;杀毒软件无可奈何;进而登陆账号被盗、敏感信息外泄……
这些常见的局域网故障,很大程度上跟ARP攻击有关。ARP攻击是一种典型的欺骗类攻击,攻击主机通过发送伪造的ARP应答来更新目标主机的ARP高速缓存,从而使自身赢得目标主机的信任。然后再实施有效攻击或非法监听网络数据包,造成目标主机被攻破或机密信息泄漏等一系列灾难性后果。
2. ARP攻击模式
从ARP协议工作原理可以看出,ARP协议是建立在信任局域网内所有结点的基础上的,它很高效,但却不安全。它是无状态的协议,不会检查自己是否发过请求包,也不管(其实也不知道)是否是合法的应答,只要收到目标MAC是自己的ARP reply包或arp广播包(包括ARP request和ARP reply),都会接受并缓存。这就为ARP欺骗提供了可能,恶意节点可以发布虚假的ARP报文从而影响网内结点的通信,甚至可以做“中间人”。
2.1 IP冲突或DoS攻击
这种攻击形式与中间人攻击有相似之处,都是持续广播伪造的ARP应答报文,截取并转发主机和网关之间的报文,监听主机与网关之间的通信,常用于窃取敏感的登陆信息和密码。
3 ARP整体防护设计思路
从ARP攻击原理可以看出,防范ARP欺骗攻击最大困难在于其攻击不是针对服务器或交换机系统本身的,而且攻击源可以在网段内任何一个地方隐藏,其隐蔽性很高。所以有时候即使管理员发现了攻击的存在,要在最短时间内快速定位攻击源也是非常困难的事情。这就意味着像防治普通攻击或病毒那样单一的从服务器系统或者从网络网关上进行防范效果不是很好。
一个完整的ARP攻击防范策略需要从三方面同时入手:计算机系统防护、网络设备维护以及健全网络安全监管机制。
计算机系统防护。这是基于主机的安全防护,主要从系统安全加固、系统DLL控制、MAC ARP绑定、安装ARP防火墙等方面构筑第一道防线。
网络设备的防护。局域网内的主机通过交换机、路由器相连,因而应该在交换机与路由器上构筑第二道防线。在交换机某些固定端口上配置静态MAC地址,把一个MAC地址永久性地分配给一个端口。对于连接服务器或机密主机的交换机端口,设置安全保护,阻止攻击方对该端口的监听。对于具有DHCP功能的路由器,尽量用手动指定IP地址给已知MAC地址的主机。
健全网络安全监管机制、合理分配网络资源。监听局域网内ARP数据包的情况。通过监听和分析网络状况,如主机表、协议、数据包特征以及流量等多方面的信息,及时发现通信异常,定位攻击源,并从源头上解决ARP攻击。同时合理利用VLAN优化网络,把ARP攻击所造成的损失减到最低。
4. 结束语
ARP攻击之所以能在公众局域网内如此轻易的传播,是因为在拥有机器数量较多的公众上网环境,由于其中各类系统的安全责任点归属复杂、使用人员安全意识欠缺,造成环境内安全管理漏洞较大、安全盲点较多,从而使新一代以ARP欺骗为基础的网页挂码或重定向攻击得以滋生。即使一个单位或网站管理员能保证自己的服务器与网络交换设备不被攻占,他也无法抵御来自网络范围内任何一台机器的ARP攻击。对付此类攻击,传统上从操作系统或交换设备的单点防御已无济于事。
ARP攻击与防范 第4篇
ARP (Address Resolution Protocol) 是地址解析协议, 是一种将IP地址转化成物理地址的协议。在局域网中, 一个主机要和另一个主机进行直接通信, 除需要知道目标主机的IP地址外, 还必须要知道目标主机的MAC地址。这个目标MAC地址就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送数据前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址, 查询目标设备的MAC地址, 以保证通信的顺利进行。即ARP协议是用来来完成IP地址转换为MAC地址 (即第2层物理地址) 的。在局域网中, 网络中实际传输的是“帧”, 帧里面是有目标主机的MAC地址的。
每台安装有TCP/IP协议的电脑里都有一个ARP缓存表, 表里的IP地址与MAC地址是一一对应的, 默认情况下, ARP从缓存中读取IP-MAC条目, 缓存中的IP-MAC条目是根据ARP响应包动态变化的。因此, 只要网络上有ARP响应包发送到本机, 即会更新ARP高速缓存中的IP-MAC条目。在DOS窗口输入命令arp-a可以看到如下所示的对应关系:
通过以上示例可以看出, IP地址192.16.16.1对应的物理地址 (即MAC地址) 为aa-aa-aa-aa-aa-aa, 其类型为动态。我们以主机A (192.168.1.1) 向主机B (192.168.1.2) 发送数据为例。当发送数据时, 主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了, 也就知道了目标MAC地址, 直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址, 主机A就会在网络上发送一个广播, 目标MAC地址是“FF.FF.FF.FF.FF.FF”, 这表示向同一网段内的所有主机发出这样的询问:“192.168.1.2的MAC地址是什么”?网络上其他主机并不响应ARP询问, 只有主机B接收到这个帧时, 才向主机A做出这样的回应:“192.168.1.2的MAC地址是bb-bbbb-bb-bb-bb”。这样, 主机A就知道了主机B的MAC地址, 它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表, 下次再向主机B发送信息时, 直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制, 在一段时间内如果表中的某一行没有使用, 就会被删除, 这样可以大大减少ARP缓存表的长度, 加快查询速度。
从上面可以看出, ARP协议的基础就是信任局域网内所有的人, 那么就很容易实现在以太网上的ARP欺骗。对目标A进行欺骗, A去Ping主机C却发送到了DD-DD-DD-DD-DD-DD这个地址上。如果进行欺骗的时候, 把C的MAC地址骗为DD-DD-DD-DD-DD-DD, 于是A发送到C上的数据包都变成发送给D的了。这就正好是D能够接收到A发送的数据包了, 这样欺骗就成功了。
ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗, 从而在网络中产生大量的ARP通信量使网络阻塞。用伪造源MAC地址发送ARP响应包, 是对ARP高速缓存机制的攻击。攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目, 造成网络中断或中间人攻击。当攻击者大量向局域网中发送虚假的ARP信息后, 就会造成局域网中的机器ARP缓存的崩溃。
ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候, 就会对本地的ARP缓存进行更新, 将应答中的IP和MAC地址存储在ARP缓存中。因此, 当局域网中的某台机器B向A发送一个自己伪造的ARP应答, 而如果这个应答是B冒充C伪造来的, 即IP地址为C的IP, 而MAC地址是伪造的, 则当A接收到B伪造的ARP应答后, 就会更新本地的ARP缓存, 这样在A看来C的IP地址没有变, 而它的MAC地址已经不是原来那个了。由于局域网的网络流通不是根据IP地址进行, 而是按照MAC地址进行传输。所以, 那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址, 这样就会造成网络不通, 导致A不能Ping通C。这就是一个简单的ARP欺骗。
2 ARP欺骗的种类
ARP欺骗是黑客常用的攻击手段之一, ARP欺骗分为两种, 一种是对路由器ARP表的欺骗;另一种是对内网PC的网关欺骗。
前一种ARP欺骗的原理是截获网关数据。它通知路由器一系列错误的内网MAC地址, 并按照一定的频率不断进行, 使真实的地址信息无法通过更新保存在路由器中, 结果路由器的所有数据只能发送给错误的MAC地址, 造成正常PC无法收到信息;后一种ARP欺骗的原理是伪造网关。它的原理是建立假网关, 让被它欺骗的PC向假网关发数据, 而不是通过正常的路由器途径上网。在PC看来, 就是上不了网, “网络掉线了”。
一般来说, ARP欺骗攻击的后果非常严重, 大多数情况下会造成大面积掉线。有些网管员对此不甚了解, 出现故障时, 认为PC没有问题, 交换机没掉线的“本事”, 电信也不承认宽带故障。而且如果第1种ARP欺骗发生时, 只要重启路由器, 网络就能全面恢复, 那问题一定是在路由器了。为此, 宽带路由器背了不少“黑锅”。
3 ARP攻击主要的方式
3.1 简单的欺骗攻击
这是比较常见的攻击, 通过发送伪造的ARP包来欺骗路由和目标主机, 让目标主机认为这是一个合法的主机, 便完成了欺骗。这种欺骗多发生在同一网段内, 因为路由不会把本网段的包向外转发, 当然实现不同网段的攻击也有方法, 便要通过ICMP协议来告诉路由器重新选择路由。
3.2 交换环境的嗅探
在最初的小型局域网中我们使用HUB来进行互连, 这是一种广播的方式, 每个包都会经过网内的每台主机, 通过使用软件, 就可以嗅谈到整个局域网的数据。现在的网络多是交换环境, 网络内数据的传输被锁定在特定目标。既已确定的目标通信主机, 在ARP欺骗的基础之上, 可以把自己的主机伪造成一个中间转发站来监听两台主机之间的通信。
3.3 MAC Flooding
这是一个比较危险的攻击, 可以溢出交换机的ARP表, 使整个网络不能正常通信。
3.4 基于ARP的DOS
这是新出现的一种攻击方式, DOS又称拒绝服务攻击。当大量的连接请求被发送到一台主机时, 由于主机的处理能力有限, 不能为正常用户提供服务, 便出现拒绝服务。这个过程中如果使用ARP来隐藏自己, 在被攻击主机的日志上就不会出现真实的IP, 攻击的同时, 也不会影响到本机。
4 定位ARP攻击源头和防御方法
4.1 定位ARP攻击源头
(1) 主动定位方式:因为所有的ARP攻击源都会有其特征网卡会处于混杂模式, 可以通过ARPKiller这样的工具扫描网内有哪台机器的网卡是处于混杂模式的, 从而判断这台机器有可能就是“元凶”。定位好机器后, 再做病毒信息收集, 提交给趋势科技做分析处理。
(2) 被动定位方式:在局域网发生ARP攻击时, 查看交换机的动态ARP表中的内容, 确定攻击源的MAC地址;也可以在局域居于网中部署Sniffer工具, 定位ARP攻击源的MAC。
也可以直接Ping网关IP, 完成Ping后, 用ARP-a查看网关IP对应的MAC地址, 此MAC地址应该为欺骗的MAC。
通过上述方法, 我们就能够快速地找到病毒源, 确认其MAC〉机器名和IP地址。
4.2 防御方法
(1) 使用可防御ARP攻击的3层交换机, 绑定端口-MAC-IP, 限制ARP流量, 及时发现并自动阻断ARP攻击端口, 合理划分VLAN, 彻底阻止盗用IP、MAC地址, 杜绝ARP的攻击。
(2) 对于经常爆发病毒的网络, 进行Internet访问控制, 限制用户对网络的访问。此类ARP攻击程序一般都是从Internet下载到用户终端, 如果能够加强用户上网的访问控制, 就能极大地减少该问题的发生。
(3) 在发生ARP攻击时, 及时找到病毒攻击源头, 并收集病毒信息, 可以使用趋势科技的SIC2.0, 同时收集可疑的病毒样本文件, 一起提交到趋势科技的TrendLabs进行分析, TrendLabs将以最快的速度提供病毒码文件, 从而进行ARP病毒的防御。
摘要:全球性的网络化、信息化进程正改变着人们的生活方式, 各学校也建立了自己的计算机网络。但是计算机病毒、网络入侵等也随之危害到了各学校的计算机网络。对威胁学校计算机网络的ARP攻击作了简单介绍, 并对其对应的防范措施进行了说明。
关键词:网络安全,ARP攻击,网络入侵
参考文献
[1]W.Richard Stevens.TCP/IP详解 (卷1) :协议[M].范建华, 胥光辉, 张涛, 译.北京:机械工业出版社, 2000.
[2]杨家海.网络管理原理与实现技术[M].北京:清华大学出版社, 2002.
[3]郭卫兴, 刘旭, 吴灏.基于ARP缓存超时的中间人攻击检测方法[J].计算机工程, 2008 (13) .
IE浏览器的攻击与防范 第5篇
攻击现象一、IE快捷方式被修改
双击Windows系统桌面中的IE快捷图标时,IE浏览器会直接打开病毒网页,而不是事先指定的网站页面。这种现象表明IE浏览器的桌面快捷图标已经被病毒强行修改,病毒通过控制IE快捷图标的启动参数,来强制IE浏览器访问病毒指定的恶意站点,从而达到传播病毒或攻击系统的目的。
攻击原理:病毒控制IE浏览器的启动参数,主要通过两种方法来完成。一是主动修改系统桌面中IE浏览器快捷图标的属性参数,例如,右击系统桌面中IE浏览器的快捷图标,切换到快捷方式标签设置页面,在“目标”文本框中,输入“IE浏览器的真实路径+空格+恶意站点页面地址”,按“确定”按钮后,用户日后只要通过IE浏览器快捷图标上网冲浪时,直接访问的都是恶意站点页面。二是通过修改系统注册表中相关键值来指定启动站点,例如,打开注册表编辑窗口,将鼠标定位到HKEY LOCALMACHINE\SOFTWARE\Microsoft\Internet Explorer\AboutURLs分支下(如图1所示),右击目标分支选项,从弹出的右键菜单中依次选择“新建”、“字符串值”命令,将新创建的字符串键值名称取为“aaa”,同时将其数值设置为“http://www.aaa.com”,这样就能在系统桌面上自动生成一个IE浏览器快捷方式,打开该快捷方式的属性对话框后,我们会看到目标文本框后面除了包含IE浏览器的真实路径,还有“about:aaa”后缀,双击这样的IE浏览器快捷方式后,就能强制IE浏览器直接访问“http://www.aaa.com”这样的病毒站点了。当然,为了让指向病毒站点的IE快捷方式更逼真,病毒程序可能还会打开系统注册表编辑窗口,定位到HKEY LOCALMACHINE\SOFTWARE\Classes\InternetShortcut分支下(如图2所示),将目标分支下的“IsShortcut”键值删除掉,这样就能把IE快捷方式的小箭头图标隐藏起来了,这样用户就不会怀疑这个新生成的IE快捷方式了。
应对措施:首先要辨别出系统桌面上的IE快捷图标究竟是真的还是假的;任进行辨别操作时,用鼠标右键单击IE快捷图标,点选右键菜单中的“属性”命令,打开IE快捷图标的属性对话框,切换到快捷方式标签设置页面,检查“目标”文本框中IE浏览器的真实路径是否正确,如果后面有“about:aaa”、“www.aaa.com”之类的后缀信息时,那基本就能断定目标IE快捷图标是假图标。其次用鼠标右键单击假的IE快捷图标,从右键菜单中选择“删除”命令,将它从系统桌面中清除干净即可。
攻击现象二、生成假的IE桌面图标
有的时候,通过查看IE桌面图标的属性参数,根本无法辨别出对应图标的真假,但是双击IE桌面图标后,IE浏览器打开的仍然是病毒网站,这种IE桌面图标其实是病毒程序煞费苦心制作的假图标。
攻击原理:病毒程序可以通过添加或修改CLSID的方式,来制造假的IE桌面图标。病毒程序只要打开系统注册表编辑窗口,将鼠标定位到HKEY LOCALMACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Desktop\NameSpace分支以及HKEY-CLASSES ROOT\CLSID分支下同时创建CLSID({871C5380-42A0-1069-A2EA-08002B303099}),之后在目标CLSID下分别创建“open”、“属性”子项,并将“open”子项的默认值设置为“打开主页”,再在“open”、“属性”下面各创建一个“command”子项,同时将它们的默认值依次设置为“C:\Program Files\InternetExploer\IexpIore.exe http://www.aaa.com”、“rund1132.exe shell32.dll,Control RunDllinetcpl.cpl”(如图3所示),其中“http://www.aaa.com”为病毒程序指定的恶意站点,这样系统桌面上就出现了假的IE桌面图标了。
应对措施:可以采取两种方法删除假的IE桌面图标。一是打开系统注册表编辑窗口,定位到上述两个注册表分支上,找到病毒程序自行创建的CLSID,并采用手工方法将它们删除掉,不过这种方法有一定的难度,普通用户往往无法识别出哪个CLSID是病毒创建的;对于无法识别的CLSID,可以通过上网搜索查询,一般都能知道每个系统组件的CLSID,对于陌生的CLSID,必需及时将它从系统中删除干净。二是登录进入一台健康的计算机系统,打开系统注册表编辑窗口,定位到上面两个分支,并依次单击“文件”|“导出”命令,将它们导出保存为两个注册表文件,之后再将它们导入到本地计算机系统,就能解决上述问题了。
攻击现象三、IE首页设置无法修改
很多病毒攻击IE浏览器时,会通过修改注册表中HKEYCURRENT-USER\Software\Microsoft\Internet Explorer\Main分支下的“StartPage”键值,来随意篡改IE首页设置,即使用户打开IE浏览器的Internet选项设置对话框,尝试手工修改IE首页设置时,往往也无法取得成功。
攻击原理:病毒在进行这种攻击时,先是打开系统注册表编辑窗口,定位到HKEY-CLASSES-ROOT\CLSID\{871C5380-42A0-1069-A2EA-08002830309D}\shell\OpenHomePage\Command分支上(如图4所示),在目标分支下将默认值设置为“C:\Program Files\Internet ExploerXIexplore.exe‘www.aaa.com’”,这么一来用户无论在Internet选项设置对话框中,将IE首页设置成什么网站地址,IE浏览器都会直接访问病毒事先指定的“www.aaa.com”站点页面。
应对措施:既然病毒是通过
nlc202309030623
修改HKEY-CLASSES ROOT\CLSID\{871C5380-42A0-1069-A2EA-08002830309D}\shell\OpenHomePage\Command分支下的默认键值阻止用户修改IE首页设置的,那么我们只要再次定位到目标分支下,打开默认值的属性对话框,将最后的“www.aaa.com”内容给删除掉即可。为了防止下次再发生类似的攻击,我们可以对目标分支的访问权限进行调整,仅让可信任用户能修改该分支下的键值内容,其他人都无法进行修改。
攻击现象四、IE重启后又不正常了
当IE设置被病毒修改,用户尝试手工恢复后,浏览器的工作状态恢复正常了,可是重新启动浏览器后,它的工作状态又不正常了。
攻击原理:病毒可以采用两种方法实现上述攻击目的。一是利用关机事件,创建能够自动重启病毒的运行脚本,并将脚本程序添加到系统注册表的HKEY-LOCAL-MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts分支下,这样系统每次关机之前都会自动执行目标脚本程序,那么IE浏览器的设置又会被病毒自行修改了。二是通过desktop.ini文件,来启动运行VBS脚本程序,而在脚本程序中写入强行启动病毒程序的代码,那么系统日后每次开机启动时,病毒程序将会自动发作运行,修改IE浏览器的设置。
应对措施:检查HKEYLOCAL-MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\State\Machine\Scripts分支、HKEYCLASSES-ROOTXinifile\shellex分支下的关机脚本和启动病毒程序的VBS脚本是否存在,如果存在的话,只要手工将它们删除,就能避免上述攻击现象再次发生了。除了检查注册表外,还应该检查系统组策略中的注销、关机、登录等事件脚本,确保没有自动启动病毒程序的恶意脚本存在。
预防IE浏览器遭遇攻击
IE浏览器遭遇病毒攻击的话,轻则影响用户的上网冲浪,重则能导致系统发生瘫痪,甚至还能引发安全事故。为此,我们必需要迅速行动,采取针对性措施预防IE浏览器遭遇攻击:
关闭Remote Registry服务
默认状态下,Windows系统会允许远程用户修改本地计算机中的注册表设置,这样很多病毒就能将一些恶意代码植入到注册表中,以便达到远程攻击的目的,此时只要关闭RemoteRegistry服务,就能彻底禁止远程修改注册表的功能了,那么病毒程序自然也就无法通过修改注册表的方法IE浏览器了。在关闭Remote Registry服务时,可以按照如下步骤来进行:
首先依次单击“开始”|“设置”|“控制面版”选项,逐一双击系统控制面板窗口中的“管理工具”|“服务”图标,在右侧列表界面中双击“Remote Registry”服务选项,弹出如图5所示的选项设置窗口;
其次在“常规”标签页面中,点击“停止”按钮,暂停目标系统服务的运行状态,再将“启动类型”参数选择为“已禁用”,这样就能彻底禁止远程修改注册表的功能了。日后,病毒程序无法再远程修改本地系统的注册表,那么IE浏览器自然也就不会被随意篡改了。
严格控制运行权限
一些病毒、木马程序可能会自动下载保存到本地系统,再将运行代码写入到注册表的“Run”分支下,实现病毒木马的自动运行,给本地IE浏览器造成安全危害。为了预防病毒、木马程序修改本地注册表,实现自动运行发作目的,我们可以进行如下设置操作,来关闭病毒、木马的运行权限:
首先打开本地计算机的“开始”菜单,选择“运行”命令,输入“regedit”命令,按回车之后,切换到系统注册表编辑窗口;依次展开该编辑窗口左侧区域中的“HKEY CURRENTMACHINE\Software\Microsoft\Windows\CurrentVersion\Run”分支,并用鼠标选中该分支选项;
其次逐一点选“编辑”、“权限”选项,打开如图6所示的权限设置界面,添加导入everyone帐号,并将该账号访问权限设置为“读取”;同样地,要将除系统管理员以外的其他帐号权限统统设置为“读取”,而不能设置为“完全控制”,再按“确定”按钮返回;
考虑到一些病毒程序会以服务方式来运行,因此再选中注册表窗口中的“HKEYCURRENT-MACHINE\SYSTEMX\CurrentControlSet\Services”选项,依次选择“编辑”|“权限”选项,在弹出的权限设置界面中,将除了系统管理员以外的其他帐号权限也设置为“只读”。
启用IE增强安全功能
为了保护IE浏览器的安全性,Win2008系统设计出了IE增强安全功能,借助该功能能大幅提高IE安全区域上的缺省安全等级,从而降低IE浏览器遭遇潜在攻击的暴露程度。在启用IE增强安全功能时,可以按照如下步骤来执行:
首先关闭所有IE浏览器窗口,之后打开Win2008系统的“开始”菜单,依次选择“程序”|“管理工具”|“服务器管理器”选项,打开服务器管理器窗口,单击“安全信息”位置处的“配置IE ESC”选项,弹出如图7所示的IE增强安全对话框;
其次将“管理员”、“用户”位置处的“启用”选项选中,再按“确定”按钮,这样一来Win2008系统就能将IE增强安全功能启用成功了。日后要想关闭IE增强安全功能时,只要选中“管理员”或“用户”下的“禁用”选项即可了。
控制写入关机脚本
某些病毒程序会通过写入关机脚本的方式,来达到自动重启病毒的目的,因此我们有必要控制写入关机脚本的权限,禁止病毒通过关机事件来反复修改IE浏览器的设置,下面就是具体的控制步骤:
首先依次单击“开机”、“运行”选项,在弹出的系统运行对话框中,输入“regedit”命令,切换到系统注册表编辑窗口;将鼠标定位到该编辑窗口左侧的“HKEY LOCALMACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group PoHcy\State\Machine\Scripts”分支上,如图8所示;
其次逐一点选“编辑”、“权限”命令,弹出权限设置对话框,在这里将除了系统管理员以外的其他账号权限设置为“只读”,再单击“确定”按钮保存设置操作,最后重新启动计算机系统,这样病毒就无法随意向本地系统写入关机脚本了。
控制病毒自动下载
一些病毒、木马程序相当“狡猾”,有时没有经过用户的允许,就会自动从网上下载并安装到本地硬盘中了;如果这些病毒木马破坏性强的话,那么IE浏览器就可能遭受严重破坏。为此,我们可以控制自动下载功能,来预防这些破坏性极大的病毒、木马程序自动下载到本地系统中,下面就是具体的控制步骤:
首先依次单击“开始”|“运行”选项,输入“gpedit.msc”命令,弹出组策略编辑窗口;展开“用户配置”分支,逐一单击“管理模板”|“windows组件”|“Internet Explorer”|“安全功能”|“限制文件下载”分支,在目标分支下面双击“Internet Explorer进程”选项,打开目标选项设置对话框(如图9所示);选中“已启用”选项,同时按“确定”按钮返回,这样IE浏览器日后就会限制任何文件执行自动下载操作了。
ARP攻击与防范措施 第6篇
由于计算机网络具有开放性, 并且联结形式多样, 因此, 无论是在局域网还是在广域网中, 都存在着自然和人为等诸多因素的威胁, 加之网络自身的脆弱性, 致使网络易受黑客、病毒、恶意软件和其他不轨行为的攻击。其中欺骗类攻击是网络中常见的一种攻击方式, ARP欺骗攻击就是一种典型的欺骗类攻击。因此, 了解ARP攻击的基本原理, 采取有针对性的必要措施, 防患于未然, 才能确保网络信息的保密性、完整性和可用性。
1 ARP协议工作原理
ARP (Address Resolution Protocol, 地址解析
协议) 用来动态地将第三层网络地址转换成数据链路层的物理地址, 也就是通过已知目标设备的IP地址, 找到目标设备的MAC地址, 以保证通信的进行。
在基于以太网交换技术的局域网中, 当数据准备发送时, 由数据链路层将上层数据封装在以太网数据帧中, 然后在以太网中传输。然而在封装过程中, 数据链路层并不知道以太网数据帧头中目的主机的MAC地址, 唯一的信息是IP数据报头中的目的主机IP地址。为了找到与目的主机IP地址相对应的MAC地址, 根据ARP协议, 源主机会发送一个称为ARP Request的以太网数据帧给以太网上的每一个主机, 这个过程称为ARP广播。ARP请求数据帧中包含目的主机的IP地址, 它向以太网上的每一个主机询问“如果你是这个IP地址的拥有者, 请回答你的MAC地址”。只有拥有此IP地址的主机收到这份广播报文后, 才会向源主机回送一个包含其MAC地址的ARP应答。并且, 为了尽量减少广播ARP请求的次数, 每个主机都有一个ARP缓存 (ARP Cache) , 这个缓存存放了最近的IP地址与MAC地址之间的映射记录。ARP缓存表采用老化机制, 主机每隔一定时间或者当收到ARP应答, 都会用新的地址映射来更新ARP缓存, 删除在一段时间内没有使用过的IP地址与MAC地址的映射关系。因为ARP是一个无状态的协议, 所以对于大多数操作系统, 如果收到一个ARP应答, 不管是否在此之前发过ARP请求, 都会更新自己的ARP缓存, 这就为系统安全留下了隐患。
2 ARP欺骗攻击的实现过程
ARP欺骗攻击的核心就是向目标主机发送伪造的ARP应答, 并使目标主机接收应答中伪造的IP与MAC的映射关系, 并以此更新目标主机的ARP缓存。假设网络中, A的IP地址为192.168.0.1, MAC地址为aa-aa-aa-aa-aa-aa, B的IP地址为192.168.0.2, MAC地址为bbbb-bb-bb-bb-bb;C的IP地址为192.168.0.3, MAC地址为cc-cc-cc-cc-cc-cc。
A向B发送一个自己伪造的ARP应答, 而这个应答中的数据发送方IP地址是C的IP地址192.168.0.3, MAC地址是伪造的一个其它地址dd-dd-dd-dd-dd-dd。当B接收到A伪造的ARP应答, B并不知道MAC地址被伪造了, B就会更新它自己本地的ARP缓存。现在和IP地址192.168.0.3对应的MAC地址在B的ARP缓存表上被改变成了一个不存在的MAC地址。从B开始Ping 192.168.0.3, 网卡递交的MAC地址是dd-dd-dd-dd-dd-dd, 结果当然不能Ping通C。如果A向B发送的伪造ARP应答中的MAC地址是aa-aa-aa-aa-aa-aa, 那么B发往C的数据就会错误地发送到A。此时, A就可以窃取C的数据。这样就可以实现在一台普通计算机上通过发送ARP数据包的方法来控制网络中任何一台计算机的上网与否, 甚至还可以直接对网关进行攻击, 使网络上的计算机发来的数据无法发送到正常网关, 而攻击者可以伪装成网关, 从而截取网络中其他计算机发送的数据。
3 ARP攻击的防范措施
3.1 设置静态ARP缓存表
ARP协议攻击最根本的原理就是改变IP地址与MAC地址的正确对应关系。所以, 可以采取静态ARP表来防范, 就是在目标主机的ARP缓存中设置静态地址映射记录。这样, 当主机A向主机B发送数据前就不需要通过向所在的局域网广播ARP请求来获得B的MAC地址, 它会直接查询ARP静态记录表来获得B的MAC地址。攻击者也就没有机会向A发送ARP应答。但是, 攻击者在未接收到ARP请求的情况下仍凭空伪造ARP应答发送给A, A将拒绝用伪造的数据更新ARP缓存中的静态记录。这种方法的缺点很明显, 就是在经常更换IP地址的局域网环境里, 由于每个主机都采用ARP静态记录, 手工维护十分繁琐, 通常只针对网关建立静态映射。
3.2 交换机上绑定端口和MAC地址
设置交换机的每个端口与MAC地址相对应。如果来自该端口的MAC地址发生变动, 就自动封锁该端口, 使主机无法连接到局域网。这样, 攻击者就无法发送伪造的ARP数据帧, 从而阻止了ARP欺骗的发生。
3.3 禁用网络接口ARP解析
在操作系统中可以做静态ARP协议设置 (因为对方不会响应ARP请求报文) , 并禁止网络接口做ARP解析以对抗ARP欺骗攻击。例如在Linux下使用ifconfig eth0-ARP可以使网卡驱动程序停止使用ARP, 然后建立静态ARP映射“ARP-s IP MAC”, 即可有效防范ARP攻击。
3.4 利用防火墙和防病毒软件加强监控
可以借助防火墙和防病毒软件, 监控进出主机的网络数据。在局域网内的每台机器都安装防火墙软件和防病毒软件, 每个网段也应安装防火墙软件。通过对防火墙和防病毒软件的正确配置, 可以有效的抵御ARP攻击, 以及防范基于ARP的病毒和木马程序的侵入。
4 结束语
本文通过分析ARP协议的工作原理, 探讨了基于ARP协议欺骗攻击的实现过程, 提出了多种可行的安全防御策略, 对于防范ARP欺骗攻击, 一般需要多种措施配合使用, 可以从制度和技术两方面采取多种有效措施防治, 以减少网络受到的危害, 提高工作效率, 降低经济损失。如果要从根本上解决这一问题, 最好的方法是重新设计一种安全的地址解析协议, IPV6中已经考虑到了这个问题, 采用了更安全的方式以防范来自底层的攻击。
参考文献
[1]门飞, 朱磊明.ARP协议攻击原理及其防范[[J].信息网络安全, 2003, 10:26-27.
[2]李海鹰, 程灏, 吕志强.针对ARP攻击的网络防御式设计与实现[J].计算机工程, 2005, 31 (5) :170-171.
[3]徐涛.基于Ethernet的ARP欺骗原理及防御[J].网络安全技术与应用, 2007, 7:22-24.
SQL注入攻击与防范研究 第7篇
由于多数程序员不了解SQL注入漏洞的知识, 目前互联网上网站经常遭受SQL注入攻击。本文, 笔者针对PHP+My SQL型和ASP+SQLServer型Web程序的SQL注入攻击防范措施进行了详细阐述, 并给出了预防SQL注入漏洞的方法, 有助于提高Web应用程序员的安全意识和Web程序的安全性。
一、SQL注入原理
1. SQL注入原理。
SQL注入攻击是指黑客在用户交互端精心编写一些SQL语句, 把特殊的SQL指令语句插入到系统实际SQL语句中并执行它, 从而获取主机控制权限的攻击方法。SQL注入是从正常的WWW端口访问, 而且表面看起来跟一般的Web页面访问没什么区别, 所以目前市面上的防火墙不会对SQL注入发出警报。以PHP语言为例, 如果用户的输入能够影响脚本中SQL命令的生成, 那么很可能在添加了单引号、#号等转义命令字符后, 能够改变最终生成的SQL命令。
2. 举例说明。
如果程序员在编程时没有对用户输入的变量$U和$P进行合理的限制, 当攻击者把用户名输入为admin’#的时候, 输入字符串中的单引号和脚本中的单引号形成配对, 而输入字符串中的“#”号对于mysql语言来说是行注释符, 后边的语句将被当做注释处理掉。这使攻击者可以轻易绕过身份验证机制, 因此, 没有正确密码也能看到管理员的信息。对于SQL注入攻击, 很多程序员对它仍然没有足够的重视, 编写的网站中遗留了大量SQL注入攻击漏洞。加上许多专门的SQL注入软件 (如NBSI) 的“蓬勃发展”, 使得一个既不懂编程又不懂SQL的人, 只要知道如何操作这个软件就可以轻而易举地入侵一家网站。
二、SQL注入攻击的特点
1. 广泛性。
SQL注入攻击利用的是简单的SQL语法, 因此所有基于SQL语言标准的Web应用程序都可能成为SQL注入攻击的目标。如果没有对输入的SQL语句做严格的技术处理, 理论上都会存在SQL注入漏洞安全隐患。市场上主流的Web应用程序均发现存在SQL注入漏洞的问题。
2. 危害大。
通过SQL注入攻击可以控制整个Web应用系统, 在不经授权的情况下对数据做任意地修改, 甚至恶意篡改网页的内容, 破坏性极大。
3. 技术要求低。
目前互联网上出现了许多SQL注入攻击工具, 如明小子、桂林老兵等都是非常出名的攻击工具。攻击者无需专业知识, 直接利用此类工具软件便可随意地对存在SQL注入攻击漏洞的网站实施攻击。
三、SQL注入攻击检测与防范
目前针对Web服务器的SQL注入攻击技术层出不穷, 但其内部机理都是利用畸形的SQL语句通过客户端浏览器与服务器之间的共享连接来实现绕过认证获取敏感信息。如何让系统管理者采取有效的防范措施阻止内部信息的泄露, 将整个系统的威胁降至最低, 是目前服务器防守的关键。
1. SQL注入攻击检测方法。
SQL注入攻击检测分为入侵前的检测和入侵后的检测, 入侵前检测可以手工测试也可以通过软件检测, 入侵后检测主要是针对日志的检测。
(1) 数据库检查。使用HDSI、NBSI和Domain等SQL注入攻击软件工具进行SQL注入攻击后, 都会在数据库中生成一些临时表。通过查看数据库中最近新建表的结构和内容, 就可以判断是否曾经发生过SQL注入攻击。
(2) IIS日志检查。在Web服务器中如果启用了日志记录, 则IIS日志会记录访问者的IP地址、访问文件等信息, SQL注入攻击往往会大量访问某一个页面文件 (存在SQL注入点的动态网页) , 且日志文件也会急剧增加。
2. 一般SQL注入攻击的防范方法。
(1) IIS服务器安全设置。攻击者常用错误信息判断SQL漏洞是否存在, 可以修改IIS的返回信息, 使得所有错误返回一样的信息, 攻击者无从获取网站信息。可以修改C:WINDOWSHelpiis Helpcommon目录下的500-100.asp文件为统一格式的500.htm。对于静态网站, 一般不设置脚本可执行权限, 动态网站也只设置纯脚本权限。对于用户上传的文件设置为无可执行权限, 上传文件夹不放置系统配置文件。IIS如无匿名登录需求, 则可取消该项服务。
(2) 功能代码端设置。程序员要习惯将应用系统中的密码字段进行加密 (如最常见的MD5加密) , 这不仅仅是为了隐藏用户信息, 尊重用户隐私, 更重要的是提高系统的安全性。也就是在程序中要对用户输入的信息进行检验, 以达到SQL攻击的防御效果。目前这种检验方法一般有2种:替换或删除敏感字符串, 在服务器正式处理前对提交数据进行检验。
(3) SQL Server安全配置。用于程序连接数据库的用户不应使用服务器角色组, 而应使用数据库用户角色组成员。SA级别的权限是不能随便配置的, 黑客SQL注入得手后调用xp_cmdshell命令就可以得到系统的最高权限。最好的方法是只给予db_Reader和db_Writer权限, 遇到有需要备份的用户最好另行新建用户。SQL Server可以精确地设置某一数据库中各个表的select、update、delete等操作的权限, 开发人员应根据应用系统的不同功能要求, 合理地配置好这些权限。
网络攻击技术与防范技术研究 第8篇
美国互联网调查机构日前发布研究报告称, 中国现有网民一亿三千七百万, 在世界上仅次于美国。近年, 中国的网民增长速度超过美国, 预计未来几年内, 网民的绝对数量也将赶超美国。
随着互联网的飞速发展, 特别是电子商务、电子政务、金融电子化进程的不断深入, 人们对信息的依赖程度也越来越强, 信息的安全问题日益突出, 根据权威机构调查互联网网站存在以下安全问题:网站被篡改、主机被植入木马、网络仿冒事件、网页恶意代码事件、僵尸网络。
其中, 网络仿冒事件危害力极大。在美国, 2008年因域名仿冒等网络钓鱼造成的损失大约是40亿美元, 并以25%的速度递增。2008年12月份中国互联网调查报告表明, 只有27.6%的网民认为在网上进行交易是安全的。
因此, 对各种网络攻击行为所共有的关键特征进行分析、提取, 并根据其不同特点进行分类、并提出相对应的防范方法对于人们认识、防范网络攻击具有重要意义。
2 常见网络攻击技术的原理和手段
2.1 针对网络协议展开的攻击
网络协议在设计之初并没有考虑到协议的安全性能, 但随着互联网的发展, 以及各式各样针对协议的攻击来看, 发现一些攻击正是利用了协议的特点。如以下几种攻击方式:
TCP SYN拒绝服务攻击:一般情况下, 一个TCP连接的建立需要经过三次握手的过程, 利用这个过程, 一些恶意的攻击者可以进行所谓的TCP SYN拒绝服务攻击:首先, 攻击者向目标计算机发送一个TCP SYN报文;然后, 目标计算机收到这个报文后, 建立TCP连接控制结构 (TCB) , 并回应一个ACK, 等待发起者的回应;而发起者则不向目标计算机回应ACK报文, 这样导致目标计算机一致处于等待状态。因此, 目标计算机如果接收到大量的TCP SYN报文, 而没有收到发起者的第三次ACK回应, 会一直等待, 处于这样尴尬状态的半连接如果很多, 则会把目标计算机的资源 (TCB控制结构, TCB, 一般情况下是有限的) 耗尽, 而不能响应正常的TCP连接请求。
ICMP洪水攻击:正常情况下, 为了对网络进行诊断, 一些诊断程序比如PING等, 会发出ICMP响应请求报文 (ICMP ECHO) , 接收计算机接收到ICMP E-CHO后, 会回应一个ICMP ECHO Reply报文。而这个过程是需要CPU处理的, 有的情况下可能消耗掉大量的资源。这样如果攻击者向目标计算机发送大量的ICMP ECHO报文 (产生ICMP洪水) , 则目标计算机会忙于处理这些ECHO报文, 而无法继续处理其它的网络数据报文, 这也是一种拒绝服务攻击 (DOS) 。
UDP洪水攻击:原理与ICMP洪水类似, 攻击者通过发送大量的UDP报文给目标计算机, 导致目标计算机忙于处理这些UDP报文而无法继续处理正常的报文。
泪滴攻击:对于一些大的IP包, 需要对其进行分片传送, 这是为了迎合链路层的MTU (最大传输单元) 的要求。比如, 一个4500字节的IP包, 在MTU为1500的链路上传输的时候, 就需要分成三个IP包。在IP报头中有一个偏移字段和一个分片标志 (MF) , 如果MF标志设置为1, 则表面这个IP包是一个大IP包的片断, 其中偏移字段指出了这个片断在整个IP包中的位置。例如, 对一个4500字节的IP包进行分片 (MTU为1500) , 则三个片断中偏移字段的值依次为:0, 1500, 3000。这样接收端就可以根据这些信息成功的组装该IP包。如果一个攻击者打破这种正常情况, 把偏移字段设置成不正确的值, 即可能出现重合或断开的情况, 就可能导致目标操作系统崩溃。比如, 把上述偏移设置为0, 1300, 3000。这就是所谓的泪滴攻击。
2.2 针对系统漏洞展开攻击
系统漏洞是指应用软件或操作系统软件在逻辑设计上的缺陷或在编写时产生的错误, 这个缺陷或错误可以被不法者或者电脑黑客利用, 通过植入木马、病毒等方式来攻击或控制整个电脑, 从而窃取用户电脑中的重要资料和信息, 甚至破坏系统。如Windows XP默认启动的UPNP服务就存在严重安全漏洞。UPNP (U-niversal Plug and Play) 体系面向无线设备、PC机和智能应用, 提供普遍的对等网络连接, 在家用信息设备、办公用网络设备间提供TCP/IP连接和Web访问功能, 该服务可用于检测和集成UPNP硬件。UPNP协议存在的安全漏洞, 使攻击者可非法获取任何Windows XP的系统级访问, 从而进行攻击, 甚至可通过控制多台XP机器发起分布式的攻击。
其次, 服务拒绝漏洞:Windows XP支持点对点的协议 (PPTP) , 是作为远程访问服务实现的虚拟专用网技术。在用于控制建立、维护和拆开PPTP连接的代码段中存在未经检查的缓存, 导致Windows XP的实现中存在漏洞。通过向一台存在该漏洞的服务器发送不正确的PPTP控制数据, 攻击者可损坏核心内存并导致系统失效, 中断所有系统中正在运行的进程。该漏洞可攻击任何一台提供PPTP服务的服务器, 对于PPTP客户端的工作站, 攻击者只需激活PPTP会话即可进行攻击。相对安全的Linux系统也存在着漏洞如:Linux Util-Linux Login Pam (权限提升漏洞) util-linux软件包中提供了很多标准UNIX工具, 例如login。它存在一个问题可允许本地用户提升权限。如果某些用户的login访问受到pam_limits控制的话, 就可能导致一些不可预料的结果:登录的用户可能获取控制台或者系统用户的权限。
2.3 其它攻击方式
WWW的欺骗技术:在网上用户可以利用IE等浏览器进行各种各样的WEB站点的访问, 如阅读新闻、咨询产品价格、订阅报纸、电子商务等。然而一些用户可能不会想到有这些问题存在:正在访问的网页已经被黑客篡改过, 网页上的信息是虚假的!例如黑客将用户要浏览的网页的URL改写为指向黑客自己的服务器, 当用户浏览目标网页的时候, 实际上是向黑客服务器发出请求, 那么黑客就可以获得一些如帐号、密码等信息。
电子邮件攻击:电子邮件攻击主要表现为两种方式。一是电子邮件轰炸和电子邮件“滚雪球”, 也就是通常所说的邮件炸弹, 是指用伪造的IP地址和电子邮件地址向同一信箱发送数以千计、万计甚至无穷多次的内容相同的垃圾邮件, 致使受害人邮箱被“炸”, 严重者还会给电子邮件服务器操作系统带来危险, 甚至瘫痪;二是电子邮件欺骗, 攻击者佯称自己为系统管理员 (邮件地址和系统管理员貌似相同) , 这类欺骗只要用户提高警惕, 一般危害性不是太大。
放置特洛伊木马程序:特洛伊木马程序可以直接侵入用户的电脑并进行破坏, 它常被伪装成工具程序或者游戏等诱使用户打开带有特洛伊木马程序的邮件附件或从网上直接下载, 一旦用户打开了这些邮件的附件或者执行了这些程序之后, 它们就会在自己的计算机系统中隐藏一个可以在Windows启动时悄悄执行的程序。当您连接到因特网上时, 这个程序就会通知黑客, 来报告您的IP地址以及预先设定的端口。黑客在收到这些信息后, 再利用这个潜伏在其中的程序, 就可以任意地修改您的计算机的参数设定、复制文件、窥视你整个硬盘中的内容等, 从而达到控制计算机的目的。
3 防范方法和技术
在对网络攻击进行分析和识别的基础上, 我们可以制定有针对性的防御措施。首先, 应该明确安全对象, 设置强有力的安全防护体系;其次要预防为主, 将重要的数据进行备份并时刻监视系统的运行状况, 针对以上的网络安全问题, 提出以下建议:
3.1 提高安全意识
(1) 不要随意打开来历不明的电子邮件及文件和不太了解的程序, 如“特洛伊”类黑客程序就需要骗你运行。 (2) 从网上下载的软件、游戏等, 必须通过杀毒软件扫描后方可使用。 (3) 密码设置尽可能使用大小写字母加数字加特殊字符混排, 单纯的英文或者数字很容易穷举。将常用密码不同设置, 防止被人查出一个, 连带到重要密码, 重要密码最好经常更换。 (4) 及时下载安装最新系统补丁程序。 (5) 不随便运行 (下转110页) (上接19页) 黑客程序, 许多此类程序运行时会发送你的个人信息。 (6) 在基于HTML的BBS上, 如发现提交警告, 先查看源代码, 很可能是骗取密码的陷阱。
3.2 使用防毒、防黑等防火墙软件并及时更新
防火墙是一个用以阻止网络中黑客访问某个机构网络的屏障, 也可称之为控制进/出两个方向通信的门槛。在网络边界上通过建立的相应网络通信监控系统来隔离内部和外部网络, 以阻挡外部网络的侵入。
3.3 设置代理服务器, 隐藏并保护自已的IP地址
事实上, 即便你的机器上被安装了木马程序, 若没有你的IP地址, 攻击者也是没有办法的, 而保护IP地址的最好方法就是设置代理服务器。代理服务器能起到外部网络申请访问内部网络的中间转接作用, 其功能类似于一个数据转发器, 它主要控制哪些用户能访问哪些服务类型。当外部网络向内部网络申请某种网络服务时, 代理服务器接受申请, 然后它根据其服务类型、服务内容、被服务的对象、服务者申请的时间、申请者的域名范围等来决定是否接受此项服务, 如果接受, 它就向内部网络转发这项请求。
由于黑客经常会针对特定的日期发动攻击, 计算机用户在此期间应特别提高警戒。对于重要的个人资料做好严密的保护, 并养成资料备份的习惯, 可使用痕迹清除工具清理磁盘, 也可将需要留存的资料刻录成光盘保管。
参考文献
[1]张涛, 董占球.网络攻击行为分类技术的研究[J].计算机应用, 2007.24 (4) :154-118.
[2]胡建伟, 汤建龙, 杨绍全.网络对抗原理[M].西安:西安电子科技大学出版社, 2004:95-140.
ARP攻击与防范措施研究 第9篇
随着通信技术和互联网技术的发展,人们在享受网络带来便利的同时,各种各样的黑客攻击接踵而来,网络安全问题也变得越来越突出。因此,如何有效地防范各种攻击,增强网络安全性是一项重要的课题。欺骗类攻击在主动攻击中是非常普遍的,ARP欺骗作为一种典型的欺骗类攻击,由攻击主机通过发送伪造的ARP应答来更新目标主机的ARP缓存,从而使自身赢得目标主机的信任,然后再实施有效攻击或非法监听网络数据包,造成目标主机被攻破或机密信息泄露等一系列恶性后果。
1 ARP协议
ARP协议是“Address Resolution Protocol”(地址解析协议)[1]的缩写。在以太网中传输的数据包是以太包,而以太包的寻址是依据其首部的物理地址(MAC地址)。仅仅知道某主机的逻辑地址(IP地址)并不能让内核发送一帧数据给此主机,内核必须知道目的主机的物理地址才能发送数据。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
为了提高效率,ARP使用了高速缓存技术(Cache)[2],即在主机中保留一个专用的内存区,存储最近一段时间内获得的IP-MAC映射。在发送报文之前,为了获得目标IP地址对应的MAC地址,会首先在高速缓存中查找相应的MAC地址,如果找不到,则发送一个目的MAC地址为FF:FF:FF:FF:FF:FF(即广播地址)的ARP请求数据包,请求地址解析。主机B要向主机A建立通信连接,当主机B的ARP缓存中没有主机A的IP-MAC映射记录时,主机B在网络中广播ARP请求数据包,其意义是“如果你有此IP地址,请告诉我你的MAC地址”。该数据包被本地网段的所有主机(主机A、C、D)接收,这些主机将主机B的IP地址和对应MAC地址保存在各自的ARP缓存中;同时主机A发现该数据包中的目的IP地址与自身IP地址一致,对该数据包响应,响应报文中有主机A的MAC地址:MAC A;其他主机(主机C、D)不响应。主机B接收到ARP响应后获得主机A的IP-MAC映射,刷新ARP缓存。如图一所示。
2 ARP协议的漏洞
ARP协议虽然是一个高效的数据链路层协议,但是作为一个局域网协议,它是建立在各个主机之间相互信任基础上的,因此存在一些安全问题:
(1)直接动态更新缓存,这是ARP协议的特色之一,但也是安全问题之一,由于正常的主机间的MAC地址刷新都是有时限的,这样假冒者如果在下次更新前成功地修改了被攻击者的地址缓存,就可以进行假冒攻击了。
(2)ARP请求以广播方式进行。这个问题是不可避免的,因为正是由于主机不知道对方的MAC地址,才需要进行ARP广播请求的。这样,攻击者就可以伪装ARP应答,与广播者真正要同新的主机进行竞争。
(3)可以随意发送ARP应答包。根据RFC的规定,任何主机即在没有请求的时候也可以做出应答。只要应答是有效的,接收到ARP应答包的主机就无条件的根据应答包的内容刷新本机的高速缓存。
(4)接收到ARP应答包的ARP缓存没有认证机制。一般来讲,一个局域网内的主机是同属于一个组织的,主机间的通信是相互信任,出于传输效率上的考虑,在数据链路层就没做安全上的考虑。
这些都为ARP欺骗提供了条件[3]。
3 ARP攻击
根据病毒攻击目标的不同,ARP攻击分为两种,一种为主机型ARP欺骗;另一种为网关型ARP欺骗。
3.1 主机型ARP欺骗
当目标发送ARP响应时,会完全相信ARP响应来自于正确的设备。这样,当主机B发送ARP请求以获得主机A的MAC地址时,在A响应前,主机C以某个IP-MAC映射对作出响应,则主机B的缓存设置了错误的MAC地址,从而实现ARP欺骗。如图二所示。
3.2 网关型ARP欺骗
网关型ARP欺骗和ARP欺骗的原理一样,报文中的源IP和源MAC均为虚假的,或错误的网关IP和网关MAC对应关系。它的主要目的不是窃取报文,而是扰乱局域网中合法PC中保存的ARP表,使得网络中的合法PC无法正常上网,通讯中断。假设一台PC B要访问外网,网关IP192.168.10.1对应的MAC地址为MAC A,当PC B发送ARP请求以获得网关的MAC地址时,在响应前,攻击者通过发包工具发出ARP响应,告诉:192.168.10.1对应的MAC地址为MAC X,如图三所示,则PC B的缓存表刷新,设置了错误的MAC地址。最终PC B由于找不到正确的网关,所有访问外网的数据都无法得到回应,如图四所示。
4 ARP攻击防范措施
由于ARP欺骗是利用网络协议本身固有的缺陷而进行的,若对协议进行修改会破坏它与基于TCP/IP网络系统的兼容性,所以完全防御ARP欺骗十分困难。因此,可采取以下措施从一定程度上提高网络的安全性。
4.1 配置静态表
ARP欺骗产生的先决条件是ARP表是动态更新的[4],对网段上主机进行IP地址和MAC地址的登记,禁止动态更新缓存。当执行欺骗的应答到达主机时就不能更新ARP缓存,无法进行欺骗从而达到防范目的。但该方法主要应用于对安全性要求较高且较小的局域网,其操作依靠人工,工作量大。
4.2 制定缓存更新策略
由于ARP协议在无请求的情况下任意接收应答并更新缓存,这为欺骗创造了条件,因此可制定ARP缓存更新规则。规定接收ARP协议报文的顺序是先发送ARP请求然后才能接收与此匹配的ARP应答报文,对到达的无ARP请求或者不匹配的应答报文一律丢弃,这样可以有效防止攻击方利用ARP欺骗报文更新缓存达到欺骗目的。
4.3 信息加密
基于ARP欺骗原理,监听不易为通信双方察觉。如果通信双方对信息进行加密,即便信息被攻击者获取也因没有方法解密而无法获得有用信息,从而保证网络传输的安全性。
4.4 VLAN技术
通过划小VLAN来抑制广播域。通常需要将每个端口划分成一个单独的VLAN,将上连端口设置成链路聚合,设置每一个接入点都处在一个单独的VLAN。这种方式可以将ARP欺骗发生的范围减到最小,其优点是无需对计算机作任何设置,安全性较高。缺点是同一网段的各节点之间不能互相访问,且要求网络设备具有较完善的VLAN功能[5]。
4.5 在服务器端使用检测软件
利用监测软件实时分析网络的状态,一旦有主机在局域网内进行ARP欺骗攻击,服务器端通过监测软件可以立即发现,然后对染毒主机的端口进行封杀,并且告知机主。
4.6 使用专用的ARP服务器
指定局域网内部一台机器作为专用的ARP服务器,专门用于管理可信范围内的所有主机的IP地址和MAC地址映射表[6]。此服务器通过查询自己的ARP缓存的静态记录并以被查询主机的名义响应局域网内部的ARP请求,同时设置局域网内部的其他主机只能使用来自ARP服务器的ARP响应。
4.7 使用专门用于防范ARP欺骗的产品或软件
专门针对ARP欺骗的产品有Cisco路由器、Qno侠诺路由器等。安装ARP防火墙,可以防止来自外部的ARP攻击,也可防止本机向外发送ARP攻击[7]。专门针对ARP欺骗的软件有ARP防火墙、360ARP防火墙、Anti ARP等,此外有些杀毒软件的防火墙也带有防ARP欺骗的功能,使用时把此功能开启。此方法主要作为几种防范方式的有效补充使用。
4.8 利用交换机端口ARP检查安全功能
启用交换机端口安全模式,打开ARP报文检查ARP报文中的源IP和源MAC是否和绑定的一致,可有效防止安全端口上欺骗ARP,防止非法信息点冒充网络关键设备的IP(如服务器),造成网络通讯混乱。设置对端口FA0/1+IP+MAC地址三者绑定,同时启用ARP检测功能,步骤如下:
5 结束语
网络欺骗攻击作为一种非常专业化的攻击手段,给网络安全管理者带来了严峻的考验。ARP欺骗是一种典型的欺骗攻击类型,文中通过分析ARP协议的漏洞,探讨了ARP欺骗攻击的原理,然后提出了几种防范措施。
综上可以看出,防范ARP欺编攻击的几种方式各有其特点,应该根据网络的实际情况来选择合适的一种或几种防范方式,这样才能达到有效的防范攻击的目的。
参考文献
[1]谢希仁.计算机网络(第五版)[M].北京:电子工业出版社,2008.
[2]Trabelsi,Z,El-Hajj,W.Preventing ARP Attacks Using a Fuzzy-Based Stateful ARP Cache[C].Communi-cations,2007.ICC’07.IEEE International Conference on24-28June2007,Page(s):1355-1360.
[3]Meng Xiaoming.Detecting and Precaution of Network Spoofing Base on ARP[J].Information Tech-nology,2005,(5):32-36.
[4]牛少彰,江为强.网络的攻击与防范理论与实践[M].北京:北京邮电大学出版社,2006.
[5]傅军.基于ARP协议的欺骗及预防[J].中国科技论文在线,2007,(1):55-58.
[6]易云飞,阮忠,林芳.ARP协议漏洞分析[J].软件导刊,2008,7(4):154-156.
无线路由器ARP攻击故障排除技巧 第10篇
随着现在社会信息技术的飞速发展,如今企业网络办公化也正式步入了无线网的领域中。构建无线网最大的好处就是组网无需布线,使用便捷、经济。所以对多数企业来说,无疑是组网方案的最佳选择。
大量的无线路由器被用于企业中,使得针对无线网络的故障诊断和安全保障变得与有线网络一样重要。
在企业无线网办公中经常会出现一些使用手册上未涉及到的疑难和故障,有时难以应付,无法解决。下面就无线网络中由路由器引发的典型故障进行分析,并提供解决方案。
连接错误线路不通
网络线路不通有很多原因造成,但首先要检查的是连接配置上有无错误。
在确保路由器电源正常的前提下首先查看宽带接入端。路由器上的指示灯可以说明宽带线路接入端是否正常,由说明书上可以辨认哪一个亮灯为宽带接入端及用户端,观察其灯闪亮状态,连续闪烁为正常,不亮或长亮不闪烁为故障。我们可以换一根宽带胶线代替原来的线路进行连接。
如果故障依旧,请查看路由器的摆放位置与接收电脑的距离是否过远或中间有大型障碍物阻隔。这时请重新放置路由器,使无线路由器与接收电脑不要间隔太多障碍物,并使接收电脑在无线路由器的信号发射范围之内即可。
无线网卡的检查也必不可少,可以更换新的网卡并重新安装驱动程序进行调试,在网卡中点击“查看可用的无线连接”刷新“网络列表”后设置网卡参数,并在“属性”中查看有无数据发送和接收情况,排除故障。
当然路由器自身的硬件故障也是导致线路不通的直接原因,但这并不是我们所能解决的范围,应及时联系厂商进行维修或更换。
设置不当无法连接
“设置”可以分为计算机设置和路由器设置两个方面:计算机的设置相对简单,点击进入“网上邻居”属性,开启“无线网络连接”,然后设置“IP地址”、“子网掩码”及“网关”,只要使计算机的IP地址与无线路由器的lP地址在同一网段即可。“网关”的设置可以参见网卡说明书中所述,一般情况下与路由器IP地址相同。
路由器的设置相对较为专业、复杂些。首先在系统浏览器中输入无线路由器lP地址,在弹出的登录界面中输入路由器的管理员登录名及密码即可进入设置界面。此时需要检查网络服务商所给你的宽带账号及口令是否正确,如不正确,更正后尝试连接,如果连接后仍无法打开页面请点击进入路由器中的“安全设置”选项,查看是否开启“网络防火墙”、“IP地址过滤”以及“MAC地址过滤”选项,并做更正和设置。排除无法开启网络的故障。
网络攻击导致联网异常
ARP攻击以及非法入侵未设防的无线局域网已经是现在导致联网异常的典型案例了。由于安全设置的疏忽以及后期安全防护的不足,导致少数具有恶意的黑客对企业的重要信息及保密数据造成了极大的危害。
ARP攻击会造成网络lP冲突,数据的丢失及溢出,更有甚者会导致网络瘫痪。这些现象对企业组网的威胁都是很大的。
首先进入“带有网络的安全模式”,在无线网卡属性处更换电脑的IP地址,之后查看是否可以联网。另外购买安装专业的杀毒软件及网络防火墙是比较捷径的方法之一。
其次进入路由器“安全设置”选项进行高级设置。现在的大部分无线路由器都具有WEP的密码编码功能,用最长128bit的密码键对数据进行编码,在无线路由器上进行通信,密码键长度可以选择40bit或128bit。利用MAC地址和预设的网络ID来限制哪些无线网卡和接入点可以进入网络,完全可以确保网络安全。对于非法的接收者来说,截听无线网的信号是非常困难的,从而可以有效地防范黑客的入侵破坏和非法用户恶意的网络攻击。
最后要注意,在没有特殊需要或不具有专业技能的情况下禁止开启路由器中的“远程WEB管理”功能选项。
路由器部分功能失灵无法使用
这个问题大多存在于一些老款的无线路由器中,当我们在配置路由器高级功能选项的时候,在反复确认连接无误的情况下就是有部分功能无法开启使用,这时你也许第一想到是否是硬件出了故障,其实不然。
首先我们要查看一下路由器系统的版本,在查阅无线路由器说明书后,看该功能是否支持这个版本的路由器系统。路由器的系统通常有许多版本,每个版本支持不同的功能。如果你当前的软件版本不支持这个功能,那就应该找到相应的软件,先进行升级。
点击进入无线路由器的“系统工具”选项,进入后选择“软件升级”,此时在对话界面中会显示出当前的软件版本和硬件版本,在弹出的对话框中输入“文件名”(即系统升级的文件名)和“TFTP服务器IP”后点击“升级”即可。
SQL注入攻击与防范技术 第11篇
关键词:SQL注入,黑客,网站安全
引言
SQL注入攻击可以算是互联网上最为流传最为广泛的攻击方式, 许多企业网站先后遭此攻击。所谓SQL注入 (SQLInjection) , 就是利用程序员对用户输入数据的合法性检测不严或不检测的特点, 故意从客户端提交特殊的代码, 从而收集程序及服务器的信息, 查询数据库。
1 主要的攻击方法实现的介绍
(1) 一些网站的管理登陆页面对输入的用户名和密码没有做SQL过滤, 导致网站被攻击。
这里假设一个没有严格过滤SQL字符的管理登陆界面。事实上黑客并不需要知道用户名和密码, 那么黑客只需在用户名里面输入"'or 1=1--", 密码任意输入, 提交后, 系统认为用户名为空 ('') 或者 (1=1恒成立) , 后面不执行 (--) , 就无需验证密码直接进入后台。
(2) 下面的查询语句在有注入漏洞的服务器上被恶意利用也会导致严重后果。
String SqlStr=”Select*from customers where CompanyName like'%"+text Box1.Text+"%"';
这样的字符串连接可能会带来灾难性的结果, 比如用户在文本框中输入:
a'or 1=1
那么Sql Str的内容就是:
select*from customers where CompanyName like'%a'or 1=1--%'
这样, 整个customers数据表的所有数据就会被全部检索出来, 因为1=1永远true, 而且最后的百分号和单引号被短横杠注释掉了。
如果用户在文本框中输入:
a'EXEC s P_addlogin'John', '123'EXEC s P_addsrvrolemember'John', 'sysadmin'--
那么Sql Str的内容就是:
select*from customers where CompanyName like'%a'EXEC sp_addlogin'John', '123'
EXEC sp_addsrvrolemember'John', 'sysadmin'--
该语句是在后台数据库中增加一个用户John, 密码123, 而且是一个sysadmin账号, 相当于sa的权限。
如果用户这时在文本框中输入:a'EXECxp_cmdShell ('format c:/y') --运行之后就开始格式化C盘!
(3) 通过注入获得管理员账户密码。
一个正常的网址http://localhost/lawjia/show.asp?ID=101, 将这个网址提交到服务器后, 服务器将进行类似Select*from表名where字段="&ID的查询 (ID即客户端提交的参数, 本例是即101) , 再将查询结果返回给客户端。
当某人知道网站管理员帐号存储在表login中, 其用户名为admin, 如果想知道管理员密码, 此时他可从客户端接着提交这样一个网址:
http://localhost/lol/show.asp?ID=101 and (Select password from login where user_name='admin') >0
返回的出错信息如下:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]将varchar值'!@huway**a'转换为数据类型为int的列时发生语法错误。
/lol/show.asp, 第27行
黑体字部分即为返回密码
(4) 通过工具进行注入攻击测试。
如何判断一个网站能否被注入, 首先找到注入点, 像上面提到的“/show.asp?ID=101”就是一个注人点, 很多新闻系统的新闻显示页面、产品发布显示页面都有类似ID=101的标志, 在ID=101后面直接输入and 1=1, 如果没有出错, 仍然返回原先显示页面, 这就是一个注人漏洞, 如果返回您的网址不合法, 显然己经做了SQL过滤。
显然人工猜测表名是一件麻烦事情, 但大多存放管理员的账户的表通常为addmin, guan, login这样简单单词, 通过黑客工具附带字典, 先确定表的名称, 接着猜测字段, 然后穷学查询字段第一位、第二、第三位…, 直到全部出来, 借助工具, 对有注人漏洞网站攻击成功率可达60%以上。注入工具有NBSI、啊D、Domain等。
以上仅是对SQL攻击的粗略分类。但从技术上讲, 如今的SQL注入攻击者们在如何找出有漏洞的网站方面更加聪明, 也更加全面了。出现了一些新型的SQL攻击手段。黑客们可以使用各种工具来加速漏洞的利用过程。
2 防御和检查SQL注入的手段
2.1 使用参数化的过滤性语句
要防御SQL注入, 用户的输入就绝对不能直接被嵌入到SQL语句中。恰恰相反, 用户的输入必须进行过滤, 或者使用参数化的语句。参数化的语句使用参数而不是将用户输入嵌入到语句中。在多数情况中, SQL语句就得以修正。然后, 用户输入就被限于一个参数。下面是一个使用Java和JDBCAPI例子:
PreparedStatement prep=conn.prepareStatement ("SELECT*FROM USERS WHERE PASSWORD=?") ;
prep.setString (1, pwd) ;
总体上讲, 有两种方法可以保证应用程序不易受到SQL注入的攻击, 一是使用代码复查, 二是强迫使用参数化语句的。强迫使用参数化的语句意味着嵌入用户输入的SQL语句在运行时将被拒绝。不过, 目前支持这种特性的并不多。如H2数据库引擎就支持。
2.2 还要避免使用解释程序, 因为这正是黑客们借以执行非法命令的手段。
2.3 防范SQ L注入, 还要避免出现一些详细的错误消息, 因为黑客们可以利用这些消息。要使用一种标准的输入确认机制来验证所有的输入数据的长度、类型、语句、企业规则等。
2.4 使用专业的漏洞扫描工具。但防御SQL注入攻击也是不够的。攻击者们目前正在自动搜索攻击目标并实施攻击。其技术甚至可以轻易地被应用于其它的Web架构中的漏洞。企业应当投资于一些专业的漏洞扫描工具, 如大名鼎鼎的Acunetix的Web漏洞扫描程序等。一个完善的漏洞扫描程序不同于网络扫描程序, 它专门查找网站上的SQL注入式漏洞。最新的漏洞扫描程序可以查找最新发现的漏洞。
3 结束语
建议Web应用程序的程序员们对其代码进行测试并打补丁, 虽然SQL注入漏洞被发现和利用的机率并不太高。但近来攻击者们越来越多地发现并恶意地利用这些漏洞。因此, 在部署其软件之前, 开发人员应当更加主动地测试其代码, 并在新的漏洞出现后立即对代码打补丁, 做为网站管理人员要在Web应用程序开发过程的所有阶段实施代码的安全检查。首先, 要在部署Web应用之前实施安全测试, 这种措施的意义比以前更大、更深远。网站管理人员还应当在部署之后用漏洞扫描工具和站点监视工具对网站进行测试。
参考文献
[1]马宜义.网络安全与病毒防范.上海:上海交通大学院出版社, 2009.
[2]秦志兴, 张凤荔.计算机病毒原理与防范[M].北京:人民邮电出版社, 2007.
路由攻击与防范
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。