应急响应-Linux日志分析

admin 2025年4月8日13:08:15评论11 views字数 2919阅读9分43秒阅读模式
应急响应-Linux日志分析
应急响应-Linux日志分析
应急响应-Linux日志分析
鼎新安全
don't give up and don't give in !

1.有多少IP在爆破主机ssh的root帐号,如果有多个使用","分割

Linux日志分析是指对Liunx系统中生成的日志文件进行检查、监控和分析的过程。  

Linux系统中的日志文件通常存储在 /var/log 目录下,常见的日志文件包括:    /var/log/syslog:记录系统的各种信息和错误。    /var/log/auth.log:记录身份验证相关的信息,如登录和认证失败。    /var/log/kern.log:记录内核生成的日志信息。    /var/log/dmesg:记录系统启动时内核产生的消息。    /var/log/boot.log:记录系统启动过程中的消息。    /var/log/messages:记录系统的广泛消息,包括启动和应用程序信息。    /var/log/secure:记录安全相关的消息。    /var/log/httpd/:记录Apache HTTP服务器的访问和错误日志(若安装了Apache)。    /var/log/nginx/:记录Nginx服务器的访问和错误日志(若安装了Nginx)。

首先肯定是先找到日志的位置,一般来说,SSH登录尝试会记录在 /var/log/auth.log.1og.1

我们需要筛选出涉及到root帐号的SSH失败登录尝试的日志条目,使用grep。

cat auth.log.1 | grep -a "Failed password for root" | awk '{print $11}' | sort | uniq -c | sort -nr | more

grep 命令用于在输入中搜索包含特定模式的行。

-a 选项表示将文件内容视为文本文件

"Failed password for root" 是搜索模式,即查找所有包含"Failed password for root"的行,这些行表示尝试登录root用户的失败尝试。

awk '{print $11}':

awk 是一个文本处理工具,用于按字段处理文本。{print$11} 表示打印每行的第11个字段。假设日志格式为标准格式,第11个字段通常是IP地址。

sort:

sort 命令用于对输入行进行排序。这里是对提取的IP地址进行排序。

uniq -c:

uniq 命令用于删除重复的行。-c 选项表示对每个唯一的行计数,即统计每个IP地址的出现次数。

sort -nr:

sort 命令再次用于排序。-n 选项表示按数值进行排序。-r 选项表示按降序排序。组合起来,即按出现次数从高到低排序。

more:

more 命令用于分页显示输出。由于输出可能很长,more 命令允许用户逐页查看结果。

这条命令的具体功能如下:

  • 从 auth.log.1 文件中筛选出所有尝试登录root用户失败的条目。

  • 提取这些条目中的IP地址(假设IP地址是日志行中的第11个字段)。

  • 对IP地址进行排序和去重,并统计每个IP地址的尝试次数。

  • 将结果按尝试次数降序排序,并分页显示。

应急响应-Linux日志分析

 flag{192.168.200.2,192.168.200.31,192.168.200.32}  要从小到大排列,才能提交

2.ssh爆破成功登陆的IP是多少,如果有多个使用","分割

在linux认证日志中,"Accepted"这个词通常用来标识成功登录, 这包括通过SSH、FTP、sudo等方式的成功登录。  

cat auth.log.1 | grep -a "Accepted " | awk '{print $11}' | sort | uniq -c | sort -nr | more

改一下命令查找

应急响应-Linux日志分析

 flag{192.168.200.2}  

3.爆破用户名字典是什么?如果有多个使用","分割

爆破用户名字典

简单来说指黑客在进行暴力破解攻击时使用的一系列用户名列表。黑客通过自动化工具逐个尝试这些用户名,结合常见或默认密码,试图找到有效的登录凭据。

识别关键日志条目:

确定日志中包含攻击相关信息的条目。例如,SSH 失败登录尝试通常包含“Failed password”关键字,成功登录则包含“Accepted”。

提取有用信息:

使用文本处理工具如 grep、awk、perl 或 sed 提取出关键数据。例如,可以从日志中提取出失败尝试的用户名、IP地址、时间戳等。

统计分析:

对提取出的信息进行统计分析,以确定被尝试最多的用户名和来源IP等。例如,使用 uniq 和 sort 对数据进行去重和排序。

cat auth.log.1 | grep -a "Failed password" |perl -e 'while($_=<>){ /for(.*?) from/; print "$1n";}'|uniq -c|sort -nr

perl -e 'while($_=<>){ /for(.*?) from/; print "$1n";}':

作用:使用Perl脚本从每一行提取出失败登录尝试的用户名。while($_=<>):逐行读取输入。/for(.*?) from/:使用正则表达式匹配模式“for [username] from”,其中[username]是登录尝试的用户名。print "$1n":将提取的用户名打印出来。

应急响应-Linux日志分析

这个命令链条通过以下步骤统计每个用户名的SSH失败登录尝试次数:

读取日志文件并筛选出失败登录的记录。使用Perl脚本从记录中提取用户名。对用户名进行去重和计数。按尝试次数降序排列。

flag{user,hello,root,test3,test2,test1}

4.登陆成功的IP共爆破了多少次

和上面的重复了,cat auth.log.1 | grep -a "Failed password for root" | awk '{print $11}' | sort | uniq -c | sort -nr | more

应急响应-Linux日志分析

flag{4}

5.黑客登陆主机后新建了一个后门用户,用户名是多少

我们先确定日志, 通常与用户登录和用户管理活动相关的日志文件是 /var/log/auth.log 或其备份文件如 /var/log/auth.log.1

然后我们搜索关键字,使用 grep 命令搜索与创建用户相关的关键字,如 new user。这样可以找到所有新建用户的日志条目。cat /var/log/auth.log.1 | grep -a "new user"

此命令会列出所有包含 new user 的日志行,这些行通常记录了用户创建的详细信息。

应急响应-Linux日志分析

提取新用户信息,这条日志显示了创建的新用户 test2。

可以使用以下命令查找所有用户登录的情况,以确定是否有可疑的登录行为

grep "Accepted" /var/log/auth.log.1

应急响应-Linux日志分析

可以结合其他日志文件,如 /var/log/syslog,查看是否有异常的命令执行或系统变更

确定相关日志文件。搜索特定关键字,找到新用户创建的记录。提取并分析详细信息,确认新用户的合法性。结合其他日志文件,确认是否有异常活动。

使用cat auth.log.1 |grep -a "new user" 找到后门用户

应急响应-Linux日志分析

应急响应-Linux日志分析
END
应急响应-Linux日志分析

注:鼎星安全有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。

原文始发于微信公众号(鼎新安全):应急响应-Linux日志分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年4月8日13:08:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   应急响应-Linux日志分析https://cn-sec.com/archives/3929531.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息