1.15 ip地址欺骗
一般情况下,路由器在转发报文的时候,只根据报文的目的地址查路由表,而不管报文的源地址是什么,因此,这样就 可能面临一种危险:如果一个攻击者向一台目标计算机发出一个报文,而把报文的源地址填写为第三方的一个ip地址,这样这个报文在到达目标计算机后,目标计算机便可能向毫无知觉的第三方计算机回应。这便是所谓的ip地址欺骗攻击。
比较著名的sql server蠕虫病毒,就是采用了这种原理。该病毒(可以理解为一个攻击者)向一台运行sql server解析服务的服务器发送一个解析服务的udp报文,该报文的源地址填写为另外一台运行sql server解析程序(sql server 2000以后版本)的服务器,这样由于sql server 解析服务的一个漏洞,就可能使得该udp报文在这两台服务器之间往复,最终导致服务器或
网络瘫痪。
1.16 winnuke攻击
netbios作为一种基本的
网络资源访问接口,广泛的应用于文件共享,打印共享,进程间通信(ipc),以及不同操作系统之间的数据交换。一般情况下,netbios是运行在llc2链路协议之上的,是一种基于组播的
网络访问接口。为了在tcp/ip协议栈上实现netbios,rfc规定了一系列交互标准,以及几个常用的tcp/udp端口:
139:netbios会话服务的tcp端口;
137:netbios名字服务的udp端口;
136:netbios数据报服务的udp端口。
windows操作系统的早期版本(win95/98/nt)的
网络服务(文件共享等)都是建立在netbios之上的,因此,这些操作系统都开放了139端口(最新版本的
windows 2000/xp/2003等,为了兼容,也实现了netbios over tcp/ip功能,开放了139端口)。
winnuke攻击就是利用了
windows操作系统的一个漏洞,向这个139端口发送一些携带tcp带外(oob)数据报文,但这些攻击报文与正常携带oob数据报文不同的是,其指针字段与数据的实际位置不符,即存在重合,这样
windows操作系统在处理这些数据的时候,就会崩溃。
1.17 land攻击
land攻击利用了tcp连接建立的三次握手过程,通过向一个目标计算机发送一个tcp syn报文(连接建立请求报文)而完成对目标计算机的攻击。与正常的tcp syn报文不同的是,land攻击报文的源ip地址和目的ip地址是相同的,都是目标计算机的ip地址。这样目标计算机接收到这个syn报文后,就会向该报文的源地址发送一个ack报文,并建立一个tcp连接控制结构(tcb),而该报文的源地址就是自己,因此,这个ack报文就发给了自己。这样如果攻击者发送了足够多的syn报文,则目标计算机的tcb可能会耗尽,最终不能正常服务。这也是一种dos攻击。
1.18 script/activex攻击
script是一种可执行的脚本,它一般由一些脚本语言写成,比如常见的java script,vb script等。这些脚本在执行的时候,需要一个专门的解释器来翻译,翻译成计算机指令后,在本地计算机上运行。这种脚本的好处是,可以通过少量的程序写作,而完成大量的功能。
这种script的一个重要应用就是嵌入在web页面里面,执行一些静态web页面标记语言(html)无法完成的功能,比如本地计算,数据库查询和修改,以及系统信息的提取等。这些脚本在带来方便和强大功能的同时,也为攻击者提供了方便的攻击途径。如果攻击者写一些对系统有破坏的script,然后嵌入在web页面中,一旦这些页面被下载到本地,计算机便以当前用户的权限执行这些脚本,这样,当前用户所具有的任何权限,script都可以使用,可以想象这些恶意的script的破坏程度有多强。这就是所谓的script攻击。