PVS-Studio sebagai solusi SAST

PVS-Studio dan SAST

Sampai saat ini, dalam artikel kami, kami memposisikan PVS-Studio sebagai alat untuk mendeteksi kesalahan dalam kode. Pada saat yang sama, kami hampir tidak mempertimbangkan PVS-Studio dalam konteks keamanan. Mari kita coba sedikit memperbaiki situasi ini dan melihat alat dalam hal menguji keamanan aplikasi dan praktik DevSecOps.

PVS-Studio adalah alat untuk pengujian keamanan aplikasi statis (Static Application Security Testing, SAST). Dengan kata lain, analisa PVS-Studio mendeteksi tidak hanya kesalahan ketik, kode mati dan kesalahan lainnya, tetapi juga kerentanan potensial.

Alat ini berjalan di Windows, Linux, macOS dan menganalisis kode program dalam C, C ++ dan C #. Pada akhir 2018, dukungan untuk bahasa Jawa direncanakan.

Untuk kenyamanan spesialis yang akan menggunakan PVS-Studio sebagai alat SAST, penganalisa menampilkan peringatan pada Common Weakness Enumeration , SEI CERT Coding Standards , dan juga mendukung standar MISRA (saat ini sedang dalam implementasi).

Tabel kepatuhan diagnosa PVS-Studio dengan berbagai standar:

  1. Kepatuhan CWE
  2. CERT SEI Kepatuhan
  3. Dukungan MISRA (kami berencana untuk mengimplementasikannya sebelum akhir 2018)

Klasifikasi peringatan alat SAST yang paling umum adalah Common Weakness Enumeration (CWE). Mari kita lihat, saya menggunakan bahasa CWE karena alat analisa PVS-Studio membantu mencegah kerentanan.

Jika kita beralih ke basis data kerentanan keamanan informasi ( CVE ) yang terkenal, ternyata seringkali penyebab kerentanan dalam program bukanlah karena kelemahan keamanan, tetapi kesalahan perangkat lunak biasa. Institut Standar dan Teknologi Nasional (NIST) mengonfirmasi hal ini dengan menyatakan bahwa 64% kerentanan perangkat lunak disebabkan oleh kesalahan kode.

Ini adalah kesalahan yang berpotensi menyebabkan kerentanan yang dijelaskan dalam CWE. Dengan demikian, jika kesalahan dapat diklasifikasikan sebagai CWE, ada kemungkinan bahwa hal itu dapat dieksploitasi sebagai kerentanan dan akhirnya mengisi daftar CVE. Untuk kejelasan, Anda dapat menggunakan gambar corong:

Kesalahan, CWE, CVE

Ada banyak kesalahan. Beberapa dari mereka berbahaya dari sudut pandang keamanan dan karenanya diklasifikasikan menurut CWE. Beberapa kesalahan CWE dapat dieksploitasi dan mereka rentan.

Ya, dalam praktiknya, hanya sebagian kecil dari kesalahan CWE yang ditemukan berbahaya dan rentan. Namun, jika Anda sedang mengembangkan aplikasi yang kritis terhadap keamanan dan peduli dengan keselamatan pengguna, Anda harus menangani kesalahan ini dengan sangat serius. Dengan menghilangkan kesalahan CWE, Anda melindungi aplikasi Anda dari banyak kerentanan.

Sekarang hubungan antara kesalahan, PVS-Studio dan kerentanan menjadi jelas. Alat analisa PVS-Studio menemukan kesalahan dan mengklasifikasikan banyak dari mereka sebagai CWE. Dengan memperbaiki kesalahan ini, Anda membuat aplikasi Anda lebih dapat diandalkan. Menemukan kerentanan dalam suatu produk dapat secara serius mempengaruhi reputasinya. Dengan memperbaiki kesalahan penganalisa, Anda secara signifikan mengurangi risiko ini pada tahap awal pengembangan - penulisan kode.

Alat analisis PVS-Studio, seperti alat lain, tidak menjamin bahwa tidak ada kerentanan dalam kode. Namun, jika PVS-Studio mencegah, misalnya, 50% potensi kerentanan, ini sudah luar biasa.

Selain itu, kami menyarankan Anda membaca artikel " Bagaimana PVS-Studio dapat membantu dalam menemukan kerentanan? ", Yang menunjukkan kesalahan yang menyebabkan kerentanan, yang bisa dihindari jika alat PVS-Studio digunakan dalam proses pengembangan.

Mulai gunakan PVS-Studio sebagai solusi SAST: unduh PVS-Studio .

Source: https://habr.com/ru/post/id418143/


All Articles