Analisis keamanan router kotak pintar

Halo pembaca yang budiman!



Hari ini kita akan mulai dengan fakta bahwa pada satu titik saya memutuskan, alih-alih melatih mesin yang rentan, untuk menguji router Wi-Fi saya untuk mengetahui kerentanan, yang saya terima pada tahun 2015. Lalu ada tarif yang sangat populer dengan Beeline, ketika, bersama dengan koneksi Internet, router Wi-Fi itu sendiri disewakan seharga 1 rubel, yang saya putuskan untuk diuji.



Router Smart Box, versi firmware terbaru adalah 2.0.38 (Firmware rilis 2017), sejak saat itu belum ada pembaruan.



gambar



Mulailah



Secara default, router memiliki 2 akun admin dan SuperUser, hanya sedikit orang yang tahu tentang ini, tetapi ada informasi tentang ini di sumber terbuka. Kata sandi dari SuperUser adalah nomor seri router dan dapat ditemukan dalam pengaturan di tab "Pengaturan lanjutan> Informasi" atau pada stiker di bawah router. Karenanya, pengguna SuperUser memiliki lebih banyak opsi untuk mengkonfigurasi router.



gambar

User admin / SuperUser



Router memiliki beberapa tipe akun “User, administrator dan manufacturer”, masing-masing memiliki hak yang berbeda dalam hal konfigurasi router dan kami memperhatikan hal ini.



Injeksi Perintah OS



Ya, router memiliki kerentanan injeksi perintah.



Pertama kita masuk dan pergi ke "Pengaturan Lanjutan> Lainnya> Diagnostik" dan kita dapat melakukan Ping, nslookup dan traceroute menggunakan fungsi router built-in. Mari coba ping dan jalankan perintah lain.



gambar

Perlindungan sisi klien



Seperti yang dapat kita lihat, kami diperingatkan bahwa alamatnya salah, tetapi perlindungan ini hanya berfungsi di sisi klien. Jika kami mencegat permintaan tersebut dan mengubahnya, kami akan melewati perlindungan ini. Dan saya akan melakukannya menggunakan alat Pro Burp Suite.



gambarKami mencegat permintaan dan mengubah



gambar

Hasilnya



Seperti yang bisa kita lihat, alih-alih melakukan ping, perintah yang sama sekali berbeda dijalankan, yang kami tunjukkan saat kami mencegat permintaan tersebut. Di sini kita melihat bahwa router memiliki 3 akun (SuperUser, User, admin), saya membuat User User sendiri. Secara default hanya akan ada 2 pengguna (SuperUser dan admin). Dengan bantuan kerentanan ini, saya belajar tentang pengguna SuperUser, kemudian saya sangat terkejut dan itu menjadi sangat menarik bagi saya.



Kerentanan ini ada di nslookup dan traceroute dan dieksploitasi dengan cara yang sama, dengan mencegat permintaan. Di bawah ini saya lampirkan video PoC dengan eksploitasi kerentanan.



Ping

Nslookup

Traceroute



Ingat pada awalnya kami mencatat bahwa ada 3 jenis akun? Jadi, apa pun jenis akunnya, perintah dijalankan dengan hak istimewa SuperUser, yang memberi kita lebih banyak opsi. Dan ya, kerentanan ada di semua jenis akun (Pengguna, Administrator, dan Produsen).



Layanan yang rentan



Router memiliki 3 layanan "OpenSSH 5.2, FTP vsftpd 3.0.2 dan Samba 3.0.22". Layanan adalah versi lama dan banyak kerentanan telah ditemukan di dalamnya sepanjang waktu. Agar Anda mengerti, pada saat penulisan ini, versi layanan terbaru (OpenSSH 8.2, FTP vsftpd 3.0.3 dan Samba 4.12.0). Saya telah memilih beberapa eksploitasi untuk layanan ini untuk pengujian dan kami akan mulai secara berurutan.



OpenSSH (5.2)



Kerentanan CVE-2016–6515 memungkinkan penolakan layanan DoS.



Saya masuk ke sistem router melalui SSH dan menggunakan perintah teratas untuk memantau beban CPU dan melihat bidang (CPU) dan mengeksploitasi kerentanan.



gambar

Dalam keadaan normal



gambar

Setelah mengeksploitasi kerentanan



Akibatnya, halaman web mungkin membutuhkan waktu lama untuk memuat, dan bahkan pada titik tertentu router dapat membeku dan bahkan melakukan reboot. Tapi saya punya kasus lucu ketika, selama eksploitasi kerentanan ini, komputer saya melakukan reboot dengan layar biru kematian (Smiley sedih), itu sangat tidak terduga dan aneh: D



Di bawah ini saya melampirkan video PoC dengan eksploitasi kerentanan ini.



Operasi CVE-2016–6515



Samba (3.0.22)



