Celah FreeSWITCH CVE-2026-116779: Satu Pesan SIP Bisa Jalankan Perintah Server, Upgrade ke 1.11.3

Oleh , Tim Engineering APIPedia · Terbit · Diperbarui · 6 menit baca

CVE-2026-116779 membuat pesan SIP bisa menjalankan perintah di server FreeSWITCH dan sudah dieksploitasi. Ini cara cek versi, mitigasi, dan upgrade.

Sampul APIPedia: satu pesan SIP bisa mengendalikan server FreeSWITCH, kartu fakta CVE-2026-116779 dengan skor CVSS 9.8, status masuk CISA KEV 9 November 2026, versi aman FreeSWITCH 1.11.3 ke atas

CVE-2026-116779 adalah celah di FreeSWITCH yang membuat pesan SIP MESSAGE masuk bisa memilih protokol chat api dan menjalankan perintah API server, dengan skor CVSS 9.8. Semua versi sampai 1.11.2 terdampak, perbaikannya ada di 1.11.3, dan CISA memasukkannya ke katalog Known Exploited Vulnerabilities (KEV) pada 9 November 2026 karena sudah dipakai dalam serangan nyata.

FreeSWITCH banyak dipakai sebagai mesin di balik PBX, call center, dan layanan VoIP, sering kali dengan port SIP terbuka ke internet. Artikel ini menjelaskan cara kerja celahnya tanpa detail eksploit, cara cek versi dengan skrip yang sudah diuji, mitigasi sementara, dan langkah upgrade.

Ringkasan cepat

ItemDetail
CVECVE-2026-116779
AdvisoryGHSA-mg63-h38w-8p9p, terbit 28 Oktober 2026
Skor CVSS9.8 (kritis), tanpa hak akses dan tanpa interaksi pengguna
ProdukSignalWire FreeSWITCH
TerdampakVersi 1.11.2 dan sebelumnya
Versi aman1.11.3 atau lebih baru
StatusSudah dieksploitasi; masuk CISA KEV 9 November 2026
Mitigasi sementaraenable-chat=false di profil SIP yang tidak butuh chat masuk

Bagaimana celah ini bekerja?

Celah ini bekerja karena FreeSWITCH membiarkan pengirim pesan SIP menentukan sendiri protokol chat yang dipakai untuk mengantarkan pesannya. Salah satu protokol yang tersedia ternyata adalah pintu ke perintah API server.

Diagram perbandingan pesan SIP normal dan pesan yang disalahgunakan pada CVE-2026-116779: pesan normal diteruskan lewat protokol chat bawaan ke penerima, sedangkan pada versi 1.11.2 ke bawah alamat tujuan khusus bisa memilih protokol api sehingga isi pesan menjadi perintah server. Di versi 1.11.3 parameter enable-chat-api-proto mati secara default dan permintaan ditolak 403.

Apa yang salah di penanganan pesan?

Saat menerima SIP MESSAGE, FreeSWITCH memecah bagian pengguna pada alamat tujuan di tanda plus dan menganggap bagian kirinya sebagai nama protokol chat. Pilihan protokol itu tidak dibatasi. Karena modul bawaan mendaftarkan protokol chat bernama api, pengirim bisa mengarahkan pesannya ke pemroses perintah API FreeSWITCH.

Apa dampaknya?

Dampaknya adalah eksekusi perintah dengan hak proses FreeSWITCH. Menurut advisory pengembang, ini mencakup pembacaan konfigurasi dan kredensial, kendali penuh atas panggilan, dan jalur tambahan lewat skrip Lua bila modul mod_lua dimuat.

Siapa yang terdampak?

