【home88一必发】读取系统日志,巧用事件查看器维护服务器安全

by admin on 2019年4月22日

.NET框架类库提供了伊夫ntLog类和伊芙ntLogEntry类与系统日志实行交互二者属于System.Diagnostics命名空间

C# 读取系统日志,

.NET框架类库提供了伊夫ntLog类和伊芙ntLogEntry类与系统日志进行交互二者属于System.Diagnostics命名空间

EventLog

类的属性首要有

Entris重临二个伊夫ntLogEntryCollection型值,代表事件日志的始末Log 获取大概再次来到日志的名称,当中应用程序日志是Application,系统日志是System,安全日志是Security,暗许值为空字符串. 

LogDisplayName 获取事件日志的要好名称MachineName 获取或安装在其上读取或写入事件的Computer名称

Source 获取或设置在写入事件日志时要注册和使用的源名称

【home88一必发】读取系统日志,巧用事件查看器维护服务器安全。伊夫ntEntryCollection类定义EventLogEntry实例集结的轻重和枚举数. 

伊芙ntLogEntry类的壹部分重中之重质量如下: 

Category 获得与该项的CategoryNumber对应的文本

CategoryNumber 获得该项的品分类配号

Data 获取与该项对应的二进制数据

EntryType 获取该项的轩然大波类型,其值属于伊夫ntLogEntryType枚举,这几个枚举的首要成员如下: 

Error 错误事件,它提醒用户应该驾驭的要紧问题,举个例子功效或数额丢失

Failure奥迪(Audi)t 战败审核事件,它提示当审核访问尝试战败,比如打开文件的尝试失利时发生的安全事件

Information 音讯事件.它提醒重要。成功的轩然大波

Success奥迪t 成功审结事件.它提示当审核访问尝试成功,比方成功登入时产生的安全事件

Warning 警告事件.它提醒并不立时具有首要性的标题,但此难点恐怕意味着未来会形成难点的尺度. 

伊夫ntID 获取此事件项的应用程序特定事件标记符

Index 获取该项在事变日志中的索引

MachineName 获得在发出该项的处理器的名号

Message 得到与该事件的本地化新闻

ReplacementStrings 获取对应当项替换字符串 

Source 获取生成该事件的应用程序的称号

TimeGenerated 获取生成该事件的当地时间

TimeWritten 获取在日记写入该事件的地点时间

UserName 获取担当该事件的用户的称谓

 示例代码:

 static void Main(string[] args)
        {
            EventLog eventLog = new EventLog();
            eventLog.Log = "System";//日志的类型 有应用程序 系统 等等
            EventLogEntryCollection eventLogEntryCollection = eventLog.Entries;//获取事件日志的内容
            EventLogEntry entry = eventLogEntryCollection[eventLogEntryCollection.Count-1];
            string[] title = { entry.EntryType.ToString(),
                   entry.TimeGenerated.ToLongDateString(), 
                   entry.TimeGenerated.ToLongTimeString(), 
                   entry.Source, entry.Category,    
                   entry.EventID.ToString(), 
                   entry.UserName, entry.MachineName };
            for (int i =0; i <8; i++)
            {
                Console.WriteLine(title[i]);               
            }
            for(int j=0;j <= eventLogEntryCollection.Count - 1; j++)
            {
                Console.WriteLine("\n" + eventLogEntryCollection[eventLogEntryCollection.Count-1].Message);
            }  
        }

  显示效果:

                   
  home88一必发 1

因为是刚刚通晓,恐怕具有错误,如有错误,接待指正

读取系统日志,
.NET框架类库提供了伊夫ntLog类和伊夫ntLogEntry类与系统日志进行相互二者属于System.Diagnostics命名空间
伊芙ntLog 类的性质紧要有…

.NET框架类库提供了伊夫ntLog类和伊夫ntLogEntry类与系统日志进行互动2者属于System.Diagnostics命名空间

事件查看器也正是操作系统的保健医务职员,一些“顽疾”的一望可知都会在事变查看器中展现,叁个合格的系统管理员和安全保卫安全人士会定时查看应用程序、安全性和系统日志,查看是还是不是存在违规登入、系统是或不是非平常关机、程序实施错误等音讯,通过查看事件性质来判定错误发生的源于和缓和办法,使操作系统和应用程序符合规律专门的工作。本文介绍了事件查看器的局地皮之不存毛将焉附文化,最终交给了二个平安全保卫护实例,对白城爱戴职员保养系统有一定的借鉴和参考。

