Penangkapan Data ACARS Menggunakan RTL-SDR (Software Defined Radio)
(disadur dari tulisan sendiri di portal knowledge management perusahaan)
BAGIAN 1: Pendahuluan dan Teori Dasar dari RTL-SDR
Saya pernah secara tidak sengaja mendengarkan “siaran” kokpit melalui radio portabel ini. “Siaran” kokpit, ditransmisikan pada pita VHF : demikian juga “siaran” pesawat lainnya : pesan ACARS [1].
Pertanyaannya.. Dapatkah kita menggunakan radio untuk “mendengarkan” pesan ACARS? Bila menggunakan radio seperti di foto, mungkin jelas tidak bisa, karena pesan ACARS semacam memiliki format tertentu, dan jelas tidak audible. (tidak seperti siaran audio kokpit).
Salah satu cara kita, orang awam, menangkap siaran ACARS ini adalah dengan menggunakan Software Defined Radio.
Software Defined Radio. Apakah SDR itu?
Gambar 1: diagram proses sederhana tentang Software Defined Radio
SDR adalah ... Radio yang sebagian besar / seluruh physical layer nya dikonstruksi dalam konstruksi perangkat lunak [2]. Filtering, demodulasi, ataupun proses mixing, dipindahkan dari physical layer (membutuhkan hardware) kedalam software (komputer).

