专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »安全 » iis6.0:用MRTG在IIS  6.0上实现入侵检测功能 »正文

iis6.0:用MRTG在IIS  6.0上实现入侵检测功能

来源: 发布时间:星期六, 2009年9月12日 浏览:4次 评论:0
MRTG(Multi Router Traffic Grapher)是个跨平台监控网络链路流量负载工具软件Software目前它可以运行在大多数Unix系统和Windows NT的上它通过snmp协议从设备得到设备流量信息并将流量负载以包含PNG格式图形HTML 文档方式显示给用户以非常直观形式显示流量负载   或许你还不知道MRTG还是个有效入侵检测工具大家都知道入侵者扫描和破坏后都能生成些异常网络流量而人们在般情况下是意识不到但是MRTG却能通过图形化形式给管理员提供入侵信息并可以查出数周的前入侵信息以备管理员参考

  攻击行为对服务器造成信息

  1攻击者使用CGI漏洞扫描器对潜在CGI漏洞脚本进行扫描时HTTP 404 Not Found errors记录会增长

  2攻击者尝试暴力破解服务器上帐户HTTP 401 Authorization Required errors 记录会增长

  3种新蠕虫出现个特定协议流量会增长

  4蠕虫通过傀儡主机攻击其他服务器出外流量增加并增大CPU负荷

  5入侵者尝试SQL injection攻击HTTP 500 Server Errors记录会增长

  6垃圾邮件发送者在网络上寻找中继SMTP服务器来发送垃圾邮件会造成SMTP和DNS lookups流量大增同时造成CPU负荷增大

  7攻击者进行DDOS攻击会造成ICMP流量TCP连接虚假IP多播广播流量大增造成浪费大量带宽

  看完上面我们可以整理总结出攻击者要入侵必须会影响到服务器这些资源:: CPU, RAM,磁盘空间网络连接和带宽入侵者还有可能对服务器建立进程后门开放端口他们还对他们入侵行为进行伪装掩盖避免遭到入侵检测系统监视

   2攻击者使用以下思路方法避免被检测到:

  1探测扫描很长时间后才进行真正入侵进攻

  2从多个主机进行攻击避免单主机记录

  3尽量避免入侵造成CPU, RAM和驱动器负荷

  4利用管理员无人职守时入侵在周末或者节假日发起攻击

   3对于IIS 6我们需要监视

  1网络流量包括带宽数据包连接数量等

  2网络协议异常

  3网站WebSite内外流量包括用户权限设置外部请求流量等

  4线程和进程

   4在Windows 2003下安装MRTG

  在使用MRTG的前你需要在你服务器里安装SNMP 服务具体步骤如下:从控制面板中选择添加/删除点击添加和删除windows组件管理和监视工具中详细资料里就可以找到简单网络管理协议即可安装

  安装成功后你需要立刻安全配置我们大家都知道SNMP在网络上决不是个安全协议你可以通过http://support.microsoft.com/?kbid=324261这个连接来具体了解但是我们只是在本地使用SNMP但是还是建议你通过防火墙屏蔽SNMP161和162端口和使用IPSec并且要配置为obscure community 在管理工具中在服务中选择安全设为只读访问尽管community 安全问题不多但是你还是要避免使用community 为只读访问

  MRTG是个用Perl编译C你还要安装ActivePerl来解决支持脚本问题下载最新MRTG可以到http://people.ee.ethz.ch/~oetiker/webtools/mrtg/pub/下载

  注意要选择.zip文件下载这篇文章所使用版本请到http://securityfocus.com/microsoft/images/burnett_MRTG_files.zip下载

  把MRTG解压到C:\Program Files\MRTG目录下

  在你Inetpub目录下为MRTG建立个子目录为了安全不要建立在wwwroot目录下然后使用IIS建立个MRTG新站点如果可能最好能为MRTG站点配置个主机头和个独立IP也可以在个已存在目录下为MRTG站点建立个合法虚拟目录也能达到同样

  注意在新建立MRTG站点不要运行可执行脚本只提供只读访问在NTFS下要注意对用户权限设置如果可能最好对指定MRTG站点IP来选择特定主机

  现在就可以把配置文件放到C:\Program Files\MRTG\Bin下了并把index.html 文件拷贝到你\Inetpub\MRTG 目录下

   5具体配置SNMP计数器

  我所配置MRTG以及所获得流量:

  尽管微软提供了SNMP计数器但是我发现它对些应用支持有些问题然而MRTG却能从很多应用中得到消息但是我们通过Windows Management Instrumentation (WMI) 也能得到包括所有计数器性能信息同SNMP区别微软在WMI下了很大时间和金钱比如:我想得到有关线程和进程信息我可以使用以下脚本轻易实现:

Set colItems=oWService.ExecQuery("SELECT * FROM Win32_PerfFormattedData_PerfOS_",,48)
For Each Item in colItems
Param1=Param1 + Item.Processes
Param2=Param2 + Item.Threads
Uptime=Item.Uptime
Next
WScript.Echo Param1
WScript.Echo Param2
WScript.Echo Uptime & " seconds"
WScript.Echo "LocalHost"
Another problem I had was getting detailed or custom web statistics through
either SNMP or WMI. To solve that , I used Microsoft’s LogParser tool to run custom queries from a simple batch file: @for /f "tokens=1,2,3,4* delims=/ " %%i in (’date /t’) do @ year=%%l&& @
month=%%j&& @ day=%%k
@ logfile=c:\windows\system32\LogFiles\%1\ex%YEAR:~2,2%%month%%day%.log
@If Exist %logfile% (
  @logparser "SELECT COUNT(*) FROM %logfile% WHERE (sc-status>= 400AND sc-status<500)
  AND TO_TIMESTAMP(date, time) > SUB(SYSTEM_TIMESTAMP, TO_TIMESTAMP(’5’,’m’))" -q
  @logparser "SELECT COUNT(*) FROM %logfile% WHERE (sc-status>= 500AND sc-status<600)
 AND TO_TIMESTAMP(date, time) > SUB(SYSTEM_TIMESTAMP, TO_TIMESTAMP(’5’,’m’))" -q
) ELSE (
  @Echo %logfile% @Echo 0
)
@Echo Unknown
@Echo %1





  微软日志记录工具也非常强大和MRTG计数器配合使用在加上免费入侵检测系统Snort效果会更好

   6最后

  在你自定义完你计数器完成的后通过图行化状况就可以轻易找出入侵者

  下面我们来测试在命令提示符下输入:

  C:\ProgramFiles\MRTG>perl mrtg mrtg.cfg

  如果些正常就会在在你MRTG站点就有了些配置文件如果安装失败你可以回顾下你安装步骤是否有并参考MRTG 参考手册



  • 篇文章: 推荐:遭遇另类“无法删除病毒”

  • 篇文章: 各种漏洞利用和搜索参数
  • 0

    相关文章

    读者评论

    发表评论

    • 昵称:
    • 内容: