通过入侵行为分析IDS应用 (通过入侵行为的英文)

教程大全 2025-07-15 09:14:58 浏览

,即入侵检测系统其关键就在于检测能力。简单的说,设立的目的就是当场检测到网络入侵事件的发生。本篇文章将通过监测恶性入侵性网页浏览行为,分析在企业安全防护中的应用。

就是一个网络上的系统,这个系统包含了下面三个组件:

(1)网络监测组件,用以捕捉在网络线上传递的封包。

(2)接口组件,用以决定监测中的资料传递是否属于恶意行为或恶意的使用。在网络传递时,用来比较的资料样式 (pattern),以监测恶意网络活动。

(3)响应组件,针对当时的事件予以适当的响应。这个响应可以是简单的,例如寄发一个电子邮件讯息给系统管理者,或者是复杂的,例如暂时将违规者的IP地址过滤掉,不要让他连到这个网络来。

如何通过网页监测网络入侵事件

系统不只必须监测各式各样,从大到小,以及各种系列的系统上的网络攻击事件,它还必须能够快速及时地的在第一时间内监测到入侵事件的发生。因此,的数据库以及式样比对(pattern-matching)机制是复杂到令人难以置信的。

要使能够监测通过网页的入侵事件,其中的网络监测组件就必须要能够捕捉所有通过网页通讯端口上,借着HTTP 通讯协议传递的网络资料往来。(注意,SSL的网络交通是完全绕过的网络监测的,因为这些网络交换资料都是经过加密的。)式样比对组件在这里,主要是用于比较URL解析的结果,看看是否符合数据库中的恶意的HTTP回询(request)。

接下来,我介绍如何制作两个快速而简易的 IDS应用软件 ,用来监测可疑的网页回询活动。这些解决方案的目的是在于提供系统管理者,让他们拥有一个特别针对他们网络而设计的监测/响应系统。

制作快速而简易的 IDS应用软件

(1)network Grep 工具

我们先从一个简单的网络监视程序开始,这个程序是用来监测 HTTP 通讯协议的网络资料往来。HTTP回询的特色是,它使用以下的语法:

〈HTTP-Request-Method〉 〈URL〉 HTTP/〈version〉

这个可在Packetfactory入口网站寻获的程序ngrep针对在网络上传递往来的资料,执行正则表示法(regular expression)式样比对。我们可以用以下的指令来利用ngrep拦截并显示所有纯文字形式的 HTTP 资料往来:

#ngrep-iqt“^GET|^HEAD|^TRACE|^POST|^PUT and HTTP”

以上指令中,-iqt 选项是指示ngrep不要区分资料中的大小写,并且只有显示封包中有符合式样比对的资料,以及在显示资料时加上日期以及时间的标题。(注:比对的式样,是基于 GET,HEAD,TRACE,POST,PUT,以及 HTTP 等关键词。欲知更多有关如何在ngrep使用正则表示法,你可以到查看相关资料。)

以上面我们建议的方式使用ngrep再加上运行越来越受欢迎的 Whisker程序,监测地址为 10.1.1.2 的IIS5.0 服务器 平台,我们得到了以下的结果:

T 03:37:30.041739 10.1.1.21:2425 -> 10.1.1.2:80 [AP]HEAD / HTTP/1.0..User-Agent: Mozilla/5.0 [en] (Win95; U)..Referer:close….

T 2001/01/16 03:37:30.108630 10.1.1.21:2426 -> 10.1.1.2:80 [AP]GET /cfdocs/ HTTP/1.0..User-Agent: Mozilla/5.0 [en] (Win95; U)..Cookie: ASPSESSIONIDGQGQGLAC=HDJNBOGBIPOCPNCKOJOPBCFD;path=/..Referer:close….

T 2001/01/16 03:37:31.842452 10.1.1.21:2427 -> 10.1.1.2:80 [AP]GET /scripts/ HTTP/1.0..User-Agent: Mozilla/5.0 [en] (Win95; U)..Cookie: ASPSESSIONIDGQGQGLAC=HDJNBOGBIPOCPNCKOJOPBCFD;path=/..Referer:close….

T 2001/01/16 03:37:31.854206 10.1.1.21:2428 -> 10.1.1.2:80 [AP]GET /scripts/cfcache.map HTTP/1.0..User-Agent: Mozilla/5.0 [en](Win95; U)..Cookie: ASPSESSIONIDGQGQGLAC=HDJNBOGBIPOCPNCKOJOPBCFD;path=/..Referer:close….

T 2001/01/16 03:37:33.644534 10.1.1.21:2429 -> 10.1.1.2:80 [AP]GET /cfcache.map HTTP/1.0..User-Agent: Mozilla/5.0 [en] (Win95; U)..Cookie: ASPSESSIONIDGQGQGLAC=HDJNBOGBIPOCPNCKOJOPBCFD;path=/..Referer:close….

(2)执行式样比对

