Fungsionalitas sistem perlindungan aplikasi modern (WAF) harus jauh lebih luas daripada daftar kerentanan dari OWASP Top 10

Retrospektif


Skala, komposisi, dan struktur ancaman dunia maya untuk aplikasi berkembang dengan cepat. Selama bertahun-tahun, pengguna telah mengakses aplikasi web melalui Internet menggunakan browser web populer. Pada setiap titik waktu, perlu untuk mendukung 2-5 browser web, dan serangkaian standar untuk mengembangkan dan menguji aplikasi web cukup terbatas. Sebagai contoh, hampir semua database dibangun menggunakan SQL. Sayangnya, setelah beberapa saat, peretas belajar menggunakan aplikasi web untuk mencuri, menghapus, atau mengubah data. Mereka memperoleh akses ilegal dan menyalahgunakan kemampuan aplikasi menggunakan berbagai metode, termasuk menipu pengguna aplikasi, implementasi dan eksekusi kode jarak jauh. Segera, alat keamanan aplikasi web komersial yang disebut Web Application Firewalls (WAF) muncul di pasaran, dan masyarakat merespons dengan membuat proyek keamanan aplikasi web terbuka, Proyek Keamanan Aplikasi Web Terbuka (OWASP), untuk menetapkan dan mempertahankan standar dan metodologi pengembangan aplikasi yang aman.

Perlindungan Aplikasi Dasar


Daftar 10 OWASP adalah titik awal untuk mengamankan aplikasi dan berisi daftar ancaman paling berbahaya dan pengaturan yang salah yang dapat menyebabkan kerentanan aplikasi, serta taktik untuk mendeteksi dan memukul mundur serangan. OWASP Top 10 adalah tolok ukur yang diakui dalam industri aplikasi cybersecurity di seluruh dunia dan mendefinisikan daftar dasar kemampuan yang harus dimiliki oleh sistem keamanan aplikasi web (WAF).

Selain itu, fungsionalitas WAF harus mempertimbangkan serangan umum lainnya pada aplikasi web, termasuk pemalsuan permintaan lintas situs (CSRF), clickjacking, pengikisan web, dan penyertaan file (RFI / LFI).

Ancaman dan tantangan keamanan untuk aplikasi saat ini


Sampai saat ini, tidak semua aplikasi dieksekusi dalam versi jaringan. Ada aplikasi cloud, aplikasi seluler, API, dan dalam arsitektur terbaru, bahkan fungsi perangkat lunak individual. Semua jenis aplikasi ini perlu disinkronkan dan dikendalikan, saat mereka membuat, memodifikasi, dan memproses data kami. Dengan munculnya teknologi dan paradigma baru, tantangan dan tantangan baru muncul di semua tahap siklus hidup aplikasi. Ini termasuk integrasi pengembangan dan operasi (DevOps), wadah, Internet of things (IoT), alat sumber terbuka, API, dll.

Penyebaran aplikasi yang terdistribusi dan berbagai teknologi menciptakan tugas yang kompleks dan kompleks tidak hanya untuk spesialis keamanan informasi, tetapi juga untuk produsen solusi keamanan yang tidak lagi dapat mengandalkan pendekatan terpadu. Fitur keamanan aplikasi harus mempertimbangkan spesifik bisnis mereka untuk mencegah operasi yang salah dan mengganggu kualitas layanan bagi pengguna.

Tujuan utama peretas biasanya adalah pencurian data atau pelanggaran ketersediaan layanan. Penyerang juga memanfaatkan evolusi teknologi. Pertama, pengembangan teknologi baru menciptakan lebih banyak celah dan kerentanan potensial. Kedua, di gudang senjata mereka muncul lebih banyak alat dan pengetahuan untuk menghindari solusi tradisional. Ini sangat meningkatkan apa yang disebut "permukaan serangan" dan eksposur organisasi terhadap risiko baru. Kebijakan keamanan harus terus berubah mengikuti perubahan teknologi dan aplikasi.

Dengan demikian, aplikasi harus dilindungi dari beragam metode dan sumber serangan yang terus berkembang, dan serangan otomatis harus tercermin secara real time berdasarkan keputusan yang diinformasikan. Akibatnya, biaya operasi dan tenaga kerja manual meningkat di tengah posisi keamanan yang melemah.

Tugas nomor 1: Kelola bot


Lebih dari 60% lalu lintas Internet dihasilkan oleh bot, setengahnya disebut lalu lintas "buruk" (menurut laporan keamanan Radware ). Organisasi berinvestasi dalam peningkatan bandwidth jaringan, pada dasarnya melayani beban dummy. Perbedaan yang tepat antara lalu lintas pengguna nyata dan lalu lintas bot, serta bot "baik" (misalnya, robot pencarian dan layanan perbandingan harga) dan bot "buruk" dapat menghasilkan penghematan biaya yang signifikan dan peningkatan kualitas layanan bagi pengguna.

Bot tidak akan memfasilitasi tugas ini, dan mereka dapat meniru perilaku pengguna nyata, mem-bypass CAPTCHA dan hambatan lainnya. Selain itu, dalam kasus serangan menggunakan alamat IP dinamis, perlindungan berdasarkan penyaringan berdasarkan alamat IP menjadi tidak efektif. Seringkali, alat pengembangan sumber terbuka (misalnya, Phantom JS) yang dapat menjalankan JavaScript sisi klien digunakan untuk meluncurkan serangan brute-force, serangan isian kredensial, serangan DDoS, dan serangan bot otomatis .

