針對MySQL 5.5和5.6版本的Riddle漏洞會經由中間人攻擊泄露用戶名密碼信息。請盡快更新到5.7版本。
Riddle漏洞存在于DBMS Oracle MySQL中,攻擊者可以利用漏洞和中間人身份竊取用戶名和密碼。
“Riddle是一個在Oracle MySQL 5.5和5.6客戶端數據庫中發現的高危安全漏洞。允許攻擊者在中間人位置使用Riddle漏洞破壞MySQL客戶端和服務器之間的SSL配置連接。”漏洞描述寫道。“此漏洞是一個非常危險的漏洞,因為首先它會影響MySQL – 非常流行的SQL數據庫 – 其次會影響SSL連接,根據SSL的定義,它理應是安全的。”
Riddle漏洞的編號為CVE-2017-3305,當MySQL 5.5和5.6向服務器發送數據,包括用戶名密碼時,攻擊者可以捕獲它們。
針對5.5.49、5.6.30版本的安全更新并沒有完全修復漏洞。專家注意到,5.7版本之后以及MariaDB系統沒有受到漏洞影響。
安全研究員Pali Rohár稱,導致Riddle漏洞的原因是之前存在于MySQL數據庫中的BACKRONYM漏洞沒有被修復。Backronym漏洞能在中間人攻擊時用來泄露密碼,即使流量經過加密。
“針對穩定版本的MySQL 5.5.49和5.6.30的安全更新中添加了在驗證過程完成后對安全參數的驗證。”“由于動作是驗證完成后做出的,因此利用Riddle進行中間攻擊再與SSL降級配合,攻擊者就可以竊取登錄數據進行身份驗證并登錄到MySQL服務器,“Rohár寫道。
“有趣的是,當MySQL服務器拒絕驗證用戶時,MySQL客戶端不會報告任何與SSL相關的錯誤,而是會報告服務器發送的未加密的錯誤消息。而這些錯誤消息由中間人攻擊者控制的。”
專家建議將客戶端軟件更新為MySQL 5.7或MariaDB,因為這些應用程序的安全更新是能夠正常工作的。
PoC
作者給出了用Perl寫的PoC腳本。它會在本地3307端口開啟riddle,MySQL服務器運行在localhost:3306。
在中間人服務器運行riddle:
將MySQL客戶端與riddle連接:
$ mysql --ssl-mode=REQUIRED -h 127.0.0.1 -P 3307 -u user -p password
如果你提供了正確的用戶名密碼,riddle就會連接到服務器,執行SQL語句并輸出:
SELECT COUNT(*) FROM information_schema.TABLES --> 121
MySQL客戶端會收到一條由riddle發送的錯誤信息:
ERROR 1045 (28000): Access denied: MITM attack
Oracle修復漏洞不及時
Riddle漏洞在二月份被發現,但是這個漏洞仍然能夠影響到Oracle MySql軟件。
“如果你不是Oracle客戶的話,向他們報告漏洞是沒有用的(即使是與安全相關的漏洞)。他們可以完全忽視任何報告,如果沒人知道的話,他們會很高興,因此不用修復漏洞了,“Rohár解釋說。
總結
以上所述是小編給大家介紹的MySQL曝中間人攻擊Riddle漏洞可致用戶名密碼泄露的處理方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- MySQL8.0 如何快速加列
- Mysql Online DDL的使用詳解
- MySQL DDL 引發的同步延遲該如何解決
- 詳解MySQL8.0原子DDL語法
- MySQL在線DDL工具 gh-ost的原理解析
- MySQL ddl語句的使用
- Mysql DDL常見操作匯總
- 解析MySQL8.0新特性——事務性數據字典與原子DDL
- MySQL數據定義語言DDL的基礎語句
- MySQL8.0 DDL原子性特性及實現原理
- MySQL在線DDL gh-ost使用總結
- 解決MySQL 5.7中定位DDL被阻塞的問題
- MySQL8.0新特性之支持原子DDL語句
- MySQL 8.0 Online DDL快速加列的相關總結