OWASP API Security Top 10 2023: risiko dan contoh API
Daftar API menyoroti batas akses, proses bisnis, sumber daya, serta kepercayaan antar-sistem. Gunakan untuk menyiapkan pertanyaan pemeriksaan API, lalu hubungkan dengan inventaris dan aturan akses.
Di halaman ini
Daftar API berbeda dari daftar web
OWASP API Security Top 10 2023 membahas risiko pada antarmuka pertukaran data aplikasi. Halaman ini memakai edisi 2023; OWASP Top 10 web yang dibahas Kompli memakai edisi 2025. Kode API1 dan A01 tidak boleh dianggap sebagai pemetaan satu banding satu.
API bisa digunakan oleh website, aplikasi mobile, mitra, atau proses otomatis. Pemeriksaan perlu mencakup siapa pemanggilnya, data yang diminta, tindakan yang boleh dilakukan, dan batas pemakaiannya.
Sepuluh risiko API edisi 2023
- API1 — Broken Object Level Authorization: izin terhadap objek tertentu tidak diperiksa dengan benar.
- API2 — Broken Authentication: identitas atau proses autentikasi API tidak cukup terlindungi.
- API3 — Broken Object Property Level Authorization: atribut objek dapat dibaca atau diubah di luar izin.
- API4 — Unrestricted Resource Consumption: pemakaian sumber daya tidak dibatasi secara memadai.
- API5 — Broken Function Level Authorization: fungsi yang memerlukan izin khusus terbuka bagi pemanggil lain.
- API6 — Unrestricted Access to Sensitive Business Flows: alur bisnis sensitif dapat digunakan berlebihan atau disalahgunakan.
- API7 — Server Side Request Forgery: server dapat diarahkan mengirim permintaan ke tujuan yang tidak semestinya.
- API8 — Security Misconfiguration: pengaturan API atau layanan pendukung tidak aman.
- API9 — Improper Inventory Management: endpoint, versi, dan lingkungan tidak terinventarisasi atau dikelola dengan baik.
- API10 — Unsafe Consumption of APIs: data atau respons API pihak lain dipercaya tanpa pemeriksaan yang memadai.
Bedakan objek, atribut, dan fungsi
Contoh fiktif pada API pesanan: pelanggan A boleh membaca pesanan A, tetapi tidak B. Itu pertanyaan izin objek. Pada pesanan A sendiri, pelanggan belum tentu boleh mengubah nilai diskon atau status pembayaran. Itu pertanyaan izin atribut. Fungsi menyetujui pengembalian dana mungkin hanya tersedia bagi petugas tertentu. Itu pertanyaan izin fungsi.
Menguji satu endpoint berhasil mengembalikan data tidak cukup menjawab ketiganya. Siapkan akun, objek buatan, serta hasil yang seharusnya ditolak untuk tiap batas.
Bedakan beban sistem dan penyalahgunaan bisnis
Contoh fiktif: permintaan laporan tanpa batas ukuran dapat menghabiskan kapasitas pemrosesan. Sementara itu, pemesanan slot secara otomatis dapat menghabiskan kuota layanan untuk pelanggan lain meskipun server tetap cepat. Batas teknis dan aturan penggunaan alur bisnis perlu dibahas bersama pemilik produk.
Jangan hanya menghitung permintaan per menit. Periksa biaya tindakan, ukuran data, proses yang dipicu, hak pengguna, dan dampak pada pelanggan lain. Batas yang dipilih perlu diuji agar operasi sah tetap berjalan.
Mulai pemeriksaan dari inventaris
Catat endpoint dan versi yang masih dapat diakses, siapa pemiliknya, serta apakah lingkungan uji memegang data nyata. Cocokkan dokumentasi dengan layanan yang benar-benar aktif. Untuk integrasi luar, periksa cara memverifikasi pengirim, menangani respons gagal, serta membatasi data yang diterima.
Langkah operasional ada pada keamanan API dan akses data. Hubungkan temuan lintas pelanggan dengan pemisahan data SaaS, dan susun pengujian dalam lingkup pentest.
Daftar kategori diadaptasi dari OWASP API Security Project, edisi 2023, berlisensi CC BY-SA 4.0. Adaptasi daftar pada bagian “Sepuluh risiko API edisi 2023” dibagikan dengan lisensi yang sama; contoh kerja disusun Kompli.
Pemeriksaan fitur terkait
Untuk risiko yang terkait integrasi, lanjutkan ke SSRF dan tujuan koneksi keluar, verifikasi webhook dan pengiriman ulang, serta batas perlindungan CORS.
Sumber rujukan
- OWASP API Security Top 10 – 2023 ↗OWASP API Security Project; pengenalan risiko API · The OWASP API Security Top 10 – 2023; definisi API1–API10
Baca naskah lengkap untuk melihat syarat dan pengecualiannya. Sesuaikan dengan layanan dan bidang usaha Anda.
Perlu membahas kebutuhan tim Anda?
Ceritakan sistem yang dikelola dan kebutuhan pengamanan tim Anda.
Konsultasikan kebutuhan Anda