GitHub melancarkan sistem pembelajaran mesin untuk mencari kelemahan dalam kod

Logo GitHub

GitHub diumumkan beberapa hari lalu penambahan eksperimen sistem pembelajaran mesinl kepada perkhidmatan pengimbasan kod untuk mengenal pasti jenis kelemahan biasa Dalam kod. Dengan ini, teknologi analisis kod berasaskan CodeQL GitHub telah dirombak dan kini menggunakan pembelajaran mesin (ML) untuk mencari potensi kelemahan keselamatan dalam kod.

Dan GitHub itu memperoleh teknologi untuk CodeQL sebagai sebahagian daripada pemerolehan Semmie. CodeQL digunakan oleh pasukan penyelidik keselamatan untuk melakukan analisis semantik kod, dan GitHub menjadikannya sumber terbuka.

Dengan model ini, CodeQL boleh mengenal pasti lebih banyak aliran data pengguna yang tidak dipercayai dan oleh itu lebih banyak potensi kelemahan keselamatan.

Adalah diperhatikan bahawa penggunaan sistem pembelajaran mesin telah memungkinkan untuk meluaskan julat masalah yang dikenal pasti dengan ketara, yang dalam analisisnya sistem itu kini tidak terhad kepada mengesahkan corak biasa dan tidak terikat dengan rangka kerja yang diketahui.

Daripada masalah yang dikenal pasti oleh sistem baharu, ralat yang membawa kepada skrip rentas tapak (XSS), herotan laluan fail (contohnya, melalui petunjuk "/.."), penggantian pertanyaan SQL dan NoSQL disebut. .

Pengimbasan kod kini boleh mencari lebih banyak potensi kelemahan keselamatan dengan memanfaatkan model pembelajaran mendalam baharu. Ciri percubaan ini tersedia dalam beta awam untuk repositori JavaScript dan TypeScript di GitHub.com.

Alat baharu GitHub fue dikeluarkan sebagai beta awam percuma Untuk semua pengguna, ciri ini menggunakan pembelajaran mesin dan pembelajaran mendalam untuk mengimbas asas kod dan mengenal pasti kelemahan keselamatan biasa sebelum produk dihantar.

Ciri percubaan kini tersedia untuk semua pengguna platform, termasuk pengguna GitHub Enterprise sebagai Ciri Keselamatan Lanjutan GitHub, dan boleh digunakan untuk projek yang ditulis dalam JavaScript atau TypeScript.

Dengan evolusi pesat ekosistem sumber terbuka, terdapat ekor perpustakaan yang semakin meningkat yang semakin jarang digunakan. Kami menggunakan contoh daripada pertanyaan CodeQL yang dibuat secara manual untuk melatih model pembelajaran mendalam untuk mengenali perpustakaan sumber terbuka serta perpustakaan sumber tertutup yang dibangunkan secara dalaman.

Alat ini direka untuk mencari empat kelemahan yang paling biasa yang mempengaruhi projek yang ditulis dalam dua bahasa ini: penskripan tapak silang (XSS), suntikan laluan, suntikan NoSQL dan suntikan SQL.

Perkhidmatan pengimbasan kod membolehkan anda mengesan kelemahan pada peringkat awal pembangunan dengan mengimbas setiap operasi tolak git untuk kemungkinan isu.

Hasilnya dilampirkan terus pada permintaan tarik. Sebelum ini, semakan dilakukan menggunakan enjin CodeQL, yang menganalisis corak dengan contoh tipikal kod terdedah (CodeQL membolehkan anda menjana templat kod terdedah untuk mengesan kehadiran kelemahan serupa dalam kod projek lain).

Dengan keupayaan analisis baharu, Pengimbasan Kod boleh menjana lebih banyak makluman untuk empat corak kerentanan biasa: Skrip Silang Tapak (XSS), Suntikan Laluan, Suntikan NoSQL dan Suntikan SQL. Bersama-sama, empat jenis kerentanan ini mewakili banyak kerentanan (CVE) baru-baru ini dalam ekosistem JavaScript/TypeScript, dan meningkatkan keupayaan pengimbasan kod untuk mengesan kelemahan tersebut pada awal proses pembangunan adalah kunci untuk membantu pembangun menulis kod yang lebih selamat.

Enjin pembelajaran mesin baharu boleh mengenal pasti kelemahan yang tidak diketahui sebelum ini kerana ia tidak terikat dengan lelaran corak kod yang menerangkan kelemahan tertentu. Harga peluang sedemikian adalah peningkatan bilangan positif palsu berbanding semakan berasaskan CodeQL.

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

Juga adalah penting untuk menyebut bahawa dalam peringkat ujian, fungsi baharu pada masa ini hanya tersedia untuk repositori dengan kod JavaScript dan TypeScript.


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.