Log4j 漏洞還沒忙完,新的漏洞又出現了

本月 9 日,Apache Log4j 2 被曝存在“核彈級”漏洞引起巨大風波,

全球近一半企業均受到影響

,大批安全人員為此深夜加班修 Bug。

十多天過去了,該漏洞的修復工作仍未停止,甚至安全公司還接連發現其中的另外兩個安全漏洞,不禁讓人為這些天連日修 Bug 的工程師們捏一把汗。

然而“屋漏偏逢連夜雨”,Log4j 2 的漏洞還沒解決完,新的漏洞又出現了:據云安全供應商 Wiz 報告,

微軟 Azure 應用服務中存在一個名為“NotLegit”的漏洞——該漏洞將影響所有透過“本地 Git”部署的 PHP、Node、Ruby 和 Python 應用。

Log4j 漏洞還沒忙完,新的漏洞又出現了

‬01

漏洞自 2017 年 9 月便一直存在

微軟旗下的 Azure 應用服務是一個基於雲計算、用於託管網站和 Web 應用的平臺,因其易於使用,頗受企業及開發者的歡迎:使用者需先選擇支援的程式語言和作業系統,再

使用 FTP、SSH 或透過從 Git 服務(如 GitHub 或私有 Git 儲存庫)中提取原始碼在 Azure 託管的伺服器上部署即可

。部署成功後,所有人都可以在 。azurewebsites。net 域中訪問該應用。而

本次 Wiz 研究團隊發現的漏洞就是在部署這一步

一般而言,當開發者將 Git 儲存庫部署到 Web 伺服器和儲存桶時,是

不會上傳 .git 資料夾的,因為其中包含原始碼、開發者郵件和其他敏感資料

。但 Azure 應用服務有個奇怪的設定:當應用透過“本地 Git”

(在 Azure 應用服務容器內啟動本地 Git 儲存庫,即可將程式碼直接推送到伺服器)

部署至 Azure 應用服務時,其 Git 儲存庫是在所有人都可以訪問的公開訪問目錄

(/home/site/wwwroot)

中建立的。為了保護其敏感資料不會暴露,微軟會在限制公共訪問的 。git 資料夾中新增一個“web。config”檔案,

只可由微軟的 IIS 網路伺服器處理

但 Wiz 研究團隊發現,這一措施只對同樣用 IIS 部署的 C# 或 ASP。NET 應用有效,對部署在不同 Web 伺服器

(如 Apache、Nginx、Flask 等)

中的 PHP、Node、Ruby 和 Python 應用則有一個 Bug:

這些 Web 伺服器無法處理“web.config”檔案,導致攻擊者只要從目標應用中獲取“/.git”目錄,就可以檢索其原始碼,應用開發者也就面臨資訊洩露的風險

Wiz 方面將

該漏洞稱為“NotLegit”,自 2017 年 9 月以來便一直存在,很可能已被利用

。Wiz 指出,唯一不受“NotLegit”漏洞影響的是基於 IIS 的應用,具體影響範圍包括:

自 2017 年 9 月以來,在 Azure 應用服務中使用“本地 Git”部署的所有 PHP、Node、Ruby 和 Python 應用;

從 2017 年 9 月起,在應用容器中建立或修改檔案後,使用 Git 原始碼部署在 Azure 應用服務中的所有 PHP、Node、Ruby 和 Python 應用;

為了評估“NotLegit”暴露的可能性,Wiz 研究團隊還為此建立了一個具有該漏洞的 Azure 託管網站進行測試,結果

在 4 個小時內發現了 5 個不同的攻擊者訪問了暴露的原始碼和 .git 檔案

。Wiz 對此表示:“

這種漏洞的利用方法極其簡單、常見,且正被積極利用

。”

(Wiz 還放了個小彩蛋:微軟的 web。config 檔案其實有一處拼寫錯誤,使配置標記未正確關閉,導致 IIS 無法解析。巧的是,這個錯誤正好陰差陽錯地阻止了攻擊者對整個目錄的訪問……)

Log4j 漏洞還沒忙完,新的漏洞又出現了

‬02

微軟已採取相關措施

發現“NotLegit”後,Wiz 在 2021 年 10 月 7 日向微軟報告此事,而微軟在瞭解問題嚴重性後很快便採取了相關必要措施。Azure 應用服務團隊進行深入調查詢到了根結所在,隨後為大部分受影響客戶修復應用,並在 2021 年 12 月 7 日至 15 日之間透過郵件通知所有仍然暴露的客戶。微軟為此採取的具體措施包括:

更新了所有 PHP 影象,禁止將 。git 資料夾作為靜態內容提供,以作為深度防禦措施。

通知因啟用本地部署而受到影響的客戶,並提供有關如何緩解問題的具體指導,還通知了將 。git 資料夾上傳到內容目錄的客戶。

更新了安全建議文件,增加了有關保護原始碼的部分,還更新了本地部署的文件。

並非所有本地 Git 使用者都受到影響

。”微軟補充道:“

只有部署在基於 Linux 的 Azure 伺服器上的應用會受到影響

,那些託管在 Windows Server 系統上的應用,因為在基於 IIS 的環境中執行,所以不會受到漏洞影響。”

為感謝 Wiz 發現這一漏洞,微軟還向 Wiz 提供了 7500 美元的賞金

——Wiz 計劃將其全額捐贈。

最後,如有近期收到微軟郵件通知的 Azure 使用者,最好儘快根據指導修復漏洞,以避免造成資訊洩露。