应急响应-Linux-日志分析

日志概述
  • Linux系统中的日志一般存放在目录"/var/log"下,具体的日志功能如下。
    • /var/log/wtmp:记录登录进入、退出、数据交换、关机和重启,即last。
    • /var/log/cron:记录与定时任务相关的日志信息。
    • /var/log/messages:记录系统启动后的信息和错误日志。
    • /var/log/apach2/access.log:记录apache的访问日志。
    • /var/log/auth.log:记录系统授权日志,包括用户登录和使用的权限机制等。
    • /var/log/userlog:记录所有等级用户信息的日志。
    • /var/log/xferlog(vsftpd.log):记录LinuxFTP日志。
    • /var/log/lastlog:记录登录的用户,可以使用命令lastlog查看。
    • /var/log/secure:记录大多数应用输入的账户与密码,以及登录成功与否。
    • /var/log/faillog:记录登录系统不成功的账户信息。
  • 通过查看相关的日志文件可以获取相关的日志信息。以下列举常用的日志使用方法。
任务计划操作日志
  • 使用【cat var/log/cron】命令,可查看任务计划相关的操作日志,如图所示。
    • 应急响应-Linux-日志分析_第1张图片

整体系统信息
  • 【cat /var/log/messages】命令,可可查看整体系统信息,其中也记录了某个用户切换到root权限的日志,如图所示。
    • 应急响应-Linux-日志分析_第2张图片

查看验证和授权方面信息
  • 【cat /var/log/secure】命令,可查看验证和授权方面的信息,如sshd会将所有信息(包括失败登录)记录在这里,如图所示。
    • 应急响应-Linux-日志分析_第3张图片

查看邮件相关日志记录文件
  • 【ls -alt /var/spool/mail】命令,可查看邮件相关日志记录文件,如图所示。
    • 应急响应-Linux-日志分析_第4张图片

  • 使用【cat /var/spool/mail/root】命令,可发现针对80端口的攻击行为(当web当我异常时,及时向当前系统配置的邮箱地址发送报警邮件),如图所示。
    • 应急响应-Linux-日志分析_第5张图片

日志分析
常用命令
  • 对应Linux系统日志的分析主要使用【grep】、【sed】、【sort】和【awk】等命令。常用查询日志命令及功能如下。
    • 【tail -n 10 test.log】命令:查询最后10行的日志。
    • 【tail -n +10 test.log】命令:查询10行之后的所有日志。
    • 【head -n 10 test.log】命令:查询头10行的日志。
    • 【head -n -10 test.log】命令:查询除了最后10行的其他所有日志。
统计独立IP命令
  • 在*.log日志文件中统计独立IP地址个数命令如下。
    • 【awk '{print $1}' test.log | sort | uniq | wc -l】
    • 【awk '{print $1}' /access.log | sort | uniq -c | sort -nr | head -10】
定位暴力破解数量
  • 【 cat /var/log/secure |awk '/Accepted/{print $(NF-3)}'|sort|uniq -c|awk '{print$2"="$1;}' (CentOS) 】
查看登录成功IP命令
  • 【 cat /var/log/auth.log |awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print$2"="$1;}' ) (ubuntu) 】
查看登录成功日期、用户名、IP地址
  • 【grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'】
其他日志

除了可对Windwos和Linux系统日志进行分析,还可对Web日志、中间件日志、数据库日志、FTP日志等进行分析,日志分析方法一般是结合系统命令及正则表达式、或者利用相关成熟的攻击进行分析,分析的目的是提前相关特征规则,对攻击者的行为进行分析。

IIS日志位置
  • %SystemDrive%\inetpub\logs\LogFiles;
  • %SystemRoot%\System32\LogFiles\W3SVC1;
  • %SystemDrive%\inetpub\logs\LogFiles\W3SVC1;
  • %SystemDrive%\Windows\System32\LogFiles\HTTPERR。
Apache日志位置
  • /var/log/httpd/access.log;
  • /var/log/apache/access.log;
  • /var/log/apache2/access.log;
  • /var/log/httpd-access.log。
Nginx日志位置
  • 默认在/usr/local/nginx/logs 目录下,access.log 代表访问日志,error.log 代表错误日志。若没有在默认路径下,则可以到 nginx.conf 配置文件中查找。
Tomcat日志位置
  • 默认在 TOMCAT_HOME/logs/目录下,有 catalina.out、catalina.YYYY-MM-DD.log、localhost.YYYY-MM-DD.log、localhost_access_log.YYYY-MM-DD.txt、host-manager.YYYY-MM-DD.log、manager.YYYY-MM-DD.log 等几类日志。
Vsftp日志位置
  • 在默认情况下,Vsftp 不单独记录日志,而是统一存放到/var/log/messages 中。但是可以通过编辑/etc/vsftp/vsftp.conf 配置文件来启用单独的日志。在日志启用后,可以访问 vsftpd.log 和 xferlog。
WebLogic日志位置
  • 在默认情况下,WebLogic 有三种日志,分别是 access log、server log 和 domain

log。

  • access log 的位置是$MW_HOME\user_projects\domains\\servers\\logs\access.log。
  • server log 的位置是$MW_HOME\user_projects\domains\\servers\\logs\.log。
  • domain log 的位置是$MW_HOME\user_projects\domains\\servers\\logs\.log。
数据库日志
  • Oracle 数据库查看方法如下。
  • 使用【select * from v$logfile】命令,可查询日志路径。在默认情况下,日志文件记录在$ORACLE/rdbms/log 目录下。使用【select * from v$sql】命令,可查询之前使用过的 SQL。
  • MySQL 数据库查看方法如下。
  • 使用【show variables like 'log_%'】命令,可查看是否启用日志,如果日志已开启,则默认路径为/var/log/mysql/。使用【show variables like 'general'】命令,可查看日志位置。
  • MsSQL 数据库查看方法如下。
  • 一般无法直接查看,需要登录到 SQL Server Management Studio,在“管理—SQL Server 日志”中进行查看。

你可能感兴趣的:(服务器,运维,linux,安全,网络)