← Kembali ke senarai

SAST vs DASAT vs IAST: Tes keamanan untuk pelengkapan ketiga bersaudara, bukan penggantian

itadol5j

Tiga singkatan paling umum dalam tes keamanan aplikasi adalah SAST, DAT, IAST. Reaksi pertama banyak orang adalah memilih salah satu yang terkuat, tetapi itu adalah proposisi munafik — ketiga bersaudara itu tidak bersaing, tetapi memandang isu yang sama dari sudut pandang yang berbeda. Pilihan itu tidak bergantung pada siapa yang lebih maju, tetapi pada tahap Anda berada di siklus kehidupan perangkat lunak, apa jenis celah yang ingin Anda temukan dan berapa banyak yang dapat Anda tanggung.

Ajudani penerapan tiga metode pengujian keselamatan

I. DEFINISI DI PERTAMA REFERENCE

  • SAST (ujian keamanan aplikasi statis)Penyusun:Jangan jalankan programDi bawah mana kode sumber / bita scanning menemukan celah, yang milik Kotak Putih.
  • DASAT MASUSPenyusun:Program sedang berjalanPermintaan peluncuran eksternal, serangan simulasi adalah \"kotak hitam\" dan tidak ada kode sumber yang diperlukan.
  • ISAST (Pengujian Keselamatan Aplikasi Interaktif)Penyusun:♪ Jalankan program dari dalamPlug-in (agen), dikombinasikan dengan konteks aliran dan kode, milik Kotak Kelabu.

Kunci untuk memahami ketiga ini adalah bahwa mereka masing-masing menjawab pertanyaan yang berbeda: SAST bertanya, " Di mana bisa ada kesalahan dalam kode?" DASAT bertanya, "Bisakah kita benar-benar mendapatkan melalui ketika berjalan?" ISAST bertanya, "Dalam operasi ini, yang aliran data benar-benar mengalir ke titik bahaya."

SAST: Mencekik masalah pada tahap penulisan kode

SAST langsung menganalisis kode sumber (atau menyusun produk perantara) dan tidak melaksanakan program. Keuntungannya adalah untuk dapat mendeteksi masalah pada tahap awal, atau bahkan ketika kode diserahkan, untuk menemukan dokumen tertentu dan nomor baris, dengan biaya perbaikan yang rendah. Ia meliputi "kode dapat disapu " dan tidak bergantung pada lingkungan waktu berjalan.

Papan Pendek:Keadaan kesalahan biasanya tinggi karena tidak menentukan apakah sejumlah kode tertentu akan dipicu dalam bisnis riil; masalah-masalah yang terkena hanya ketika berjalan (misalnya, kesalahan konfigurasi, bypass penjaminan, rantai panggilan aktual mengandalkan perpustakaan) tidak sepenuhnya terlihat; kode sumber diperlukan dan komponen sumber ketiga-bagian tertutup-sumber tidak fungsional.

Skenario tipikal: CI streaming line kode pengiriman pintu ditutup untuk mencegah injeksi tampak, tombol hard-coding, panggilan fungsi bahaya ke tulang punggung.

Apakah benar-benar bekerja?"

DANAT menggunakan target sebagai kotak hitam untuk mengirim permintaan dari luar, membangun muatan serangan dan mengamati respon. Nilai terbesarnya adalah...Dekat dengan serangan nyata.Masalah ” akses nyata untuk melarikan diri ” ditemukan, dengan kurang dilaporkan. Tidak ada kode sumber yang diperlukan, sehingga komponen pihak ketiga, lapisan konfigurasi juga dapat dicakup.

Papan PendekHal ini sering kali hanya sampai penyebaran bahwa deteksi deteksi terlambat dan biaya perbaikan yang tinggi; cakupan terbatas pada reptil dan rute uji yang dapat dicapai oleh contoh, tanpa deteksi titik fungsional yang tidak terdeteksi; sulit untuk menemukan kode sumber secara tepat, dan pengembangan dan pelaporan sering hanya diketahui \" URL mana yang bermasalah\"; dan biaya konfigurasi tinggi untuk skenario yang membutuhkan login, proses bisnis multi-langkah.

Senario tipikal: izin keamanan sebelum online, pemindaian berkala lingkungan yang dikerahkan.

IV. ISAST: Plug waktu-jalan, menyeimbangkan konteks dengan aliran data nyata

IMAST juga mengamati pelaksanaan kode dan aliran eksternal ketika menjalankan program dengan menanamkan antent dalam aplikasi. Ia dapat melihat bagaimana permintaan masuk, dan bagaimana data mengalir ke kode, sehingga dapat diberikan.Ambil bukti penuh penginapan.Biasanya lebih rendah dari SAST dan akurat.

Papan PendekKeperluan untuk dapat mengerahkan probe di lingkungan target (owing to concern about the production environment); kebergantungan pada cakupan tes, yang tidak dapat ditemukan tanpa kode yang sedang diimplementasikan, yang sering kali terikat pada pengujian fungsional/automatik; perbedaan dalam dukungan bahasa dan kerangka kerja; dan biaya kinerja tertentu.

Skenario tipikal: jalankan dalam lingkungan uji yang berhubungan dengan pengujian otomatis, baik untuk memvalidasi fungsionalitas maupun untuk mensinkronkan kesimpulan keselamatan keluaran.

