日韩av爽爽爽久久久久久,嫩草av久久伊人妇女超级a,久久精品a亚洲国产v高清不卡,久久成人国产精品一区二区

知識學(xué)堂
  • ·聯(lián)系電話:+86.023-75585550
  • ·聯(lián)系傳真:+86.023-75585550
  • ·24小時手機(jī):13896886023
  • ·QQ 咨 詢:361652718 513960520
當(dāng)前位置 > 首頁 > 知識學(xué)堂 > 網(wǎng)站建設(shè)知識
數(shù)據(jù)庫mysql注入sleep語句引發(fā)的拒絕服務(wù)及修復(fù)方案
更新時間:2012-02-18 | 發(fā)布人:本站 | 點(diǎn)擊率:457
數(shù)據(jù)庫mysql注入sleep語句引發(fā)的拒絕服務(wù)及修復(fù)方案
mysql存在注入,并且注入的sleep語句如果傳入一個足夠大的參數(shù),比如:sleep(9999999999).
如果數(shù)據(jù)庫用的是myisam引擎,且注入點(diǎn)是某個會鎖表的語句(insert,replace,update,delete),那么整個數(shù)據(jù)表的訪問都會被阻塞。
使用該表的所有應(yīng)用的讀庫請求都會被阻塞。
如果數(shù)據(jù)庫使用的是主從分離的架構(gòu),www.2cto.com 那么Master和Slave的同步會被sleep語句阻塞,導(dǎo)致從庫無法從主庫正常同步數(shù)據(jù)。一些依賴于主從同步的應(yīng)用也會無法正常工作。
就算僅僅是讀操作,經(jīng)過有限次的請求,也會很快的達(dá)到數(shù)據(jù)庫的max_connections限制,而導(dǎo)致數(shù)據(jù)庫拒絕服務(wù)。
 
 
漏洞證明:
 
注入語句update test_inj set xx=1 and sleep(9999999999);
 
mysql> select * from test_inj;
 
請求會被阻塞。直到手動殺死那個鎖表的語句。
 
線上實(shí)驗(yàn)后果會比較嚴(yán)重,就不貼真實(shí)的例子了。測試者請用自己搭建的數(shù)據(jù)庫。不要害人。
 
 
修復(fù)方案:
 
禁用mysql的sleep函數(shù);蛘咝薷乃膕leep上限,拒絕不合理的超長sleep,F(xiàn)實(shí)中很少用到這個sleep功能,就算遇到需要sleep的場景,也可以通過外部應(yīng)用來實(shí)現(xiàn)sleep。