GitHub 推出新安全功能「套件防火牆」,目前為公開預覽階段,在 Actions 執行器或程式撰寫代理等端點與上游套件庫之間加入一層檢查。攻擊者會利用安裝套件過程下手,即使不執行套件程式碼,也能在 CI/CD 主機或開發者電腦竊取憑證,套件防火牆就是為了阻止這類攻擊而設計。
技術上,管理員可設定政策來控管套件安裝,包括可調整的冷卻期、比對 GitHub 安全諮詢資料庫,以及供應鏈檢查(例如偵測證明文件遭降級)。不只套件下載,連查詢套件資訊的中介資料請求也會經過防火牆檢查是否符合政策,若判斷有誤,使用者可提出例外申請。目前只支援 npm 套件。
這項功能把安全防護從「程式碼執行後才檢測」往前移到「安裝那一刻」,呼應近年開源供應鏈攻擊愈來愈多從套件安裝過程下手、而非等程式碼被呼叫的趨勢。目前所有 GitHub Enterprise Cloud 客戶都能使用,預覽期間免費,正式推出後會改採類似 Actions 的用量計費方式。
對正在學程式的孩子來說,這則新聞比較偏向企業端的基礎設施安全,不是能直接動手玩的功能,但背後概念值得知道:寫程式常常會安裝別人寫好的套件(像 npm 套件),而安裝的那一瞬間本身也可能藏著風險,不是只有「跑程式碼」才危險,這也是為什麼養成只從可信來源安裝套件的習慣很重要。
開源資安開發工具