您好,登錄后才能下訂單哦!
本篇文章為大家展示了怎么實現Microsoft SQL Server漏洞淺析,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
Microsoft SQL Server 是微軟公司推出的關系型數據庫管理系統,因其具有使用方便與可伸縮性好,且與相關軟件集成程度高等優點,從而被廣泛使用。Microsoft SQL Server 數據庫引擎為關系型數據和結構化數據提供了更安全可靠的存儲功能,可以構建和管理對高可用和高性能有需求的業務業務場景。
目前Microsoft SQL Server數據庫在全球的應用量也比較靠前,據統計,在全球范圍內對互聯網開放Microsoft SQL Server數據庫服務的資產數量多達237,065臺,發現中國地區對外開放的Microsoft SQL Server數據庫服務數量排名第一,數量為75793臺,接近全球總量的30%。排名第二與第三的分別是美國與荷蘭地區,其對外開放的Microsoft SQL Server數據庫服務數量分別為35,965臺和33,664臺。由此看來,國內使用Microsoft SQL Server數據庫的用戶很廣泛,對Microsoft SQL Server數據庫的漏洞防范就顯得尤為重要了。
(統計數據僅為對互聯網開放的資產,本數據來源于FOFA )
近幾年Microsoft SQL Server數據庫爆發的漏洞數量與其它類型數據庫相比,所暴露出來的漏洞相對較少。在此,挑選兩個可利用性高,且具有代表性的漏洞進行分析,分析列表如下:
漏洞名稱 | 漏洞類型 | 風險級別 | CVE編號 |
---|---|---|---|
Microsoft SQL Server sp_replwritetovarbin遠程堆溢出漏洞 | 緩沖區溢出 | 高 | CVE-2008-5416 |
Lyris ListManager MSDE SA弱密碼漏洞 | 弱密碼 | 中 | CVE-2005-4145 |
1、漏洞信息:
漏洞名稱:Microsoft SQL Server sp_replwritetovarbin Stored Procedure Buffer Overflow Vulnerability
漏洞編號: CVE-2008-5416
漏洞類型: Buffer Overflow Vulnerability
2、漏洞概述:
Microsoft SQL Server是一款流行的SQL數據庫系統。Microsoft SQL Server的sp_replwritetovarbin擴展存儲過程中存在堆溢出漏洞,如果遠程攻擊者在參數中提供了未初始化變量的話,就可以觸發這個溢出,向可控的位置寫入內存,導致已有漏洞SQL Server進程的權限執行任意代碼。在默認的配置中,任何用戶都可以訪問sp_replwritetovarbin過程。通過認證的用戶可以通過直接的數據庫連接或SQL注入來利用這個漏洞。
3、漏洞影響:
Microsoft SQL Server 受CVE-2008-5416漏洞影響的版本如下:
4、漏洞分析:
1)CVE-2008-5416漏洞PoC利用代碼分析:
我們從互聯網中找到了CVE-2008-5416漏洞PoC,如下是漏洞PoC利用代碼片段:
通過PoC代碼可以看出,先定義未初始化的自定義變量,然后傳入超長數據段(數據段中可構造惡意攻擊代碼),通過sp_replwritetovarbin擴展在存儲過程中進行堆溢出,將構造的攻擊代碼寫入內存并執行。
2)CVE-2008-5416漏洞攻擊流量分析:
攻擊者TDS協議對靶機發起遠程登陸認證請求,因為該漏洞只有遠程認證成功后才可以進一步被利用。如下所示:
當登陸請求認證成功后,進一步查詢數據庫服務器的版本信息。如下所示:
在確定數據庫系統的版本信息后,再進一步選擇對應的攻擊PayLoad載荷,進行存儲過程溢出攻擊。如下所示:
5、漏洞驗證:
通過Metasploit滲透測試框架對存在CVE-2008-5416漏洞的靶機進行測試,發現可以利用成功。如下圖所示:
6、漏洞修復建議:
Microsoft已經為此發布了一個安全公告(MS09-004)以及相應補丁。鏈接如下:
https://docs.microsoft.com/zh-cn/security-updates/Securitybulletins/2009/ms09-004
1、漏洞信息:
漏洞名稱:Lyris ListManager MSDE Weak SA Password Vulnerability
漏洞編號:CVE-2005-4145
漏洞類型:Weak Password Vulnerability
2、漏洞概述:
Lyris_technologies_inc Listmanager是Microsoft SQL ServerMSDE中的一款重要組件,由于Lyris_technologies_inc Listmanager5.0-8.9b版本中存在將數據庫的SA帳戶配置為使用具有小型搜索空間的密碼的設計缺陷,導致攻擊者可遠程通過暴力破解攻擊獲取Microsoft SQL Server數據庫的訪問權。
3、漏洞影響:
Lyris_technologies_inc Listmanager受CVE-2005-4145漏洞影響的版本如下:
4、漏洞分析:
1)漏洞PoC代碼分析:
我們從互聯網中找到了CVE-2005-4145漏洞PoC,如下是漏洞PoC利用代碼片段:
從上面的漏洞PoC代碼可以看出,先嘗試使用賬號SA,密碼lminstall進行嘗試登陸,如成功,就執行下面的SQL利用代碼,否則,進一步對SA賬戶進行進程PID暴力枚舉來獲取登陸權限,如登陸成功,同理,執行下面的SQL利用代碼。
2)CVE-2005-4145漏洞PoC數據包分析:
攻擊者通過TDS協議對靶機不停的發起遠程登陸認證請求,用戶名為SA,不停的枚舉密碼。
5、漏洞驗證:
通過Metasploit滲透測試框架對存在CVE-2005-4145漏洞的靶機進行測試,發現可以利用成功。如下圖所示:
技巧提示:CVE-2005-4145漏洞PoC通過默認賬號或指定賬號的方式來進行枚舉測試,由于代碼實現比較簡單,也比較雞肋。我們可自行通過Hydra等工具枚舉成功后,再將枚舉成功的值填寫Password字段中,然后進一步快速深度利用。
6、漏洞修復建議:
目前,官方已經在Lyris_technologies_inc Listmanager 8.9b版本修復了此漏洞,可自行升級到8.9b及以上版本。
通過對Microsoft SQL Server進行一些列的梳理和分析,可以從以下幾個維度進行歸納和總結:
1、高危漏洞主要分布在:Microsoft SQL Server7、Microsoft SQL Server2000、Microsoft SQL Server2005這三個版本。
2、影響范圍比較廣的漏洞類型有:緩沖區溢出漏洞、弱密碼、權限提升、拒絕服務等四種。
3、Microsoft SQL Server高危漏洞的觸發條件比較苛刻,基本上都需要先通過賬號進行登陸才能進一步利用。
4、Microsoft SQL Server類漏洞比較集中爆發的時期是1997年至2005年這8年。隨著微軟對安全性越來越重視,在隨后發布的Microsoft SQL Server2008及之后版本中存在的高危安全性問題越來越少。
上述內容就是怎么實現Microsoft SQL Server漏洞淺析,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。