用户
搜索
  • TA的每日心情
    开心
    2021-6-2 18:57
  • 签到天数: 18 天

    连续签到: 1 天

    [LV.4]经常看看II

    i春秋作家

    Rank: 7Rank: 7Rank: 7

    14

    主题

    41

    帖子

    784

    魔法币
    收听
    0
    粉丝
    3
    注册时间
    2019-4-17

    i春秋签约作者

    发表于 2021-6-2 19:05:54 48622
    本帖最后由 精通linux开关机 于 2021-6-2 19:08 编辑

    应急响应系列(Windows日志使用)

    一、简介

    ​        ​        从1993年Windows NT3.1起,微软使用事件日志记录各种事件的信息。事件日志发展至今,在Windows网络操作系统,除了应用程序日志,安全日志、系统日志、Scheduler服务日志,还有网络应用相关的 FTP日志、WWW日志、DNS服务器日志。

    ​        ​        事件日志可记录系统中硬件、软件和系统问题的信息,还可监视系统中发生的事件,记录敏感操作关键信息,有助于提高系统的网络安全性,有助于系统安全工作人员找到安全事件的根本原因。        

    二、事件查看器

    ​        ​        事件查看器(eventvwr.msc)由微软开发,内置于Microsoft Windows NT操作系统中的组件。它让用户能够透过系统管理员的身份来查看所使用或远程电脑的所有事件。Windows Vista中的事件查看器则重新设计过。

    ​        ​         Windows主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志。

    ​        ​        前两者,存储着故障排除信息,对于系统管理员更为有用;后者,记录着事件审计信息,包括用户验证(登录、远程访问等)和特定用户在认证后对系统做了什么,对于调查人员而言,更有帮助。

    1.系统日志

    ​        ​        系统日志记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。

    ​        ​        默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx

    2.应用程序日志

    ​        ​        应用程序日志包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录,也许会有助于你解决问题。

    ​        ​        默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx

    3.安全日志

    ​        ​        安全日志记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。

    ​        ​        默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx

    4.审核设置建议

    ​        ​        从 Windows 10 版本1809开始,默认启用审核登录。 在过往 Windows版本中,默认仅启用成功。

    ​        ​        Windows Server 2016Windows Server 2012 R2Windows Server 2012Windows Server 2008 R2,在默认状态下并未启用 ,仅记录一些简单的日志,日志默认大小20M。建议开启审核策略,若日后系统出现故障、安全事故则可查看系统的日志文件,排除故障,追查入侵者信息等。

    审核策略类别或子类别 Windows 默认值 否则 基线建议 否则 更强建议 否则
    帐户登录
    审核凭据验证 No  \|  No Yes  \|  Yes Yes  \|  Yes
    审核 Kerberos 身份验证服务 Yes  \|  Yes
    审核 Kerberos 服务票证操作 Yes  \|  Yes
    审核其他帐户登录事件 Yes  \|  Yes

    ​        ​        更多细节可见:https://docs.microsoft.com/zh-cn/windows-server/identity/ad-ds/plan/security-best-practices/audit-policy-recommendations

    5.启用审核配置

    ​        ​        Windows Server 2008系统的审核功能在默认状态下并没有启用。

    系统默认审核策略,如下图所示:

    v1.png

    6.合理的日志属性

    ​        ​        在部分基线检查中要求保留90天以上系统日志,这些日志可为日后系统故障排除故障、安全事故追查入侵者提供依据。

    系统默认日志属性,如下图所示:

    v2.png

    三、日志分析

    ​        ​        通过分析日志寻找入侵痕迹工作量较大,掌握必要的技巧较为关键。过滤掉许多毫无价值的数据泥潭,有助于快速定位入侵事件。首要的过滤依据是EVENT ID,例如黑客对系统进行RDP爆破,系统将在安全日志里记录探测者探测时所用的IP、时间、用户名等,在安全日志中以EVENT ID=4625进行查看事件属性。

    查看事件属性,效果如下图所示:

    v3.png

    ​        ​        常用作快速定位的事件ID还有许多,以下表格是常用的事件说明:

    事件ID 说明
    104 清除日志
    4720 创建用户
    4624 登录成功
    4625 登录失败
    4634 注销成功
    4647 用户启动的注销
    4672 使用超级用户(如管理员)进行登录

    ​        ​        每个成功登录的事件都会标记一个登录类型,不同登录类型代表不同的方式:

    登录类型 描述 说明
    2 交互式登录(Interactive) 用户在本地进行登录。
    3 网络(Network) 最常见的情况就是连接到共享文件夹或共享打印机时。
    4 批处理(Batch) 通常表明某计划任务启动。
    5 服务(Service) 每种服务都被配置在某个特定的用户账号下运行。
    7 解锁(Unlock) 屏保解锁。
    8 网络明文(NetworkCleartext) 登录的密码在网络上是通过明文传输的,如FTP。
    9 新凭证(NewCredentials) 使用带/Netonly参数的RUNAS命令运行一个程序。
    10 远程交互,(RemoteInteractive) 通过终端服务、远程桌面或远程协助访问计算机。
    11 缓存交互(CachedInteractive) 以一个域用户登录而又没有域控制器可用

    ​        ​        更多细节可见:https://support.microsoft.com/zh-cn/help/977519/description-of-security-events-in-windows-7-and-in-windows-server-2008

    ​        ​        快速提取关键事件(时间倒叙)可用powershell命令:Get-WinEvent -FilterHashtable @{LogName='Security';ID='4624'} 以及 Get-WinEvent -FilterHashtable @{LogName='Security'}

    快速提取关键事件,效果如下图所示:

    v4.png

    四、相关工具

    1.Log Parser

    ​        ​        下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=24659
    ​        ​        使用示例:https://mlichtenberg.wordpress.com/2011/02/03/log-parser-rocks-more-than-50-examples/
    ​        ​        Log Parser由微软公司出品,其功能强大,使用简单,可以分析基于文本的日志文件、XML  文件、CSV(逗号分隔符)文件,以及Microsoft Windows操作系统的事件日志、注册表、文件系统、Active Directory。

    ​        ​        Log Parser 使用 SQL语法查询分析日志,甚至可以把分析结果以各种图表的形式展现出来。

    a.基本查询结构
    Logparser.exe –i:EVT –o:DATAGRID "SELECT * FROM .\xx.evtx"
    b.分析日志
    (1)查询登录成功的事件
    登录成功的所有事件
    LogParser.exe -i:EVT –o:DATAGRID  "SELECT recordnumber,timegenerated,eventid,Computername,EXTRACT_TOKEN(Message,38,' ') as Loginip  FROM .\Security1.evtx where EventID=4624"
    
    指定登录时间范围的事件:
    LogParser.exe -i:EVT –o:DATAGRID  "SELECT recordnumber,timegenerated,eventid,Computername,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM .\Security1.evtx where TimeGenerated>'2021-04-25 00:00:01' and TimeGenerated<'2021-04-30 00:00:01' and EventID=4624"
    
    提取登录成功的用户名和IP:
    LogParser.exe -i:EVT  –o:DATAGRID  "SELECT EXTRACT_TOKEN(Message,13,' ') as EventType,TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as Username,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM .\Security1.evtx where EventID=4624"

    查询登录成功的事件,效果如下图所示:

    v5.png

    (2)查询登录失败的事件
    登录失败的所有事件:
    LogParser.exe -i:EVT –o:DATAGRID  "SELECT recordnumber,timegenerated,eventid,Computername,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM .\Security1.evtx where EventID=4625"
    
    提取登录失败用户名进行聚合统计:
    LogParser.exe  -i:EVT "SELECT  EXTRACT_TOKEN(Message,13,' ')  as EventType,EXTRACT_TOKEN(Message,19,' ') as user,count(EXTRACT_TOKEN(Message,19,' ')) as Times,EXTRACT_TOKEN(Message,39,' ') as Loginip FROM .\Security1.evtx where EventID=4625 GROUP BY Message"

    聚合统计登陆失败事件,效果如下图所示:

    v6.png

    (3)系统历史开关机记录
    LogParser.exe -i:EVT –o:DATAGRID  "SELECT TimeGenerated,EventID,Message FROM .\System1.evtx where EventID=6005 or EventID=6006"

    查询开关机事件,效果如下图所示:

    v7.png

    2.LogParser Lizard

    ​        ​        日志分析蜥蜴(LogParser Lizard)带图形界面,其内部封装有logParser命令,这使得操作更为简单,同时集成了Infragistics.UltraChart.Core.v4.3Infragistics.Excel.v4.3.dll等,查询结果可以图表或EXCEL格式展示。与logParser一样,Log Parser Lizard可对服务器日志,网站日志等进行分析,支持基于文本的日志文件,XML文件等内容。
    ​        ​        日志分析蜥蜴下载地址:https://lizard-labs.com/log_parser_lizard.aspx

    ​        ​        依赖包Framework 4 .5,下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=42642

    查询登录成功的事件,效果如下图所示:

    v8.png

    3.Event Log Explorer

    ​        ​        Event Log Explorer是一款非常好用的Windows日志分析工具。可用于查看,监视和分析跟事件记录,包括安全,系统,应用程序和其他微软Windows 的记录被记载的事件,其强大的过滤功能可以快速的过滤出有价值的信息。
    ​        ​        Event Log Explorer下载地址:https://event-log-explorer.en.softonic.com/

    查询登录成功的事件,效果如下图所示:

    v9.png

    五、情景分析

    1.BadUSB

    ​        ​        在一些近源渗透案例中,攻击者使用BadUSB对公司员工的BYOD进行攻击,对这类攻击进行追踪需要着重关注硬件设备安装到系统中的时间,展开追逐前,确保审核策略已正确配置。

    ​        ​        有几个事件ID需要重点关注:

    事件ID 名称 来源
    20001 即插即用驱动安装 System日志
    20003 即插即用驱动安装 Systen日志
    4663 移动设备访问成功 Security日志
    4656 移动设备访问失败 Security日志

    查询在系统中历史安装USB设备事件,效果如下图所示:

    v10.png

    2.WIFI钓鱼

    ​        ​        在一些近源渗透案例中,攻击者使用WIFI伪造手段对办公区域进行钓鱼攻击,对这类攻击进行追踪需要着重分析系统访问过哪些关联的无线网络接入点及位置,展开追逐前,确保审核策略已正确配置。

    ​        ​        有几个事件ID需要重点关注:

    事件ID 名称 来源
    11000 已开始无线网络关联 应用程序和服务日志
    11001 网络关联成功 应用程序和服务日志
    8000 已开始连接无线网络 应用程序和服务日志
    8001 已成功连接到无线网络 应用程序和服务日志
    8002 无法连接到无线网络 应用程序和服务日志
    8003 已成功从无线网络断开 应用程序和服务日志

    查询在系统中历史WIFI连接记录,效果如下图所示:

    v11.png

    3.勒索病毒

    ​        ​        在一些勒索病毒案例中,攻击者投放蠕虫病毒对局域网主机进行RDP爆破,进而横向移动,对这类攻击进行追踪需要着重分析系统登陆事件,展开追逐前,确保审核策略已正确配置。

    ​        ​        有几个事件ID需要重点关注:

    事件ID 说明
    104 清除日志
    4720 创建用户
    4624 登录成功
    4625 登录失败
    4672 使用超级用户(如管理员)进行登录
    7045 系统安装服务
    4697 系统安装服务

    ​        ​        登录类型为10表示登陆成功,注意比对登录成功时间点与勒索病毒加密文件的时间点:

    v12.png

    ​        ​        部分勒索病毒利用P**ec进行内网横移,如密码爆破成功,此类P**ESVC服务将安装,对应将生成Event 4697Event 7045两种事件日志,其中Event 4697日志记录可能包含账号信息。

    六、小结

    ​        ​        本篇以Windows日志为中心,从应急工程师角度记录了一些较为常用的安全审核配置和应急响应工具使用。应急响应工作具有突发性、紧迫性、不确定性。
    ​        ​        目前已有不少应急工程师将应急响应知识整理成思维导图,但我对此有不同的看法,以下是一家之言,思维导图对于经验丰富的应急响应工程师而言是有利工具,但是对于初学者而言,过度依赖比较有害。
    ​        ​        对于经验丰富的应急响应工程师,思维导图可用来发散思维,让工作由繁至简。但注意到,身边存在许多应急响应工程师将思维导图用作笔记用途,所记录的内容往往是一些技巧点,导致每次应急任务后,只收获只言片语的技巧,这习惯不利于职业长远发展。
    ​        ​        学习提升最重要的不是记录了什么,而是自己的思考,因此建议初学者尝试写下一些完整的文字,记录应急响应过程中从外界获得与我们自身的知识结构产生思维火花的东西,这可以帮助我们形成独立思考,不断加深应急响应、溯源工作深度。

    发表于 2021-6-3 00:09:51
    顶顶顶,大佬求更,最近正好在搞这方向的
    使用道具 举报 回复
    大佬求更,
    使用道具 举报 回复
    帮顶                  
    使用道具 举报 回复
    发表于 2021-6-7 13:01:37
    学会操作了
    使用道具 举报 回复
    发新帖
    您需要登录后才可以回帖 登录 | 立即注册