应急响应练习知攻善防——Linux1

admin 2026-09-29 04:58:29 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细介绍了Linux系统应急响应的实践过程,包括系统被黑后的调查分析、攻击者痕迹追踪、漏洞利用方法以及后续的安全加固措施。文章以实际案例为基础,通过分析攻击者的行为和痕迹,揭示了攻击者可能使用的攻击手段和防御策略。 综合评分: 85 文章分类: 应急响应,渗透测试,漏洞分析,网络安全,安全工具


应急响应练习 知攻善防——Linux1

原创

吃遍天下所有面 吃遍天下所有面

三社院信息Sec

2026年9月28日 17:38 河南

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

知攻善防

Linux1

背景

        前景需要:小王急匆匆地找到小张,小王说”李哥,我dev服务器被黑了”,快救救我!!

        挑战内容:

        黑客的IP地址

        遗留下的三个flag

        密码

        defend/defend

        root/defend

PART.1

过程

首先登录系统观察是centos系统(Linux系统),我们现在登录的是defend(普通用户)

    (Linux系统有三种用户,如下)

(sudo不是用户,是权限工具:让普通用户临时获得 root 权限)

    确认自己现在的用户后就开始查询一下是否存在可利用的sudo程序可以导致攻击者成功越权进而控制我们的电脑

    终端打开,输入

sudo -l  //作用:查看当前用户拥有哪些 sudo 权限,列出你能执行 / 不能执行的命令

    常见回显(有sudo权限)

Matching Defaults entries for sec on kali:env_reset, mail_badpass, secure_path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binUser sec may run the following commands on kali:(ALL : ALL) ALL

    (没有sudo权限)

User sec is not allowed to run sudo on kali.

PART.2

拓展

看到特殊可执行命令,去查 GTFOBins 找提权方法

回到题目(如图),显示defend用户可以以任何用户(包括root)身份,执行任何命令,而且不限制命令,不限制路径,不限制参数(危险等级很高)可被利用

这时候我们可以推测出攻击者可能是通过系统的这个漏洞拿到的root权限,从而设置了后门恶意程序

    我们利用sudo -i 切换为root 用户 用pwd查看是否切换成功

sudo -i //sudo -i:用 sudo 机制,启动 root 登录 shell,切换到 /root 并加载 root 完整环境pwd

确认进shell 就可以查看攻击者是否利用root 用户使用了什么命令 用history

此时得到第一个flag

    并且可以查看到攻击者的执行命令

    其中

chmod +x 是对rc.local 添加了可执行权限 “x”就是x = execute 可执行权限,确保服务器重启后rc.local 可以执行

vim 是编辑器,攻击者利用vim 将rc.local 进行修改

切换位置

cd/etc/rc.d   cat rc.local

直接去查看rc.local 文件内容

得到flag

现在可以知道rc.local文件被篡改,在现实生产环境中大概率被篡改的文件,加了执行就是启动自动shell 的后门,但是该文件需要重启才能执行,为了后续的持久化,大概率还会对服务器做手脚

    因为root 用户有权访问/root目录下的.ssh ,所以我们查看攻击者是否存放了自己的公钥来进行ssh连接

    切换到root/.ssh 目录下

cd /root/.ssh

    查看当前目录的文件

ls -a  //列出当前目录下所有文件,包括隐藏文件

可以得到一个文件authorized_keys,查看文件内容发现攻击者名字chinaran@kali,且前面的乱字符是redis数据库文件头字符,说明攻击者很有可能是通过redis服务器来攻击的

    我们查完攻击者的加的后门,就要看看后门文件在跑和有没有攻击者还在连接,就需要查进程

    使用 netstat 网络连接命令,分析可疑端口、IP、PID

netstat -antlp | more   //查看 Linux 机器所有网络连接、监听端口、对应的进程 PID 和程序名字

没有发现可疑项

    就接着查最近登录者

    输入命令lastlog

   得到结果如下:

也没有看见异常

前面查到了redis攻击的,那我们查看redis系统日志

    日志一般都防在/var/log/

cd /var/log/redisls -acat redis.log

Accepted = Redis接受了来自这个 IP 的 TCP 连接,端口 54766 是攻击机器的随机源端口

知识点补充

随后继续排查redis服务器:

/etc/redis/                 Redis 配置目录(redis.conf)/usr/bin/redis-server       Redis 服务程序/usr/bin/redis-cli          Redis 客户端/var/lib/redis/             Redis 数据目录(dump.rdb、appendonly.aof)/var/log/redis/             Redis 日志目录(redis.log)/run/redis/                 Redis 运行时文件(redis.pid、socket)

    于是我们要排查redis服务器:

/etc/redis/                 Redis 配置目录(redis.conf)/usr/bin/redis-server       Redis 服务程序/usr/bin/redis-cli          Redis 客户端/var/lib/redis/             Redis 数据目录(dump.rdb、appendonly.aof)/var/log/redis/             Redis 日志目录(redis.log)/run/redis/                 Redis 运行时文件(redis.pid、socket)

    排查服务器中存在的文件

more /etc/redis.conf

就发现了flag

自行用给的脚本验证即可

    ./解题Script.sh

END


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。

本文转载自:三社院信息Sec 吃遍天下所有面 吃遍天下所有面《应急响应练习 知攻善防——Linux1》

评论:0   参与:  0