Java教程

应急响应常用知识备忘录

本文主要是介绍应急响应常用知识备忘录,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

前言

我们在处理日常的应急响应还是事件排查过程中很多时候最直接面对的事情就是查日志,但是很多日志很杂,也不知道具体记录着什么,因此笔者一般边查边搜,为查漏补缺,特此记录:

linux日志

日志类型

日志类型大致可以分为三类,内核和系统日志、用户日志、应用日志。

内核和系统日志:这种日志主要由syslog管理、根据其配置文件/etc/syslog.conf中的设置决定内核消息和各种系统程序信息记录到哪个位置。

用户日志:用户日志主要记录系统用户登录或者退出的信息,包括用户名账号、登录时间、源IP等。

应用日志:记录应用程序运行过程中的各种事件信息。

常见的日志文件

日志文件

说明

/var/log/messages

记录系统重要信息日志

/var/log/secure

记录验证和授权方面的信息,例如ssh登录、su切换用户、添加用户等

/var/log/maillog

记录系统运行电子邮件服务器的日志信息。

/var/log/cron

记录系统定时任务相关日志

/var/log/boot.log

记录系统启动时候的日志,包括自启动的服务

/var/log/dmesg

记录内核缓冲信息

/var/log/bmtp

记录所有登录失败的日志

/var/log/wtmp

用户每次登录进入和退出时间的永久记录

/var/log/lastlog

记录所有用户的最近信息。

通常日志文件都会存放在/var/log/ 文件夹下

btmp、wtmp是二进制文件,可用打开方式:
last -fa /var/log/btmp:

对linux日志有所熟悉,才能在需要的时候快速地找出问题所在,及时解决问题。

日志分析

在日志分析的过程中,大部分日志文件都可以通过使用cat、tail、more等文本处理工具就可以查看日志内容。举例栗子:

针对secure日志,可以使用grep、awk、sort等命令工具对secure日志进行分析,

例如

  1. 定位有多少个IP对root帐号进行爆破

grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more
2. 对爆破的IP进行定位

grep "Failed password" /var/log/secure | grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)" | uniq -c
3. 登录成功的日期、用户名、IP

grep "Accepted" /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
4.增加和删除用户

grep “useradd”or “userdel”/var/log/secure
针对应用程序的日志,也可以使用以上命令组合使用。如果日志容量过大的话,可以使用split命令工具对其进行分割,对应的命令为 split -b ***MB/BB/KB filename -d -a 数字后缀长度 文件名前缀,例如:

split -b 5MB /var/log/message -d -a 2 message

如果服务器是通过网站被入侵的情况下,可以把应用程序的access.log日志中状态码为200的记录,grep定向到文本中,再进行整理分析,这样能快速地入侵定位IP、上传的文件等。

grep " 200 " *.log > *.log
针对用户日志的话,只能使用last,w,who等命令工具进行分析。例如我们对wtmp日志进行查看,使用last -f wtmp

last 可以添加-t参数,查看特定日期之前登录的IP等信息。

这篇关于应急响应常用知识备忘录的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!