MySQL注入点写WebShell的5种方式

SQL写WebShell条件

  1. mysql的配置文件 my.ini 中,secure_file_priv="c:/wamp64/tmp" 被注释 或者 `secure_file_priv 配置的位置是web目录。
  2. 未开启全局gpc。

环境准备

存在SQL注入的URL,测试语句

MySQL注入点写WebShell的5种方式

SQL注入点写WebShell的5种方式

一、union select 后写入

最常见的写入方式,union select 后跟 into outfile 语句

注意:在windows下,位置的分隔符为 /(斜杠)。

二、lines terminated by 写入

注入点语句

执行语句后,页面显示内容

MySQL注入点写WebShell的5种方式

完整的Sql语句

Webshell显示

MySQL注入点写WebShell的5种方式

注入原理

通过select语句查询的内容写入文件,也就是 1 into outfile 'C:/wamp64/www/work/webshell.php' 这样写的原因,然后利用 lines terminated by 语句拼接webshell的内容。lines terminated by 可以理解为 以每行终止的位置添加 xx 内容

三、lines starting by 写入

注入点语句

注入原理

利用 lines starting by 语句拼接webshell的内容。lines starting by 可以理解为 以每行开始的位置添加 xx 内容

四、fields terminated by 写入

注入点语句

注入原理

利用 fields terminated by 语句拼接webshell的内容。fields terminated by 可以理解为 以每个字段的位置添加 xx 内容

五、COLUMNS terminated by 写入

注入点语句

注入原理

利用 fields terminated by 语句拼接webshell的内容。fields terminated by 可以理解为 以每个字段的位置添加 xx 内容

作者:manning23 via