Yang terdampak adalah server FreeSWITCH versi 1.11.2 ke bawah yang profil SIP-nya menerima pesan chat masuk, dan itu adalah setelan bawaan.

  • Operator PBX dan call center yang membangun layanan di atas FreeSWITCH.
  • Pengguna distribusi PBX berbasis FreeSWITCH, yang versinya mengikuti paket dari penyedia distribusi.
  • Server dengan port SIP terbuka ke internet, terutama yang masih memakai direktori pengguna contoh.
  • Instalasi yang terlupa: server uji, kontainer, dan image lama yang masih berjalan.

Seberapa serius celah ini?

Celah ini sangat serius: skornya 9.8, jalurnya aktif di konfigurasi bawaan, dan eksploitasinya sudah dikonfirmasi.

Linimasa CVE-2026-116779: advisory terbit 28 Oktober 2026 dengan perbaikan di versi 1.11.3, masuk katalog CISA KEV 9 November 2026, batas waktu penambalan instansi federal Amerika 12 November 2026, dan ajakan cek server sekarang. Tiga fakta: CVSS 9.8, tidak butuh hak akses, chat masuk aktif di profil SIP bawaan.

  • Vektor CVSS menyebut serangan lewat jaringan, tanpa hak akses, dan tanpa interaksi pengguna.
  • Chat masuk aktif secara bawaan di profil SIP internal dan eksternal.
  • Autentikasi pesan (auth-messages) tidak cukup: akun mana pun yang diizinkan tetap bisa memilih protokol api.
  • Direktori contoh memuat pengguna tanpa password, yang bisa lolos autentikasi kecuali allow-empty-password diset false.
  • Pengembang menyatakan eksploitasi sudah teramati, dan CISA memberi instansi federal Amerika batas waktu 12 November 2026.

Versi mana yang aman?

Versi yang aman adalah FreeSWITCH 1.11.3 atau lebih baru.

VersiStatusTindakan
1.11.2 dan sebelumnyaTerdampakUpgrade, atau pasang mitigasi sementara
1.11.3 dan sesudahnyaSudah diperbaikiPastikan enable-chat-api-proto tidak diaktifkan
Paket dari distribusi atau vendor PBXTergantung backportCek catatan rilis penyedia paket

Bagaimana cara cek apakah server saya terdampak?

Cek versi yang sedang berjalan lewat fs_cli, lalu lihat setelan chat di profil SIP. Skrip berikut sudah kami uji dengan keluaran versi 1.10.12, 1.11.2, 1.11.3, dan 1.12.0.

#!/usr/bin/env bash
# Cek versi FreeSWITCH dan setelan chat di profil SIP
AMAN="1.11.3"
VER=$(fs_cli -x "version" 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | head -1)
if [ -z "$VER" ]; then
  echo "FreeSWITCH tidak terdeteksi (fs_cli tidak merespons)"; exit 0
fi
if [ "$(printf '%s\n' "$AMAN" "$VER" | sort -V | head -1)" = "$AMAN" ]; then
  echo "Versi $VER: sudah memuat perbaikan"
else
  echo "Versi $VER: TERDAMPAK, upgrade ke $AMAN atau lebih baru"
fi
echo "--- setelan chat di profil SIP ---"
grep -rnE 'enable-chat|auth-messages' "${FS_CONF:-/etc/freeswitch}/sip_profiles/" 2>/dev/null \
  || echo "tidak ada setelan eksplisit (chat masuk mengikuti bawaan: aktif)"

Bila konfigurasi Anda tidak berada di /etc/freeswitch, jalankan dengan FS_CONF=/lokasi/konfigurasi. Paket vendor yang mem-backport perbaikan bisa tetap menampilkan nomor versi lama, jadi cocokkan juga dengan catatan rilis penyedia.

Bagaimana cara update dengan aman?

Cara yang aman adalah memasang mitigasi dulu bila upgrade belum bisa dilakukan hari ini, lalu upgrade ke 1.11.3 dan memverifikasi versi yang berjalan.

Langkah 1: mitigasi sementara

Matikan chat masuk di setiap profil SIP yang tidak membutuhkannya. Periksa dulu apakah ada fitur pesan teks yang memang dipakai pengguna, karena setelan ini mematikan semua pengiriman chat masuk di profil tersebut.