Kerentanan seseorang kukang yang dapat menyebabkan penolakan layanan DoS. Kerentanan ini dapat dieksploitasi menggunakan metasploit, terletak di sepanjang jalur “auxiliary / dos / smb / smb_loris”. Akibatnya, router akan melakukan boot ulang.



Di bawah ini adalah video PoC dari eksploitasi kerentanan.



SMB_Loris eksploitasi



FTP (vsftpd 3.0.2)



Kerentanan CVE-2015-1419 memungkinkan Anda melewati batasan akses. Sayangnya, saya tidak menemukan exploit, tetapi itu juga terjadi.



https



Ya, router memiliki opsi untuk mengaktifkan koneksi aman. Seperti yang saya pahami, protokol enkripsi adalah SSL 2.0 atau 3.0 dan sertifikat ditandatangani sendiri, yang cukup normal untuk router lokal. Dan dalam hal keamanan, SSL sudah lama ketinggalan zaman dan tidak aman. Sekarang ada opsi yang lebih aman seperti TLS 1.3



Titik lemah lainnya



Selama otentikasi di router, login dan kata sandi dikodekan dalam base64, yang membuatnya mudah untuk mendekodekannya. Mengingat protokol https tidak digunakan secara default untuk koneksi terenkripsi, maka pengkodean login dan kata sandi setidaknya merupakan semacam perlindungan.



Lebih baik membiarkan data dikirim dalam keadaan terkodekan daripada terbuka sepenuhnya. Terus terang, pada awalnya, momen ini membuat saya tersesat, dan hanya setelah beberapa saat saya menyadari bahwa data tersebut dikodekan.



gambar

Login dan password dikirim dalam keadaan encoding



gambar

Setelah decoding saya



lampirkan video PoC dengan decoding di bawah ini.



Dekode Base64



Tidak akan sulit bagi penjahat dunia maya untuk mendengarkan jaringan dan, dengan menggunakan analisis lalu lintas, mengidentifikasi nama pengguna dan kata sandi dan memecahkan kode mereka.



Menghubungi Beeline



Awalnya, saya menghubungi mereka menggunakan obrolan online dan mereka merekomendasikan agar saya menelepon dan mengajukan semua pertanyaan di sana, yang saya lakukan.



Saya hanya mengajukan beberapa pertanyaan dan inilah intinya: Router kotak pintar tidak lagi relevan dan pembaruan tidak akan lagi dirilis di atasnya. Dan seperti yang saya tulis di awal, itu telah berhenti memperbarui sejak 2017, saat itulah pembaruan terakhirnya. Seperti yang disebutkan oleh operator Aleksey (jika Anda membaca ini, salam untuk Anda) bahwa Smart box one router masih didukung dan jika seseorang menemukan kerentanan di dalamnya, mereka dapat menelepon dengan aman dan informasinya akan ditransfer ke layanan keamanan. Seperti yang saya pahami, Smart box satu adalah model berikutnya setelah Smart box.



Hasil



Router itu sendiri bagus, tetapi dalam hal keamanan, sayangnya sudah ketinggalan zaman. Jika Anda menggunakannya, disarankan untuk menonaktifkan layanan seperti SSH, FTP dan Samba, karena versi lama dan banyak kerentanan telah ditemukan di dalamnya dan tidak aman untuk menggunakannya, terutama di jaringan global. Lebih baik lagi, ubah router ke model yang lebih baru (Tidak peduli dari vendor mana) yang akan didukung dalam hal pembaruan keamanan.



Akhirnya, mari kita pergi ke Shodan dan melihat berapa banyak router kotak pintar yang tersedia di jaringan global.



gambar



Seperti yang bisa kita lihat, total 79 perangkat ditemukan, dan ini juga memperhitungkan fakta bahwa saya memiliki akun versi gratis, tanpa berlangganan. Karenanya, dengan berlangganan, akan ada lebih banyak hasil dan peluang. Perlu juga dipertimbangkan bahwa router kotak pintar dari berbagai model tersedia di jaringan global, seperti yang kita lihat di sebelah kanan. Jadi, sebagian besar perute kotak Cerdas (Tidak masalah dari model perute) menggunakan versi layanan rentan yang sama yang saya tulis di atas dan tersedia di jaringan global, dan ini menimbulkan ancaman keamanan.



Kerentanan OS Command Injection telah ditetapkan dengan pengenal CVE "CVE-2020-12246".



Di akhir artikel, saya ingin memberikan beberapa tips kepada pembaca:



  1. Perbarui firmware router Anda
  2. Nonaktifkan layanan yang tidak Anda gunakan
  3. Lacak aktivitas di jaringan Anda


Keamanan router sangat penting, karena banyak perangkat yang terhubung dengannya, dan perangkat ini dapat menjadi target penyerang untuk disusupi.



Artikel diambil dari blog saya .



All Articles