當前位置:
首頁 > 新聞 > CVE-2017-4918:VMware Horizon的macOS客戶端代碼注入漏洞分析

CVE-2017-4918:VMware Horizon的macOS客戶端代碼注入漏洞分析

本文我們將探討如何通過 

VMware Horizon macOS客戶端版本4.4.0 (5164329)中存在的代碼注入漏洞獲取本地root許可權。在此文發布前我們已確認漏洞在最新版本中已被修復,該漏洞是在我學習了解「Open VMware View Client Services」 SUID機制後發現的。



該漏洞存在於Horizon內部的遠程USB服務,且僅在鍵入管理憑證啟動服務之後才能利用


為了進一步研究,我使用到Fireeye最新發布的Monitor.app應用程序,該程序主要用於macOS上的進程監聽(procmon)


從Monitor.app捕獲到的結果,可以清楚得知services.sh被包裝在Open VMware View Client Services之中。這樣腳本文件的SUID位

被忽略

也就說得通了(參考Allow setuid on shell scripts)。


在仔細觀察該腳本文件之後,我辨識出如下截圖中代碼高亮部分或許就是代碼注入漏洞的起點。儘管我對./vmware-usbarbitrator的內部工作原理不了解,但這些代碼深深的吸引了我的目光。作為一個非管理員用戶,我能夠設置環境變數VMWARE_VIEW_USBARBITRATOR_LOG_OPTIONS的內容(在之後的一個SUID執行腳本中會用到)


在仔細閱讀命令行參數選項說明後,我非常肯定我們是能夠通過–kext參數載入一個自定義內核擴展。



但接下來我們將面臨2個問題:





  • 內核擴展僅在root : wheel許可權下載入



  • 此外,KEXTs必須有蘋果公司的簽名


經過一系列思考,我決定忽略第二個問題。因此,我禁用了SIP



接下來我們就著重關注第一個問題。為了成功載入一個內核擴展,該二進位文件必屬於root : wheel。然而,對於一個普通用戶來說,是無法在本地文件上設置該文件系統許可權的。幸運的是,在這之前我有花時間去了解Tools On Air文件系統的輸入輸出原理,所以我清楚的知道我們只需利用NFS便能達到目的。NFS允許服務指定文件系統許可權,即使是由一個普通用戶進行掛載。我所知道的其他本地或者遠程文件系統從某種程度上來講,都會忽略root用戶所屬文件許可權。我們的下一個動作即是引用一個遠程文件夾(我隨身攜帶的Kali Linux)以利用NFS。


使用Finder的「連接到伺服器」功能進行掛載



接著創建一個簡單的KEXT



之後更新Info.plist文件以滿足我們的需求(新增一個IOKitPersonalities字典),我已經準備好了!



通過將KEXT複製到NFS伺服器,之後進行許可權調整以滿足root:wheel,至此我們便能夠愉快的開始真正的利用了。



在我們之前創建的KEXT中簡單設置VMWARE_VIEW_USBARBITRATOR_LOG_OPTIONS環境變數,然後運行Open VMware View Client Services。現在能夠成功載入了。



至此,我們作為一個普通用戶拿下內核環境的代碼執行許可權。


解決方案


過濾或者清除環境變數VMWARE_VIEW_USBARBITRATOR_LOG_OPTIONS以及VMWARE_VIEW_USBD_LOG_OPTIONS


*參考來源:

bogner

,freebuf小編鳶尾編譯,轉載請註明來自FreeBuf.com


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

如何做一個完全體的阿爾法狗
King Phisher:一款專業的釣魚活動工具包
2017第二屆中國信息安全服務年會:多方解讀國家政策,推進網路安全法與關鍵信息基礎設施保護落地
【FB TV】一周「BUF大事件」:警方打掉市面上最大打碼平台挖掘出全鏈條黑產;思科WebEx視頻會議插件再度發現嚴重RCE漏洞

TAG:FreeBuf |

您可能感興趣

深入分析Microsoft Outlook漏洞CVE-2018-8587
Microsoft Windows CVE-2018-1040漏洞分析
Microsoft Outlook漏洞CVE-2018-0950分析
CVE-2019-0708漏洞:RDP=Really DO Patch?
Microsoft Windows JET資料庫引擎堆溢出漏洞CVE-2018-1003分析
Linux中create_elf_tables函數整型溢出漏洞分析(CVE-2018-14634)
CVE-2019-0797 windows 0-day 漏洞分析
CVE-2019-11815:Linux kernel漏洞
CVE-2019-0841:Windows許可權提升漏洞PoC
CVE-2018-6376:Joomla!二階SQL注入漏洞
殭屍網路 Muhstik 正在積極利用 Drupal 漏洞 CVE-2018-7600 蠕蟲式傳播
Microsoft Edge瀏覽器曝嚴重漏洞CVE-2018-8235,泄露敏感數據!
CVE-2019-0859:win32k.sys 0 day漏洞
Linux發行版KaOS 2018.01發布,修復Spectre和Meltdown漏洞
CVE-2018-19518:PHP imap_open函數任意命令執行漏洞復現
關鍵漏洞CVE-2018-4013感染媒體播放器MPlayer與VLC
iOS 12.1.4還包括一個Live Photos漏洞修復
URGENT/11:VxWorks RTOS 11個0 day漏洞影響20億設備
CVE-2018-19788:UID大於INT_MAX的Linux用戶任意代碼執行漏洞
價值10000美元的Tesla Model 3 XSS漏洞