Rails 3爆SQL隱碼攻擊漏洞

jieforest發表於2012-06-05
Ruby on Rails近日爆出了一個關鍵的漏洞,該漏洞允許攻擊者在資料庫伺服器上執行SQL命令,比如,攻擊者可以發起SQL隱碼攻擊來讀取未經授權的機密資訊。目前該漏洞已修復,可通過文章最後的連結下載修復版本。

這是由於ActiveRecord處理巢狀查詢引數的方式所致,攻擊者可以使用特定的請求,嚮應用程式的SQL查詢中注入某些形式的SQL語句。

比如,受影響的程式碼可以直接傳遞請求引數到ActiveRecord類中的where方法,如下:

CODE:

Post.where(:id => params[:id]).all 攻擊者可以發起一個請求,導致params[:id]返回一個特定的雜湊值,從而使WHERE從句可以查詢任意資料表。
受影響的版本:3.0.0及之後的所有版本
未受影響的版本:2.3.14






來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/301743/viewspace-731900/,如需轉載,請註明出處,否則將追究法律責任。

相關文章