玄机靶场

玄机靶场

前言SSH连接端口222,账号:root,密码:toor

SSH日志分析常用思路SSH日志分析是应急响应与安全审计的核心。通过审查配置文件和登录日志,可以快速发现未授权访问、定位攻击源并核查安全基线。标准的分析流程如下:

1. 审查配置:确认“规则”

分析日志前,先看SSH服务的核心配置文件 /etc/ssh/sshd_config,了解允许哪些行为

访问控制:检查 AllowUsers, AllowGroups 等指令,确定谁可以登录

认证方式:检查 PasswordAuthentication 是否开启,是否仅允许密钥登录

高危设置:检查 PermitRootLogin 是否允许root直接登录

2. 分析日志:发现“事件”

根据系统,主要分析以下认证日志(包括 .1, .gz 等归档文件):

Debian/Ubuntu: /var/log/auth.log

CentOS/RHEL: /var/log/secure

重点关注包含以下关键字的日志条目:

成功登录:Accepted password 或 Accepted publickey 等

登录失败:Failed password 、Failed publickey 或 invalid user 等

用户切换/提权:session opened for user (常用于追踪sudo等操作)

3. 聚合统计:提取“情报”

使用命令行工具(如 grep, awk, sort, uniq)从海量日志中提取有价值的信息,回答关键问题:

攻击来源:哪个IP发起了最多的失败尝试?

爆破目标:哪个用户名被攻击次数最多?

成功渗透:哪些用户和IP成功登录了系统?

行为画像:梳理单个IP或用户的完整活动时间线

索引

题目列表步骤#1可以登录 SSH 的账号数量是多少

我们先了解什么是sshd_config文件

sshd_config 是 SSH 服务器(sshd)的主配置文件,用于配置 SSH 服务端的各种参数和行为

设置 SSH 服务器监听的端口号(默认22端口)

指定允许或禁止的登录方式(密码认证、公钥认证等)

是否允许 root 账户远程登录

配置登录超时时间、日志级别、安全策略等

控制哪些用户或用户组可以通过SSH登录

查看/etc/ssh/sshd_config文件

1cat /etc/ssh/sshd_config

在最下面那里可以看到只允许SSHD_USER用户组和root用户组进行ssh登录

然后在/etc/group筛选出这两个组

1grep -E '^(root|SSHD_USER):' /etc/group

这个命令的意思是:

-E 参数表示启用扩展正则表达式,支持更多高级符号和语法,如“|”表示或、“()”用于分组、“+”表示重复等,使表达式更简洁易读,匹配功能更强大

^(root|SSHD_USER): 表示匹配以“root:”或“SSHD_USER:”开头的行

root组后面为空,表示这个组没有附加用户(也就是没有把别的用户名手动加进组内),默认为root。然后SSHD_USER组有两个用户,分别为toor和root,去重之后可以登录 SSH 的账号就只有toor和root用户

1flag{2}

步骤#2SSH日志中登录成功的日志条数是多少(去除自己登陆产生的两次)

auth.log 是Linux系统记录身份认证相关信息的日志文件,包括用户登录成功、失败、ssh连接、公钥认证和使用sudo等操作的记录。它帮助管理员监控登录情况和发现安全问题,是安全审计的重要依据

其中auth.log表示最新日志,auth.log.1表示上一轮未压缩归档,auth.log.N.gz表示更早的归档(N为数字)

进入log日志文件夹,查看当前目录文件

1cd /var/log && ls

我们要分析的是已归档文件,也就是auth.log.1和auth.log.2.gz

先解压auth.log.2.gz文件

1gzip -d auth.log.2.gz

用gzip命令解压后,会删除原本的.gz压缩文件,并生成新的文件

然后筛选出包含Accepted password或Accepted publickey的日志记录即可

Accepted password:表示通过密码验证成功登录

Accepted publickey:表示通过公钥认证成功登录

1grep -E "Accepted password|Accepted publickey" auth.log.1 auth.log.2 | wc -l

1flag{103}

步骤#3SSH日志中登录成功次数最多的用户的用户名是什么

用awk筛选登录成功的日志记录即可

1grep -E "Accepted password|Accepted publickey" auth.log.1 auth.log.2 | awk '{print $9}' | sort | uniq -c

可以看到SSH日志中登录成功次数最多的用户名是toor

1flag{toor}

步骤#4SSH日志中登录失败次数最多的用户以及登录使用的ip是什么(flag:flag{用户名,ip})

直接筛选出包含Failed password或Failed publickey的记录,然后awk查看用户名和IP地址即可

1grep -E "Failed password|Failed publickey" auth.log.1 auth.log.2 | awk '{print $9, $(NF-3)}' | sort | uniq -c | sort -n

awk '{print $9, $(NF-3)}' 表示打印第9列(用户名)和倒数第4列(登录来源IP,通常日志中IP在倒数第4列)

sort 对结果进行排序

uniq -c 统计相同用户名和IP的出现次数

sort -n 表示按照 数字大小 进行排序,而不是按字母ASCII顺序

可以看到SSH日志中登录失败次数最多的用户是root,登录使用的ip是87.163.111.11

1flag{root,87.163.111.11}

相关推荐

人体生长规律 365bet游戏平台

人体生长规律

07-12 👁️ 2986
内马尔受重伤泪别世界杯 桑巴帝星或留终生遗憾 365bet游戏平台
携程集团 365bet游戏平台

携程集团

08-28 👁️ 4061