Bagikan melalui


Pemindaian kode tanpa agen di Microsoft Defender untuk Cloud

Pemindaian kode tanpa agen di Microsoft Defender untuk Cloud menawarkan cakupan keamanan yang cepat dan dapat diskalakan untuk semua repositori di Azure DevOps. Ini dengan cepat menemukan kerentanan dalam penyiapan kode dan infrastruktur sebagai kode (IaC) tanpa memerlukan perubahan alur Agen atau Integrasi Berkelanjutan dan Penyebaran Berkelanjutan (CI/CD). Pendekatan ini menyederhanakan penyiapan dan pemeliharaan dengan satu konektor Azure DevOps, dan menyediakan cakupan luas, wawasan berkelanjutan, dan temuan keamanan yang dapat ditindak lanjuti. Ini memungkinkan tim keamanan dan pengembangan fokus pada perbaikan risiko dengan lancar tanpa mengganggu alur kerja pengembangan.

Prasyarat

  • Status rilis: Pratinjau publik

  • Kasus penggunaan yang didukung:

  • Cloud: Cloud komersial Azure

  • Wilayah yang didukung: Australia Timur, Kanada Tengah, AS Tengah, Asia Timur, AS Timur, Eropa Utara, Swedia Tengah, UK Selatan, Eropa Barat

  • Lingkungan yang didukung: Konektor Azure DevOps

  • Peran dan izin:

    Untuk menyiapkan dan mengonfigurasi konektor:

    • Admin Koleksi Proyek: Diperlukan di Azure DevOps untuk melakukan penyiapan awal.
    • Kontributor Langganan: Diperlukan pada langganan Azure untuk membuat dan mengonfigurasi konektor.

    Untuk melihat hasil keamanan:

    • Admin Keamanan: Dapat mengelola pengaturan keamanan, kebijakan, dan pemberitahuan tetapi tidak dapat mengubah konektor.
    • Pembaca Keamanan: Dapat melihat rekomendasi, pemberitahuan, dan kebijakan tetapi tidak dapat membuat perubahan apa pun.

Manfaat utama

  • Manajemen risiko proaktif: Mengidentifikasi risiko di awal proses pengembangan. Ini mendukung praktik pengkodian yang aman dan mengurangi kerentanan sebelum mencapai produksi.
  • Onboarding yang mudah: Siapkan dengan cepat dengan konfigurasi minimal dan tanpa perubahan alur.
  • Manajemen terpusat skala perusahaan: Memindai kode secara otomatis di beberapa repositori menggunakan satu konektor. Ini memberikan cakupan yang luas untuk lingkungan besar.
  • Wawasan cepat untuk remediasi cepat: Menerima wawasan kerentanan yang dapat ditindaklanjuti tepat setelah onboarding. Ini memungkinkan perbaikan cepat dan mengurangi waktu paparan.
  • Ramah pengembang dan mulus: Beroperasi secara independen dari alur integrasi berkelanjutan dan penyebaran berkelanjutan (CI/CD), tanpa perubahan atau keterlibatan pengembang langsung yang diperlukan. Hal ini memungkinkan pemantauan keamanan berkelanjutan tanpa mengganggu produktivitas atau alur kerja pengembang.

Kemampuan deteksi risiko

Pemindaian kode tanpa agen meningkatkan keamanan dengan menawarkan rekomendasi keamanan yang ditargetkan untuk kode dan templat Infrastructure-as-Code (IaC). Ini selain rekomendasi keamanan Foundational Cloud Security Posture Management (CSPM) yang disediakan melalui konektor. Kemampuan deteksi utama meliputi:

  • Kerentanan kode: Temukan kesalahan pengodean umum, praktik pengodean yang tidak aman, dan kerentanan yang diketahui dalam beberapa bahasa pemrograman.
  • Kesalahan konfigurasi infrastruktur sebagai Kode: Mendeteksi kesalahan konfigurasi keamanan dalam templat IaC yang dapat menyebabkan penyebaran yang tidak aman.

