Bagaimana AI akan meningkatkan keamanan API

API telah menjadi permata mahkota inisiatif transformasi digital organisasi, memberdayakan karyawan, mitra, pelanggan, dan pemangku kepentingan lainnya untuk mengakses aplikasi, data, dan fungsionalitas bisnis di seluruh ekosistem digital mereka. Jadi, tidak heran jika para peretas telah meningkatkan gelombang serangan mereka terhadap aset perusahaan yang sangat penting ini.

Sayangnya, sepertinya masalahnya hanya akan semakin parah. Gartner telah memperkirakan bahwa, "Pada tahun 2022, penyalahgunaan API akan menjadi vektor serangan yang paling sering menyebabkan pembobolan data untuk aplikasi web perusahaan."

Banyak perusahaan menanggapi dengan mengimplementasikan solusi manajemen API yang menyediakan mekanisme, seperti otentikasi, otorisasi, dan pembatasan. Ini adalah kemampuan yang harus dimiliki untuk mengontrol siapa yang mengakses API di seluruh ekosistem API — dan seberapa sering. Namun, dalam membangun strategi API internal dan eksternal, organisasi juga perlu mengatasi pertumbuhan serangan yang lebih canggih pada API dengan menerapkan keamanan dinamis yang didorong kecerdasan buatan (AI).

Artikel ini membahas manajemen API dan alat keamanan yang harus digabungkan oleh organisasi untuk memastikan keamanan, integritas, dan ketersediaan di seluruh ekosistem API mereka.

Langkah-langkah keamanan berbasis aturan dan berbasis kebijakan

Pemeriksaan keamanan berbasis aturan dan kebijakan, yang dapat dilakukan secara statis atau dinamis, merupakan bagian wajib dari solusi manajemen API apa pun. Gerbang API berfungsi sebagai titik masuk utama untuk akses API dan oleh karena itu biasanya menangani penegakan kebijakan dengan memeriksa permintaan yang masuk terhadap kebijakan dan aturan yang terkait dengan keamanan, batas kecepatan, pembatasan, dll. Mari kita lihat lebih dekat beberapa pemeriksaan keamanan statis dan dinamis untuk melihat tambahan nilai yang mereka bawa.

Pemeriksaan keamanan statis

Pemeriksaan keamanan statis tidak bergantung pada volume permintaan atau data permintaan sebelumnya, karena biasanya pemeriksaan tersebut memvalidasi data pesan terhadap serangkaian aturan atau kebijakan yang telah ditentukan sebelumnya. Pemindaian keamanan statis yang berbeda dilakukan di gateway untuk memblokir injeksi SQL, serangan parsing kohesif, serangan perluasan entitas, dan skema keracunan, antara lain.

Sementara itu, pemeriksaan kebijakan statis dapat diterapkan antara lain untuk pemindaian muatan, inspeksi header, dan pola akses. Misalnya, injeksi SQL adalah jenis serangan umum yang dilakukan menggunakan muatan. Jika pengguna mengirim payload JSON (JavaScript Object Notation), API gateway dapat memvalidasi permintaan khusus ini terhadap skema JSON yang telah ditentukan sebelumnya. Gerbang juga dapat membatasi jumlah elemen atau atribut lain dalam konten yang diperlukan untuk melindungi dari data berbahaya atau pola teks dalam pesan.

Pemeriksaan keamanan dinamis

Pemeriksaan keamanan dinamis, berbeda dengan pemindaian keamanan statis, selalu memeriksa sesuatu yang bervariasi dari waktu ke waktu. Biasanya ini melibatkan memvalidasi data permintaan dengan keputusan yang dibuat menggunakan data yang ada. Contoh pemeriksaan dinamis termasuk validasi token akses, deteksi anomali, dan pelambatan. Pemeriksaan dinamis ini sangat bergantung pada volume data yang dikirim ke gateway. Terkadang pemeriksaan dinamis ini terjadi di luar gerbang API, dan kemudian keputusan dikomunikasikan ke gerbang. Mari kita lihat beberapa contoh.

