您当前的位置: 首页 >  linux

星球守护者

暂无认证

  • 4浏览

    0关注

    641博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

应急响应日志分析之第二篇Linux日志分析

星球守护者 发布时间:2021-12-05 18:48:21 ,浏览量:4

文章目录
      • 0x00 介绍
      • 0x01 linux日志简介
      • 0x02 日志分析技巧
        • 0x001 常用的shell命令
        • 0x002 日志分析技巧
      • 摘抄

0x00 介绍
  • Linux系统拥有非常灵活和强大的日志功能,可以保存几乎所有的操作记录,
  • 并可以从中检索出我们需要的信息
0x01 linux日志简介

日志默认存放位置:/var/log/ 在这里插入图片描述

查看日志配置情况:more /etc/rsyslog.conf

日志文件说明/var/log/cron记录了系统定时任务相关的日志/var/log/cups记录打印信息的日志/var/log/dmesg记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息/var/log/mailog记录邮件信息/var/log/message记录系统重要信息的日志。这个日志文件中会记录Linux系统的绝大多数重要信息,如果系统出现问题时,首先要检查的就应该是这个日志文件/var/log/btmp记录错误登录日志,这个文件是二进制文件,不能直接vi查看,而要使用lastb命令查看/var/log/lastlog记录系统中所有用户最后一次登录时间的日志,这个文件是二进制文件,不能直接vi,而要使用lastlog命令查看/var/log/wtmp永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi,而需要使用last命令来查看/var/log/utmp记录当前已经登录的用户信息,这个文件会随着用户的登录和注销不断变化,只记录当前登录用户的信息。同样这个文件不能直接vi,而要使用w,who,users等命令来查询/var/log/secure记录验证和授权方面的信息,只要涉及账号和密码的程序都会记录,比如SSH登录,su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中

比较重要的几个日志:

  • 登录失败记录:/var/log/btmp //lastb
lastb指令,它会读取位于/var/log/btmp的文件,
并把该文件内容记录的登入系统失败的用户名单,全部显示出来。
btmp是二进制文件,所以用 last -f /var/log/btmp 结果一样。

ssh服务错误登录的日志,发现正在被进行暴力破解 在这里插入图片描述

在这里插入图片描述

  • 最后一次登录:/var/log/lastlog /lastlog
-b  只显示几天前的用户最后登录记录
-t   只显示最近几天的用户最后登录记录
-u   只显示指定用户的最后登录记录

在这里插入图片描述 在这里插入图片描述

  • 登录成功记录: /var/log/wtmp //last
第一列信息:用户名,或者显示reboot(启动或者重启操作在这里会记录成reboot)
第二列信息:终端位置,pts/0 (伪终端或虚拟终端) 意味着从诸如SSH或telnet的远程连接的用户。
                 tty (teletypewriter) 意味着直接连接到计算机或者本地连接的用户,如果是启动或者重启操作,这里会显示成system boot
第三列信息:登录ip或者内核,如果你看见:0.0 或者什么都没有,这意味着用户通过本地终端连接。
                  也有在状态中显示内核版本的信息,笔者猜测这些记录应该是属于系统的操作,如开机,关机,重启等操作
第四列信息:开始时间,其中的日期格式为date +"%a %b %d"
第五列信息:结束时间(still login in 还未退出 down 直到正常关机 crash 直到强制关机)
第六列信息:持续时间

在这里插入图片描述 在这里插入图片描述

  • 登录日志记录:/var/log/secure
作用:记录登入系统存取数据,例如pop3, ssh, telnet, ftp 等都会记录在此日志中
关注信息:记录添加用户,更改密码等。
ssh登录日志会存储于/var/log/secure中,
若日志中出现连续大量的登录错误信息,则可能意味着远程主机在尝试破解ssh登录口令。

字段信息 月份 日期 时分秒 服务器主机名 程序(sshd或则su) 模块 详细信息 在这里插入图片描述

  • 正常通过ssh连接进服务器的日志 在这里插入图片描述

  • 正常登陆后,退出日志 在这里插入图片描述

  • 新添加用户wangchang,并且设置密码 在这里插入图片描述

  • 切换到其他用户日志 通过root用户切换到wangchang用户 在这里插入图片描述 wangchang用户关闭,回到root用户 在这里插入图片描述

  • 使用root用户登录进系统户,切换到wangchang用户,直接从wangchang用户关掉连接窗口。 在这里插入图片描述

  • 连接到服务器,提示输入密码时取消了 在这里插入图片描述 在这里插入图片描述

  • 密码输入错误 不存在的用户尝试 在这里插入图片描述 三次密码错误 在这里插入图片描述* 使用uid=0的权限的su命令,切换root,密码错误次数太多 在这里插入图片描述

  • 目前登录用户信息:/var/run/utmp //wwhousers 在这里插入图片描述

