ClusterFuzzLite, sebuah sistem untuk mengatur tes kode fuzzing

Baru-baru ini Google meluncurkan melalui posting blog proyek ClusterFuzzLite, yang memungkinkan pengorganisasian tes fuzzing kode untuk deteksi dini potensi kerentanan dalam tahap operasi sistem integrasi berkelanjutan.

Saat ini, ClusterFuzz dapat digunakan untuk mengotomatiskan pengujian fuzz dari permintaan tarik di GitHub Actions, Google Cloud Build dan Prow, tetapi diharapkan di masa depan akan kompatibel dengan sistem IC lainnya. Proyek ini didasarkan pada platform ClusterFuzz, dibuat untuk mengoordinasikan pekerjaan cluster uji fuzzing, dan didistribusikan di bawah lisensi Apache 2.0.

Perlu dicatat bahwa setelah pengenalan layanan OSS-Fuzz oleh Google pada tahun 2016, lebih dari 500 proyek sumber terbuka utama diterima ke dalam program pengujian fuzzing berkelanjutan. Dari pemeriksaan yang dilakukan, lebih dari 6.500 kerentanan yang dikonfirmasi telah dihilangkan dan lebih dari 21.000 kesalahan telah diperbaiki.

Tentang ClusterFuzzLite

ClusterFuzzLite terus mengembangkan mekanisme uji fuzzing dengan kemampuan untuk mengidentifikasi masalah lebih awal dalam fase peer review dari perubahan yang diusulkan. ClusterFuzzLite telah diperkenalkan dalam proses peninjauan perubahan di proyek systemd dan curl, dan memungkinkan untuk mengidentifikasi kesalahan yang tidak terdeteksi di penganalisis statis dan linter yang digunakan pada tahap awal verifikasi kode baru.

Hari ini, kami dengan senang hati mengumumkan ClusterFuzzLite, solusi fuzzing berkelanjutan yang berjalan sebagai bagian dari alur kerja CI / CD untuk menemukan kerentanan lebih cepat dari sebelumnya. Hanya dengan beberapa baris kode, pengguna GitHub dapat mengintegrasikan ClusterFuzzLite ke dalam alur kerja mereka dan permintaan tarik fuzz untuk menangkap bug sebelum dibuat, meningkatkan keamanan keseluruhan rantai pasokan perangkat lunak.
Sejak diluncurkan pada tahun 2016, lebih dari 500 proyek sumber terbuka penting telah diintegrasikan ke dalam program OSS-Fuzz Google, yang menghasilkan koreksi lebih dari 6.500 kerentanan dan 21.000 bug fungsional. ClusterFuzzLite berjalan seiring dengan OSS-Fuzz, mendeteksi kesalahan regresi jauh lebih awal dalam proses pengembangan.

ClusterFuzzLite mendukung validasi proyek di C, C ++, Java (dan bahasa berbasis JVM lainnya), Go, Python, Rust, dan Swift. Tes fuzzing dilakukan dengan menggunakan mesin LibFuzzer. Alat AddressSanitizer, MemorySanitizer, dan UBSan (UndefinedBehaviorSanitizer) juga dapat dipanggil untuk mendeteksi kesalahan dan anomali memori.

Fitur utama ClusterFuzzLite menyoroti misalnya: verifikasi cepat dari perubahan yang diusulkan untuk menemukan kesalahan pada tahap sebelum penerimaan kode, serta pengunduhan laporan tentang kondisi terjadinya crash, kemampuan untuk bergerak ke tes fuzzing yang lebih canggih untuk mengidentifikasi kesalahan lebih dalam yang tidak muncul setelah memverifikasi perubahan kode, juga pembuatan laporan cakupan untuk mengevaluasi cakupan kode selama pengujian dan arsitektur modular yang memungkinkan Anda memilih fungsionalitas yang diperlukan.

Proyek besar termasuk systemd dan curlya menggunakan ClusterFuzzLite selama peninjauan kode, dengan hasil yang positif. Menurut Daniel Stenberg, penulis curl, “Ketika pengulas manusia setuju dan telah menyetujui kode dan penganalisis kode statis dan linter mereka tidak dapat mendeteksi masalah lagi, fuzzing adalah yang membawa Anda ke tingkat kematangan dan ketahanan kode berikutnya. OSS-Fuzz dan ClusterFuzzLite membantu kami mempertahankan curl sebagai proyek yang berkualitas, sepanjang hari, setiap hari, dan di setiap keterlibatan.

Kita harus ingat bahwa pengujian fuzzing menghasilkan aliran semua jenis kombinasi acak dari data input yang mendekati data aktual (misalnya, halaman html dengan parameter tag acak, file atau gambar dengan header abnormal, dll.) dan memperbaiki kemungkinan kegagalan dalam proses.

Jika ada urutan yang gagal atau tidak sesuai dengan respons yang diharapkan, perilaku ini kemungkinan besar menunjukkan bug atau kerentanan.

Akhirnya jika Anda tertarik untuk mengetahui lebih banyak tentangnya, Anda dapat memeriksa detailnya Di tautan berikut.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.