Membuat konektor meningkatkan keamanan dengan memberikan serangkaian rekomendasi keamanan dasar untuk repositori, alur, dan koneksi layanan.

Alat pemindaian

Pemindaian kode tanpa agen menggunakan berbagai alat sumber terbuka untuk menemukan kerentanan dan kesalahan konfigurasi dalam kode dan templat Infrastructure-as-Code (IaC):

Alat IaC/Bahasa yang Didukung Lisensi
Bandit Python Apache 2.0
Checkov Templat Terraform IaC, file paket Terraform, templat AWS CloudFormation, file manifes Kubernetes, file bagan Helm, Dockerfiles, templat IaC Azure Azure Resource Manager (ARM), templat IaC Azure Bicep, templat AWS SAM (Model Aplikasi Tanpa Server), File kustomisasi, templat kerangka kerja Tanpa Server, file spesifikasi OpenAPI Apache 2.0
ESLint JavaScript, TypeScript, JSX, TSX MIT
Penganalisis Templat Templat IAC ARM, templat Bicep IaC MIT

Alat-alat ini mendukung berbagai bahasa dan kerangka kerja IaC, memastikan analisis keamanan menyeluruh di seluruh basis kode Anda.

Platform dan jenis file yang didukung

Sistem kontrol versi

  • Azure DevOps: Dukungan penuh untuk repositori yang terhubung melalui konektor Azure DevOps.

Bahasa pemrograman

  • Python
  • JavaScript/TypeScript

Platform dan konfigurasi Infrastructure-as-Code (IaC)

IaC Platform Jenis file yang didukung Catatan
Terraform .tf, .tfvars Mendukung templat Terraform IaC dalam bahasa HCL2, termasuk file variabel di .tfvars.
Paket Terraform File JSON Termasuk file JSON yang mewakili konfigurasi yang direncanakan, digunakan untuk analisis dan pemindaian.
AWS CloudFormation File JSON, YAML Mendukung templat AWS CloudFormation untuk menentukan sumber daya AWS.
Kubernetes FILE YAML, JSON Mendukung file manifes Kubernetes untuk menentukan konfigurasi dalam kluster.
Helm Struktur direktori bagan Helm, file YAML Mengikuti struktur bagan standar Helm; mendukung file bagan Helm v3.
Docker File bernama Dockerfile Mendukung Dockerfiles untuk konfigurasi kontainer.
Templat Azure ARM File JSON Mendukung templat IaC Azure Resource Manager (ARM) dalam format JSON.
Azure Bicep File .bicep Mendukung templat Bicep IaC, bahasa khusus domain (DSL) untuk ARM.
AWS SAM File YAML Mendukung templat AWS Serverless Application Model (SAM) untuk sumber daya tanpa server.
Kustomisasi File YAML Mendukung file konfigurasi untuk kustomisasi Kubernetes (Kustomisasi).
Serverless Framework File YAML Mendukung templat untuk kerangka kerja Tanpa Server dalam menentukan arsitektur tanpa server.
OpenAPI FILE YAML, JSON Mendukung file spesifikasi OpenAPI untuk menentukan API RESTful.

Mengaktifkan pemindaian kode tanpa agen di organisasi Azure DevOps Anda

Untuk menyambungkan organisasi Azure DevOps Anda ke Defender untuk Cloud dan mengaktifkan pemindaian kode tanpa agen, lihat instruksi di Menyambungkan organisasi Azure DevOps Anda. Visual berikut menunjukkan proses penyiapan yang cepat dan mudah, memandu Anda melalui setiap langkah untuk onboarding yang lancar.

Gambar GIF memperlihatkan proses penyiapan untuk mengaktifkan pemindaian kode tanpa agen

Cara kerja pemindaian kode tanpa agen

