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

相关推荐
写代码的小王吧2 分钟前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
共享家95275 分钟前
深入剖析Linux常用命令,助力高效操作
linux·运维·服务器
Zfox_36 分钟前
【C++项目】从零实现RPC框架「四」:业务层实现与项目使用
linux·开发语言·c++·rpc·项目
吃旺旺雪饼的小男孩1 小时前
Ubuntu 22.04 安装和运行 EDK2 超详细教程
linux·运维·ubuntu
IT小馋猫1 小时前
Linux 企业项目服务器组建(附脚本)
linux·服务器·网络
阿政一号1 小时前
Linux进程间通信:【目的】【管道】【匿名管道】【命名管道】【System V 共享内存】
linux·运维·服务器·进程间通信
又过一个秋1 小时前
【sylar-webserver】7 定时器模块
linux·c++
啊哦1112 小时前
配置防火墙和SELinux(1)
linux·服务器·网络
唐青枫2 小时前
Linux 换行符的使用详解
linux