Pembatasan dan pembatasan kecepatan penting untuk mengurangi dampak serangan, karena setiap kali penyerang mendapatkan akses ke API, hal pertama yang mereka lakukan adalah membaca data sebanyak mungkin. Permintaan Throttling API - yaitu, membatasi akses ke data - mengharuskan kami menyimpan jumlah permintaan yang masuk dalam jendela waktu tertentu. Jika jumlah permintaan melebihi jumlah yang dialokasikan pada saat itu, gateway dapat memblokir panggilan API. Dengan pembatasan tarif, kita dapat membatasi akses bersamaan yang diizinkan untuk layanan tertentu.

Autentikasi

Autentikasi membantu gerbang API untuk mengidentifikasi setiap pengguna yang memanggil API secara unik. Solusi gateway API yang tersedia umumnya mendukung otentikasi dasar, OAuth 2.0, keamanan JWT (JSON Web Token), dan keamanan berbasis sertifikat. Beberapa gateway juga menyediakan lapisan otentikasi di atas itu untuk validasi izin tambahan yang lebih halus, yang biasanya didasarkan pada bahasa definisi kebijakan gaya XACML (eXtensible Access Control Markup Language). Ini penting ketika API berisi banyak sumber daya yang membutuhkan tingkat kontrol akses yang berbeda untuk setiap sumber daya.

Batasan keamanan API tradisional

Pendekatan berbasis kebijakan seputar autentikasi, otorisasi, pembatasan kecepatan, dan pembatasan adalah alat yang efektif, tetapi tetap meninggalkan celah di mana peretas dapat mengeksploitasi API. Khususnya, gerbang API menangani banyak layanan web, dan API yang mereka kelola sering dimuat dengan sesi dalam jumlah tinggi. Bahkan jika kami menganalisis semua sesi tersebut menggunakan kebijakan dan proses, akan sulit bagi gateway untuk memeriksa setiap permintaan tanpa daya komputasi tambahan.

Selain itu, setiap API memiliki pola aksesnya sendiri. Jadi, pola akses yang sah untuk satu API dapat menunjukkan aktivitas berbahaya untuk API yang berbeda. Misalnya, ketika seseorang membeli barang melalui aplikasi belanja online, mereka akan melakukan banyak pencarian sebelum melakukan pembelian. Jadi, satu pengguna yang mengirim 10 hingga 20 permintaan ke API penelusuran dalam waktu singkat dapat menjadi pola akses yang sah untuk API penelusuran. Namun, jika pengguna yang sama mengirimkan beberapa permintaan ke API pembelian, pola akses dapat mengindikasikan aktivitas berbahaya, seperti peretas yang mencoba menarik sebanyak mungkin menggunakan kartu kredit curian. Oleh karena itu, setiap pola akses API perlu dianalisis secara terpisah untuk menentukan respons yang benar.

Namun faktor lainnya adalah bahwa sejumlah besar serangan terjadi secara internal. Di sini, pengguna dengan kredensial yang valid dan akses ke sistem memanfaatkan kemampuan mereka untuk menyerang sistem tersebut. Otentikasi berbasis kebijakan dan kemampuan otorisasi tidak dirancang untuk mencegah jenis serangan ini. 

Meskipun kami dapat menerapkan lebih banyak aturan dan kebijakan ke gateway API untuk melindungi dari serangan yang dijelaskan di sini, overhead tambahan pada gateway API tidak dapat diterima. Perusahaan tidak dapat membuat frustrasi pengguna asli dengan meminta mereka menanggung penundaan pemrosesan gerbang API mereka. Sebaliknya, gateway perlu memproses permintaan yang valid tanpa memblokir atau memperlambat panggilan API pengguna.

Kasus untuk menambahkan lapisan keamanan AI