Pemindaian kode tanpa agen berfungsi secara independen dari alur CI/CD. Ini menggunakan konektor Azure DevOps untuk memindai kode dan konfigurasi Infrastructure-as-Code (IaC) secara otomatis. Anda tidak perlu memodifikasi alur atau menambahkan ekstensi. Penyiapan ini memungkinkan analisis keamanan yang luas dan berkelanjutan di beberapa repositori. Hasil diproses dan ditampilkan langsung di Microsoft Defender untuk Cloud.

Diagram memperlihatkan arsitektur pemindaian kode tanpa agen.

Proses pemindaian

Setelah Anda mengaktifkan fitur pemindaian kode tanpa agen dalam konektor, proses pemindaian mengikuti langkah-langkah berikut:

  1. Penemuan repositori: Sistem secara otomatis mengidentifikasi semua repositori yang ditautkan melalui konektor Azure DevOps tepat setelah pembuatan konektor lalu setiap 8 jam.
  2. Pengambilan kode: Ini dengan aman mengambil kode terbaru dari cabang default (utama) dari setiap repositori untuk analisis, pertama setelah penyiapan konektor dan kemudian setiap 3-4 hari.
  3. Analisis: Sistem menggunakan serangkaian alat pemindaian bawaan yang dikelola dan diperbarui dalam Microsoft Defender untuk Cloud untuk menemukan kerentanan dan kesalahan konfigurasi dalam kode dan templat IaC.
  4. Pemrosesan temuan: Ini memproses temuan pemindaian melalui backend Defender untuk Cloud untuk membuat rekomendasi keamanan yang dapat ditindaklanjuti.
  5. Pengiriman hasil: Sistem menunjukkan temuan sebagai rekomendasi keamanan di Defender untuk Cloud, memungkinkan tim keamanan untuk meninjau dan mengatasi masalah.

Frekuensi dan durasi pemindaian

  • Frekuensi pemindaian:
    • Postur keamanan repositori, alur, dan koneksi layanan dinilai saat Anda membuat konektor dan kemudian setiap 8 jam.
    • Sistem memindai kode dan templat Infrastructure-as-Code (IaC) untuk kerentanan setelah Anda membuat konektor dan kemudian setiap 3-4 hari.
  • Durasi pemindaian: Pemindaian biasanya selesai dalam waktu 15 hingga 60 menit, tergantung pada ukuran dan kompleksitas repositori.

Menampilkan dan mengelola hasil pemindaian

Setelah pemindaian selesai, Anda dapat mengakses temuan keamanan dalam Microsoft Defender untuk Cloud.

Mengakses temuan

  1. Navigasikan ke tab Rekomendasi keamanan di Microsoft Defender untuk Cloud.

  2. Tinjau daftar rekomendasi, yang mencakup temuan seperti:

  3. Pilih rekomendasi apa pun untuk informasi terperinci, termasuk file yang terpengaruh, tingkat keparahan, dan panduan remediasi.

Perbedaan antara pemindaian kode tanpa agen dan pemindaian dalam alur

Pemindaian kode tanpa agen dan pemindaian dalam alur menggunakan ekstensi Microsoft Security DevOps keduanya menawarkan pemindaian keamanan dalam Azure DevOps. Mereka melayani kebutuhan yang berbeda tetapi bekerja sama dengan baik. Tabel berikut menyoroti perbedaan utama untuk membantu Anda memilih opsi yang sesuai dengan kebutuhan keamanan dan pengembangan Anda.

