GitHub áp dụng công cụ quét mã đối với tất cả các dự án nguồn mở
Tính năng quét mã tự động này dựa trên các công cụ kiểm tra mã mà GitHub đã mua năm 2019 khi mua lại công ty Semmle (Anh), cho phép tự động vẽ biểu đồ và dò quét mã khi có yêu cầu gửi mã nguồn mới lên kho lưu trữ, cũng như kiểm tra một số lỗi phổ biến có thể gây ra lỗ hổng bảo mật.
Giám đốc sản phẩm cao cấp của GitHub - Justin Hutchings nói rằng, một thành phần quan trọng trong quá trình quét mã của Semmle (giờ là GitHub) là CodeQL, ngôn ngữ truy vấn biểu đồ và kiểm tra mã lỗi. Tính năng này rất hữu ích trong việc bảo mật. Bởi hầu hết các vấn đề bảo mật liên quan đến luồng dữ liệu xấu hoặc sử dụng dữ liệu xấu theo một cách nào đó.
Mặc dù tính năng này đối với GitHub là mới, nhưng các công cụ Semmle đã được sử dụng trong thời gian dài. Đó là lý do GitHub tin rằng chúng sẽ hoạt động hiệu quả khi khởi chạy miễn phí cho các dự án nguồn mở và như một tiện ích bổ sung cho phần đóng, trả tiền dành cho doanh nghiệp của GitHub.
Tuy tính năng quét mã có thể hiệu quả nhất đối với các dự án nhỏ không có đủ thời gian kiểm tra lỗi kỹ lưỡng, thì Hutchings lưu ý rằng, bằng cách đưa tính năng lên đám mây, các nhà phát triển lớn cũng sẽ hưởng lợi từ điều này. "Rất nhiều khách hàng thương mại của chúng tôi tỏ ra hào hứng về việc có thể thực hiện tính năng này ở quy mô lớn trên đám mây", ông cho biết thêm.
Phân tích bảo mật tốn rất nhiều năng lực tính toán vì phải xử lý hàng triệu dòng mã. Các nhà phát triển đều muốn thực hiện điều này một cách nhanh chóng. Việc làm này của Github đã mang tới khả năng đánh giá trên một môi trường đám mây, giúp tính năng này trở nên nhanh hơn so với trước đây.
Ngoài việc quét lỗ hổng bảo mật, GitHub cũng đang bổ sung thêm tùy chọn cho các nhà phát triển thương mại để quét các kho lưu trữ ngoại tuyến và tìm các thông tin bí mật có thể bị lộ lọt (khóa, thông tin đăng nhập,...) dẫn đến xâm nhập mạng và rò rỉ dữ liệu. Vốn trước đây chỉ giới hạn ở các kho lưu trữ công cộng (như AWS hoặc Google Cloud), thì tính năng quét thông tin bí mật giờ đây sẽ có thể thực hiện trên các kho lưu trữ GitHub riêng tư.
Ngoài ra, Hutchings cho biết, đây không chỉ là một tính năng bảo mật mà còn là một tính năng ổn định, vì nó giúp các nhà phát triển thực hiện được các chính sách bảo mật yêu cầu thay đổi khóa định kỳ bằng cách theo dõi và ghi lại các thay đổi. Theo cách này, các nhà phát triển có thể ngăn chặn sự cố ngừng hoạt động có thể xảy ra khi các thay đổi khóa không được báo cáo và xử lý đúng cách.
Nguyễn Anh Tuấn
(Theo Register)