文章目录
系统日志分析
日志分析是指对系统、应用程序或网络设备生成的日志进行收集、解析和分析的过程。通过对日志数据进行分析,可以获得有关系统运行状态、故障排查、性能优化、安全审计等方面的有用信息。
在日志分析过程中,通常会执行以下步骤:
-
收集日志:将系统、应用程序或网络设备生成的日志数据进行收集。这些日志数据可以包括操作系统日志、应用程序日志、数据库日志、网络设备日志等。
-
解析日志:对收集到的日志数据进行解析,将其转化为结构化的格式,以便后续的分析处理。解析过程可能涉及提取关键字段、识别事件类型、处理时间戳等操作。
-
数据存储:将解析后的日志数据存储到适当的存储系统中,如关系型数据库、NoSQL数据库或日志管理平台。这样可以方便后续的查询和分析操作。
-
分析日志:应用各种分析技术和工具来分析日志数据,以发现潜在的问题、异常行为、趋势和关联性等。常见的分析方法包括统计分析、数据挖掘、机器学习和人工智能等。
-
生成报告和可视化:根据分析结果生成报告和可视化图表,以便用户更直观地理解和利用分析结果。这样可以帮助用户做出决策、改进系统性能或安全性。
1. Windows系统日志分析
1.1 日志位置
1.1.1 系统日志 System.evtx
系统日志System.evtx中记录系统中硬件、软件和系统问题的信息,用户可以通过它来检查错误发生的原因或者寻找受到攻击时攻击者留下的痕迹。
系统日志默认位置:C:\Windows\System32\winevt\Logs\System.evtx
1.1.2 应用程序日志 Application.evtx
应用程序日志Application.evtx中记录程序在运行过程中的日志信息。
应用程序日志的默认位置:C:\Windows\System32\winevt\Logs\Application.evtx
1.1.3 安全日志 Security.evtx
安全日志Security.evtx:登录日志、对象访问日志、进程追踪日志、特权使用、账号管理、策略变更、系统事件。
安全日志的默认位置为:C:\Windows\System32\winevt\Logs\Security.evtx
1.2 打开日志审计策略功能
win+R—>gpedit.msc
在默认情况下,安全日志仅记录一些简单的登录日志,否则占用的使用空间过大。如果需要记录详细的安全日志,则需要通过修改本地策略来启用其它项的安全日志记录功能。
1.3 查看系统日志
win+R—>eventvwr
1.4 事件日志分析
1.4.1 日志清除记录——ID:1102
清空安全日志(需要有System权限)
通过cmd清除:win+R—>wevtutil cl “logname(日志名)”
1.4.2 出站入站记录——ID:5156、5158
远程连接:win+R—>mstsc
每一对5156和5158的事件间隔为5s,这是载荷的定时回连操作,目的是keep alive 和get task
1.4.3 账户管理记录——ID:4720、4726
4720:可以查找到创建的用户,隐藏的用户也可以查找到。
4726:可以查找到删除的用户。
添加隐藏用户:net user attack$ Aa123456 /add
删除隐藏用户:net user attack$ /del
创建用户组:net logalgroup group1 /add
查看用户组: net user
1.4.4 安全组管理记录——ID:4732
安全组管理记录
-
4732:查看创建的用户加入了哪个组
-
4733:查看用户从哪个组中被移除了
1.4.5 账户行为记录——ID:4624、4634、4625
账户行为记录
-
4624:用户登录
-
4634:用户注销
-
4625:登录失败
1.4.6 凭证验证记录——ID:4776
凭证验证是指,当你要去访问目标主机的FTP、Samba服务时,目标主机会发起验证请求,要求你输入用户名和密码。日志会详细的记录登录者的工作站、登录账户信息。
1.4.7 计划任务事件——ID:4698、4699、4700、4701、4702
在该事件记录信息中,计划任务schtasks以及at都会被记录在内:包括创建者、任务名称、任务内容等。
-
4698:计划任务已创建
-
4700:计划任务已启用
-
4701:计划任务已停用
-
4702:计划任务已变更
1.4.8 进程创建及终止记录——ID:4688、4689
要记录该日志,需要编辑本地审计策略后重启计算机(上面有讲如何开启策略),重启后便可记录每一个被启动的进程日志,包括软件进程。
1.4.9 根据事件的ID进行筛选
事件id汇总:日志分析/Windows安全事件id汇总。
1.5 日志审计工具
1.5.1 Log Parser
可以分析操作系统的事件日志、注册表、文件系统、Active Directory、IIS。它可以像使用SQL语句一样查询分析这些数据,甚至可以把分析结果以各种图表的形式展现出来。
下载地址:Download Log Parser 2.2 from Official Microsoft Download Center
1.5.2 Event Log Explorer
Event Log Explorer是一款非常好用的Windows日志分析工具。可用于查看,监视和分析跟事件记录,包括安全,系统,应用程序和其他微软Windows 的记录被记载的事件,其强大的过滤功能可以快速的过滤出有价值的信息。
下载地址:Windows 事件日志分析软件
2. Linux系统日志分析
2.1 用户登录日志
用户登录日志位置
- /var/log/lastlog:(每个用户最后的登录信息)
- /var/log/wtmp:(每个用户登录/注销、系统启动/停机)
- /var/log/utmp:(当前登录的用户信息)
- /var/log/vtmp:(所有登录失败的信息)
例如:last命令读取/var/log/wtmp文件,该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件 。
2.2 系统日志
/var 目录存放系统常态性变换的文件,如缓存、登录文件、程序运行产生的文件等。
/var/log 下存放日志文件。
2.2.1 secure 日志
- 用户登录服务器的相关日志。
cat /var/log/secure
一般用来记录安全相关的信息,记录最多的是用户登录服务器的相关日志。
2.2.2 cron日志
- 查看计划任务运行的相关情况,包括运行日期
cat /var/log/cron
2.2.3 yum日志
- 查看安装日志
cat /var/log/yum.log # 查看安装日志
2.2.4 message日志
该日志文件是许多进程日志文件的汇总,记录有运行信息和认证信息,从该文件可以看出任何入侵企图或成功的入侵。RedHat和CentOs的messages日志位置为 /var/log/messages。
2.2.5 shell日志
Bash 日志存储于用户目录的.bash_history文件中,有些攻击者 SSH 登陆进来之后可能会执行命令,所以该日志可能会记录下执行的命令。该日志存储条目数量与 shell 变量$HISTSIZE 有关。
2.2.6 其他日志
- 查看每次主机引导启动时加载的内容
cat /var/log/boot.log # 每次主机引导启动时加载的内容
- /var/log/syslog
默认 RedHat Linux 不生成该日志文件,但可以配置/etc/syslog.conf让系统生成该日志文件。
- /var/log/xferlog
该日志文件记录 FTP 会话,可以显示出用户向 FTP服务器或从服务器拷贝了什么文件。
2.3 Linux日志查看技巧
-
| grep :检索过滤
-
Uniq命令:检查以删除文本文件重复出现的行/列;当重复的两行不相邻时不起作用,需要结合排序命令sort
-
sort 命令:将内容以行为单位进行排序,默认以ASCII码排序
-
cut命令:从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。如果不指定File参数,cut命令将读取标准输入。
-
awk命令:处理文本文件的命令