Untuk mengisi celah yang ditinggalkan oleh perlindungan API berbasis kebijakan, tim keamanan modern membutuhkan keamanan API berbasis kecerdasan buatan yang dapat mendeteksi dan merespons serangan dinamis dan kerentanan unik setiap API. Dengan menerapkan model AI untuk terus memeriksa dan melaporkan semua aktivitas API, perusahaan dapat secara otomatis menemukan aktivitas dan ancaman API yang tidak wajar di seluruh infrastruktur API yang terlewatkan oleh metode tradisional.

Bahkan dalam kasus di mana langkah-langkah keamanan standar dapat mendeteksi anomali dan risiko, perlu waktu berbulan-bulan untuk membuat penemuan. Sebaliknya, menggunakan model yang dibuat sebelumnya berdasarkan pola akses pengguna, lapisan keamanan yang digerakkan oleh AI akan memungkinkan untuk mendeteksi beberapa serangan hampir secara real time.

Yang penting, mesin AI biasanya berjalan di luar gerbang API dan mengkomunikasikan keputusan mereka kepada mereka. Karena API gateway tidak harus mengeluarkan sumber daya untuk memproses permintaan ini, penambahan keamanan AI biasanya tidak memengaruhi kinerja runtime.

Mengintegrasikan keamanan API berbasis kebijakan dan berbasis AI

Saat menambahkan keamanan yang didukung AI ke implementasi manajemen API, akan ada titik penegakan keamanan dan titik keputusan. Biasanya, unit-unit ini independen karena memerlukan daya komputasi yang tinggi, tetapi latensi tidak boleh memengaruhi efisiensinya.

Gerbang API mencegat permintaan API dan menerapkan berbagai kebijakan. Terhubung dengannya adalah titik penegakan keamanan, yang menjelaskan atribut dari setiap permintaan (panggilan API) ke titik keputusan, meminta keputusan keamanan, dan kemudian memberlakukan keputusan tersebut di gateway. Titik keputusan, didukung oleh AI, terus mempelajari perilaku setiap pola akses API, mendeteksi perilaku yang tidak wajar, dan menandai atribut permintaan yang berbeda.

Harus ada opsi untuk menambahkan kebijakan ke titik keputusan sesuai kebutuhan dan menjalankan kebijakan ini — yang mungkin berbeda dari API ke API — selama periode pembelajaran. Kebijakan apa pun harus ditentukan oleh tim keamanan setelah potensi kerentanan dari setiap API yang mereka rencanakan untuk diekspos dipahami secara menyeluruh. Namun, bahkan tanpa dukungan dari kebijakan eksternal, adaptif, titik keputusan yang didukung AI dan teknologi titik penegakan pada akhirnya akan mempelajari dan mencegah beberapa serangan kompleks yang tidak dapat kami deteksi dengan kebijakan.

Keuntungan lain dari memiliki dua titik penegakan keamanan dan komponen titik keputusan yang terpisah adalah kemampuan untuk berintegrasi dengan solusi manajemen API yang ada. Penyempurnaan antarmuka pengguna yang sederhana dan ekstensi yang disesuaikan dapat mengintegrasikan titik penegakan keamanan ke gateway dan penerbit API. Dari UI, penerbit API dapat memilih apakah akan mengaktifkan keamanan AI untuk API yang dipublikasikan, bersama dengan kebijakan khusus yang diperlukan. Titik penegakan keamanan yang diperpanjang akan memublikasikan atribut permintaan ke titik keputusan dan membatasi akses ke API sesuai dengan tanggapan titik keputusan.

Namun, memublikasikan acara ke titik keputusan dan membatasi akses berdasarkan tanggapannya akan memakan waktu dan sangat bergantung pada jaringan. Oleh karena itu, paling baik diimplementasikan secara asinkron dengan bantuan mekanisme caching. Ini akan sedikit memengaruhi keakuratan, tetapi ketika mempertimbangkan efisiensi gateway, menambahkan lapisan keamanan AI akan berkontribusi minimal pada latensi keseluruhan.

