這是一篇針對 FreeSWITCH(用於 IP 電話交換機和聯絡中心通話平臺的開源軟體)中漏洞的解析:SIP MESSAGE 的處理可以執行管理命令。面向運營 IP 電話、聯絡中心和通話基礎設施的人員,以防禦視角說明影響和因應,不涉及攻擊步驟。
- CVE
- CVE-2026-116779(GitHub 公告 GHSA-mg63-h38w-8p9p)
- 嚴重度
- CVSS v3.1 9.8(Critical;向量 AV:N/AC:L/PR:N/UI:N;由 GitHub 給出)
- 類型
- 命令注入(CWE-77、CWE-78);暴露危險方法(CWE-749)
- 前提條件
- 公告:能傳送 profile 接受的 SIP MESSAGE。CVE 記錄:任何已認證的帳戶即可(某些配置會消除認證障礙)
- 受影響版本
- SignalWire FreeSWITCH 1.11.2 及更早版本
- 修復
- FreeSWITCH 1.11.3 及以後版本(新增設定預設關閉)
- 日期
- 公告:2026年10月28日 / CVE 記錄:2026年11月5日
- 利用情況
- 公告稱已觀察到在野利用。11月9日列入 CISA KEV(期限11月12日)
放任不管的風險
FreeSWITCH 以守護程序方式執行,據公告,作業系統命令會以其權限執行。它的配置裡往往儲存著 SIP 帳戶、中繼線路和管理連線的憑證,所以外洩的影響會超出電話平臺。通話也可能被控制;按本站的判斷,這可能導致虛假外呼產生的費用。
這是什麼樣的漏洞
據公告,FreeSWITCH 在處理入站 SIP MESSAGE(文字訊息)時,會根據訊息的定址方式選擇一種聊天類型。選中其中一種類型會執行 FreeSWITCH 的管理 API,因此 API 命令(包括執行作業系統命令的命令)會以守護程序的權限執行。本站不描述訊息的形式,也不描述如何進行這種選擇。
公告稱,預設的 internal 和 external profile 都啟用了入站聊天。也就是說,不需要任何特殊配置就可能受影響。
修復前(1.11.2 及更早版本)
- 被接受的 SIP MESSAGE 可以到達管理 API
- 預設 profile 中入站聊天是開啟的
- 只要有已認證的帳戶就足以執行
1.11.3 及以後版本中的變化
- 選擇 API 變為每個 profile 的設定(enable-chat-api-proto)
- 除非明確設定,否則該設定預設關閉
- 不需要聊天的 profile 可以用 enable-chat 停止接收
誰受影響
| 專案 | 內容 |
|---|---|
| 產品 | SignalWire FreeSWITCH |
| 受影響版本 | 1.11.2 及更早版本(CVE 記錄的寫法:before 1.11.3) |
| 修復版本 | 1.11.3 及以後版本 |
| 能完全堵住路徑 | 在相關 profile 上把 enable-chat 設為 false |
| 僅為緩解 | MESSAGE 認證(auth-messages,自 1.10.7 起預設啟用);刪除沒有密碼的目錄使用者 |
| 不能堵住 | 把 disable_system_api_commands 設為 true(只移除 system API) |
- 沒有密碼的目錄使用者(公告以 conf/vanilla 目錄中的預設使用者為例)會消除認證障礙。除非把 allow-empty-password 設為 false,否則不會對該使用者強制認證。
- 內嵌 FreeSWITCH 的 IP-PBX 和通話平臺產品,可能以自己的版本號提供修復。請詢問供應商。
如何確認自己是否受影響
確認 FreeSWITCH 的版本
查看正在執行的版本(例如在 fs_cli 中使用 version 命令),或軟體套件、容器的版本。1.11.2 或更早版本受影響。如果有多臺交換機(生產、預發布、開發,或每個站點一臺),請逐一檢查(資產清點清單)。
確認 SIP 監聽埠是否暴露
確認 Sofia profile(internal、external 等)能否從網際網路或其他不可信網路到達。請包括為中繼線路和遠端辦公終端開放的埠。
檢查聊天設定
查看每個 profile 的 enable-chat 和 auth-messages。公告稱,預設的 internal 和 external profile 中入站聊天是開啟的。同時記下哪些 profile 實際使用聊天。
今天該做什麼
更新到 1.11.3 或更高版本(最優先)
把 FreeSWITCH 更新到 1.11.3 或更高版本。KEV 期限為11月12日。如果它內嵌在某個產品中,請應用供應商發布的修復版本。
在不使用聊天的 profile 上把 enable-chat 設為 false
公告把在每個不需要入站 SIP 聊天的 profile 上將 enable-chat 設為 false,列為唯一能完全堵住這條路徑的措施。在能更新之前,請把它作為最優先的臨時措施,更新之後也要讓不使用的 profile 保持禁用。
加強認證並收窄可達範圍(緩解措施)
啟用 auth-messages,並刪除沒有密碼或 a1-hash 的目錄使用者。作為本站的補充建議,把可存取 SIP 監聽埠的來源地址限制為您的中繼線路和需要使用的終端。這些措施只能減少可發起攻擊的人,不能堵住這條路徑。
檢查是否已經被入侵
由於已觀察到利用,針對更新之前的這段時間,請查詢意外的入站 SIP MESSAGE、意外的外呼或通話費用激增,以及意外的程序或配置檔案變更。KEV 對這一條目標註了鑑識分診。流程可參考漏洞修復實務手冊。
有疑慮時輪換憑證
公告稱配置和憑證可能被外洩。如果發現可疑跡象,請輪換 SIP 帳戶密碼、中繼線路憑證和管理連線密碼,並與運營商溝通。
利用情況
- 公告和 CVE 記錄都稱,已觀察到對這條路徑的在野利用。
- CISA 於2026年11月9日把它列入 KEV,期限為11月12日(KEV 目錄版本 2026.11.09)。
- KEV 將勒索軟體使用情況記為 Unknown,將鑑識分診記為 Yes。
- CISA 的評估(exploitation active、automatable、total technical impact)已新增到 CVE 記錄中。
- NVD 的狀態為 Analyzed。
- 規模、行為者或受害者數量的公開資訊無法確認。
本站的觀點:比起緩解措施,更應優先選擇讓它停止接收的設定
「我們要求認證,所以沒事」這樣的推理有風險,原因有兩點。
第一,公告明確指出認證只是緩解措施,一個被盜的已認證帳戶就會帶來同樣的結果。第二,很多交換機根本不使用聊天,對它們來說,把 enable-chat 設為 false 在運維上沒有任何代價。對業務沒有影響、又能堵住路徑本身的變更應該優先做,並與更新一起進行(用 CVSS、EPSS、KEV 確定優先順序)。
資訊來源
- SignalWire FreeSWITCH — GHSA-mg63-h38w-8p9p: Inbound SIP MESSAGE can select the api chat proto and run FreeSWITCH API commands(2026年10月28日發布;受影響與修復版本、緩解措施、已觀察到的利用)
- CVE.org — CVE-2026-116779(2026年11月5日發布;before 1.11.3;CVSS 9.8;含 CISA 的列入資訊)
- NVD — CVE-2026-116779(Analyzed;CWE-77、CWE-78、CWE-749)
- CISA KEV — Known Exploited Vulnerabilities Catalog(11月9日列入,期限11月12日)
最後確認:2026年11月10日。
延伸閱讀
- 實務:漏洞修復實務手冊 / 資產清點清單
- 判斷:用 CVSS、EPSS、KEV 確定優先順序
- 術語:什麼是 RCE(遠端程式碼執行)? / 什麼是 CVSS?