专栏首页Khan安全团队一分钟Linux日志分析

一分钟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/ 文件夹下

对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等信息。

我学会了你呢?


Nfuzz:

2020-3-11更新,修复报错,目录扫描模块修改(现 在 目 录 扫 描 也 需 要 "FUZZ" 占位符)

项目地址:http://www.khan.org.cn/index.php/2020/03/12/nfuzz/

https://github.com/n00B-ToT/nfuzz

本文分享自微信公众号 - Khan安全团队(KhanCJSH),作者:Y3s0

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 护网之Linux应急处理操作手册

    虽然今天处置的时候并非本文章情况,等过段时间结束了我在发一下我的处置过程涉及到的技术点以及思路

    Aran
  • 模糊测试之DirBuster

    DirBuster是一个多线程的基于Java的应用程序设计用于暴力破解Web 应用服务器上的目录名和文件名的工具 。

    Aran
  • 护网Linux应急处置操作手册-Tools篇

    HVV行动已经进行到了11天,处置的工作明显增多,随着各种情况发生,所以这两天分别整理一些关于Linux和Windows的排查手册。

    Aran
  • 如何快速定位MySQL 的错误日志

    这些日志可以帮助我们定位 mysqld 内部发生的事件,数据库性能故障,记录数据的变更历史,用户恢复数据库等。本文主要讲解错误日志文件(Error Log)相关...

    lyb-geek
  • Linux日志安全分析技巧

    本文主要介绍Linux日志分析的技巧,更多详细信息请访问Github地址,欢迎Star。

    Bypass
  • 基于elasticsearch的自定义业务告警的设计思路

    A系统与B系统之间有很多接口交互,但是有一段时间接口经常报错,作为开发如果不能第一时间知道问题且及时解决的话就会收到业务投诉,当月绩效凉凉。

    JAVA日知录
  • PHP代码调试与日志

    PHP代码调试与日志 (原创内容,转载请注明来源,谢谢) 一、代码调试 由于PHP很少有类似java、.NET的断点调试工具,因此通常都是要采用输出中间结果的...

    用户1327360
  • SSDB 配置文件

    SSDB 的配置非常简单, 附带的 ssdb.conf 你不用修改便可以使用. 如果你要高度定制, 还是需要修改一些配置的. 下面做介绍. SSDB 的配置文件...

    joshua317
  • raft 系列解读(3) 之 代码实现最小规则followercandidateleader规则RequestVote RPCAppendEntries RPC

    首先,其实raft如果你不去看理论正确性的证明,光实现的话,只要按照raft里面给出的原则写代码就ok!如果代码写出来不正确,只能是你自己实现的问题。囧

    zhuanxu
  • .NET Core下的日志(2):日志模型详解

    NET Core的日志模型主要由三个核心对象构成,它们分别是Logger、LoggerProvider和LoggerFactory。总的来说,LoggerPro...

    蒋金楠

扫码关注云+社区

领取腾讯云代金券