Tantangan lapisan keamanan yang digerakkan oleh AI

Tentu saja, keuntungan tidak datang tanpa biaya. Sementara lapisan keamanan yang digerakkan oleh AI menawarkan tingkat tambahan perlindungan API, ini menghadirkan beberapa tantangan yang perlu ditangani oleh tim keamanan.

  • Overhead tambahan . Lapisan keamanan AI tambahan menambahkan beberapa overhead ke aliran pesan. Jadi, solusi mediasi harus cukup pintar untuk menangani pengumpulan dan penerbitan informasi di luar aliran mediasi utama.
  • Positif palsu . Jumlah positif palsu yang tinggi akan memerlukan tinjauan tambahan oleh profesional keamanan. Namun, dengan beberapa algoritme AI canggih, kami dapat mengurangi jumlah positif palsu yang dipicu.
  • Kurangnya kepercayaan . Orang merasa tidak nyaman ketika mereka tidak mengerti bagaimana keputusan dibuat. Dasbor dan peringatan dapat membantu pengguna untuk memvisualisasikan faktor-faktor di balik keputusan. Misalnya, jika peringatan dengan jelas menyatakan bahwa pengguna diblokir untuk mengakses sistem pada tingkat abnormal 1.000 kali lebih dalam satu menit, orang dapat memahami dan mempercayai keputusan sistem.
  • Kerentanan data . Sebagian besar solusi AI dan pembelajaran mesin mengandalkan volume data yang sangat besar, yang seringkali bersifat sensitif dan pribadi. Akibatnya, solusi ini rentan terhadap pelanggaran data dan pencurian identitas. Mematuhi GDPR Uni Eropa (Peraturan Perlindungan Data Umum) membantu mengurangi risiko ini tetapi tidak menghilangkannya sepenuhnya.
  • Batasan data berlabel . Sistem AI yang paling kuat dilatih melalui pembelajaran yang diawasi, yang membutuhkan data berlabel yang diatur agar dapat dipahami oleh mesin. Tetapi data berlabel memiliki batasan, dan pembuatan otomatis masa depan dari algoritme yang semakin sulit hanya akan memperburuk masalah.
  • Data salah . Efektivitas sistem AI bergantung pada data yang dilatihnya. Terlalu sering, data yang buruk dikaitkan dengan bias etnis, komunal, jenis kelamin, atau ras, yang dapat memengaruhi keputusan penting tentang pengguna individu.

Mengingat peran penting API di perusahaan saat ini, API semakin menjadi target peretas dan pengguna jahat. Mekanisme berbasis kebijakan, seperti autentikasi, otorisasi, pemindaian payload, validasi skema, pembatasan, dan pembatasan tarif, merupakan persyaratan dasar untuk mengimplementasikan strategi keamanan API yang berhasil. Namun, hanya dengan menambahkan model AI untuk terus memeriksa dan melaporkan semua aktivitas API, perusahaan akan terlindungi dari serangan keamanan paling canggih yang muncul saat ini.

Sanjeewa Malalgoda adalah arsitek perangkat lunak dan direktur asosiasi teknik di WSO2, di mana dia memimpin pengembangan Manajer API WSO2. Lakshitha Gunasekara adalah insinyur perangkat lunak di tim Manajer API WSO2. 

-

Forum Teknologi Baru menyediakan tempat untuk mengeksplorasi dan mendiskusikan teknologi perusahaan yang sedang berkembang secara mendalam dan luas. Pemilihan ini subjektif, berdasarkan pilihan teknologi yang kami yakini penting dan paling menarik bagi pembaca. tidak menerima jaminan pemasaran untuk publikasi dan berhak untuk mengedit semua konten yang dikontribusikan. Kirim semua pertanyaan ke  [email protected] .