Pendahuluan
Saat Anda membaca artikel ini, browser Anda terhubung ke Internet Service Provider (ISP). Paket yang dikirim dari komputer Anda menemukan jalannya ke server yang menghosting situs web ini. BGP (Border Gateway Protocol) memutuskan jalur mana yang akan diambil di sepanjang jalan.
Jika router tidak bekerja atau memiliki beban lalu lintas yang tinggi, paket mengambil rute lain. BGP menerima rute yang diiklankan dari router BGP lain secara default. Tidak ada pengumuman tentang jalur atau pemiliknya, meninggalkan masalah keamanan yang signifikan.
Artikel ini menjelaskan protokol RPKI sebagai solusi untuk perutean BGP yang aman.
Apa itu BGP?
Protokol BGP adalah protokol utama yang memfasilitasi pertukaran perutean melalui Internet. Paket bepergian secara global dengan cara yang terdesentralisasi dengan perutean otomatis. Saat data berpindah dari satu router ke router lain, informasi bergerak lebih dekat ke tujuan yang diinginkan.
Setiap router memelihara tabel jalur terbaik yang signifikan secara lokal untuk setiap grup tujuan awalan alamat IP. AS (A S utonomous ystem) memiliki grup prefiks dan menentukan bagaimana pertukaran perutean terjadi. Setiap AS memiliki pengidentifikasi unik (Nomor) dan protokol BGP mendefinisikan bagaimana sistem otonom bertukar informasi tentang perutean IP.
Setiap ASN mengiklankan awalan yang dapat mengirimkan data. Misalnya, jika AS terhubung ke 1.0.0.0/8, itu akan menyiarkan alamat ke rekan dan penyedia.
Kekurangan BGP
Penerimaan rute BGP tergantung pada rekayasa ISP. Uji tuntas ISP hanya berjalan sejauh ini:kesalahan input, kesalahan otomatisasi, dan niat jahat hanyalah beberapa contoh yang sulit untuk dimitigasi. Pada akhirnya, inti masalahnya adalah tidak ada kebenaran dasar tentang siapa yang harus mengumumkan jalan atau siapa pemilik sebenarnya.
Informasi yang dikirim melalui Internet memiliki perlindungan terbatas terhadap Pembajakan BGP. Pembajakan BGP terjadi saat AS membuat pengumuman BGP untuk prefiks IP yang sama atau lebih spesifik yang tidak dimiliki AS.
Bajak Panjang Awalan yang Sama
Pembajakan panjang awalan yang sama terjadi ketika seseorang yang bukan pemilik mengumumkan awalan yang sama. Misalnya:
- Origin AS mengirimkan data yang ditujukan untuk 1.0.0.0/8
- Destination AS mengumumkan 1.0.0.0/8.
- AS yang berbeda juga mengumumkan 1.0.0.0/8.
Ketika pengumuman panjang yang sama terjadi, BGP harus memilih rute. Keputusan turun ke konfigurasi AS.
AS asal memperhatikan sedikit penurunan lalu lintas. Penurunan lalu lintas adalah kejadian umum yang bisa terjadi karena sejumlah alasan. Karena itu, pembajakan BGP tidak diketahui.
Bajak Awalan Spesifik
Pembajakan awalan tertentu terjadi saat ASN berbahaya mengumumkan awalan yang lebih spesifik. Kedua prefiks ditambahkan ke tabel perutean BGP, tetapi alamat yang lebih spesifik dipilih sebagai jalur terbaik ke jaringan.
Misalnya:
- Origin mengirimkan data yang ditujukan untuk 1.0.0.0/8.
- Destination AS mengumumkan 1.0.0.0/8.
- AS yang berbeda mengumumkan 1.2.3.0/24 yang lebih spesifik.
Karena 1.2.3.0/24 lebih cocok, semua data dalam rentang 1.2.3.0 masuk ke jaringan yang salah.
Apa itu RPKI?
RPKI (R sumber P publik K ey Saya nfrastructure) adalah lapisan keamanan dalam perutean BGP yang memberikan kepercayaan kriptografik penuh terhadap kepemilikan di mana pemiliknya memiliki pengidentifikasi yang tersedia untuk umum. Dengan BGP, kebenaran dasar kepemilikan tidak ada. Siapa pun diizinkan untuk mengiklankan rute yang lebih baik, baik secara sengaja maupun tidak sengaja.
RPKI didasarkan pada standar PKI yang ada – RFC6480. Ada banyak referensi tentang metodologi kriptografi yang ada untuk komunikasi yang aman.
Mengapa RPKI Penting?
Infrastruktur Kunci Publik Sumber Daya membuat BGP lebih aman dan andal. Kerentanan Internet karena cara kerja BGP adalah masalah sistematis. Dengan pertumbuhan Internet, konsekuensinya lebih terlihat.
Merutekan informasi ke jaringan kecil menciptakan kelebihan beban. Perutean berbahaya membawa informasi sensitif ke tempat yang salah. Kesalahan BGP memiliki potensi penipuan dan pemadaman skala besar. Beberapa kasus penting adalah:
- Amazon – Pembajakan Route 53 BGP dari Amazon DNS untuk pencurian cryptocurrency.
- Google – Kesalahan konfigurasi pemfilteran BGP selama pembaruan mengarahkan lalu lintas ke China, Rusia, dan Nigeria.
- Mastercard, Visa, dan bank-bank besar – Membocorkan 36 prefiks layanan pembayaran.
- YouTube – Upaya untuk memblokir situs web YouTube di Pakistan akhirnya dihapus.
Apa Bentuk Perlindungan yang Ditawarkan RPKI?
Masalah BGP muncul karena berbagai alasan:
- Tidak ada paket keamanan yang andal
- Kesalahan redistribusi
- Salah ketik
- Kebencian
Faktor yang paling umum adalah kesalahan manusia.
Model kriptografi RPKI menyediakan otentikasi kepemilikan melalui kunci publik dan infrastruktur sertifikat tanpa harus mengidentifikasi informasi di dalamnya. Sertifikat menambahkan lapisan keamanan jaringan ke awalan IPv4 dan IPv6. Sertifikat RPKI diperbarui setiap tahun. HTTP menggunakan enkripsi serupa untuk mengamankan halaman web.
Meskipun seluruh jalur tidak diamankan, RPKI memverifikasi identitas asal dan menyediakan cara untuk mengkonfirmasi bahwa mereka adalah yang mereka katakan. RPKI merupakan langkah pengamanan routing BGP dimana kita mengetahui asal informasi yang masuk dan siapa yang memiliki space yang mana.
Penerapan yang meluas membuatnya lebih efisien dalam mencegah pembajakan secara keseluruhan.
Manfaat RPKI
Menerapkan dan menggunakan RPKI memberikan manfaat sebagai berikut:
- Bukti asal . Pemegang sumber daya memiliki bukti kepemilikan untuk menggunakan sumber daya tertentu melalui rantai kepercayaan sertifikat yang ditandatangani, membantu mencegah kesalahan tentang asal informasi.
- Verifikasi identitas kriptografi . Pemegang sumber daya memiliki cara untuk membuktikan kepemilikan kepada pelanggan saat mendistribusikan sumber daya.
- Pencegahan pembajakan rute . Pengguna sumber daya melindungi informasi yang diberikan oleh pemegang sumber daya melalui tanda tangan digital, yang dihasilkan dan diberikan oleh pemegang sumber daya yang diverifikasi kepada pengguna. Upaya untuk mengubah tanda tangan membuatnya tidak valid.
Bagaimana Cara Kerja RPKI?
RIR (R Saya . regional internet R egistry) memberikan kepercayaan akar model kriptografi RPKI. IANA (Saya internet A ditandatangani N jumlah A uthority) adalah bagian dari ICANN (Saya internet C orporasi untuk A ditandatangani N ames dan N umbers) yang memiliki ruang alamat IPv4 dan IPv6.
IANA mensubalokasikan potongan ruang IP ke RIR. RIR lokal kemudian mensubalokasikan ruang IP ke jaringan, yang selanjutnya mensubalokasikan ke jaringan yang lebih kecil. Jalur ini membuat rantai tepercaya dalam menandatangani sertifikat. Wilayah RIR dibagi menjadi lima wilayah geografis:
Akronim | Nama Lengkap | Wilayah |
ARIN | American Registry untuk Nomor Internet | Amerika Utara |
LACNIC | Pusat Informasi Jaringan Amerika Latin dan Karibia | Amerika Latin |
NCC RIPE | Pusat Koordinasi Jaringan Réseaux IP Européens | Eropa, Asia Barat, dan bekas Uni Soviet |
AFRINIC | Pusat Informasi Jaringan Afrika | Afrika |
APNIC | Pusat Informasi Jaringan Asia Pasifik | Asia Pasifik |
ROA
Bagian terakhir dari rantai tersebut adalah ROA (R keluar O pasang A otorisasi). ROA adalah dokumen sederhana dengan dua informasi:
1. Apa rute dan panjang maksimumnya.
2. AS mengumumkan rute.
Misalnya, jika AS65005 mengumumkan dalam rentang 1.0.0.0/8 hingga 1.0.0.0/12, ROA berisi cakupan dan pengidentifikasi AS65005, yang memvalidasi siapa pemilik sebenarnya dari informasi tersebut dengan kepercayaan penuh.
Cara Membuat ROA
Ada beberapa hal yang perlu dipertimbangkan sebelum membuat ROA:
- Hanya pemilik awalan yang dapat membuat ROA.
- Setiap ROA dikhususkan untuk salah satu RIR yang ada.
- Pemilik harus membuat pasangan kunci permintaan ROA sebelum membuat ROA.
- Permintaan ROA dikirimkan ke RIR yang sesuai.
Untuk informasi mendalam tentang cara membuat ROA, silakan lihat petunjuk yang diuraikan oleh masing-masing RIR:
- ARIN - https://www.arin.net/resources/manage/rpki/hosted/
- RIPE - https://www.ripe.net/manage-ips-and-asns/resource-management/rpki/resource-certification-roa-management#---creating-and-editing-roas
- APNIC - https://blog.apnic.net/2019/09/11/how-to-creating-rpki-roas-in-myapnic/
Bagaimana RPKI Diterapkan?
P di RP KI berarti sertifikat dan ROA dapat diakses di repositori publik. Informasi tersebut digunakan untuk membuat daftar prefiks mana yang menjadi milik ASN mana.
Tanda tangan sertifikat dan masa pakai ROA diperiksa oleh setiap jaringan secara independen. Jika salah satu dari berikut gagal, ROA diabaikan:
1. Tanggal mulai atau tanggal akhir ROA dan sertifikat yang dirantai kembali ke akar adalah di masa lalu atau masa depan.
2. Setiap tanda tangan tidak sah atau dicabut.
Semua ROA yang melewati cache pengujian ke dalam daftar yang divalidasi. Filter dibuat dan diunggah ke router berdasarkan daftar cache yang divalidasi. Router memeriksa iklan BGP melalui filter dengan salah satu dari tiga hasil:
- Berlaku - ROA hadir. Panjang awalan dan nomor AS cocok.
- Tidak Valid - ROA hadir. Panjang awalan atau nomor AS tidak cocok.
- Tidak Ditemukan atau Tidak Diketahui – Tidak ada ROA.
Router bertindak berdasarkan status awalan yang dihasilkan oleh filter.
Menandatangani Awalan
RIR menawarkan alat online untuk menandatangani awalan. Ini menghubungkan awalan dan panjang awalan ke AS. Setelah awalan ditandatangani, orang lain yang telah menerapkan validasi RPKI dapat memvalidasi awalan.
Penandatanganan sertifikat mencegah awalan dibajak (sengaja atau tidak sengaja). Sertifikat yang ditandatangani adalah inti dari ROA. RPKI tidak menawarkan validasi jalur dan serangan man-in-the-middle masih memungkinkan.
Memvalidasi Awalan
Menerapkan validasi tergantung pada detail jaringan. Langkah-langkah umum dalam menyiapkan jaringan untuk validasi awalan adalah:
1. Memasang validator RPKI – Perangkat lunak yang mengambil data RPKI dari semua Internet Routing Registries (IRR) dan memverifikasi tanda tangan.
2. Konfigurasikan validasi pada router perbatasan dengan validator rute – Router mengisi cache validasi dengan kombinasi awalan yang divalidasi, panjang awalan, dan ASN sumber.
3. Menerapkan filter BGP pada sesi BGP eksternal – Menambahkan kebijakan ke semua sesi BGP (peer, transit, dan pelanggan) untuk menolak setiap awalan yang RPKI Tidak Valid .