系统日志的防范.doc
文本预览下载声明
系统日志的防范
日志对于系统安全的作用是显而易见的,无论是网络管理员还是黑客都非常重视日志,一个有经验的管理员往往能够迅速通过日志了解到系统的安全性能,而一个聪明的黑客往往会在入侵成功后迅速清除掉对自己不利的日志。下面我们就来讨论一下日志的安全和创建问题。 一:概述:Windows2000的系统日志文件有应用程序日志,安全日志、系统日志、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。日志的查询与备份: 一个优秀的管理员是应该养成备份日志的习惯,如果有条件的话还应该把日志转存到备份机器上或直接转储到打印机上,笔者还有一篇文章《利用脚本编程格式化输出系统日志》,详细的讲述了利用windows脚本把日志转储并输出成html页已便于查询,有兴趣的可以查看,在这里推荐微软的resourceKit工具箱中的dumpel.exe,他的常用方法: dumpel -f filename -s \\server -l log -f filename 输出日志的位置和文件名 -s \\server 输出远程计算机日志 -l log log 可选的为system,security,application,可能还
显示全部