GitHub ra mắt hệ thống máy học để tìm lỗ hổng trong mã

Biểu trưng GitHub

GitHub được công bố vài ngày trước, việc bổ sung một thí nghiệm hệ thống học máytôi đến dịch vụ quét mã để xác định các loại lỗ hổng phổ biến Trong mã. Với điều này, công nghệ phân tích mã dựa trên CodeQL của GitHub đã được cải tiến và hiện sử dụng máy học (ML) để tìm ra các lỗ hổng bảo mật tiềm ẩn trong mã.

Và đó là GitHub mua lại công nghệ cho CodeQL như một phần của việc mua lại Semmie. CodeQL được sử dụng bởi các nhóm nghiên cứu bảo mật để thực hiện phân tích ngữ nghĩa của mã và GitHub đã biến nó thành mã nguồn mở.

Với các mô hình này, CodeQL có thể xác định nhiều luồng dữ liệu người dùng không đáng tin cậy hơn và do đó có nhiều lỗ hổng bảo mật tiềm ẩn hơn.

Người ta quan sát thấy rằng việc sử dụng hệ thống học máy đã giúp mở rộng đáng kể phạm vi các vấn đề đã xác định, trong đó việc phân tích hệ thống giờ đây không chỉ giới hạn trong việc xác minh các mẫu điển hình và không bị ràng buộc với các khuôn khổ đã biết.

Trong số các vấn đề được xác định bởi hệ thống mới, các lỗi dẫn đến tập lệnh chéo trang (XSS), biến dạng đường dẫn tệp (ví dụ: thông qua chỉ báo "/ .."), thay thế truy vấn SQL và NoSQL được đề cập.

Tính năng quét mã hiện có thể tìm thấy nhiều lỗ hổng bảo mật tiềm ẩn hơn bằng cách tận dụng mô hình học sâu mới. Tính năng thử nghiệm này có sẵn trong bản beta công khai cho các kho JavaScript và TypeScript trên GitHub.com.

Công cụ mới của GitHub fue được phát hành dưới dạng bản beta công khai miễn phí Đối với tất cả người dùng, tính năng này sử dụng máy học và học sâu để quét các cơ sở mã và xác định các lỗ hổng bảo mật phổ biến trước khi sản phẩm được xuất xưởng.

Tính năng thử nghiệm hiện có sẵn cho tất cả người dùng nền tảng, bao gồm cả người dùng GitHub Enterprise dưới dạng Tính năng bảo mật nâng cao của GitHub và có thể được sử dụng cho các dự án được viết bằng JavaScript hoặc TypeScript.

Với sự phát triển nhanh chóng của hệ sinh thái nguồn mở, ngày càng có nhiều thư viện được sử dụng ít thường xuyên hơn. Chúng tôi sử dụng các ví dụ từ các truy vấn CodeQL được tạo thủ công để đào tạo các mô hình học sâu để nhận ra các thư viện nguồn mở cũng như các thư viện nguồn đóng được phát triển nội bộ.

Công cụ được thiết kế để tìm kiếm bốn lỗ hổng phổ biến nhất ảnh hưởng đến các dự án được viết bằng hai ngôn ngữ sau: cross-site scripting (XSS), chèn tuyến, chèn NoSQL và chèn SQL.

Dịch vụ quét mã cho phép bạn phát hiện các lỗ hổng ở giai đoạn phát triển ban đầu bằng cách quét từng thao tác git push để tìm các vấn đề tiềm ẩn.

Kết quả được đính kèm trực tiếp vào yêu cầu kéo. Trước đây, việc kiểm tra được thực hiện bằng công cụ CodeQL, công cụ này phân tích các mẫu với các ví dụ điển hình về mã dễ bị tấn công (CodeQL cho phép bạn tạo một mẫu mã dễ bị tấn công để phát hiện sự hiện diện của một lỗ hổng tương tự trong mã của các dự án khác).

Với khả năng phân tích mới, Quét mã có thể tạo ra nhiều cảnh báo hơn nữa cho bốn mẫu lỗ hổng phổ biến: Cross-Site Scripting (XSS), Path Injection, NoSQL Injection và SQL Injection. Cùng với nhau, bốn loại lỗ hổng này đại diện cho nhiều lỗ hổng gần đây (CVE) trong hệ sinh thái JavaScript / TypeScript và việc cải thiện khả năng quét mã để phát hiện sớm các lỗ hổng này trong quá trình phát triển là chìa khóa để giúp các nhà phát triển viết mã an toàn hơn.

Công cụ học máy mới có thể xác định các lỗ hổng chưa biết trước đây bởi vì nó không bị ràng buộc với sự lặp lại của các mẫu mã mô tả các lỗ hổng cụ thể. Cái giá phải trả của một cơ hội như vậy là sự gia tăng số lượng các lần dương tính giả so với các lần kiểm tra dựa trên CodeQL.

Cuối cùng cho những người quan tâm muốn biết thêm về nó, bạn có thể kiểm tra các chi tiết Trong liên kết sau đây.

Ngoài ra, điều quan trọng cần đề cập là trong giai đoạn thử nghiệm, chức năng mới hiện chỉ có sẵn cho các kho chứa mã JavaScript và TypeScript.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.