- Setelah insiden Salt Typhoon, saat meninjau open source telekomunikasi, ditemukan buffer overflow tanpa autentikasi pada library XMLRPC yang dibundel dengan FreeSWITCH
- Kerentanan terjadi pada kode yang menulis Request URI yang disediakan penyerang ke variabel stack 4096 byte dengan
sprintf(), dan terlepas dari batasan browser, permintaan melebihi 4096 karakter mungkin saja dilakukan - SignalWire menyatakan bahwa pada Februari 2025 tiga PR perbaikan telah dipublikasikan di GitHub, tetapi FreeSWITCH Community mengatakan tidak ada rencana rilis baru hingga musim panas 2025
- Di Shodan ada sekitar 8.300 hasil untuk pencarian FreeSWITCH, dan operator tanpa tag rilis harus menangani sendiri lewat build dari source atau pemblokiran firewall
- Kasus ini menunjukkan bahwa risiko keamanan telekomunikasi membesar bukan hanya karena kerentanannya sendiri, tetapi juga karena manajemen kerentanan dan respons rilis, dan bahkan setelah CVE-2025-44087 diberikan pada 30 April 2025, masih belum ada rilis FreeSWITCH
Alasan mulai meninjau FreeSWITCH setelah Salt Typhoon
- Pada akhir 2024, kabar bahwa grup Salt Typhoon yang disebut terkait dengan pemerintah Tiongkok telah membobol T-Mobile dan operator telekomunikasi lain menjadi titik awal
- Memang tidak bisa menyelidiki langsung jaringan operator seluler, tetapi di GitHub ada banyak proyek open source terkait telekomunikasi
- Pernah bekerja dengan perusahaan yang menggunakan Asterisk dan FreeSWITCH, tetapi belum pernah menganalisis PBX, SIP, atau encoding audio secara mendalam
- Di bidang telekomunikasi ada tradisi programmer C hebat, komunitas hacker lama, dan insinyur dari Bell Labs, sehingga diasumsikan kerentanan sederhana kemungkinan besar sudah ditemukan
- Namun, sesaat setelah membuka source code FreeSWITCH, kerentanan langsung ditemukan
Buffer overflow pada penangan HTTP request XMLRPC
- Penangan HTTP request dari library XMLRPC yang dibundel dengan FreeSWITCH menulis URI ke buffer stack berukuran tetap
z[4096] - Kode bermasalah berbentuk
sprintf(z, "Index of %s" CRLF, uri);, dan karenauriberasal dari bagian path pada Request URI, penyerang dapat mengendalikannya - Browser biasa sering tidak mendukung URL yang lebih panjang dari 2048 karakter dengan baik, tetapi sebagian besar RFC mengizinkan sekitar 8KB dan Cloudflare mendukung hingga 32KB
- Masuk akal untuk menganggap penyerang dapat mengirim Request URI yang melebihi 4096 karakter, dan kondisi ini mengarah pada buffer overflow tanpa autentikasi di library XMLRPC
- Proses memperluasnya menjadi eksekusi kode jarak jauh tidak dibahas
Cara perbaikan dan patch yang dipublikasikan
- Arah perbaikannya adalah menggunakan
snprintf()alih-alihsprintf() - Ini termasuk praktik dasar pemrograman C defensif
- SignalWire mengatakan masalah ini baru-baru ini diperbaiki dan menunjukkan PR berikut
- Karena patch sudah dipublikasikan di GitHub, diputuskan bahwa tulisan publik dapat dibuat
Proses pengungkapan kerentanan dan kekosongan rilis
- Pada 27 Januari 2025, detail kerentanan dikirim ke alamat email yang tercantum dalam kebijakan keamanan FreeSWITCH
- Pada 7 Februari 2025, dikirim email lanjutan untuk memastikan apakah laporan telah diterima
- Pada hari yang sama, Andrey Volk menjawab bahwa kerentanan itu baru-baru ini telah diperbaiki dan menyarankan untuk melihat PR terkait
- Saat ditanya jadwal tag rilis yang memuat perbaikan keamanan baru, dijawab bahwa rilis FreeSWITCH Community tidak direncanakan hingga musim panas 2025
- Akibatnya, pengguna yang tidak membayar FreeSWITCH Advantage bisa tetap rentan hingga waktu rilis reguler
Skala paparan dan dampaknya pada operator
- Pada saat itu, hasil pencarian FreeSWITCH di Shodan berjumlah sekitar 8.300
- Karena sulit menganggap semua instance ini membayar dukungan enterprise, diperkirakan ribuan stack telekomunikasi di seluruh dunia dapat tetap rentan hingga musim panas
- Meski patch sudah dipublikasikan di GitHub, tanpa tag rilis operator biasa sulit melakukan pembaruan dengan mudah
- Operator FreeSWITCH sebaiknya mempertimbangkan langkah berikut alih-alih menunggu rilis dari SignalWire
- Build ulang langsung dari source
- Memblokir akses HTTP publik ke stack FreeSWITCH di tingkat firewall
Masalah struktural keamanan telekomunikasi
- Dalam percakapan dengan kenalan di industri telekomunikasi, muncul tanggapan bahwa bahkan kecepatan respons FreeSWITCH pun termasuk cepat
- Pada Desember 2024, kembali muncul peringatan tentang kerentanan SS7 yang telah ada selama 17 tahun di jaringan telepon
- Setelah pengalaman ini, Asterisk atau perangkat lunak lain tidak ditinjau lebih lanjut
- Kesimpulannya, keamanan telekomunikasi saat ini dinilai buruk
- Salah satu penyebab besar tampaknya adalah hampir tidak ada insentif ekonomi untuk membuat sistem seperti ini aman
Status setelahnya
- Dalam pembaruan 30 April 2025, CVE-2025-44087 diberikan pada buffer overflow yang dilaporkan
- Pada saat yang sama, masih belum ada tag atau rilis FreeSWITCH
1 komentar
Komentar Hacker News
Penulis mengakui sama sekali tidak punya pengalaman infrastruktur kelas operator telekomunikasi, tetapi kecurigaannya secara umum benar
Saya sendiri sudah cukup banyak melakukan uji penetrasi 4G/5G dan riset keamanan terhadap beberapa operator besar, dan meski ada perbedaan antaroperator maupun vendor perangkat, kondisinya masih nyaris seperti pertunjukan horor total
Hingga sangat baru-baru ini, keamanan pada dasarnya hanya security through obscurity, dan meski standar 4G/5G mulai menangani hal ini, masih ada celah besar yang cukup serius untuk dikhawatirkan
Tidak berlebihan untuk menganggap aktor ancaman tingkat menengah ke atas yang ingin membuat pijakan di operator telekomunikasi bisa melakukannya; saya sudah beberapa kali mendemonstrasikannya secara profesional
Vendor perangkat dari negara Asia Timur tertentu memiliki kualitas stack perangkat lunak yang begitu rendah sampai hampir bisa diklasifikasikan sebagai APT, dan keamanan pada dasarnya tidak ada
Ada alasan yang masuk akal mengapa negara-negara Barat melarang mereka, dan meski perangkat lunak vendor perangkat Barat jauh lebih matang, mereka tetap tertinggal beberapa tahun dari apa yang kita anggap sebagai praktik terbaik keamanan modern
GCHQ menilai kualitas kodenya berada pada tingkat yang tidak mungkin ditinjau, dan bahkan tidak bisa menjamin bahwa source code yang diberikan adalah kode yang benar-benar berjalan di perangkat sebenarnya
Itu karena Huawei bisa memperbaruinya secara langsung, dan setahu saya perangkat tersebut dilarang setelah 2020: https://www.washingtonpost.com/world/national-security/brita...
Saya ingin membeli satu dari AliExpress dan membongkarnya, apakah tautan ini bisa menjadi titik awal yang bagus?
https://vulners.com/search/types/huawei
Saya benar-benar tidak paham mengapa standar seluler pada 2025 masih memakai pre-shared key
RSA dan Diffie-Hellman[1] sudah ada sejak puluhan tahun lalu, dan sistem certificate authority juga sudah lama ada, tetapi kartu SIM masih diterbitkan dengan pre-shared key yang hanya diketahui kartu dan operator, lalu autentikasi dan enkripsi setelahnya semuanya berbasis kunci itu
Jika operator diretas dan kuncinya bocor, tidak ada yang bisa dilakukan
Lebih buruk lagi, kunci itu harus dikirim oleh produsen kartu SIM kepada operator, dan jika produsennya berada di negara lain, mereka bisa saja mendapat permintaan dari pemerintah asing, sehingga ada banyak peluang untuk peretasan produsen atau pencurian saat transmisi
Ini terasa seperti kerentanan NOBUS, dan jika produsen SIM atau vendor perangkat core network berkolusi dengan NSA untuk menyerahkan kunci, trafik seluler di seluruh dunia berpotensi bisa disadap
[1] Saya tahu algoritma-algoritma ini sekarang bukan lagi praktik terbaik dan elliptic curve lebih baik, tetapi bahkan RSA pun lebih baik daripada kondisi sekarang
[2] https://nickvsnetworking.com/hss-usim-authentication-in-lte-...
“Menurut dokumen sangat rahasia NSA yang diberikan Edward Snowden, mata-mata Amerika Serikat dan Inggris meretas jaringan komputer internal produsen kartu SIM terbesar di dunia dan mencuri kunci enkripsi yang digunakan untuk melindungi privasi komunikasi ponsel di seluruh dunia”
https://theintercept.com/2015/02/19/great-sim-heist/
Saya tidak tahu apakah sekarang masih begitu, tetapi dulu ponsel sulit dianggap sebagai sarana komunikasi yang aman
Mungkin memang perlu berbicara lewat komunikasi data terenkripsi end-to-end antarperangkat
Algoritma kunci simetris juga punya keunggulan tahan kuantum
Meski begitu, pada 2025 saya berharap setidaknya ECC didukung, dan sekarang seharusnya sebagian besar smart card bisa mendukungnya secara bawaan
Jika vendor kartu SIM tidak bisa dipercaya, pada dasarnya tidak ada jawaban
Bahkan dalam skema asimetris, jalur serangannya hanya sedikit berbeda; jika kita tidak bisa mempercayai perangkat lunak yang berjalan di kartu, bagaimana kita tahu bahwa algoritma nondeterministik tidak membocorkan plaintext melalui pemilihan bilangan acak
Gagasan bahwa memasukkan RSA ke sistem simetris akan membuatnya lebih aman punya dasar yang lemah, dan justru hampir sebaliknya
Istilah “kerentanan NOBUS” juga terasa sangat aneh, karena root of trust sistem seperti ini adalah operator telekomunikasi
Tidak perlu bertanya apakah operator AS “berkolusi” dengan badan intelijen AS; kita memang seharusnya sudah menganggap demikian
Penipu adalah pelanggan besar operator, dan jika tertangkap lalu diblokir, mereka kembali lagi, membayar biaya pendaftaran lini baru, dan mengulangi proses yang sama
Berkat para penipu, operator juga bisa melakukan upsell fitur tambahan, sehingga tetap ada keuntungan dari tidak menyelesaikan masalah
Seperti kesimpulan tulisan blog itu, sama sekali tidak mengejutkan bahwa Freeswitch tidak mengubah jadwal rilis komunitas
Dulu Freeswitch punya semangat komunitas yang kuat, tetapi suasananya berubah setelah beberapa tahun lalu dikomersialisasi dengan lebih agresif
Sejak itu, untuk mengakses hal-hal yang semestinya terbuka, orang harus melalui proses “registrasi”, dan seingat saya sesuatu seperti repositori APT disembunyikan di balik tembok registrasi
Saya tidak ingin mendaftar ke perusahaan komersial hanya untuk mengakses konten komunitas perangkat lunak bebas
Karena semua orang tahu bahwa di industri teknologi, begitu Anda memberi informasi kepada perusahaan komersial, staf penjualan akan mengganggu dengan upsell dan cross-sell, lalu memasukkan Anda ke mailing list yang tidak Anda inginkan
Saya juga melihat bagian lain dari komunitas VoIP menyesuaikan kembali kemurahan hati mereka terhadap open source, dan jujur sulit menyalahkan mereka
Tim Matrix.org juga membicarakan hal serupa dalam salah satu presentasi FOSDEM’25, tentang masalah vendor komersial yang menumpang gratis pada pengembangan
Kalau mereka juga memperbarui repositori APT secara gratis, itu tentu sangat patut diapresiasi, tetapi sebatas itulah—“sesuatu yang patut disyukuri”
Jika Anda bergantung pada kode mereka tetapi tidak mau membayar biaya dukungan, Anda bisa membangun paket APT sendiri
Saya tidak begitu yakin semangat komunitas seperti apa yang seharusnya diharapkan dari proyek yang dipelihara oleh satu perusahaan seperti ini
Dengan mempertimbangkan pelaku ancaman asing, aliansi Barat seperti Five Eyes, dan tekanan untuk terus menaikkan angka, masuk akal untuk menganggap bahwa anonimitas sejati tidak ada di dunia online
Jika mereka menginginkan Anda, mereka juga punya cara untuk menangkap Anda
Kenyataannya tidak jauh berbeda dari era sebelum internet
Jika tidak ingin disadap, Anda harus mengenkripsi dengan cara yang tidak mudah diakses secara elektronik oleh lembaga keamanan besar
Misalnya catatan fisik, komunikasi lisan, atau isyarat tangan
Selain itu, ketika aktor negara benar-benar mengalokasikan sumber daya untuk memanfaatkan data, Anda perlu siap menanggung konsekuensi dari apa yang Anda katakan dan lakukan secara online
Dari artikel itu saja, saya belum sepenuhnya yakin dengan kesimpulan bahwa “keamanan telekomunikasi saat ini berantakan”
Karena ini lebih mirip memilih Freeswitch secara acak lalu menemukan buffer overflow
“Stack telekomunikasi” mungkin saja rentan, mungkin juga tidak, tetapi bukti yang disajikan di sini sangat lemah
Serangan Salt Typhoon diketahui mengeksploitasi kerentanan Cisco, tetapi analis juga menyatakan kemungkinan penyerang menggunakan kredensial yang sah: https://cyberscoop.com/cisco-talos-salt-typhoon-initial-acce...
Jadi itu tidak ada hubungannya dengan Freeswitch
Oracle SBC saja sering tidak stabil bahkan dalam perilaku dasarnya, dan di kekacauan implementasi TRouter yang dikeluarkan Teams minggu ini pun pasti ada bug denial-of-service yang belum berhasil diisolasi dengan baik
Belum lagi kekacauan MF Tandem, atau fakta bahwa hampir semua operator telekomunikasi membiarkan trafik UDP SIP mentah tanpa enkripsi mengalir begitu saja ke internet
Membangun sistem yang aman di bidang ini memang mungkin, tetapi kenyataannya sebagian besar operator besar menjalankan tumpukan technical debt yang bahkan lebih buruk daripada platform proprietari yang tidak bisa dimodifikasi dari perusahaan atau proyek yang sudah lama mati seperti Nortel dan Metaswitch, serta peralatan tua yang tidak dipatch yang membentuk jaringan mereka
Ungkapan “semuanya berantakan dan tidak ada insentif untuk memperbaikinya” hanyalah ringkasan
Sejujurnya, percakapan itu sangat sulit diikuti jika tidak paham jargon, dan saya sendiri tidak cukup memahami bidang ini sehingga tidak ingin mencoba menjelaskannya dengan buruk, jadi saya hanya menulis begitu
Saya sama sekali tidak menyangka blog saya akan muncul di Hacker News
Itu kode yang mem-parsing protokol jaringan kompleks dengan beberapa generasi legacy, sering ditulis secara tertutup, dan biasanya C/C++
Mana mungkin itu rentan. Tentu saja
Protokol seperti SS7 dirancang tanpa konsep hacker atau pelaku jahat
Firewall bisa ditambahkan di atasnya, tetapi itu berbenturan dengan fungsi yang diinginkan, dan meski tidak pun tetap membutuhkan investasi tambahan
DIAMETER lebih baik, tetapi masih punya banyak lubang
Dalam beberapa tahun terakhir, keamanan telekomunikasi mulai menjadi prioritas dan memang membaik, tetapi harus membungkus puluhan tahun hardware, software, firmware, dan desain jaringan legacy
Saya rasa tidak ada jaringan telekomunikasi yang menjalankan Freeswitch standar begitu saja, tetapi jenis masalah pada Freeswitch—sebagai produk telekomunikasi lama yang keamanannya tidak dicari sedalam yang semestinya—bertebaran di mana-mana
Penulisnya melihat kode di waktu luang, menemukan bug, dan melaporkannya; itu bagus, dan sama sekali tidak ingin saya halangi
Namun fakta bahwa satu maintainer dari satu perangkat lunak tidak menunduk kepada penulis sesuai praktik terbaik industri keamanan adalah dasar yang lemah untuk mengatakan “keamanan telekomunikasi saat ini berantakan”
Jika seseorang membawa bug di kode Anda tetapi tidak mengklaim bahwa bug itu sedang dieksploitasi, dan juga tidak memberikan PoC untuk memastikan kemungkinan eksploitasi, apakah ada alasan untuk tidak memperlakukannya sebagai bug biasa?
Perbaiki sekarang dan masukkan ke rilis berikutnya
Orang bisa melihat perubahan itu? Benar, mereka juga bisa melihat semua perubahan lain
Kalau mereka bisa menemukan exploit, semoga beruntung; pelapornya sendiri tidak menemukannya
Hal yang sama terjadi di distribusi Linux
Bug keamanan dilaporkan, dan kadang penulis upstream bukan sekadar keras kepala, tetapi secara harfiah sudah meninggal dunia
Jika ingin mengubahnya sesuai jadwal Anda sendiri, rilis sendiri saja
Area yang tampaknya cukup sering memakai Freeswitch adalah instalasi BigBlueButton di sekolah dan universitas
Itu sistem kelas virtual, dan mungkin banyak yang menggunakannya tanpa kontrak dukungan; sisi ini lebih saya khawatirkan daripada operator telekomunikasi
Saya penasaran seberapa banyak orang yang benar-benar memakai modul XML RPC
Tidak dimuat secara default
Koreksi: menurut Shodan ada 468
Saya juga penasaran apakah
senddirectorydocumentdi modul XML RPC benar-benar dipakaicurl --show-error --get --request GET --user freeswitch:works "http://localhost:8080/${SIXTEEN_THOUSAND_RANDOM_CHARACTERS}"Ada ide tentang cara memicunya?
Kalau setidaknya ada PoC yang bisa menyebabkan segfault, kemungkinan rilis keamanan akan lebih besar
Peretasan yang benar-benar menarik terjadi pada injeksi CAMEL MAP
Ini mengendalikan berbagai hal menarik seperti SMS, USSD, sampai permata mahkotanya: layanan lokasi
Banyak perusahaan “SMS massal” di pulau-pulau kaya di Karibia atau tempat seperti Indonesia melakukan jauh lebih banyak hal daripada sekadar mengirim spam
Jadi sudah tua, dan 2G dirancang pada 1990-an
Saya tidak begitu tahu apa yang orang-orang harapkan
Jujur saja, bisa berjalan pun sudah bagus
Operator telekomunikasi besar tidak menjalankan FreeSwitch atau Asterisk di core mereka
Memang Motorola sedang menghentikan produk itu, tetapi masih ada di lapangan
Yang saya rawat dibatasi firewall dengan ketat, tetapi saya rasa tidak semuanya seperti itu
Sebagian besar perusahaan yang memiliki PBX dan ingin melakukan hal lebih dari routing panggilan dasar serta koneksi PSTN kemungkinan memakai alat pihak ketiga
Dan banyak dari alat tersebut dibangun di atas FreeSWITCH, Asterisk, atau yang serupa
Saya sangat merekomendasikan presentasi P1 Security terkait keamanan telekomunikasi seluler: https://www.slideshare.net/slideshow/day1-hacking-telcoequip...
Materinya memang lama, tetapi tidak ada alasan untuk percaya bahwa keadaannya sudah membaik
Karena sama sekali tidak ada insentif untuk memperbaikinya
Selain itu, kerentanan keamanan perangkat lunak hanyalah sebagian dari masalah; sisi lainnya adalah operator telekomunikasi dengan senang hati mengalihdayakan kendali dan akses inti kepada penawar termurah: https://berthub.eu/articles/posts/5g-elephant-in-the-room/