利用Apache Web服务器日志分析辨认攻击(三)

日期: 2009-06-23 作者:Brad Causey翻译:Tina Guo 来源:TechTarget中国 英文

第三步:完善服务器日志搜索   Bob可能会对搜索其他的请求感兴趣,特别是返回200代码的那些,它们表示他发现了一些内容。我们的命令行可以找一些这样的东西:>egrep -n -i “bob|200” access_log   虽然这会在日志记录上发现Bob或者整数200存在于某个位置,这并不意味着每一个返回的日志都会是Bob请求的“200”服务器代码。会返回很多我们不想要的数据。如果在日志中搜索同时Bob和200,可能会更准确。

因为Bob和200周围都有空白,我们可以更进一步的分开我们想要查找的请求。还要注意参数-i,它会移除符合要求的请求,这样Bob、 bOb……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

第三步:完善服务器日志搜索

  Bob可能会对搜索其他的请求感兴趣,特别是返回200代码的那些,它们表示他发现了一些内容。我们的命令行可以找一些这样的东西:>egrep -n -i "bob|200" access_log

  虽然这会在日志记录上发现Bob或者整数200存在于某个位置,这并不意味着每一个返回的日志都会是Bob请求的“200”服务器代码。会返回很多我们不想要的数据。如果在日志中搜索同时Bob和200,可能会更准确。因为Bob和200周围都有空白,我们可以更进一步的分开我们想要查找的请求。还要注意参数-i,它会移除符合要求的请求,这样Bob、 bOb、boB、bob和BOB都符合我们的regex请求(regex query)。

egrep -n -i "bbobb.*200*" access_log

  这条命令行就限制了我们的请求只能是日志中同时包含bob这个词和200这个数字的那些行。在bob这个词两边的b表明了这个词的边界,或者一个词的开始和结束。在200前面的*表明在bob和200之间存在一些字符,而200之后的*允许200后存在字符。这会返回如下记录:

57:10.10.10.10 - bob
[10/Oct/2007:20:24:18 -0700] "GET / webmin HTTP/1.0" 404 726
59:10.10.10.10 - bob
[10/Oct/2007:20:24:59 -0700] "GET /admin HTTP/1.0" 404 726
65:10.10.10.10 - bob
[10/Oct/2007:20:25:35 -0700] "GET /login HTTP/1.0" 404 726

  当检测这些结果的时候你会注意到的是看起来Bob正在找些东西。可能是某种类型的管理界面明或者进入Web服务器的方式。还有,通过密切关注和信息,就可以发现这三天信息是在一分钟内发出的,这告诉我们Bob的键盘速度非常快,或者他使用某种形式的自动化工具。后者最有可能,而这可能给我始深入调查他行为的足够信息。

  还有, 住哟Bob的请求都满足404“没有发现”信息。如果是这样,那么为什么他们会显示呢?我们确实只要求乐200代码,对吧?这是计算机只作你告诉它要做的内容的基本的例子,在这种情况下,日期——时间标签碰巧包含字符串“200”,而这正是我们要求的。使用regex经常会产生误报,但是通过使用简单的请求(query),我们就可以消除大部分的误报。

  我们将更进一步研究Bob。

翻译

Tina Guo
Tina Guo

相关推荐