Linux应急响应-常见服务日志篇
字数 1580 2025-08-06 12:20:41

Linux应急响应-常见服务日志分析指南

1. 日志分析基础

1.1 日志的重要性

  • 日志是系统活动的历史记录
  • 是应急响应中最重要的证据来源之一
  • 可追溯攻击路径、确定攻击时间、分析攻击手法

1.2 日志存储位置

  • /var/log/:主要日志目录
  • /var/log/messages:通用系统消息
  • /var/log/syslog:系统日志
  • /var/log/auth.log:认证相关日志
  • /var/log/secure:RedHat系认证日志
  • /var/log/kern.log:内核日志
  • /var/log/dmesg:启动消息

2. 常见服务日志分析

2.1 SSH服务日志

日志位置

  • /var/log/auth.log (Debian/Ubuntu)
  • /var/log/secure (RedHat/CentOS)

关键事件

  1. 成功登录:
    Accepted password for user from 192.168.1.100 port 22 ssh2
    
  2. 失败登录:
    Failed password for root from 192.168.1.100 port 22 ssh2
    
  3. 无效用户尝试:
    Invalid user test from 192.168.1.100 port 22
    
  4. 暴力破解特征:
    • 短时间内大量失败登录尝试
    • 多个不同用户名尝试

2.2 Web服务日志

Apache日志

日志位置

  • /var/log/apache2/access.log (访问日志)
  • /var/log/apache2/error.log (错误日志)

关键分析点

  1. 常见攻击特征:
    • SQL注入:/index.php?id=1'
    • XSS攻击:/search.php?q=<script>
    • 目录遍历:/../../etc/passwd
    • 文件包含:/index.php?page=../../../etc/passwd
  2. 扫描器特征:
    • 大量404错误
    • 短时间内请求多种不常见路径
    • 包含常见漏洞扫描路径如/phpmyadmin/, /admin/

Nginx日志

日志位置

  • /var/log/nginx/access.log
  • /var/log/nginx/error.log

分析要点

  • 与Apache类似,但日志格式可能不同
  • 关注$request字段中的可疑请求

2.3 数据库日志

MySQL日志

日志位置

  • /var/log/mysql/mysql.log
  • /var/log/mysql/error.log

关键事件

  1. 异常登录:
    Access denied for user 'root'@'192.168.1.100'
    
  2. 可疑查询:
    • 大量SELECT语句
    • UNION SELECT注入特征
    • 异常长的查询语句

PostgreSQL日志

日志位置

  • /var/log/postgresql/postgresql-{version}-main.log

分析要点

  • 关注异常连接和SQL注入特征

2.4 FTP服务日志

日志位置

  • /var/log/vsftpd.log
  • /var/log/xferlog

关键事件

  1. 异常登录尝试
  2. 可疑文件上传/下载
  3. 匿名登录尝试

3. 日志分析技巧

3.1 常用命令

  1. 基本查看:
    cat /var/log/auth.log
    less /var/log/syslog
    tail -f /var/log/messages
    
  2. 过滤搜索:
    grep "Failed" /var/log/auth.log
    grep -i "error" /var/log/syslog
    
  3. 时间范围筛选:
    sed -n '/Mar 15 10:00/,/Mar 15 12:00/p' /var/log/auth.log
    journalctl --since "2023-03-15 10:00:00" --until "2023-03-15 12:00:00"
    
  4. 统计排序:
    awk '{print $1}' /var/log/auth.log | sort | uniq -c | sort -nr
    

3.2 自动化分析工具

  1. logwatch:日志摘要工具
  2. fail2ban:自动封禁暴力破解IP
  3. goaccess:Web日志分析工具
  4. ELK Stack:专业日志分析平台

3.3 关键时间点分析

  1. 查找异常时间登录:
    grep "Accepted" /var/log/auth.log | awk '{print $1,$2,$3}'
    
  2. 分析非工作时间活动

4. 日志保护与加固

4.1 日志保护措施

  1. 设置日志文件权限:
    chmod 640 /var/log/auth.log
    chown root:adm /var/log/auth.log
    
  2. 启用日志远程传输
  3. 配置日志轮转