Gambar 2: skematik sederhana dari Software Defined Radio
Semakin terjangkau dan teraksesnya komputer, membuat konsep SDR menjadi semakin menarik : prototyping produk maupun untuk hobbyist. RTL-SDR (RTL2832U) adalah salah satu software - hardware (hardware nya berupa seperti "USB Dongle", dilengkapi dengan software yang dijalankan di komputer. Pada awalnya, benda ini merupakan DVB-T Tuner, alias tuner TV digital & FM radio.
Hobbyist Eric Fry (kemudian oleh Antti Palosaari) kemudian menemukan cara untuk melakukan dump usb data dalam bentuk I/Q signal [3]. Selanjutnya, library (driver) untuk mengolah sinyal ini dalam fleksibilitas yang lebih luas (menjadi SDR) dikembangkan oleh Osmocom. Harganya sangat murah : Rp.200.000 (per Tokopedia 4 November 2016)
Gambar 3: foto dari USB dongle nya SDR: seperti "TV Tuner" jaman kuliah dulu ya?

Gambar 4: tampilan tear-down nya. Sumber gambar : http://www.superkuh.com/rtlsdr.html
Penjelasan:
- 28.8 MHz crystal oscillator
- MCX-M (micro coaxial) antenna port
- Elonics E4000 (E4K) : 54 – 2200 MHz
- RTL2832U chipset : stream I/Q sample, at maximum rate of 3 MSps
Software yang akan kita gunakan adalah "SDR#". Software inilah yang berfungsi sebagai antarmuka baseband processing sinyal I/Q
Beberapa key point:
- Berbasiskan C#
- Intuitif dan ringan
- Fungsi-fungs inti:
- Mode modulasi
- Filter tuning
- Noise profile
- Pengaturan penampilan spektogram
Dengan beragam fungsi ini-lah, ada banyak sekali kemungkinan yang bisa kita lakukan dalam decoding atau interpretasi sinyal gelombang radio yang ditangkap...
Gambar 5: tampilan SDR#
Nah, sudah ada hardware nya, sudah ada software nya, tapi kita masih butuh "kabel" untuk menghubungkan keduanya. Tentu, jangan dibayangkan kabelnya adalah kabel fisik ya..
Virtual cable = Driver tambahan untuk “piping” hasil pengolahan sinyal dari SDR# menuju aplikasi pengodean yang lain. Salah satu driver virtual cable yang dapat dipakai secara cuma-cuma adalah VB-Audio Virtual Cable oleh VB-Audio. Limitasi : hanya satu buah “kabel” saja. Jadi, kita dikunci "hanya" bisa memakai satu software saja. Untuk kebutuhan awam, mungkin ini sudah sangat cukup. Namun, bila kita butuh pengolahan maupun tapping data yang lebih lanjut, harus beli versi pro-nya yaa.
Gambar 6: tampilan virtual cable, seperti "sound output" ya?
Nah, sudah membahas tentang hardware dan software dari sistem Software-Defined Radio ini, mari kita beranjak ke.. data ACARS itu sendiri. Apa sih data ACARS itu?
Bagian 2: Sekilas tentang ACARS
Aircraft Communication and Reporting System : sistem komunikasi antara pesawat – ground . Beberapa pesan-pesan yang dapat dikirimkan dari pesawat, antara lain...
- OOOI messages : Out of the gate, Off the ground, On the ground, and Into the gate messages
- Flight management system interface : request / report weather data, request flight plan E
- quipment health & maintenance data
- Test messages
- Pesan manual dari kru pesawat
Beberapa aspek teknis lainnya dari data ACARS:
- Frekuensi yang umum digunakan di Indonesia : 131.550 MHz
- Dimodulasi secara AM (Amplitude Modulation), menggunakan MSK (Minimum Shift Keying) pada kanal 25 KHz
- Data ACARS diatur dalam standar ARINC 618

Gambar 7: ACARS network
Untuk struktur jaringan, beserta konfigurasi perangkat di pesawat yang digunakan untuk menerima / mengirim data ACARS, adalah sebagai berikut..
Gambar 8: struktur data ACARS
Gambar 9: konfigurasi perangkat di pesawat untuk mengirim / menerima data ACARS
Nah! Kita sudah mengupas teori-teori dasarnya, sekarang mari kita langsung implementasi!
Bagian 3: Implementasi
Kita perlu "set-up" hardware kita. Untuk kualitas sinyal yang lebih baik, perangkat RTL-SDR kita dapat dihubungkan dengan antenna eksternal. Tidak perlu rumit-rumit membayangkan atau membuat nya sendiri, kita bisa memakai yang sudah ada.. yakni antenna TV (indoor atau outdoor), yang disambungkan dengan adapter, sehingga lubangnya antara antenna TV ke lubang RTL-SDR bisa "pas"
Gambar 10: setting hardware "Rumahan" data ACARS
(jokes aside, sistem pendinginan itu adalah kipas laptop saya...)
Hardware ready, kini setting sisi software-nya. Selain memakai software SDR# yang sudah saya nyatakan tadi, kita butuh aplikasi tambahan untuk pengkodean data-data ACARS, agar "parsing" atau pemenggalan teks-teks nya lebih nyaman, serta detail-detail seperti nama airport, nama maskapai, dan rute pesawat, bisa ditampilkan lebih nyaman lagi. Aplikasi tambahan ini adalah ACARSD. Fitur-fiturnya:
- Tampilan hasil pengodean yang dapat dikustomisasi,
- Pencatatan (logging) otomatis,
- Sistem basis data untuk penunjang pencatatan : registrasi – jenis pesawat – foto pesawat, dsb.

Gambar 11: tampilan software ACARSD
Kemudian, berikut adalah step by step pengaturan software-nya, sehingga kita ready untuk menerima dan mengkode-kan data ACARS:
Gambar 12: pengaturan software ACARSD, dan SDR#
Bagian 4: hasil penangkapan!
Nah, inilah yang kita tunggu-tunggu.. ada beberapa registrasi and its correspondent airlines yang berhasil kita tangkap..
Gambar 13: registrasi, meskapai, dan jenis pesan yang berhasil ditangkap.
Darimana sih kita tahu registrasi-nya? Gambar pada saat penangkapan bagaimana? Kalau pembaca cermat, sebenarnya di gambar 11 dan gambar 12, itu ada sedikit sekilas hasil penangkapannya... di gambar 11, terbesit kesan pesan yang ditangkap adalah sederhana.. yakni permintaan kondisi cuaca di airport keberangkatan dan airport tujuan.
Yap, sebagaimana di gambar 13, rupanya ada berbagai macam jenis pesan yang bisa dikirim / diterima oleh pesawat.. jenis pesan tersebut bisa kita ketahui di kolom "Message Label". Setiap message label, punya arti-nya masing-masing. Tahu dari mana kah..? Tentu saja ini diatur di ACARS dataframe.. (kita bisa googling kok, walau tidak begitu lengkap).
Apa saja sih contoh-contoh pesan-pesannya? Yuk kita intip satu-satu...

Gambar 14: pesan ACARS yang berhasil kita rekam!
Bagian 5: Kesimpulan~
Yeay.. sampailah kita di akhirul kalam alias kesimpulan.. Apa saja yang sudah kita pelajari di kesempatan kali ini?
- Dengan modal seadanya anda dapat dengan mudah menangkap, decode, serta menerjemahkan isi data ACARS
- Data ACARS tidak terproteksi
- Bahkan exploit ini bisa dimanfaatkan untuk membajak system pesawat [7]
- ARINC pernah mengungkapkan fenomena “sniffing” data ACARS oleh hobbyist ini, dan mengungkapkan pentingnya menerapkan standar ARINC 823 : “Protected ACARS Open Standard” untuk memitigasi penyadapan data ACARS ini (Software Only Solution) [8]
- Standar ini pun telah berhasil dilakukan uji validasi oleh Honeywell sejak 2009 [9]

Gambar 15; skema "Protected ACARS" yang diusulkan oleh ARINC

Gambar 16: skema protected ACARS yang diusulkan oleh Honeywell, up to LRU level lho.
Wew, tudingan di poin nomor 3 itu menarik ya, tapi nanti bisa anda lihat di daftar pustaka, bahwa pernah ada "percobaan" iseng-iseng sebagai proof of concept nya, walau tentu tidak dilakukan di kondisi actual terbang ya.
Woee.. demikianlah artikel pada kesempatan WFH dan karantina mandiri kali ini! Semoga bermanfaat, sebagai selingan di kala penat bekerja.
Daftar pustaka:
- http://www.ohio.edu/people/uijtdeha/ee6900_fms_08_acars.pdf
- J. A. del Peral-Rosado et al., "Comparative results analysis on positioning with real LTE signals and low-cost hardware platforms," 2014 7th ESA Workshop on Satellite Navigation Technologies and European Workshop on GNSS Signals and Signal Processing (NAVITEC), Noordwijk, 2014, pp. 1-8.
- http://www.superkuh.com/rtlsdr.html
- Msc, Lionel K. Anderson. ACARS - a Users Guide. Lulu Com, 2010.
- http://forum.flightradar24.com/threads/9894-Can-anyone-help-decode-these-messages
- http://acarsonline.pbworks.com/w/page/1286721/Engine%20data%20analysis%20%28United%29
- Teso, Hugo. "Aircraft Hacking : Practical Aero Series," HITBSECCONF, Amsterdam, 2013
- Storck, Paul."Benefits of Commercial Data Link Security," IEEE Integrated Communications Navigation and Surveillance (ICNS) Conference, Herndon, VA, 2013
- Olive, Michael. "ACARS Message Security (AMS) as a Vehicle for Validation of ICAO Doc. 9880 Part IV-B Security Requirements," ICAO ACP WG-M Meeting, Brussels, 2009

Comments
Post a Comment