历史命令记录:history 仅清理当前用户: history -c 关闭history记录功能:set +o history 打开history记录功能:set -o history 在这里插入图片描述

0x02 日志分析技巧 0x001 常用的shell命令

Linux下常用的shell命令如:find、grep 、egrep、awk、sed

小技巧:

1、grep显示前后几行信息:


​	标准unix/linux下的grep通过下面參数控制上下文:
​	grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行
​	grep -B 5 foo file 显示foo及前5行
​	grep -A 5 foo file 显示foo及后5行
​	查看grep版本号的方法是
​	grep -V

2、grep 查找含有某字符串的所有文件

	grep -rn "hello,world!" 
	* : 表示当前目录所有文件,也可以是某个文件名
	-r 是递归查找
	-n 是显示行号
	-R 查找所有文件包含子目录
	-i 忽略大小写

3、如何显示一个文件的某几行:

	cat input_file | tail -n +1000 | head -n 2000
	#从第1000行开始,显示2000行。即显示1000~2999行

4、find /etc -name init

//在目录/etc中查找文件init

5、只是显示/etc/passwd的账户

`cat /etc/passwd |awk  -F ':'  '{print $1}'`  
//awk -F指定域分隔符为':',将记录按指定的域分隔符划分域,填充域,​$0则表示所有域,$1表示第一个域,​$n表示第n个域。

6、sed -i ‘153,$d’ .bash_history

删除历史操作记录,只保留前153行
0x002 日志分析技巧

A、/var/log/secure

  • 1、定位有多少IP在爆破主机的root帐号: grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more 在这里插入图片描述 在这里插入图片描述

定位有哪些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

在这里插入图片描述

爆破用户名字典是什么? grep "Failed password" /var/log/secure|perl -e 'while($_=){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr 在这里插入图片描述

  • 2、登录成功的IP有哪些: grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more 在这里插入图片描述

登录成功的日期、用户名、IP: grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}' 在这里插入图片描述

  • 3、增加一个用户日志:
Dec  5 17:22:04 centos useradd[2228]: new group: name=wangchang, GID=1001
Dec  5 17:22:04 centos useradd[2228]: new user: name=wangchang, UID=1001, GID=1001, home=/home/wangchang, shell=/bin/bash
Dec  5 17:23:18 centos passwd: pam_unix(passwd:chauthtok): password changed for wangchang

在这里插入图片描述

  • 4、删除用户kali日志:
[root@centos log]#  grep "userdel" /var/log/secure
Dec  5 18:36:58 centos userdel[26792]: delete user 'wangchang'
Dec  5 18:36:58 centos userdel[26792]: removed group 'wangchang' owned by 'wangchang'
Dec  5 18:36:58 centos userdel[26792]: removed shadow group 'wangchang' owned by 'wangchang'

在这里插入图片描述

  • 5、su切换用户:
Dec  5 17:28:47 centos su: pam_unix(su:session): session opened for user wangchang by root(uid=0)
Dec  5 17:28:57 centos su: pam_unix(su:session): session closed for user wangchang

在这里插入图片描述

sudo授权执行:

Dec  5 18:34:13 centos sudo: pam_unix(sudo:session): session opened for user root by root(uid=0)
Dec  5 18:34:13 centos su: pam_unix(su:session): session opened for user wangchang by root(uid=0)
Dec  5 18:34:34 centos su: pam_unix(su:session): session closed for user wangchang
Dec  5 18:34:34 centos sudo: pam_unix(sudo:session): session closed for user root

在这里插入图片描述

2、/var/log/yum.log

软件安装升级卸载日志:

 cat  /var/log/yum.log | tail  -n 20

在这里插入图片描述

摘抄

有朵盛开的云缓缓滑过山顶随风飘向天边我们慢慢明白有些告别就是最后一面。 —《云边有个小卖部

关注
打赏
1662051426
查看更多评论
立即登录/注册

微信扫码登录

0.0500s