IT自動化工具供應商Puppet,宣布在其模組目錄Puppet Forge中,添加惡意程式掃描功能,以進一步提高模組的安全性。新的安全掃描功能可以檢查上傳模組中,所包含的惡意程式碼,以及存在潛在安全疑慮的內容。

官方提到,軟體供應鏈攻擊事件層出不窮,過去認為開源程式碼會受到更多的檢視,但隨著NPM、PyPI或RubyGems等點對點軟體套件儲存庫興起,這種假設已經不存在。雖然到目前為止Puppet生態系,尚未因為Forge模組被注入惡意程式碼而受到攻擊,但是官方未雨綢繆,在過去幾個月打造了模組掃描框架。

對Puppet來說,在打造軟體掃描框架之前,要先定義所謂安全的Puppet模組,官方提到,這就像是定義雜草一樣,完全和上下文相關聯,像是下載tarball並且執行殼層命令,是不少Tomcat模組的運作方式,因此無法排除這種行為,但是可以透過辨識檔案資源,使用全域可寫入權限、廣開防火牆規則,或是已知不安全的Apache配置,來找出可疑的檔案,並標記出已知惡意軟體檔案或URL加到模組中的時間。

Puppet Forge安全掃描框架延伸自原本就已經存在的模組自動品質評分系統。由於官方將原本以Jenkins工作管線實做的品質評分系統,移植到更現代基於容器的工作流程,而使得這個工作流程,也適合用於安全分析系統,只要能夠在容器中運作的系統,就可以用到Forge中。

Puppet採用VirusTotal作為Forge安全掃描解決方案,VirusTotal提供上傳API,該API雖然不了解Puppet程式碼,但是能夠解析解壓縮模組tarball格式,以及掃描檔案內容,找出惡意程式碼,官方提到,VirusTotal匯總了70個防毒掃描程式,以及URL封鎖名單,因此對於Puppet來說是完整的解決方案。

當模組通過VirusTotal掃描,Puppet會將模組標記為已掃描,一旦發現存在惡意程式碼,使用者可以透過連結,連接到VirusTotal頁面,查看詳細的資訊。Puppet提到,他們期望在年底之前,所有上傳的模組,都會經過安全掃描,但是為了避免零日攻擊,他們不會對既有的模組進行掃描,用戶還是要對自己使用的模組進行評估。

官方強調,這個掃描框架並不能取代用戶自己的安全解決方案,開發者仍然有責任審查不受信任的程式碼,並且運作自己的安全防護軟體,他們僅能確保開發者所使用的Puppet模組,不會帶來惡意軟體。

熱門新聞

Advertisement