当前位置: 首页 > 图文教程 > 网络安全 > 安全基础 > 网管必备技巧—Windows日志的保护与伪造

安全基础
黑客攻击行为的特征分析及反攻击技术
Windows 2000中隐患重重的十大“服务”
网页脚本攻击防范全攻略
防患于未然 轻松做好Windows 2000安全策略
用注册表为操作系统砌九堵安全墙
完善网站程序 脚本攻击防范策略完全篇
两步修改XP远程管理默认端口可防止入侵
消除Windows XP自身的安全隐患
保护Windows不受恶意代码攻击
如何关闭和限制电脑不用的端口
修改Windows 2000远程终端默认端口
操作系统被入侵后的修复过程
利用微软基准安全分析器打造你安全的系统
数字签名技术简介
检测和删除系统中的木马
QQ密码破解程序
P2P中保障Windows网络安全
在代码中查找安全性缺陷的专家提示
QQ安全的三大纪律八项注意
如何保证文件夹的绝对安全

安全基础 中的 网管必备技巧—Windows日志的保护与伪造


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-28   浏览: 85 ::
收藏到网摘: n/a

 

  日志对于系统安全的作用是显而易见的,无论是网络管理员还是黑客都非常重视日志,一个有经验的管理员往往能够迅速通过日志了解到系统的安全性能,而一个聪明的黑客往往会在入侵成功后迅速清除掉对自己不利的日志。下面我们就来讨论一下日志的安全和创建问题。

  一、概述:

  Windows 2000的系统日志文件有应用程序日志,安全日志、系统日志、DNS服务器日志等等,应用程序日志、安全日志、系统日志、DNS日志默认位置:%systemroot%\system32\config,默认文件大小512KB。

  安全日志文件:%systemroot%\system32\config\SecEvent.EVT
  系统日志文件:%systemroot%\system32\config\SysEvent.EVT
  应用程序日志文件:%systemroot%\system32\config\AppEvent.EVT

  这些LOG文件在注册表中的:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog有的管理员很可能将这些日志重定位。其中EVENTLOG下面有很多的子表,里面可查到以上日志的定位目录。

  二、作为网络管理员:

  1.日志的安全配置:

  默认的条件下,日志的大小为512KB大小,如果超出则会报错,并且不会再记录任何日志。所以首要任务是更改默认大小,具体方法:注册表中HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog对应的每个日志如系统,安全,应用程序等均有一个maxsize子键,修改即可。

  下面给出一个来自微软站点的一个脚本,利用VMI来设定日志最大25MB,并允许日志自行覆盖14天前的日志:

  该脚本利用的是WMI对象, WMI(Windows Management Instrumentation)技术是微软提供的Windows下的系统管理工具。通过该工具可以在本地或者管理客户端系统中几乎一切的信息。很多专业的网络管理工具都是基于WMI开发的。该工具在Win2000以及WinNT下是标准工具,在Win9X下是扩展安装选项。所以以下的代码在2000以上均可运行成功。

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Security)}!\\" & _
strComputer & "\root\cimv2") ''获得VMI对象
Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile")
For each objLogfile in colLogFiles
strLogFileName = objLogfile.Name
Set wmiSWbemObject = GetObject _
("winmgmts:{impersonationLevel=Impersonate}!\\.\root\cimv2:" _
& "Win32_NTEventlogFile.Name=''" & strLogFileName & "''")
wmiSWbemObject.MaxFileSize = 2500000000
wmiSWbemObject.OverwriteOutdated = 14
wmiSWbemObject.Put_
Next

  将上述脚本用记事本存盘为vbs为后缀的即可使用。

  另外需要说明的是代码中的strComputer="."在Windows脚本中的含义相当于localhost,如果要在远程主机上执行代码,只需要把"."改动为主机名,当然首先得拥有对方主机的管理员权限并建立IPC连接.本文中的代码所出现的strComputer均可作如此改动。

  2. 日志的查询与备份:

  一个优秀的管理员是应该养成备份日志的习惯,如果有条件的话还应该把日志转存到备份机器上或直接转储到打印机上,在这里推荐微软的resourceKit工具箱中的dumpel.exe,他的常用方法:

  dumpel -f filename -s \\server -l log

  -f filename 输出日志的位置和文件名

  -s \\server 输出远程计算机日志

  -l log log 可选的为system,security,application,可能还有别的如DNS等.

  如要把目标服务器server上的系统日志转存为backupsystem.log可以用以下格式:

  dumpel \\server -l system -f backupsystem.log

  再利用计划任务可以实现定期备份系统日志。

  另外利用脚本编程的VMI对象也可以轻而易举的实现日志备份:

  下面给出备份application日志的代码:

backuplog.vbs
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate,(Backup)}!\\" & _
strComputer & "\root\cimv2") ''获得 VMI对象
Set colLogFiles = objWMIService.ExecQuery _
("Select * from Win32_NTEventLogFile where LogFileName=''Application''") ''获取日志对象中的应用程序日志
For Each objLogfile in colLogFiles
errBackupLog = objLogFile.BackupEventLog("f:\application.evt") ''将日志备份为f:\application.evt
If errBackupLog <> 0 Then
Wscript.Echo "The Application event log could not be backed up."
else Wscript.Echo "success backup log"
End If
Next

  程序说明:如果备份成功将窗口提示:"success backup log" 否则提示:"The Application event log could not be backed up",此处备份的日志为applicatio