<!-- di dalam <settings> tiap profil SIP -->
<param name="enable-chat" value="false"/>

Setelah itu muat ulang profil dan hapus atau beri password pengguna direktori yang belum punya. Menurut advisory, mematikan perintah system lewat disable_system_api_commands atau mengandalkan auth-messages saja tidak menutup jalurnya.

Langkah 2: upgrade dan verifikasi

  1. Cadangkan direktori konfigurasi.
  2. Upgrade ke 1.11.3 atau lebih baru lewat repositori resmi atau paket dari vendor Anda.
  3. Restart layanan, lalu jalankan lagi skrip cek di atas.
  4. Biarkan enable-chat-api-proto pada nilai bawaan (mati), kecuali Anda benar-benar membutuhkannya.
  5. Periksa salinan FreeSWITCH lain: server uji, kontainer, dan appliance.

Bagaimana mendeteksi tanda serangan?

Tanda serangan dicari dengan mencocokkan pesan SIP MESSAGE masuk dengan aktivitas server yang tidak wajar. Di versi 1.11.3, percobaan memilih protokol api ditolak dengan balasan 403 dan dicatat di log beserta sumbernya. Versi lama belum tentu mencatat percobaan ini, jadi periksa juga hal berikut.

  • Pesan SIP MESSAGE dari alamat IP yang bukan pengguna atau trunk Anda.
  • Proses turunan baru dari layanan FreeSWITCH dan koneksi keluar yang tidak lazim.
  • Modul yang dimuat tanpa sepengetahuan tim, perubahan routing, atau panggilan dan tagihan yang janggal.
  • Akses baca ke file konfigurasi yang menyimpan kredensial.

Kalau menemukan tanda pembobolan?

  1. Amankan log lebih dulu sebelum mengubah apa pun.
  2. Putuskan server dari internet atau batasi port SIP ke alamat tepercaya.
  3. Ganti semua kredensial yang bisa dibaca layanan: password SIP, trunk, basis data, dan kunci API.
  4. Pasang ulang dari sumber bersih bila ada bukti perintah sistem dijalankan.

Pertanyaan yang sering diajukan

Apakah penyerang butuh akun SIP?

Tidak selalu. Bila profil menerima pesan tanpa autentikasi atau masih ada pengguna tanpa password, akun tidak diperlukan; bila autentikasi diwajibkan, satu akun sah mana pun sudah cukup.

Apakah mematikan perintah system sudah cukup?

Belum cukup. Setelan disable_system_api_commands hanya menghapus satu perintah, sedangkan jalur ke perintah API lain tetap terbuka.

Apakah ACL inbound melindungi server saya?

Tidak bisa diandalkan. Menurut analisis publik, ACL inbound FreeSWITCH tidak mencakup lalu lintas MESSAGE, jadi pakai firewall jaringan untuk membatasi sumber.

Saya memakai distribusi PBX berbasis FreeSWITCH, apa yang harus dilakukan?

Cek versi FreeSWITCH di dalamnya dengan skrip di atas, pasang mitigasi enable-chat=false, lalu ikuti pembaruan dari penyedia distribusi Anda.

Apakah fitur chat rusak setelah upgrade ke 1.11.3?

Tidak. Chat SIP biasa tetap berjalan; yang dimatikan secara bawaan hanya pemilihan protokol api lewat pesan masuk.

Baca juga celah lain dari gelombang KEV yang sama: celah OpenSSH sshole dan celah GPUStack CVE-2026-102895, serta Node-RED tanpa login.

Sumber

Topik:

Tentang penulis

Tim APIPedia — Tim Engineering APIPedia

Tim engineering di balik APIPedia yang membangun dan memelihara API data Indonesia - ongkir, OCR KTP, data wilayah, BMKG, hingga server MCP - dan menulis panduan integrasinya dari pengalaman langsung.