PHP開發框架Laravel的語言套件遭挾持,駭客植入竊資軟體

近年來開源軟體供應鏈安全成為全球資安界高度關注的焦點,而近期發生的一起重大攻擊事件。此篇文章深入探討了於5月22日由資安公司Aikido所揭露的網路攻擊事件,該事件主要針對知名PHP開發框架Laravel的第三方語言套件專案Laravel Lang。文章指出,攻擊者成功入侵了該專案的GitHub儲存庫,並將矛頭指向了三個核心套件,分別是laravel-lang/lang、laravel-lang/attributes以及laravel-lang/http-statuses。攻擊者的手法相當狡猾且隱蔽,他們並未將惡意程式碼直接提交到Laravel的官方儲存庫中,而是發布了指向帶有惡意程式碼版本的標籤,並讓這些標籤連結到由他們所控制的惡意分叉儲存庫當中的提交內容。透過這種方式,攻擊者在這些套件中注入了能夠竊取使用者憑證的惡意程式碼,並巧妙地利用composer元件的自動載入功能來神不知鬼不覺地執行這些惡意指令。文章提到,Aikido在初步調查中就發現了高達233個版本的套件遭到入侵,為避免災情進一步擴大,他們迅速向套件管理平臺Packagist進行了通報,促使該平臺立即採取行動,移除了已知的惡意版本並暫時下架受影響的套件。

然而,這起供應鏈攻擊的影響範圍與複雜程度遠超乎初期的預期。此篇文章進一步引述了另外兩家資安公司Socket與Step Security的後續調查結果,發現除了前述的三個套件之外,另一個名為Laravel-Lang/actions的專案也同樣淪為攻擊目標。文章詳細說明,截至5月23日,這起駭客入侵事故不僅持續存在,遭到植入惡意程式碼的套件版本總數更是驚人地攀升至超過700個。Socket在分析過程中發現了一個極不尋常的現象,部分受害版本的標籤呈現出連續發布的狀態,發布的時間間隔只有短短幾秒鐘。鑑於這種情況在常規的開源套件維護流程中幾乎不可能發生,再加上所有受影響的儲存庫皆由Laravel Lang組織所經營,資安專家據此研判,攻擊者極有可能已經取得了組織層級的最高權限憑證,甚至掌握了儲存庫的自動化作業流程或是發布套件的底層基礎設施。關於駭客所注入的惡意程式碼,文章剖析了其強大的竊取能力,指出該程式碼內建了極其龐大的正規表達式字典,能夠在受害系統中廣泛抓取檔案、資料庫以及環境變數的內容,藉此大肆搜刮各式各樣的API金鑰。其竊取目標幾乎無所不包,範圍涵蓋了雲端運算環境、軟體容器、HashiCorp Vault、CI/CD持續整合與部署管道、加密貨幣錢包、各大網路瀏覽器、密碼管理工具、即時通訊軟體、FTP傳輸程式、檔案與本機組態設定,乃至於系統底層資訊和正在運行的處理程序。

面對如此大規模且深度的破壞,開發者在進行修復與防禦時面臨了前所未有的嚴峻挑戰。此篇文章透過Step Security的分析指出,在所有受到波及的套件當中,每一個Git標籤都已經被駭客惡意竄改。這意味著,即使開發者使用的是幾年前就已經發布的舊版本,系統目前也會顯示其建立時間是在不久之前,其根本原因在於所有的標籤都已經被攻擊者透過新的提交紀錄強制推送並予以覆蓋。文章強調,目前在實務操作上,已經沒有任何官方預設的安全版本可以直接鎖定使用,開發人員唯一能夠仰賴的自保方式,就是回溯並比對2026年5月22日攻擊發生之前的提交SHA雜湊值,藉由這個原始的雜湊值來確認本機端所取得的套件版本是否為未受汙染的乾淨版本。在受害災情的具體數據上,文章明確列出laravel-lang/lang是本次攻擊行動的最主要標的,其高達502個標籤全數遭到竄改;而laravel-lang/attributes與laravel-lang/actions也分別有86個和46個標籤難逃毒手;至於較晚被揭露的laravel-lang/http-statuses套件,雖然未公布確切受害數量,但從v1.0.0到v3.4.5的所有標籤已確認全軍覆沒。這起事件無疑為現代軟體開發的供應鏈安全敲響了一記沉重的警鐘,提醒所有開發團隊必須重新檢視並強化對第三方套件的依賴管理與驗證機制。

閱讀完整文章:https://www.ithome.com.tw/news/176082

Related posts