Berkenalan dengan Top 10 Vulnerability by OWASP

Halo teman teman semua, bagaimana kabar kalian semua? saya harap selalu sehat ya, apalagi di situasi pandemi covid-19 ini, oke kali ini saya ingin membahas dan ingin mengajak teman teman semua berkenalan dengan “Top 10 Vulnerability by OWASP” Tapi sebelum masuk ke topik mungkin disini ada teman teman yang masih belum tau apa itu OWASP?

Apa itu OWASP?

Owasp atau Open Web Application Security Project adalah sebuah organisasi yang berfokus pada keamanan web application, ada 5 dokumentasi tentang keamanan website yang di buat OWASP diantaranya :

  • OWASP Developer Guide
  • OWASP Application Security Verification Standard (ASVS)
  • Security Knowledge Framework
  • Developer Cheat Sheet Series
  • OWASP Top 10

Tapi disini saya hanya akan membahas tentang OWASP Top 10, mungkin untuk dokumentasi lain nya saya akan bahas di lain waktu,

TOP 10 Vulnerability by OWASP

Sesuai dengan nama nya TOP 10 Vulnerability atau 10 kerentanan yang sering terjadi dan berbahaya, sebagai contoh OWASP membuat table TOP 10 yang ditemukan tahun 2013 dan/sampai 2017.

Di table tersebut bisa kita liat perbandingan nya tidak jauh berbeda seperti serangan INJECTION masih banyak ditemukan dari tahun 2013 dan/sampai 2017 diikuti dengan Broken Authentication di peringkat 2 dan Sensitive Data Exposure di peringkat 3.

TOP 10 Vulnerability by OWASP 2017

sedikit penjelasan mengenai Top 10 Vulnerability di tahun 2017

Injection

Injection adalah sebuah serangan injeksi biasa terjadi jika ada data yang tidak terpercaya dikirim ke sebuah code interpreter melalui sebuah formulir input atau cara input data ke website lainnya. Misalnya, seorang hacker bisa memasukkan kode database SQL melalui sebuah formulir yang sebenarnya hanya meminta data plaintext. Kalau formulir input ini tidak diamankan dengan baik maka kode SQL nya bisa saja dijalankan. Ini adalah contoh serangan injection SQL. Nah, serangan injection ini bisa dicegah dengan memvalidasi dan membersihkan data yang dimasukkan oleh user. Validasi yang dimaksud disini adalah menolak data-data yang terlihat mencurigakan. Membersihkan data berarti menghapus semua data-data mencurigakan tersebut. Tidak hanya itu, admin database juga bisa meminimalkan jumlah informasi yang mungkin terexpose ke serangan injection.

Broken Authentication

Broken Authentication adalah serangan yang memanfaatkan kelemahan/kesalahan pada authentication, serangan ini biasanya ditemukan pada sistem login bisa memberi hacker akses ke akun user. Tidak hanya itu mereka bisa menguasai seluruh sistem dengan meng-hack akun admin. Untuk memitigasi kelemahan authentication, Anda bisa menggunakan 2-factor authentication (2FA).

Sensitive Data Exposure

Sensitive data exposure biasanya terjadi Jika sebuah website menyimpan data-data sensitive penggunanya, tentunya akan bahaya jika mereka tidak menjaga keamanannya. Untuk mengurangi kemungkinan pencurian data, Anda bisa mengenskripsi data-data sensitifnya. Developer juga harus memastikan bahwa website tidak menyimpan data-data sensitive yang sebenarnya tidak dibutuhkan.

XML Ekternal Entities (XXE) [NEW]

XML ekternal entities (XXE) adalah serangan ke website dan aplikasi yang menganalisa input XML. Input ini bisa mereferensikan entity external untuk mengetahui kelemahan yang ada pada input XMLnya. Entiti external yang dimaksud disini biasanya berupa unit penyimpanan, seperti misalnya hard drive. Analisa input XML bisa dibuat seakan-akan mereka mengirim data ke entity external yang tidak dipercaya, dimana mereka bisa mengirim data-data sensitive ke hackernya langsung. Cara terbaik untuk mengatasi XEE ini adalah dengan memiliki web app yang mengandung jenis data yang tidak terlalu kompleks.

Broken Access Control [Merged]

Broken access control pada poin ini mengacu kepada sistem control yang mengakses informasi dan fungsionalitasnya. Access control yang rusak memungkinkan penyerang untuk melewati proses autorisasi dan melakukan hal-hal yang biasanya hanya bisa dilakukan oleh admin.

Security Misconfiguration

Security misconfiguration biasanya terjadi karna kesalahan konfigurasi, dan kelemahan ini yang paling sering terjadi di antara kelemahan lain di daftar ini. Biasanya kesalahan terjadi jika Anda hanya menggunakan default konfigurasi tanpa melihat kebutuhan website.

Cross-Site Scripting (XSS)

Cross site scripting biasanya terjadi pada web app jika web app yang menginjinkan user untuk menambahkan kode custom ke sebuah path URL atau ke website yang dilihat oleh user lain. Kelemahan ini biasa dimanfaatkan untuk menjalankan kode JavaScript yang berbahaya pada browser korban. Contohnya, jika seorang hacker mengirim email ke korban dengan mengatas namakan nama bank tersebut dan menyertakan link ke website bank tersebut, mereka bisa saja menaruh kode JavaScript berbahaya ke dalamnya. Kalau website bank tidak terlindungi dengan baik, nasabah Anda akan menjadi korban.

Insecure Deserialization [NEW, Community]

Insecure deserialization, pertamatama untuk mengerti apa masalah dari kelemahan ini, kita harus mengerti dulu apa arti dari serialisasi dan deserialisasi. Serialisasi adalah proses dimana object diambil dari kode aplikasi dan di-convert ke format lain sehingga bisa digunakan untuk keperluan lain, misalnya menyimpan data ke sebuah disk. Deserialisasi berarti sebaliknya; meng-convert data yang sudah diserialisasi kembali object yang digunakan oleh aplikasinya. Insecure deserialization atau deserialisasi yang kurang aman bisa saja diserang dengan memanfaatkan data dari asal yang tidak dipercaya. Ini bisa menyebabkan terjadinya serangan DDoS. Untuk mencegah ini terjadi, Anda perlu melarang deserialisasi dari data yang tidak dipercaya.

Using Components with known Vulnerabilities

Kebanyakan web developer menggunakan komponen seperti libraries dan frameworks di web app mereka. Komponen-komponen ini adalah kumpulan software yang menolong developers untuk bekerja dengan lebih efisien. Beberapa hacker biasa mencari kelemahan yang ada pada komponen-komponen ini agar mereka bisa melakukan serangan. Oleh karena itu, developer harus selalu memastikan bahwa komponen-komponen ini sudah diupdate agar tetap aman.

Insufficient Logging & Monitoring [NEW, Community]

Kebanyakan web app tidak mengambil langkah yang cukup untuk mendeteksi penembusan data. Rata-rata orang baru sadar kalau terjadi penembusan di website mereka setelah 200 hari. Ini tentunya memberikan penyerang banyak waktu untuk melakukan penyerangan. OWASP merekomendasikan developer untuk mengimplementasi logging dan monitoring serta rencana response insiden agar mereka tahu jika ada penyerangan yang terjadi pada aplikasi mereka.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store