Manajemen lalu lintas bot yang efektif memerlukan identifikasi unik dari sumbernya (seperti sidik jari). Karena banyak entri terjadi dalam kasus serangan bot, sidik jarinya memungkinkan Anda untuk mengidentifikasi aktivitas yang mencurigakan dan menetapkan poin, berdasarkan pada mana sistem perlindungan aplikasi membuat keputusan yang diinformasikan - blokir / izinkan - dengan tingkat positif palsu minimum.

gambar

Tugas # 2: Perlindungan API


Banyak aplikasi mengumpulkan informasi dan data dari layanan yang berinteraksi dengan mereka melalui API. Saat mentransfer data rahasia melalui API, lebih dari 50% organisasi tidak memeriksa atau melindungi API untuk mendeteksi serangan cyber.

Contoh Penggunaan API:

  • Integrasi IOT
  • Interaksi mesin
  • Lingkungan tanpa server
  • Aplikasi seluler
  • Aplikasi yang digerakkan oleh acara

Kerentanan API mirip dengan kerentanan aplikasi dan termasuk injeksi, serangan protokol, manipulasi parameter, arahan ulang dan serangan bot. Gateway API khusus menjamin kompatibilitas layanan aplikasi yang berkomunikasi melalui API. Namun, mereka tidak menyediakan keamanan ujung ke ujung untuk aplikasi, karena WAF dapat digunakan dengan alat keamanan yang diperlukan, seperti parsing header HTTP, daftar kontrol akses Layer 7 (ACL), parsing dan memeriksa muatan JSON / XML, dan melindungi terhadap semua kerentanan dari Daftar OWASP Top 10. Hal ini dicapai dengan memeriksa nilai-nilai API kunci menggunakan model positif dan negatif.

Tugas 3: Penolakan Layanan


Vektor serangan denial of service (DoS) yang lama terus membuktikan keefektifannya dalam serangan pada aplikasi. Penyerang memiliki sejumlah teknik yang berhasil untuk mengganggu layanan aplikasi, termasuk banjir HTTP atau HTTPS, serangan rendah dan lambat (misalnya, SlowLoris, LOIC, Torshammer), serangan menggunakan alamat IP dinamis, buffer overflows, brute force serangan, dan banyak lainnya. Dengan perkembangan Internet of Things dan kemunculan bot IoT selanjutnya, serangan pada aplikasi telah menjadi fokus utama serangan DDoS. Sebagian besar WAF pelacakan koneksi hanya dapat menahan jumlah beban yang terbatas. Namun, mereka dapat memeriksa arus lalu lintas HTTP / S dan menghapus lalu lintas serangan dan koneksi jahat. Setelah serangan terdeteksi, tidak masuk akal untuk meneruskan lalu lintas ini. Karena bandwidth WAF untuk mengusir serangan terbatas, solusi tambahan pada perimeter jaringan diperlukan untuk secara otomatis memblokir paket "buruk" berikutnya. Untuk skenario keamanan ini, kedua solusi harus dapat berinteraksi satu sama lain untuk bertukar informasi tentang serangan.

gambar
Gambar 1. Organisasi perlindungan jaringan dan aplikasi yang komprehensif menggunakan solusi Radware sebagai contoh.

Tugas 4: Perlindungan Berkelanjutan


Aplikasi seringkali dapat berubah. Metodologi pengembangan dan implementasi, seperti pembaruan terus-menerus, berarti bahwa modifikasi dilakukan tanpa keterlibatan dan kontrol manusia. Dalam kondisi dinamis seperti itu, sulit untuk mempertahankan kebijakan keamanan yang berfungsi dengan baik tanpa jumlah positif palsu yang tinggi. Aplikasi seluler diperbarui jauh lebih sering daripada aplikasi web. Aplikasi pihak ketiga dapat berubah tanpa sepengetahuan Anda. Beberapa organisasi mencari kontrol dan visualisasi yang lebih besar untuk tetap mengikuti potensi risiko. Namun, ini tidak selalu dapat dicapai, dan perlindungan aplikasi yang andal harus menggunakan kemampuan pembelajaran mesin untuk menjelaskan dan menyajikan sumber daya yang tersedia secara visual, menganalisis potensi ancaman, membuat dan mengoptimalkan kebijakan keamanan jika terjadi modifikasi aplikasi.

Kesimpulan


Karena aplikasi memainkan peran yang semakin penting dalam kehidupan sehari-hari, mereka menjadi sasaran utama bagi peretas. Potensi jackpot bagi penjahat cyber dan potensi kerugian untuk bisnis sangat besar. Kompleksitas tugas memastikan keamanan aplikasi tidak dapat dibesar-besarkan, mengingat jumlah dan variasi aplikasi dan ancaman.

Untungnya, kita berada pada titik di mana kecerdasan buatan dapat membantu kita. Algoritma berbasis pembelajaran mesin memberikan perlindungan adaptif real-time terhadap ancaman cyber paling canggih yang ditujukan untuk aplikasi. Mereka juga secara otomatis memperbarui kebijakan keamanan untuk melindungi aplikasi web, seluler, dan cloud - serta API - tanpa positif palsu.

Sulit untuk secara akurat memprediksi apa ancaman cyber generasi mendatang untuk aplikasi (mungkin juga berdasarkan pembelajaran mesin). Tetapi organisasi pasti dapat mengambil langkah-langkah untuk melindungi data pelanggan, kekayaan intelektual dan menjamin ketersediaan layanan dengan manfaat besar bagi bisnis.

Pendekatan dan metode yang efektif untuk memastikan keamanan aplikasi, jenis utama dan vektor serangan, zona risiko dan celah dalam pertahanan dunia maya dari aplikasi web, serta pengalaman internasional dan praktik terbaik disajikan dalam studi Radware dan melaporkan " Keamanan Aplikasi Web di Dunia yang Terhubung Secara Digital ".

Source: https://habr.com/ru/post/id476490/


All Articles