Tonton aliran data dan call stack dari kode dalam

Lima, tiga lawan satu.

DimensiSASTDASAT MASUSIAST
Objek Uji ObjekSumber/bytes (tidak berjalan)Target aktif (eksternal)Operasional aplikasi (plug internal)
PerspektifKotak Putih Coklat(Inggris) Box Black BoxKotak Kelabu
Waktu untuk intervensiPengekodan/pengisian fase paling awalSetelah penyebaranUji/Larikan-waktu
Kode sumber diperlukan oleh WaustesYa. Ya.Tidak perlu.Keperluan berkuku (dapat ditancapkan)
Aras yang DibantahSMAlowDirendahkan
Presisi posisiKe berkas/barisNama URL/ AntarmukaAir Terjun Ke Panggilan Inn/Data Stream
Mengganti KetergantunganLimited (lihat bagian kode sumber)Batalkan paparan ketika berjalanDibatasi oleh jalur eksekusi
Adegan khasKoin BanPeriksa dan terima sebelum online.Dikombinasikan dengan pengujian otomatis

VI. Kelengkapan dan bukan penggantian

Jika Anda menempatkan tiga bersama-sama, mereka menemukan zona buta mereka untuk menjadi pelengkap:

  • SAST melihat kodenya tetapi tidak tahu apakah akan dipicu; DAT tahu apakah kode itu dapat dipicu tetapi tidak tahu di garis mana masalahnya adalah; ISAST kedua-duanya, tetapi mengharuskan kode untuk dieksekusi.
  • SAVT meliputi awal, lebar dan keras; DAT memiliki kebisingan kecil tetapi intervensi terlambat, cakupan sempit; dan IAST memiliki akurasi tinggi tetapi dapat plug masuk dan berjalan cukup baik.
  • Hanya pergi ke SAST, yang rentan terhadap \"sekumpulan kelelahan pita merah\"; pergi ke DPAT, di mana celah sering terkena pada garis; pergi ke IAST, di mana jalan ke mana itu tidak dicapai adalah buta.

Jawaban atas kenyataan bukanlah satu atau dua, tetapi pendekatan tahap demi tahap: penggunaan awal SAST untuk menjejalkan pola yang jelas dari rasa buruk dan bahaya, fase pengujian IAST untuk divalidasi secara akurat dengan IAST sejalan dengan otomatisasi, dan penggunaan up- dan down-line DAST untuk penerimaan eksternal dari perspektif agressor. Tiga takhayul takhayul adalah sebuah tes keamanan aplikasi loop tertutup tanpa celah yang signifikan.

Uji statistik, dinamis, interaktif membentuk lingkaran tertutup.

VII. [ Gambar di hlm.

\"Kesalahan\"

Bagaimanapun juga, tidak ada yang memperbaiki laporan, tidak ada yang tidak. Ada proses triage yang jelas: yang melihat, berapa lama untuk menutup, bagaimana menandai " menerima risiko " . Secara khusus, SAST membutuhkan manajemen garis dasar, jika tidak, warisan sejarah akan menenggelamkan masalah baru.

Liputan ini lebih penting daripada merek alat

Kemampuan ISAST untuk menemukan secara langsung bergantung pada berapa banyak kode yang ditutupi oleh tes; DAT tergantung pada berapa banyak antarmuka yang dicapai oleh reptil. Lebih bermakna untuk mengukur ” tingkat deteksi” sebelum online daripada mengganti alat yang lebih mahal.

Jangan anggap tes keselamatan sebagai tes satu-off. Ambil saja.

Uji keselamatan kelincahan harus dibenamkan dalam proses R & D yang berkesinambungan, daripada dipusatkan sebelum online. CI CI menjalankan SAST, menguji IAST lingkungan, secara teratur melakukan DAT untuk produksi, sehingga tidak harus mengandalkan daging manusia untuk menyelamatkan api.

4. Fokus pada sinergi di antara alat - alat

Negara ideal adalah bahwa tiga jenis hasil dapat dikelompokkan ke dalam pandangan yang sama: celah yang sama, SAST memberikan lokasi kode, IAST memberikan bukti aliran data, dan DPAT memvalidasi ketersediaan. Ini bernilai jauh lebih dari tiga pulau raksasa perang.

VIII. Daftar keputusan

  • Ya. Ya.fase submisiHanya menahan celah jelas pada SAST, fokus pada penutupan pintu dan garis dasar.
  • Untuk memastikanApakah sistem yang dikerahkan benar-benar mampu menyerang? • Naik dengan DASAT, berfokus pada liputan dan konfigurasi log masuk.
  • Untuk mendapatkan kesimpulan keamanan.NameDan lokasi tepatnya di ISAST.
  • Sumber daya yang terbatas hanya dapat digunakan sebagai prioritas pertama bagi SAST untuk menetapkan garis bawah dan kemudian secara bertahap untuk menyelesaikan IAEA/DAST.
  • Pencarian untuk αone-size-fits-all, larutan permanen" tidak ada, tetapi cara untuk mengatur dan memproses adalah jawabannya.

SAST dimungkinkan, DASAT praktis, IAST spesifik — gabungan adalah gambaran yang lengkap.