CVE-2019-13354:Ruby strong
安全更新和升級是常見的確保安全的方式,但是供應鏈攻擊也瞄準了這個方向。最近,研究人員發現新版本的strong_password中存在漏洞,Rubygems.org網站統計顯示0.0.7惡意版本下載量共為537次。研究人員建議使用0.0.7版本的用戶儘快回滾到之前版本。
漏洞分析
該漏洞是withatwist.dev博客作者安全研究人員Tute Costa發現的,Tute Costa在手動查看更新後的依賴關係時發現了該問題。
通過比較發布版本和源代碼的變更日誌,研究人員發現新發布的0.0.7版本與GitHub上發布的上一版本源代碼並沒有進行改變。
在分析0.0.7版本的commit時研究人員注意到了strong_password的代碼:
首先解釋一下惡意版本的Ruby strong_password庫使用的pastebin.com payload:
1. 攻擊者其實是黑掉了原來strong_password維護人員的賬號來獲取發布訪問的許可權。
2. 惡意版本0.0.7發布在Rubygems.org上,其中含有第一個payload。
3. 只有當應用被檢測到在生產環境中運行,並且運行了特定時間後,才會觸發惡意版本,向pastebin.com發送一個請求來取回payload並進行評估。
4. 來自pastebin.com的第二個payload會修改 Sendfile 方法來獲取HTTP_COOKIE(即___id)的值,並進行評估。因此允許任意遠程攻擊者來進行遠程命令執行。
5. 惡意代碼會ping 伺服器來提供運行應用的URL。
研究人員將該漏洞報告給了維護人員,此時維護人員發現竟然沒有刪除發布的許可權了,隨後該漏洞被分配CVE編號CVE-2019-13354。
惡意代碼漏洞和供應鏈攻擊
三個月前,攻擊者就攻擊了Ruby gems package bootstrap-sass,攻擊者入侵了Rubygems.org的維護賬號發布了惡意版本來引入遠程代碼執行後門。
除了Rubygems.org外,還有很多企業都被面臨著供應鏈攻擊的威脅。兩周前,研究人員還發現了npm中存在針對加密貨幣挖礦錢包的惡意包。好的一點是,npm和rubygems的安全人員響應速度都很快。


※CVE-2019-0708漏洞:RDP=Really DO Patch?
TAG:嘶吼RoarTalk |