4.2 日志篡改检测

  1. 检查日志文件完整性:
    ls -l /var/log/auth.log
    
  2. 查看日志文件是否被删除重建
  3. 使用auditd监控关键日志文件

5. 实战案例分析

5.1 SSH暴力破解分析

  1. 统计失败登录次数:
    grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr
    
  2. 识别攻击源IP
  3. 分析攻击时间线

5.2 Web应用攻击分析

  1. 查找可疑HTTP请求:
    grep -E "(union|select|from|where|--|sleep|benchmark)" /var/log/apache2/access.log
    
  2. 识别攻击路径
  3. 确定受影响页面

6. 总结

  • 日志分析是应急响应的核心环节
  • 不同服务日志需采用不同分析方法
  • 自动化工具可提高分析效率
  • 日志保护与监控同样重要
Linux应急响应-常见服务日志分析指南 1. 日志分析基础 1.1 日志的重要性 日志是系统活动的历史记录 是应急响应中最重要的证据来源之一 可追溯攻击路径、确定攻击时间、分析攻击手法 1.2 日志存储位置 /var/log/ :主要日志目录 /var/log/messages :通用系统消息 /var/log/syslog :系统日志 /var/log/auth.log :认证相关日志 /var/log/secure :RedHat系认证日志 /var/log/kern.log :内核日志 /var/log/dmesg :启动消息 2. 常见服务日志分析 2.1 SSH服务日志 日志位置 : /var/log/auth.log (Debian/Ubuntu) /var/log/secure (RedHat/CentOS) 关键事件 : 成功登录: 失败登录: 无效用户尝试: 暴力破解特征: 短时间内大量失败登录尝试 多个不同用户名尝试 2.2 Web服务日志 Apache日志 日志位置 : /var/log/apache2/access.log (访问日志) /var/log/apache2/error.log (错误日志) 关键分析点 : 常见攻击特征: SQL注入: /index.php?id=1' XSS攻击: /search.php?q=<script> 目录遍历: /../../etc/passwd 文件包含: /index.php?page=../../../etc/passwd 扫描器特征: 大量404错误 短时间内请求多种不常见路径 包含常见漏洞扫描路径如 /phpmyadmin/ , /admin/ 等 Nginx日志 日志位置 : /var/log/nginx/access.log /var/log/nginx/error.log 分析要点 : 与Apache类似,但日志格式可能不同 关注 $request 字段中的可疑请求 2.3 数据库日志 MySQL日志 日志位置 : /var/log/mysql/mysql.log /var/log/mysql/error.log 关键事件 : 异常登录: 可疑查询: 大量 SELECT 语句 UNION SELECT 注入特征 异常长的查询语句 PostgreSQL日志 日志位置 : /var/log/postgresql/postgresql-{version}-main.log 分析要点 : 关注异常连接和SQL注入特征 2.4 FTP服务日志 日志位置 : /var/log/vsftpd.log /var/log/xferlog 关键事件 : 异常登录尝试 可疑文件上传/下载 匿名登录尝试 3. 日志分析技巧 3.1 常用命令 基本查看: 过滤搜索: 时间范围筛选: 统计排序: 3.2 自动化分析工具 logwatch :日志摘要工具 fail2ban :自动封禁暴力破解IP goaccess :Web日志分析工具 ELK Stack :专业日志分析平台 3.3 关键时间点分析 查找异常时间登录: 分析非工作时间活动 4. 日志保护与加固 4.1 日志保护措施 设置日志文件权限: 启用日志远程传输 配置日志轮转 4.2 日志篡改检测 检查日志文件完整性: 查看日志文件是否被删除重建 使用 auditd 监控关键日志文件 5. 实战案例分析 5.1 SSH暴力破解分析 统计失败登录次数: 识别攻击源IP 分析攻击时间线 5.2 Web应用攻击分析 查找可疑HTTP请求: 识别攻击路径 确定受影响页面 6. 总结 日志分析是应急响应的核心环节 不同服务日志需采用不同分析方法 自动化工具可提高分析效率 日志保护与监控同样重要