ClusterFuzzLite, sistem untuk mengatur ujian kabur kod

Baru-baru ini Google melancarkan melalui catatan blog projek ClusterFuzzLite, yang membenarkan penganjuran ujian kabur kod untuk pengesanan awal potensi kelemahan dalam peringkat operasi sistem integrasi berterusan.

Pada masa ini, ClusterFuzz boleh digunakan untuk mengautomasikan ujian fuzz permintaan tarik dalam Tindakan GitHub, Google Cloud Build dan Prow, tetapi dijangka pada masa hadapan ia akan serasi dengan sistem IC lain. Projek ini adalah berdasarkan platform ClusterFuzz, dicipta untuk menyelaraskan kerja kluster ujian kabur, dan diedarkan di bawah lesen Apache 2.0.

Perlu diingat bahawa selepas pengenalan perkhidmatan OSS-Fuzz oleh Google pada 2016, lebih daripada 500 projek sumber terbuka utama telah diterima ke dalam program ujian kabur berterusan. Daripada semakan yang dijalankan, lebih daripada 6.500 kelemahan yang disahkan telah dihapuskan dan lebih daripada 21.000 kesilapan telah diperbetulkan.

Mengenai ClusterFuzzLite

ClusterFuzzLite terus membangunkan mekanisme ujian kabur dengan keupayaan untuk mengenal pasti isu lebih awal dalam fasa semakan rakan sebaya perubahan yang dicadangkan. ClusterFuzzLite telah pun diperkenalkan dalam proses semakan perubahan dalam projek systemd dan curl, dan ia telah membolehkan untuk mengenal pasti ralat yang tidak dikesan dalam penganalisis statik dan linter yang digunakan pada peringkat awal pengesahan kod baharu.

Hari ini, kami berbesar hati untuk mengumumkan ClusterFuzzLite, penyelesaian kabur berterusan yang berjalan sebagai sebahagian daripada aliran kerja CI / CD untuk mencari kelemahan lebih cepat berbanding sebelum ini. Dengan hanya beberapa baris kod, pengguna GitHub boleh menyepadukan ClusterFuzzLite ke dalam aliran kerja mereka dan permintaan tarik kabur untuk menangkap pepijat sebelum ia dibuat, meningkatkan keselamatan keseluruhan rantaian bekalan perisian.
Sejak dilancarkan pada 2016, lebih daripada 500 projek sumber terbuka kritikal telah disepadukan ke dalam program OSS-Fuzz Google, menghasilkan pembetulan lebih daripada 6.500 kelemahan dan 21.000 pepijat berfungsi. ClusterFuzzLite berjalan seiring dengan OSS-Fuzz, mengesan ralat regresi lebih awal dalam proses pembangunan.

ClusterFuzzLite menyokong pengesahan projek dalam C, C ++, Java (dan bahasa berasaskan JVM lain), Go, Python, Rust dan Swift. Ujian fuzzing dijalankan menggunakan enjin LibFuzzer. Alat AddressSanitizer, MemorySanitizer dan UBSan (UndefinedBehaviorSanitizer) juga boleh dipanggil untuk mengesan ralat dan anomali memori.

Daripada ciri-ciri utama ClusterFuzzLite menyerlahkan contohnya pengesahan pantas perubahan yang dicadangkan untuk mencari ralat dalam peringkat sebelum penerimaan kod, serta muat turun laporan mengenai keadaan berlakunya ranap sistem, keupayaan untuk bergerak ke ujian fuzzing yang lebih maju untuk mengenal pasti ralat yang lebih mendalam yang tidak muncul selepas mengesahkan perubahan kod, juga penjanaan laporan liputan untuk menilai liputan kod semasa ujian dan seni bina modular yang membolehkan anda memilih fungsi yang diperlukan.

Projek besar termasuk systemd dan curlya menggunakan ClusterFuzzLite semasa semakan kod, dengan hasil yang positif. Menurut Daniel Stenberg, pengarang curl, “Apabila pengulas manusia bersetuju dan telah meluluskan kod tersebut dan penganalisis kod statik mereka dan linter tidak dapat mengesan sebarang masalah lagi, kekaburan adalah perkara yang membawa anda ke tahap kematangan dan keteguhan kod seterusnya. OSS-Fuzz dan ClusterFuzzLite membantu kami mengekalkan curl sebagai projek berkualiti, sepanjang hari, setiap hari dan pada setiap pertunangan.

Kita mesti ingat bahawa ujian kabur menjana aliran semua jenis gabungan rawak data input yang hampir dengan data sebenar (cth halaman html dengan parameter teg rawak, fail atau imej dengan pengepala tidak normal, dsb.) dan membetulkan kemungkinan kegagalan dalam proses.

Jika mana-mana urutan gagal atau tidak sepadan dengan respons yang dijangkakan, tingkah laku ini berkemungkinan besar menunjukkan pepijat atau kelemahan.

Akhirnya sekiranya anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh menyemak perinciannya Dalam pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.