EventLog

EventLog

【home88一必发】读取系统日志,巧用事件查看器维护服务器安全。  (壹)事件查看器相关文化

类的习性主要有

类的属性首要有

  一.事件查看器

Entris再次来到四个伊夫ntLogEntryCollection型值,代表事件日志的内容Log 获取大概重回日志的名目,当中应用程序日志是Application,系统日志是System,安全日志是Security,暗中认可值为空字符串. 

Entris再次来到三个伊夫ntLogEntryCollection型值,代表事件日志的情节Log 获取或然再次来到日志的名号,其中应用程序日志是Application,系统日志是System,安全日志是Security,暗中同意值为空字符串. 

  事件查看器是 Microsoft Windows
操作系统工具,事件查看器相当于壹本厚厚的系统日志,能够查看关于硬件、软件和系统难点的音信,也足以监视Windows
操作系统中的安全事件。有二种办法来开垦事件查看器:

LogDisplayName 获取事件日志的团结名称MachineName 获取或设置在其上读取或写入事件的微型Computer名称

LogDisplayName 获取事件日志的和煦名称MachineName 获取或安装在其上读取或写入事件的计算机名称

  (一)单击“开端”-“设置”-“调控面板”-“管理工科具”-“事件查看器”,开事件查看器窗口

Source 获取或设置在写入事件日志时要注册和利用的源名称

Source 获取或安装在写入事件日志时要注册和行使的源名称

  (二)在“运营”对话框中手工业键入“%SystemRoot%system32eventvwr.msc
/s”张开事件查看器窗口。

伊芙ntEntryCollection类定义伊夫ntLogEntry实例会集的大小和枚举数. 

伊夫ntEntryCollection类定义伊芙ntLogEntry实例集结的大大小小和枚举数. 

  (三)在运维中一直输入“eventvwr”可能“eventvwr.msc”直接张开事件查看器。

伊芙ntLogEntry类的有的第3品质如下: 

伊夫ntLogEntry类的一部分着重质量如下: 

  贰.轩然大波查看器中记录的日记类型

Category 获得与该项的CategoryNumber对应的文书

Category 得到与该项的CategoryNumber对应的公文

  在事件查看器香港中华总商会共记录两种等级次序的日记,即:

CategoryNumber 得到该项的项目号

CategoryNumber 获得该项的档案的次序号

  (1)应用程序日志

Data 获取与该项对应的2进制数据

Data 获取与该项对应的2进制数据

  包涵由应用程序或系统程序记录的事件,主要记录程序运营方面包车型地铁风云,举个例子数据库次第能够在应用程序日志中著录文件漏洞百出,次第开辟人口能够自行决定监视哪些事件。若是某个应用程序出现崩溃意况,那么大家得以从程序事件日志中找到呼应的笔录,恐怕会推向你化解难题。

EntryType 获取该项的风浪类型,其值属于伊夫ntLogEntryType枚举,那么些枚举的严重性成员如下: 

EntryType 获取该项的事件类型,其值属于伊芙ntLogEntryType枚举,那一个枚举的首要成员如下: 

  (二)安全性日志

Error 错误事件,它提示用户应该领悟的沉痛难点,比如功用或数额丢失

Error 错误事件,它提醒用户应该领悟的沉痛难点,比如功效或数量丢失

  记录了诸如有效和低效的登入尝试等事件,以及与财富使用有关的风云,举个例子创制、张开或删除文件或任何对象,系统管理员能够钦定在安全性日志中著录什么风浪。私下认可设置下,安全性日志是关闭的,管理员能够使用组战术来运营安全性日志,或然在注册表中设置审查批准战术,以便当安全性日志满后使系统截至响应。

Failure奥迪t 战败审核事件,它提醒当审核访问尝试失败,举个例子展开文件的品味退步时发生的安全事件

home88一必发,Failure奥迪t 战败审核事件,它提醒当审核访问尝试战败,例如张开文件的尝尝失利时发生的安全事件

  (3)系统日志

Information 音讯事件.它提示首要。成功的风云

Information 音信事件.它提醒主要。成功的事件

  包含Windows