使用ngrep拦截网络资料往来很简单。然而,分析捕捉到的资料并从中抽取URL则略具难度。因为ngrep将资料输出拆成一行一行的,所以我们必须额外耗费很多精力,去重组输出的资料,并将该资料中的URL与已知的网络攻击行为模式做比对。

此时,我向大家介绍另一个用来监测网页传送的犀利工具软件了。这个软件就叫做urlsnarf,它是由Dug Song写成的dsniff工具软件套件的一部份。urlsnarf 从所拦截的网络资料传送中,捕捉所有的 HTTP 回询,并且将结果以共享日记文件格式(Common Log Format ,CLF)显示出来,这种格式就跟市面上的网页服务器,诸如Apache或者是IIS所用的格式一样。

跟当初我们用ngrep的方式一样,我们使用urlsnarf并且在 10.1.1.2 的服务器上执行Whisker,所得到的结果如下:

# urlsnarfurlsnarf: listening on eth010.1.1.21 – – [16/02/2001:03:58:43 +0530] “HEADHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:43 +0530] “GETHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:45 +0530] “GETHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:45 +0530] “GETHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:48 +0530] “GETHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:50+0530]”GETHTTP/1.0″ – – “” “Mozilla/5.0 [en] (Win95; U)”

10.1.1.21 – – [16/02/2001:03:58:52 +0530] “GETHTTP/1.0” – – “” “Mozilla/5.0 [en] (Win95; U)”

使用urlsnarf唯一的缺点是,它现在的程序是写死的,只监听TCP通讯端口80(纯文字HTTP),3128(MS-proxy)以及8080(generic/squid proxy)。从其它通讯端口传输的HTTP协议资料则完全被忽略。要想改变这种限制,你必须在urlsnarf的原始程序代码中做一些小小的改变。然而,光是urlsnarf所提供的功能,就已经远远的超过它所给我们的限制了。

因为urlsnarf以CLF格式产生日记,我们可以将它的输出结果,转送到任何在网页服务器上使用CLF格式分析日记的日记分析软件。

监测恶性入侵性网页浏览行为

通过urlsnarf的输出,我们可以开始建立式样比对程序,以寻找网络入侵事件。在这里我利用一个简单的Perl程序来跟urlsnarf一起监测一些基本的网络入侵行为,假想体验一下在企业防护中的IDS应用。我们会把urlsnarf的执行结果转传给这个式样比对程序,通过式样比对的方法监测网络入侵行为。

式样比对程序的第一步是,定义一连串入侵性的URL查询。为了简单起见,我们只列出某些URL如下:

%cgis = (”/msadc/msadcs.dll” => “mdac”,“/msadc/Samples/selector/showcode.asp” => “showcode”,“/cgi-bin/guestbook.cgi” => “guestbook”,“/cgi-bin/test-cgi” => “test-cgi”,“/cgi-bin/finger” => “finger”,“/cfdocs/expelval/exprcalc.cfm” => “exprcalc”,“/cgi-bin/phf” => “phf”,“/scripts/samples/search/webhits.exe” => “webhits”,“/scripts/iisadmin/ism.dll” => “ism”,“/scripts/tools/newdsn.exe” => “newdsn”,“/scripts/perl.exe” => “perl_exe”,“/scripts/proxy/w3proxy.dll” => “w3proxy”);

我们使用了%cg集中储存所有我们需要的恶意URL查询式样。在这里,我们也可以从一个含有这些“特征”的档案,动态建立这个查询式样库。 注意,以上的URL本身并无害;然而,它们通常被黑客利用来做恶意的网页攻击的基础。(例如:msdacs.dll就可以被用来破坏 MDAC/RDS)。

下一步,是设定容忍的最低程度,即:如果某个访客查询某个URL超过三次的话,这个访客的IP地址就会被列在黑名单中。在我们的程序里,定义如下:

$threshold = 3;

下一段重要的程序代码,是一个以while叙述开始的循环,这个循环会从urlsnarf读取每一个CLF纪录,并且做分析。为了避免谈到太多Perl程序语言的细节,有关 while 循环的说明就像以下这样:

