【发布时间】:2014-11-21 02:48:19
【问题描述】:
从今天凌晨开始,我们的电子商务商店就收到了以下搜索查询。我了解它的 SQL 注入。我们也在使用参数化查询。所以它没有造成任何伤害。但是由于查询全文搜索的长度需要时间来处理并最终超时并且网站暂停了一段时间。
立即,我将搜索的最大租船人限制为 75,并添加了检测 sql 注入并防止其到达 sql server 的逻辑,以增加安全性。
我们的环境: ASP.Net 电子商务网站 具有全文搜索功能的 SQL Server 2012 Express DB。 Windows 2012 标准服务器。
只是想知道搜索者想要了解/研究什么?或者他们只是想挂掉网站?在上面提到的修复之后忽略它是安全的吗?
搜索词如下。 “输入型号或墨盒代码”是我们默认的搜索文本框文本。
输入型号或墨盒代码) AND 2895=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(112)||CHR(97)||CHR (122)||CHR(113)||(从 DUAL 中选择(当 (2895=2895) THEN 1 ELSE 0 END)||CHR(113)||CHR(119)||CHR(99)|| CHR(121)||CHR(113)||CHR(62))) 来自 DUAL) 和 (9170=9170
输入型号或墨盒代码') AND 3733=CONVERT(INT,(SELECT CHAR(113)+CHAR(113)+CHAR(104)+CHAR(106)+CHAR(113)+(SELECT (CASE WHEN (3733=3733) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(106)+CHAR(113)+CHAR(107)+CHAR(113))) AND ('KzHP' ='KzHP
输入型号或墨盒代码%' AND (SELECT 2396 FROM(SELECT COUNT(*),CONCAT(0x7170617a71,(SELECT (CASE WHEN (2396=2396) THEN 1 ELSE 0 END)),0x7177637971,FLOOR(RAND (0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND '%'='
输入型号或墨盒代码%' AND 4201=CONVERT(INT,(SELECT CHAR(113)+CHAR(112)+CHAR(97)+CHAR(122)+CHAR(113)+(SELECT (CASE WHEN (4201=4201) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(119)+CHAR(99)+CHAR(121)+CHAR(113))) AND '%'= '
输入型号或墨盒代码') AND 6442=CAST((CHR(113)||CHR(112)||CHR(97)||CHR(122)||CHR(113))||(SELECT (当 (6442=6442) THEN 1 ELSE 0 END)::text||(CHR(113)||CHR(119)||CHR(99)||CHR(121)||CHR(113))作为数字)和('iWJF'='iWJF
输入型号或墨盒代码 AND 3733=CONVERT(INT,(SELECT CHAR(113)+CHAR(113)+CHAR(104)+CHAR(106)+CHAR(113)+(SELECT (CASE WHEN (3733 =3733) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(106)+CHAR(113)+CHAR(107)+CHAR(113)))--ZgIZ
输入型号或墨盒代码)AND 6442=CAST((CHR(113)||CHR(112)||CHR(97)||CHR(122)||CHR(113))||(SELECT ( CASE WHEN (6442=6442) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(119)||CHR(99)||CHR(121)||CHR(113)) AS数字)和(8167=8167
输入型号或墨盒代码 AND 3733=CONVERT(INT,(SELECT CHAR(113)+CHAR(113)+CHAR(104)+CHAR(106)+CHAR(113)+(SELECT (CASE WHEN (3733 =3733) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(106)+CHAR(113)+CHAR(107)+CHAR(113)))
输入型号或墨盒代码 AND 6442=CAST((CHR(113)||CHR(112)||CHR(97)||CHR(122)||CHR(113))||(SELECT (CASE WHEN (6442=6442) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(119)||CHR(99)||CHR(121)||CHR(113)) 作为数字)-- CuDa
【问题讨论】:
-
我喜欢你的问题:)
标签: sql sql-injection