Aspek Pemindaian kode tanpa agen Pemindaian dalam alur
Gunakan kecocokan huruf besar/kecil Menawarkan cakupan luas dengan gangguan minimal kepada pengembang Menyediakan pemindaian terperinci yang terintegrasi dengan alur dengan kontrol yang dapat disesuaikan
Cakupan dan cakupan pemindaian Berfokus pada infrastruktur sebagai kode (IaC) dan pemindaian kerentanan kode, dijadwalkan setiap 3-4 hari Menawarkan cakupan yang luas, termasuk biner dan gambar kontainer, yang dipicu pada setiap eksekusi alur
Penyiapan dan konfigurasi Tidak memerlukan penyiapan lebih lanjut setelah membuat konektor Memerlukan penginstalan dan konfigurasi manual di setiap alur CI/CD
Integrasi alur Berjalan secara independen dari alur (CI/CD) tanpa memodifikasi alur kerja Terintegrasi dalam alur CI/CD, memerlukan konfigurasi di setiap alur
Kustomisasi pemindai Pemindai tidak dapat disesuaikan atau dijalankan secara selektif Memungkinkan penyesuaian dengan pemindai, kategori, bahasa, tingkat sensitivitas, dan alat non-Microsoft tertentu
Hasil dan umpan balik Menyediakan akses ke temuan dalam Defender untuk Cloud Menawarkan umpan balik mendekati real-time dalam alur CI/CD, dengan hasil juga terlihat di Defender untuk Cloud
Kriteria putus dan gagal Tidak dapat memutus build Dapat dikonfigurasi untuk memutus build berdasarkan tingkat keparahan temuan keamanan

Skalabilitas dan dampak performa

Pemindaian kode tanpa agen menghindari pembuatan sumber daya dalam langganan dan tidak memerlukan pemindaian selama proses alur. Ini menggunakan REST API Azure DevOps untuk menarik metadata dan kode. Ini berarti panggilan API dihitung dalam batas tarif Azure DevOps, tetapi Anda tidak dikenakan biaya transfer data langsung. Layanan ini mengelola pemindaian untuk memastikan mereka tetap berada dalam batas laju Azure DevOps tanpa mengganggu lingkungan pengembangan. Metode ini menyediakan pemindaian berkinerja tinggi yang efisien di seluruh repositori tanpa memengaruhi alur kerja DevOps. Untuk informasi selengkapnya, lihat Laju Azure DevOps dan Batas Penggunaan.

Keamanan data, kepatuhan, dan kontrol akses untuk pemindaian kode tanpa agen

layanan pemindaian kode tanpa agen Microsoft Defender untuk Cloud memastikan penanganan kode Anda yang aman dan patuh dengan menerapkan langkah-langkah keamanan dan privasi data yang ketat:

  • Enkripsi data dan kontrol akses: Sistem mengenkripsi semua data saat transit menggunakan protokol standar industri. Hanya layanan Defender untuk Cloud resmi yang dapat mengakses kode Anda.
  • Residensi dan retensi data: Pemindaian terjadi di geo yang sama dengan konektor Azure DevOps Anda (AS atau UE) untuk mematuhi undang-undang perlindungan data. Sistem memproses kode hanya selama pemindaian dan menghapusnya dengan aman setelahnya, tanpa penyimpanan jangka panjang.
  • Akses ke repositori: Layanan ini menghasilkan token akses aman bagi Azure DevOps untuk melakukan pemindaian. Token ini memungkinkan pengambilan metadata dan kode yang diperlukan tanpa membuat sumber daya dalam langganan Anda. Hanya komponen Defender untuk Cloud yang memiliki akses, melindungi integritas data.
  • Dukungan kepatuhan: Layanan ini selaras dengan standar peraturan dan keamanan untuk penanganan dan privasi data, memastikan pemrosesan dan pemindaian kode pelanggan yang aman sesuai dengan persyaratan perlindungan data regional.

Langkah-langkah ini memastikan proses pemindaian kode yang aman, sesuai, dan efisien, menjaga privasi dan integritas data Anda.

Batasan (pratinjau publik)

Selama fase pratinjau publik, batasan berikut berlaku:

  • Tidak ada pemindaian biner: Sistem hanya memindai kode dan file Infrastructure-as-Code (IaC).

  • Frekuensi pemindaian: Ini memindai repositori setiap 3 hari.

  • Ukuran repositori: Ini membatasi pemindaian ke repositori di bawah 1 GB.

  • Cakupan cabang: Pemindaian hanya mencakup cabang default (utama).

  • Kustomisasi alat: Anda tidak dapat menyesuaikan alat pemindaian.