XP的系统组件笔录的风云,举例在运转进度中加载驱动程序或任何系统组件失利将记录在系统日志中,暗中同意景况下Windows会将系统事件记录到系统日志之中。
如果计算机被安排为域调控器,那么还将席卷目录服务日志、文件复制服务日志;假若电话被安插为域名种类(DNS)服务器,那么还将记录DNS服务器日志。当运转Windows时,“事件日志”服务(伊芙ntLog)会活动运转,全数用户都足以查看应用程序和系统日志,但唯有管理员才具访问安全性日志。

Success奥迪t 成功查处事件.它提示当审核访问尝试成功,比方成功登入时发出的安全事件

Success奥迪(Audi)t 成功审结事件.它提醒当审核访问尝试成功,举个例子成功登陆时发生的安全事件

  在事变查看器中珍视记录各个事件,事件查看器显示屏左侧的Logo描述了
Windows 操作系统对事件的分类。事件查看器显示如下类型的轩然大波:

Warning 警告事件.它提示并不立时具备至关心器重要的难点,但此难点大概代表以后会导致难点的规则. 

Warning 警告事件.它提示并不马上具有重大的难题,但此问题只怕意味着现在会促成难题的标准. 

  (壹)错误:重大难题,举个例子数据丢失或效益损失。举例,如若服务在运转时期比相当小概加载,便会记录三个错误。

伊芙ntID 获取此事件项的应用程序特定事件标志符

伊夫ntID 获取此事件项的应用程序特定事件标记符

  (2)警告:不必然重要的事件也能提议潜在的标题。举个例子,假如磁盘空间低,便会记录两个警告。

Index 获取该项在事变日志中的索引

Index 获取该项在事变日志中的索引

  (三)
音信:描述应用程序、驱动程序或劳动是或不是操作成功的事件。比如,假若互联网驱动程序成功加载,便会记录二个音信事件。

MachineName 获得在发出该项的微管理器的称谓

MachineName 获得在发出该项的Computer的名号

  (四)成功查处:接受审查且获得成功的平安访问尝试。举个例子,用户对系统的中标登陆尝试将作为1个“成功查处”事件被记录下来。

Message 得到与该事件的本地化音信

Message 获得与该事件的本地化新闻

  (伍)退步审核:接受审核且未得逞的平安访问尝试。比如,假设用户希图访问互连网驱动器但未成功,该尝试将用作“退步审核”被记录下来。

ReplacementStrings 获取对应当项替换字符串 

ReplacementStrings 获取对应该项替换字符串 

 

Source 获取生成该事件的应用程序的名目

Source 获取生成该事件的应用程序的称呼

(2)维护服务器安全实例

TimeGenerated 获取生成该事件的当地时间

TimeGenerated 获取生成该事件的地点时间

  壹.开荒并查阅事件查看器中的三类日志

提姆eWritten 获取在日记写入该事件的地面时间

TimeWritten 获取在日记写入该事件的本土时间

  在“运转”中输入“eventvwr.msc”直接展开事件查看器,在该窗口中单击“系统”,如图一所示,单击窗口右侧的档次进行排序,能够观察类型中有警示、错误等多条音讯。

UserName 获取担当该事件的用户的名号

UserName 获取担当该事件的用户的称谓

home88一必发 2

 示例代码:

 示例代码:

  图1 展开并查阅系统日志

 static void Main(string[] args)
        {
            EventLog eventLog = new EventLog();
            eventLog.Log = "System";//日志的类型 有应用程序 系统 等等
            EventLogEntryCollection eventLogEntryCollection = eventLog.Entries;//获取事件日志的内容
            EventLogEntry entry = eventLogEntryCollection[eventLogEntryCollection.Count-1];
            string[] title = { entry.EntryType.ToString(),
                   entry.TimeGenerated.ToLongDateString(), 
                   entry.TimeGenerated.ToLongTimeString(), 
                   entry.Source, entry.Category,    
                   entry.EventID.ToString(), 
                   entry.UserName, entry.MachineName };
            for (int i =0; i <8; i++)
            {
                Console.WriteLine(title[i]);               
            }
            for(int j=0;j <= eventLogEntryCollection.Count - 1; j++)
            {
                Console.WriteLine("\n" + eventLogEntryCollection[eventLogEntryCollection.Count-1].Message);
            }  
        }
 static void Main(string[] args)
        {
            EventLog eventLog = new EventLog();
            eventLog.Log = "System";//日志的类型 有应用程序 系统 等等
            EventLogEntryCollection eventLogEntryCollection = eventLog.Entries;//获取事件日志的内容
            EventLogEntry entry = eventLogEntryCollection[eventLogEntryCollection.Count-1];
            string[] title = { entry.EntryType.ToString(),
                   entry.TimeGenerated.ToLongDateString(), 
                   entry.TimeGenerated.ToLongTimeString(), 
                   entry.Source, entry.Category,    
                   entry.EventID.ToString(), 
                   entry.UserName, entry.MachineName };
            for (int i =0; i <8; i++)
            {
                Console.WriteLine(title[i]);               
            }
            for(int j=0;j <= eventLogEntryCollection.Count - 1; j++)
            {
                Console.WriteLine("\n" + eventLogEntryCollection[eventLogEntryCollection.Count-1].Message);
            }  
        }

  2.翻看系统错误记录详细新闻

  显示效果:

  彰显效果:

  选拔“错误”记录,双击就可以展开并查看事件的习性,如图二所示,能够开掘该事件为多少个攻击事件,其事件描述为:

                   
  home88一必发 3

                      home88一必发 4

  连接自 211.9九.22陆.玖 的几个佚名会话尝试在此计算机上开垦2个 LSA
