SQL注入写入Webshell

本文介绍了如何在渗透测试中利用SQL注入漏洞上传Webshell,详细阐述了outfile方法和利用MySQL日志写入的步骤,涉及secure_file_priv配置、FILE权限、文件路径等关键条件,并提供了具体的SQL构造示例。

前言

在平时的CTF题目中,我们只是利用SQL注入漏洞去获取flag,但是在实际的渗透环境中,我们可以利用SQL注入漏洞去上传一个webshell,进而获取网站的后台权限。
首先,对于能否写入webshell是有条件的:

  1. secure_file_priv 支持数据导出。MySQL用secure_file_priv这个配置项来完成对数据导入导出的限制。如果secure_file_priv=NULL,MySQL服务会禁止导入和导出操作。通过命令查看secure-file-priv`的当前值,确认是否允许导入导出以及到处文件路径。
    在这里插入图片描述
  2. 当前数据库的用户拥有FILE权限。
  3. 当secure_file_priv文件导出路径与web目录路径重叠,写入Webshell才可以被访问到。
  4. 知道网站目录的绝对路径。

union select写入

outfile方法是mysql提供的一个用来写入文件的函数,当我们可以控制输入的文件和文件的保存路径时,就可以达到传入webshell的目的。当我们可以使用union查询时,就可以构造一个如下的语句:

union select '<?php eval($_POST[cmd])?>' into outfile 'web目录';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值