while(〈 〉) {# # parse incoming log line# $logline = $_;

# # pick out the IP,timestamp andURLFrom theCLFline# $logline =~ /(S+).+?([.+]).+?(”.+?”).+/;# $ip = $1;# $time = $2;# $url = $3;

# # select the resource from the URL# $url =~ /w+s+.*//.+?(/.*)s+.*/;# $resource = $1;

# check if there is a match with theURL

通过入侵行为的英文

变量$resource的值为URL回询中的resource字符串。例如,如果URL为,那么 resource 字符串的值就是 /msadcs/msadcs.dll。

下面是式样比对部分的程序代码:

# check if there is a match with the URLif($cgis{$resource} ne “”) {push(@{ $offender_list{$ip} }, $cgis{$resource});# check if the threshold count is crOSSedif($offence_count{$ip}++ > $threshold) {# response to intrusion detectedprint STDERR “** $ip ” . join(” “,@{ $offender_list{$ip} }) . “n”;} }

将这个程序取名为pattern_match.pl。开始使用urlsnarf以及 pattern_match.pl,urlsnarf 以及pattern_match.pl 得出来的结果应该是如下所示:

#urlsnarf| pattern_match.pl

一个Whisker扫描范例,执行urlsnarf以及pattern_match.pl,监测地址为 10.1.1.2 的IIS5.0 服务器平台,我们得到了以下的结果:

** 10.1.1.21 webhits ism showcode newdsn** 10.1.1.21 webhits ism showcode newdsn mdac** 10.1.1.21 webhits ism showcode newdsn mdac w3proxy** 10.1.1.21 webhits ism showcode newdsn mdac w3proxy perl_exe

这些结果告诉我们,来自IP地址 10.1.1.21 的访客为恶意访客,并且也列出了一连串针对 10.1.1.2 的相关可疑的URL回询。黑客回报系统是在“特征 URL”已经被查询三次了以后,第四次类似的查询又发生(newdsn)才被激活的。

【编辑推荐】


木马云中“云”是什么意思

木马云隶属于360安全卫士,云安全隶属于瑞星 360木马云查杀是基于在“云安全”的理念中实施的,跟360实时保护一样,是360安全卫士重要的部件之一。 功能:以360安全中心作为云端服务器,以广大的360用户作为客户端,当用户检测到机器内有未知木马病毒时,“云端”就会马上作出反应,最快地接受样本,然后分享到每一个360用户,从源头上避免了木马病毒对其他用户的攻击和侵害。 云的意思如下:云安全(Cloud Security)计划是网络时代信息安全的最新体现,它融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端 对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,推送到Server端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。

什么是社会工程学?

总体上来说,社会工程学就是使人们顺从你的意愿、满足你的欲望的一门艺术与学问。 它并不单纯是一种控制意志的途径,但它不能帮助你掌握人们在非正常意识以外的行为,且学习与运用这门学问一点也不容易。 它同样也蕴涵了各式各样的灵活的构思与变化着的因素。 无论任何时候,在需要套取到所需要的信息之前,社会工程学的实施者都必须:掌握大量的相关知识基础、花时间去从事资料的收集与进行必要的如交谈性质的沟通行为。 与以往的的入侵行为相类似,社会工程学在实施以前都是要完成很多相关的准备工作的,这些工作甚至要比其本身还要更为繁重。 你也许会认为我们现在的论点只是集中在证明“怎样利用这种技术也能进行入侵行为”的一个突破口上。 好了,其实这样够公平的了。 无论怎么说,“知道这些方法是如何运用的”也是唯一能防范和抵御这类型的入侵攻击的手段了。 从这些技术中提取而得出的知识可以帮助你或者你的机构预防这类型的攻击。 在出现社会工程学攻击这类型攻击的情况下,像CERT发放的、略带少量相关信息的警告是毫无意义的。 它们通常都将简单地归结于:“有的人通过‘假装某些东西是真的’的方式去尝试访问你的系统。 不要让他们得逞。 ”然而,这样的现象却常有发生。 那又如何呢?社会工程学定位在计算机信息安全工作链路的一个最脆弱的环节上。 我们经常讲:最安全的计算机就是已经拔去了插头(注释:网络接口)的那一台(注释:“物理隔离”)。 真实上,你可以去说服某人(注释:使用者)把这台非正常工作状态下的、容易受到攻击的(注释:有漏洞的)机器接上插头(注释:连上网络)并启动(注释:提供日常的服务)。 也可以看出,“人”这个环节在整个安全体系中是非常重要的。 这不像地球上的计算机系统,不依赖他人手动干预(注释:人有自己的主观思维)。 由此意味着这一点信息安全的脆弱性是普遍存在的,它不会因为系统平台、软件、网络又或者是设备的年龄等因素不相同而有所差异。 无论是在物理上还是在虚拟的电子信息上,任何一个可以访问系统某个部分(注释:某种服务)的人都有可能构成潜在的安全风险与威胁。 任何细微的信息都可能会被社会工程学使用者用着“补给资料”来运用,使其得到其它的信息。 这意味着没有把“人”(注释:这里指的是使用者/管理人员等的参与者)这个因素放进企业安全管理策略中去的话将会构成一个很大的安全“裂缝”。

目前有什么比较成熟的技术可以检测网络中的内部威胁?

内部员工具备合法访问内部数据的权限,其主观恶意的行为在传统安全方法看来没有任何问题,因此无法定位和检测。 目前网康等安全厂商提出的比较有效的检测方法是通过用户行为分析检测内部威胁。 用户行为异常是内部威胁、定向攻击和财务诈骗的早期信号,通过收集用户行为数据,使用大数据技术进行建模并建立用户行为基线,就可以发现用户异常行为,从而帮助企业和组织及时发现问题并处理。 配合防火墙、DLP、上网行为管理等产品的阻断能力,可以实现对内部威胁的闭环解决方案。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