(3)拒绝式攻击: 1.8问:通常有哪些漏洞? (1):CGI漏洞:编写CGI程序需要考虑得非常完善才有可能避免安全威胁。入侵者经常要尝试访问系统中的一些具有知名漏洞的CGI程序,以期寻找到突破口。这些CGI程序有:TextCounter、GuestBook、EWS、info2www、Count.cgi、handler、webdist.cgi、php.cgi、files.pl、nph-test-cgi、nph-publish、AnyFORM、FORMMail。如果我们没有使用这些文件却发现有人正在频繁地访问其中之一,就可以清楚地断明一个入侵行为正在进行了。
入侵检测系统IDS FAQ
1.5问:入侵者如何获取口令?
(1)、监听明文口令信息 大量的通讯协议比如Telnet、Ftp、基本HTTP都使用明文口令,这意味着它们在网络上是赤裸裸地以未加密格式传输于服务器端和客户端,而入侵者只需使用协议分析器就能查看到这些信息,从而进一步分析出口令,成为真用户的克隆。
(2)、监听加密口令信息 :当然,更多的通讯协议是使用加密信息传输口令的。这时,入侵者就需要借助字典或者采用暴力攻击法来解密了。注意,我们并不能察觉到入侵者的监听行为,因为他在暗处,是完全被动的,没有发送任何信息到网络上,入侵者的机器仅被用于分析这些口令信息。
(3)、重放攻击(Replay attack) 这又是一种间接的攻击方式,就是说:入侵者不必对口令进行解密,需要的是重新编写客户端软件以使用加密口令实现系统登录。
(4)、窃取口令文件: 口令文件通常都保存在一个单独的文件中,例如UNIX系统的口令文件是/etc/passwd(也可能是那个文件的镜像),WinNT系统的口令文件是/winnt/system32/config/sam。入侵者一旦获取了口令文件,就可以使用破解程序发现其中的弱口令信息。
(5)、观察 用户可能由于设置的口令复杂难记而将它写在一张纸上压在键盘下随时查看,或者在输入口令的时候不管身后有没有站着一位“看客”。入侵者的搜索力与记忆力都非常好,这些操作习惯对他们来说简直就是轻松练兵。所以,别忽视入侵者的眼睛!
(6)、社交工程 社交工程就是指采用非隐蔽方法让用户把密码说出来.例如你突然接到一个电话,我是某某,现在需要检测你的网络,你的密码多少。很多人就会不加考虑的把密码说出来。所以很多公司要求员工无论任何情况都不能说出自己的密码。
1.6问:典型的入侵步骤?
(1)信息的收集 :知己知彼,百战不殆。入侵者攻击的第一步就是尽一切可能对攻击目标进行信息收集以获取充足的资料。采取的方法包括:使用whois工具获取网络注册信息;使用nslookup或dig工具搜索DNS表以确定机器名称;确定了攻击目标的基本属性(站点地址、主机名称),入侵者将对它们进行深入剖析。方法有:遍历每个Web页面搜索是否存在CGI漏洞;使用ping工具一一探寻“活”着的机器;对目标机器执行UDP/TCP扫描以发现是否有可用服务。这些行为都属于正常的网络操作,还不能算作入侵行为,但是NIDS系统将能够告诉管理者“有人正在撼动门把手……”
(2)、漏洞利用:现在到了开始动手的时候了!破坏花样实在繁多,在此择优列举如下:通过在输入项目中写入壳命令字符串(shell command)来考验CGI脚本的安全性;通过发送大量数据以确定是否存在臭名昭著的缓冲区溢出漏洞;尝试使用简单口令破解登录障碍。当然,混合使用多种方式是攻占成功的不二法门。
(3)安装后门,清除日志:对于入侵者而言,一旦成功地入侵了网络中的一台机器,入侵者现在要做的就是隐藏入侵痕迹并制造日后再攻的后门,这就需要对日志文件或其他系统文件进行改造,或者安装上木马程序、或者替换系统文件为后门程序。这时,SIV(系统完整性检测)系统会注意到这些文件的变化。由于内部网络中的安全措施通常都比较少,进一步地,入侵者将以这第一台机器作为跳板,攻击网络中的其他机器,寻找下一个安身之家。
以上讨论是的有目的入侵者的通常行为。另外还有一种是无目的的入侵,仅仅是初级入侵者为了练手.用扫描器扫描一个网段地址;搜索其上是否有指定的漏洞;如果有,根据已知的漏洞利用方法进行攻击。
1.7问:入侵有哪些特征?
(1)、探测 探测方式有很多,包括ping扫描、探测操作系统类别、系统及应用软件的弱帐号扫描、侦探电子邮件、TCP/UDP端口扫描、探测Web服务器CGI漏洞等。
(2)、漏洞利用 指入侵者利用系统的隐藏功能或漏洞尝试取得系统控制权。
(2)Web服务器漏洞:比如文件名中包含一系列“../”字符串从而可以访问系统中的任意文件;URL路径后添加上“::$DATA”就可以查看脚本源代码。
(3)Web浏览器漏洞:这方面的漏洞涉及面同样很广,冲浪者绝不能掉以轻心。比如可能导致缓冲区溢出或执行.LNK命令的URL、畸形的HTTP header内容、MIME类型溢出(例如Netscape浏览器的命令)、总是有漏可乘的javascript脚本(例如利用文件上传功能创建后门程序)、偶尔犯些错误的Java代码以及现在更为厉害、更为猖獗的ActiveX组件。
(4)STMP漏洞:比如利用缓冲区溢出攻击STMP、使用VRFY命令搜索用户名称。
(5)IMAP漏洞:IMAP即Internet信息控制协议(Internet Message Access Protocol),是指从邮件服务器上获取Email信息或直接收取邮件的协议。传统的POP3收信过程中,用户无法得知邮件的具体信息,只有在邮件全部下载到硬盘后,才能慢慢地浏览或删除,用户几乎没有对邮件的控制决定权。IMAP解决的就是这个问题。但是许多流行的IMAP服务器都存在重大漏洞。
(6)IP地址欺骗:由于路由选择不需要判断来源地址,因此入侵者就可将IP数据包的来源地址替换为伪造地址以期隐藏其攻击地点。而且,由于是伪造的来源地址,入侵者也不会接收到目标机器的返回通讯信息,真正做到了“攻不还手”。
(7)缓冲区溢出:除了前面提及的缓冲区溢出种类外,还有DNS溢出(超长DNS名字发送给服务器)、statd溢出(超长文件名)。
3、DoS或DDoS(拒绝服务攻击或分布式拒绝服务攻击)
这种攻击是真正的“损人不利己”,不需要别人的数据,只想等别人出错看热闹。这种攻击行为越来越多,是不是因为这种人也越来越 ...... 常见的DoS有死亡之Ping、SYN湮没、Land攻击。
2.1问:检测入侵有哪些方式?
(1)、异常行为检测 最普通的检测入侵的方式是对异常行为进行统计,并与设备的基准行为进行对比以判断是否存在入侵。例如,检查CPU利用率是否猛烈增长、磁盘空间是否一下子缩小、用户登录失败次数增加、文件锁定过多等等。这种检测方式的优点是不必了解异常行为背后的黑幕就能判断出发生了入侵,所谓不见其人已闻其声。
(2)、特征行为检测 大多数的商业产品是基于特征标志对入侵行为进行检测的,就是说,采用对号入坐的方式,一旦发现了与特征数据库中匹配的行为,就认为发生了某种入侵。例如,如果发现网络上有信息包含有字符串“/cgi-bin/phf?”,就可以初步判断有人正在试图利用Web服务器上的phf CGI漏洞。注意,这种方式下的特征数据库非常关键,根据新入侵行为及特征的出现,要不断地更新补充,是活水不能是死水。
问:NIDS系统如何对通讯信息进行特征比较?
通讯信息就是穿越网络的IP数据包流,NIDS系统能够捕获它们并利用其自身的TCP/IP堆栈对它们重新组织进行分析。其中使用到的技术包括:
(1)、协议栈验证 协议栈就是一些以层次结构组成的协议,例如TCP/IP协议栈。协议栈中的每一层都为它的上层协议提供功能,而向其下层协议要求服务。许多入侵行为比如“死亡之Ping”、“TCP隐蔽扫描”都是以反规则使用底层IP、TCP、UDP和ICMP协议的方式攻击系统的,因此,建立协议栈验证系统对非法数据包进行标记十分必要。
(2)、应用协议验证 许多入侵还使用非法应用协议进行攻击,比如WinNuke攻击就使用到NetBIOS应用协议。因此,NIDS系统必须有能力重新实现广泛的应用层协议,从而有效地检测可疑或非法行为。
(3)、创建新日志事件 通过记录一个机器使用的所有应用层协议,NIDS系统就可用于扩展网络管理软件的审计功能。这样,下游事件日志系统例如Win2K事件管理器、UNIX的系统日志、SNMP TRAP等等就能够将它们与其他网络上的其他事件进行关联分析。
文章来源于领测软件测试网 https://www.ltesting.net/
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073