SQL二阶注入写shell问题——Joomla3.8.2漏洞为例

本文详细记录了利用Joomla 3.8.2版本的一个二阶SQL注入漏洞进行写shell的过程。从复现漏洞到设置允许用户注册并进入后台,再到通过extractvalue函数进行注入,分析了写马的难点和解决方案,包括回显报错的处理、文件路径的限制以及如何绕过字符过滤,最终通过base64编码成功写入shell。

开始前的例行叨叨:

参考大佬文章 http://www.sohu.com/a/223945381_354899

发现仅到报错注入一步就没了下文,记录一下最终写马的姿势。


复现过程:

Joomla官网特别良心,各种历史版本随便下载

由于复现CVE-2018-6376漏洞,所以下载了3.8.2版本,一路安装好。


由于注入点在用户后台,改资料时,复现必须允许用户注册,而且能进自己后台。

所以网站建好先用admin账户进后台/administrator/,左边User面板,右上角options设置一下。

设置如下:


按我的调整,

第一项是允许注册新用户;

第二项设新用户到Manager组中,好进后台。

之后New User Account Activation选成了None也就是注册后,不需要邮箱和管理员验证。

记得点左上角的Save保存。


如果不设置这些,会没有会员注册,而且注册的时候通过不了。

设置完再去主页注册用户test1,可能报错,但可以尝试登陆成功。

用test1用户进入后台/administrator/

在右上角找到编辑个人信息


直接save的时候burp抓包。


注入点在这行:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值