战略句柄。尝试被以 STATUS_ACCESS_DENIED 拒绝,
防止范将安全敏感的音讯走漏给无名呼叫者。

因为是刚刚掌握,或许具有错误,如有错误,迎接指正

因为是刚刚掌握,大概具有错误,如有错误,应接指正

  进行此品尝的应用程序需求被修正。请与应用程序供应商交流。
作为一时的化解办法,此安全措施得以由此设置:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsaTurnOffAnonymousBlock
DWORubiconD 值为 1 来剥夺。 此新闻将1天最多记录二遍。

home88一必发 5

  图二 查看系统错误事件性质

  表明:该描述消息注脚IP地址为“21一.9九.2二陆.玖”的微型Computer在抨击此服务器。

三.基于提示修补系统漏洞

  依照描述新闻,直接展开注册表编辑器,依次少有张开找到键值“HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLsaTurnOffAnonymous”新建一个DWOKugaD
的 “TurnOffAnonymousBlock Block DWO福睿斯D” 键,并设置其值为“ 一”,如图3所示。

home88一必发 6

  图三 修复系统设有的安全隐患

  表明:借使在事件性质中未提交化解方案,除了在google中索求消除办法外,还是能对错误音信实行追踪,以找到合适的缓和格局,一般有三种方法:

  (一)微软知识库。微软知识库的小说是由微软公司官方材质和微软MVP撰写的才干文章结合,首要化解微软产品的主题素材及故障。当微软每1个出品的Bug和轻巧出错的应用点被发觉后,都将有与其相应的KB小说分析这项错误的消除方案。微软知识库的地址是:

  (2)通过伊夫ntid.net网址来查询

  要询问系统错误事件的解决方案,其实还有2个越来越好的地点,这便是伊芙ntid.net网站地址是:
伊夫nts(寻觅事件)”链接,出现风云寻觅页面。依据页面提示,输入伊夫nt
ID(事件ID)和伊夫nt
Source(事件源),并单击“Search”按键。伊芙ntid.net的系统会找到全体有关的能源及缓和方案。最要紧的是,享受那么些消除方案是完全无需付费的。当然,伊芙ntid.net的付费用户则能享用到越来越好的服务,比如直接待上访问针对某事件的知识库小说集等。

  4.多边复查

  既然出现了LSA的无名枚举,那么早晚上的集会存在登陆音信,如图肆所示,单击“安全性”查看事件性质,先针对“审核退步”举办查看,能够见到IP地址“211.9九.226.九”的累累连连退步的核查音讯。供给尤其注意的是,事件查看器中著录的日志必须先在安全计策中张开设置,私下认可景况下不记录,只要启用审核之后才记录。然后依次查看审核成功的记著名记者录,假如发掘该IP地址登五分之三功,那么还索要对系统实行到底的广元检查,包含修改登陆密码,查看系统时候被攻击者留下了方便之门。在本例中首要事件就是IP地址为211.9玖.2贰陆.九的服务器在进展密码攻击扫描,依据事件性质中提供的政策进行安装后,就能够减轻该无名氏枚举的安全隐患。

home88一必发 7

 

 

 

发表评论

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

网站地图xml地图