windows NT事件日志说明
原作者:NtWak0
翻译整理:补天-苏樱
概要
以下内容是关于WINDOWS NT事件日志的非常好的、深入的文章。 日志通常用审计机或某种工具来管理。
这篇文章也包含:当一个用户被Locked out时,在事件日志里报告的SID有点小问题。
详细资料
日志类型:
这里有三种类型的NT事件日志:
系统日志
跟踪各种各样的系统事件,比如跟踪系统启动过程中的事件或者硬件和控制器的故障。
应用程序日志
跟踪应用程序关联的事件,比如应用程序产生的象装载DLL(动态链接库)失败的信息将出现在日志中。
安全日志
跟踪事件如登录上网、下网、改变访问权限以及系统启动和关闭。注意:安全日志的默认状态是关闭的。
日志位置以及启动方法
NT日志的位置是:
%SYSTEMROOT%\system32\config\SysEvent.Evt
%SYSTEMROOT%\system32\config\SecEvent.Evt
%SYSTEMROOT%\system32\config\AppEvent.Evt
通常,NT不是将所有的事件都记录日志,你不得不手动启动审计,照下面的步骤做:
1-从开始菜单中选择程序,然后再选择管理工具。 从管理工具子菜单选择用户管理器,显示出用户管理器窗口。
2-从用户管理器的菜单中单击POLICIES(策略),然后单击AUDIT(审计),审计策略窗口就出现了。
3-选择单选框“AUDIT THEST EVENTS”(审计这些事件)
4-选择你需要启动的按OK,然后关闭用户管理器。
特殊权限的审计:
系统中某些特殊权限是不能被默认的事件来审计的,甚至是特权的审计已经被启动。这是妥当的控制审计日志的增长。
特殊权限有以下这些:
1-绕过验证限制----(对每个人)是同意每个人的,所以从审计的观点来看对它进行审计是无意义的。
2-DEBUG程序(对管理员)。 它在工作系统不使用,并能从管理员组中移掉(或者说取消)。
3-创建一个象征意义的对象(没有人), 它对谁也不准许。
4-替换过程级别标记(没有人),它对谁也不准许。
5-生成安全审计 (没有人),它对谁也不准许。
6-备份文件和目录,(管理员备份操作员), 它用在正常的系统操作过程中。
7-恢复文件和目录,(管理员备份操作员), 它用在正常的系统操作过程中。
要启动对这些特殊权限的审计,在注册表里增加以下键:
Hive: HKEY_LOCAL_MACHINE\SYSTEM
Key: System\CurrentControlSet\Control\Lsa
Name: FullPrivilegeAuditing
Type: REG_BINARY
Value: 1
或者创建一个名为audit.reg的文本文件,将下面语句剪切和粘贴到文本中。
-----------------------------------------------------------[SNIP HERE]------
REGEDIT4
ADD A BLANK LINE HERE
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"FullPrivilegeAuditing"=hex:01
ADD A BLANK LINE HERE
-----------------------------------------------------------[SNIP HERE]------
要将.reg文件存入注册表中,你可以双击它,或者打开一个命令行模式并且输入命令 REGEDIT /S audit.reg
这将使你建立的文件合并入系统注册表。
审计基础的对象
这项安置的注册键向本地安全管理局表明那些基础对象应由默认的系统审计控制列表来创建。
管理员仍然需要用用户管理器来把“目标访问”类别的审计打开。
启动基础对象的审计,在注册表中增加下列键
Hive: HKEY_LOCAL_MACHINE\SYSTEM
Key: \CurrentControlSet\Control\Lsa
Name: AuditBaseObjects
Type: REG_DWORD
Value: 1
或者创建一个名为audit0bj.reg的文件,并把下列内容剪切并拷贝到该文件中
-----------------------------------------------------------[SNIP HERE]------
REGEDIT4
ADD A BLANK LINE HERE
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa]
"AuditBaseObjects"=dword:00000001
ADD A BLANK LINE HERE
-----------------------------------------------------------[SNIP HERE]------
要将.reg文件存入注册表中,你可以双击它,或者打开一个命令行模式并且输入命令 REGEDIT /S auditObj.reg
这将使你建立的文件合并入系统注册表。
范例:
当你启动安全审计时你会看到什么呢?
在这个例子中,你将看到在登录上网失败后事件日志中记录的内容:
Logon Failure:
Reason: Unknown user name or bad password
User Name: WaKiNg
Domain: WaK0
Logon Type: 3
Logon Process: KSecDD
Authentication Package: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
Workstation Name: \\BRAINCELL
清除NT日志:
要清除一个日志,切换到你要清除的日志,在日志菜单里单击“清除所有事件”, 一个信息会弹出询问你是否想将目前的事件存档,
如果你回答是,“SAVE AS”对话框就出现了, 输入你要存档的文件名和目录。 无论你回答是或否后,事件阅读器就清空了当前的日志。
然后只有新的事件会出现在日志中了。
注意:当你删除安全日志时,一个事件将会出现在安全日志里。
即使你清除日志,你仍然会在日志里看见以下的条目:
The audit log was cleared
Primary User Name: SYSTEM
Primary Domain: NT AUTHORITY
Primary Logon ID: (0x0,0x3E7)
Client User Name: WaKiNg
Client Domain: BRAINCELL
Client Logon ID: (0x0,0x2581)
这些条目表示你清除了安全事件日志。 现在如果你想完全清除日志,你可以按以下步骤操作:
1-打开控制面板中的服务
2-查找ENENTLOG服务,并且单击STARTUP按钮
3-在启动类型中选择Manual 或者Disabled
4-重启动NT
5-到%SYSTEMROOT%\system32\config\SecEvent.Evt 删除SecEvent.Evt
这样做了以后,系统就会停止事件日志服务,你就能够删除你想要删除的日志了。
管理NT日志的工具:
NT资源工具包中的 dumpel.exe
NTLast
NTLast是特别针对严重的系统安全和IIS管理的工具。 预定回顾你的NT事件日志对你的网络来说是不可取的,因为常规的系统审计
能导致一个服务破坏。 用NTLast识别和跟踪谁取得了系统的访问,并且存档详细资料变得容易多了。
这个工具能很快报告出IIS用户的状况,以及从控制台过滤出WEB SERVER的登录。
EventReader
EventReader(TM)是一个管理工具,它允许网络管理员分析和管理事件日志。 这个程序让你从一个网络的WINDOWS NT机器上
收集事件日志,并且将信息存储到一个或几个ODBC兼容(Microsoft SQL
Server or Microsoft Access)的数据库中。你可以指派哪个计算机来收集信息、分配一个进度表、收集数据、备份事件日志参数。
安装包里包括一个Microsoft Access样品数据库,它包括许多能有效分析事件日志的查询和报表。
Event Archiver Enterprise
Event Archiver Enterprise是市场中事件管理工具里最易于使用的产品之一, 以它的适应性超出其他同类产品。
我们将它认为是一种“设置一次,永久运行”的应用程序,并相当可观的节省了你们组织的时间和金钱。
以一个WINDOWS NT/2000管理员的平均时间成本来计算,配置Event Archiver Enterprise就大大减少了你们公司的总体成本。
安装了Event Archiver,管理员就可以开始分析事件日志条目,而不用繁琐而要有规律地保存和存储它们。
EventReporter version 4.0
4.0版本提供了一些重要的增强功能,增强的文档,增强的WebSite。例如:通过EMail客户端传递消息里增加了
基于严格代码(如:错误,警告)的自定义EventRepporter过滤图形界面。
Remote Viewers - Event Log Monitor
Remote Viewer for Windows PC 运行于Microsoft Windows 95, Windows 98, Windows NT上,
让你查询并显示由控制台接收到的事件日志信息。从可以立即显示的远程查看控制台里接收用户选择的实时警告。
提供远程管理进程、服务和装置驱动程序。
提供远程查询、编辑、创建用户自定义记事、信息参考和多样的远程命令形式窗口。
SID安全问题:
许多管理员知道NT的SID和允许你取得用户SID的工具"sid2user"。 这里有另外一个不很明显的方法来取得用户的SID。
假定下面列出的是真实的:
1-默认的NT日志可以远程查看
2-你已经激活了审计
3-你的系统策略是当一个帐号的(登录)错误达到一个指定的次数后阻止这个帐号(继续尝试登录).
下面是你如何使NT倒出SID的做法:
试着用现已存在的任何帐号登录远程服务器,服务器提示你登录失败后,事件阅读器中将会生成一条记录:
Logon Failure:
Reason: Unknown user name or bad password
User Name: WaKiNg
Domain: WaK0
Logon Type: 3
Logon Process: KSecDD
Authentication Package: MICROSOFT_AUTHENTICATION_PACKAGE_V1_0
Workstation Name: \\BRAINCELL
如果你有一条策略是 当一个帐号的(登录)错误达到一个指定的次数后你的系统策略会阻止这个帐号(继续尝试登录),
你将会在你的日志文件里看到下面的条目:
User Account Locked Out:
Target Account Name: WaKiNg
Target Account ID: S-1-5-21-431509504-1754822488-1124750213-500
Caller Machine Name: \\BRAINCELL
Caller User Name: SYSTEM
Caller Domain: NT AUTHORITY
Caller Logon ID: (0x0,0x3E7)