オーバーフロー攻撃
のようです。 。彼らはUNION
-既存のクエリで編集しました。すべての%20
を置き換える urlエンコードされた結果は次のようになります(スペース):
=-999.9 UNION ALL SELECT CONCAT(0x7e,0x27,Hex(cast(database() as char)),0x27,0x7e),0x31303235343830303536,0x31303235343830303536,0x31303235343830303536-
分解する:
-
=-999.9
現在のクエリを終了しているだけです -
0x31303235343830303536
NULL
です -既存のクエリの列数と一致しているだけです。SELECT*FROMユーザー
があった場合 およびユーザー
UNION
の4つの列がありました また、4つの列が必要です。その結果、これらの列に入力するために`NULL値を使用しただけです。 - 本当の混乱は
CONCAT()
にあります 。それらは、126、39、16進値としてのデータベース名、39、および126を組み合わせています -コード> mysqlコメントです-後のクエリの残りを無視します
この攻撃から判断すると、 mysql_real_escape_string()
で入力をラップしていないと思われます。 、攻撃されてクエリから飛び出し、独自のクエリを実行できるようになりました。
owasp.org を参照してください。 詳細については。