GitHub宣布,NPM已限制設定為可繞過雙因素驗證(2FA)的精細度存取權杖(Granular Access Token,GAT),禁止這類權杖執行敏感的帳號、組織及套件管理操作。相關操作現在必須透過網頁或命令列介面,由使用者完成互動式2FA驗證。
可免除2FA的GAT主要用於無法等待人工驗證的自動化流程,過去這些權杖除了存取及發布套件,也能處理部分管理工作,使權杖一旦外洩,攻擊者可能藉此接管帳號、建立新的權杖,還能將其他帳號新增為套件維護者,並維持或擴大對帳號及套件的控制權。
新限制涵蓋建立及刪除權杖、調整套件存取權與維護者、修改可信任發布設定,以及管理組織或團隊成員與授予套件存取權限。GitHub表示,該調整是為了避免原本用來略過2FA的權杖,同時成為管理帳號及擴大權限的工具。
這次變更僅適用於NPM的精細度存取權杖,不影響GitHub個人存取權杖、GitHub App權杖,以及GitHub Actions工作流程使用的GITHUB_TOKEN。要是現有自動化流程透過設定為可繞過2FA的NPM權杖,執行建立權杖、變更套件維護者或管理組織成員等敏感操作,今後這些操作不能再由權杖直接完成,必須改由使用者透過網頁或命令列介面完成2FA驗證。
可繞過2FA的GAT目前仍能直接發布NPM套件,GitHub預計在2027年1月進一步移除直接發布能力,屆時這類權杖的用途將縮減為讀取私有套件,以及將版本送入分階段發布程序,而套件要正式公開,仍須由維護者完成2FA核准。
GitHub建議套件維護者將自動發布流程移轉至採用OIDC的可信任發布,或改用需要維護者核准的分階段發布。該措施延續GitHub於先前公布的逐步淘汰計畫,目前以2027年1月為移除直接發布能力的目標,使用相關發布流程的團隊應在此之前完成調整。
Comments (0)