Pengujian Penetrasi API
Penetration testing API tersertifikasi CREST yang melingkup layanan REST, GraphQL, gRPC, dan SOAP, selaras dengan OWASP API Security Top 10 dan panduan NIST.
API adalah substrat operasional perusahaan modern. API menghubungkan aplikasi ke backend, mengintegrasikan SaaS, menghubungkan mobile ke cloud, dan kian membawa business logic bernilai tertinggi di organisasi mana pun. API juga memusatkan risiko dengan cara yang jarang terlihat di lapisan UI di sekitarnya, itulah sebabnya pengujian khusus API kini secara konsisten menghasilkan lebih banyak temuan berdampak tinggi dibandingkan pengujian web.
Pengujian API Vantage Point menggabungkan threat modeling terhadap kontrak yang terdokumentasi dengan eksploitasi manual yang mendalam terhadap layanan yang berjalan. Kami menguji autentikasi, otorisasi, eksposur data, dan kelemahan business-logic di seluruh layanan REST, GraphQL, gRPC, dan SOAP legacy. Temuan dipetakan ke OWASP API Security Top 10 dan ke Test Case spesifik dalam library API Velocity.
Jika API menghadap mobile atau browser, pengujian biasanya digabungkan dengan layanan pengujian web atau mobile yang sesuai sehingga otorisasi dapat diuji secara end-to-end dari client hingga ke backend.
Risiko yang dihadapi organisasi Anda.
API memusatkan risiko otorisasi
UI web memberikan satu URL per halaman. API memberikan ratusan endpoint, masing-masing dengan kontrak otorisasi sendiri. Satu check yang hilang pada salah satunya sudah cukup untuk pelanggaran berdampak tinggi.
Dokumentasi jarang sesuai dengan kenyataan
Spesifikasi API menyimpang dari layanan yang berjalan. Endpoint ditambahkan saat situasi darurat, parameter memperoleh makna baru, jalur yang tidak terdokumentasi tetap aktif bertahun-tahun. Pengujian terhadap layanan yang berjalan menemukan apa yang tidak dapat ditemukan tinjauan spesifikasi.
Integrasi mobile dan partner memperbesar eksposur
API sering dibangun untuk "aplikasi mobile" atau "partner tepercaya ini". Setelah dipublikasikan, API menjadi sasaran siapa saja, termasuk penyerang yang me-reverse-engineer kode client untuk menemukannya.
Yang kami uji.
Autentikasi & Otorisasi
Tempat sebagian besar pelanggaran API sesungguhnya dimulai. Cakupan dipetakan ke OWASP API Top 10 #1, #3, dan #5.
- Broken object-level authorisation (BOLA / IDOR)
- Broken authentication
- Broken function-level authorisation
- JWT signature confusion dan penyalahgunaan algoritma
- Kelemahan alur OAuth dan penyalahgunaan consent
Data, Infrastruktur & Penyalahgunaan
Kategori yang tumbuh seiring meluasnya permukaan API, dan tempat Test Case yang konsisten menangkap apa yang terlewat oleh pengujian ad-hoc.
- Eksposur data yang berlebihan
- Mass assignment
- Konsumsi resource yang tidak dibatasi
- API injection (SQL, NoSQL, command, XML, JSON)
- Misconfiguration keamanan dan endpoint management
- Logging dan monitoring yang tidak memadai
Kelemahan yang secara konsisten muncul pada engagement seperti ini.
Dirangkum dari kategori temuan yang umum dihasilkan konsultan kami pada engagement sejenis. Tingkat keparahan dan frekuensi bervariasi sesuai lingkungan dan kematangan organisasi.
BOLA / IDOR
Endpoint yang mengembalikan data yang dibatasi scope-nya hanya berdasarkan identifier yang disediakan pengguna; ID numerik yang dinaikkan secara berurutan untuk meng-enumerate tenant lain; cross-tenant read melalui field referensi internal.
Broken function-level authorisation
Endpoint admin yang dapat dijangkau pengguna terotentikasi mana pun; role check yang ada di UI namun tidak ada di API; bypass berbasis verb (POST vs PUT) pada jalur yang dilindungi.
Kelemahan JWT / token
Token diterima dengan algoritma "none", confusion RS-ke-HS, validasi audience claim yang hilang, refresh token yang valid jauh lebih lama daripada yang dijamin oleh keamanan session.
Eksposur data yang berlebihan
Endpoint mengembalikan objek user lengkap padahal hanya nama dan avatar yang dibutuhkan, ID internal, flag yang dihitung, atau field sistem backend yang bocor ke client.
Mass assignment
Body POST/PUT yang menerima field yang tidak pernah dikirim UI, role, is_admin, balance, dan diam-diam memperbarui atribut sensitif.
Rate limiting & penyalahgunaan
Endpoint login tanpa throttling, endpoint OTP yang dapat digunakan ulang, endpoint query mahal tanpa quota, yang memungkinkan DoS via request yang dibuat khusus.
Jalur kerja terstruktur dan berbasis intelijen pada setiap engagement.
Setiap engagement mengikuti alur disiplin yang sama melalui platform Velocity, sehingga kualitas, ketertelusuran, dan pelaporan konsisten di seluruh tim.
Penetapan Ruang Lingkup
Tetapkan aset, lingkungan, Rules of Engagement, dan kriteria penerimaan bersama para pemangku kepentingan teknis dan keamanan.
Pelaksanaan
Pengujian manual dan berbantuan tools oleh konsultan tersertifikasi CREST, dengan bukti yang ditangkap pada setiap langkah.
Validasi
Setiap temuan direproduksi, dinilai risikonya menggunakan CVSS, dan dikonfirmasi oleh konsultan kedua sebelum dilaporkan.
Pelaporan
Laporan yang ditandatangani secara kriptografis, dengan ketertelusuran ke setiap Test Case, peringkat tingkat keparahan, langkah reproduksi, dan rekomendasi remediasi.
Debrief & Retest
Pemaparan temuan kepada pemangku kepentingan, dukungan prioritisasi, dan siklus retest atas temuan yang telah diremediasi.
Dipetakan ke baseline yang diakui industri.
Pertanyaan umum dari calon klien.
Apakah Anda dapat menguji jika kami hanya memiliki OpenAPI / Swagger / GraphQL schema? +
Ya. Dokumentasi adalah titik awal; kami kemudian meng-enumerate layanan yang berjalan, termasuk endpoint yang tidak ada di spesifikasi, sebelum pengujian manual. Sebagian besar temuan di dunia nyata berasal dari langkah enumerasi ini.
Bagaimana Anda menangani authenticated testing? +
Anda menyediakan token atau credential untuk setiap role yang harus kami uji. Kami selalu menguji dengan minimal dua role yang berbeda untuk mengevaluasi otorisasi dengan tepat, biasanya pengguna standar, administrator, dan role yang ter-scope tenant.
Apakah Anda menguji API pihak ketiga yang kami andalkan? +
Pengujian API pihak ketiga biasanya dilarang oleh terms of service mereka. Kami fokus pada layanan Anda sendiri, termasuk lapisan integrasi yang mengonsumsi API eksternal (yang kerentanannya tetap menjadi masalah Anda).
Bagaimana pengujian Anda berbeda antara GraphQL vs REST? +
GraphQL memiliki attack model sendiri: introspeksi, depth dan complexity, batching abuse, broken object-level authorisation pada relasi tipe. Kami menguji semuanya dengan tooling dan metodologi spesifik GraphQL.
Uji Pertahanan Anda dengan Pendekatan Adversarial Ofensif
Konsultasikan kebutuhan Pengujian Penetrasi berikutnya dengan konsultan tersertifikasi CREST kami.