Bảo mật tự động

Đã hoàn thành

Ở đây, chúng tôi thảo luận về một số cách bạn có thể tự động hóa kiểm tra bảo mật trong một kho lưu trữ có sẵn cho người quản trị kho GitHub.

Phát hiện và khắc phục sự phụ thuộc lỗi thời với các lỗ hổng bảo mật

Hầu như mọi dự án ngày nay đều phụ thuộc vào các gói bên ngoài. Mặc dù các thành phần này có thể mang lại những lợi ích đáng kể về năng suất, nhưng chúng có thể gây ra các rủi ro khác về bảo mật. Việc luôn cập nhật các gói này và trạng thái dễ bị tổn thương của chúng có thể tốn thời gian, đặc biệt là khi mỗi phụ thuộc có thể có quan hệ phụ thuộc riêng có thể trở nên khó theo dõi và duy trì. May mắn là GitHub cung cấp các tính năng giúp giảm khối lượng công việc này.

Đồ thị phụ thuộc kho chứa

Một tính năng mặc định mỗi kho chứa bao gồm các đồ thị phụ thuộc. GitHub quét các bản kê gói phổ biến, chẳng hạn như package.json, requirements.txt, và các tệp khác. Những đồ thị này cho phép chủ sở hữu dự án theo dõi đệ quy tất cả các phụ thuộc mà dự án của họ dựa vào.

ảnh chụp màn hình biểu đồ phụ thuộc GitHub.

Để biết danh sách các bản kê phụ thuộc được hỗ trợ, hãy giới thiệu về biểu đồ phụ thuộc.

Cảnh báo Phụ thuộc

Ngay cả với một đồ thị phụ thuộc trực quan, nó vẫn có thể được áp đảo để ở trên đầu trang của những cân nhắc bảo mật mới nhất cho mỗi phụ thuộc một dự án có. Để giảm chi phí này, GitHub sẽ cung cấp báo Dependabot để đồ thị phụ thuộc giúp bạn. Sau đó nó tham chiếu chéo các phiên bản mục tiêu với các phiên bản trên danh sách lỗ hổng đã biết. Khi phát hiện rủi ro, dự án sẽ được cảnh báo. Đầu vào cho phân tích đến từ tư vấn bảo mật GitHub.

ảnh chụp màn hình cảnh báo Dependabot đối với các quan hệ phụ thuộc dễ bị tấn công.

Cập nhật phụ thuộc tự động với Dependabot

Một cảnh báo phụ thuộc có thể dẫn đến một đóng góp dự án chạm vào tham chiếu gói vi phạm phiên bản được đề xuất và tạo ra một yêu cầu kéo xác nhận tính hợp lệ. Nó sẽ không được tuyệt vời nếu có một cách để tự động hóa nỗ lực này? Vâng, tin tốt! Dependabot thực hiện điều đó. Nó quét các cảnh báo phụ thuộc và tạo ra các yêu cầu kéo để người đóng góp có thể xác thực cập nhật và phối yêu cầu.

Để tìm hiểu thêm về tính linh hoạt của Dependabot, hãy xem cấu hình các bản cập nhật bảo mật Dependabot cho.

Quét mã tự động

Tương tự như cách Dependabot quét kho lưu trữ của bạn để tìm cảnh báo phụ thuộc, bạn có thể sử dụng tính năng quét mã để phân tích và tìm các lỗ hổng bảo mật và lỗi trong mã trong kho GitHub. Quét mã có một số lợi ích. Bạn có thể sử dụng tính năng này để tìm, phân loại và ưu tiên các bản sửa lỗi cho các sự cố hiện có hoặc các lỗ hổng bảo mật tiềm ẩn. Nó cũng hữu ích để giúp ngăn chặn các nhà phát triển giới thiệu bất kỳ vấn đề bảo mật mới vào mã.

Một lợi thế khác để quét mã là khả năng sử dụng CodeQL. CodeQL cho phép bạn truy vấn mã dưới dạng dữ liệu, cho phép bạn tạo truy vấn tùy chỉnh hoặc sử dụng các truy vấn được duy trì bởi cộng đồng nguồn mở. Quét mã cho phép bạn tự do tùy chỉnh và duy trì cách mã trong kho lưu trữ của bạn đang được quét.

Bạn có thể bật các cảnh báo quét mã và dòng công việc trong tab bảo mật của kho gitHub:

ảnh chụp màn hình danh sách các chính sách, tư vấn và cảnh báo với các nối kết đến thông tin khác.

Tìm hiểu thêm về mã và CodeQL.

Quét bí mật

Một tính năng quét tự động khác trong kho GitHub là quét bí mật. Tương tự như các tính năng quét bảo mật trước đó, quét bí mật tìm kiếm bí mật đã biết hoặc thông tin đăng nhập được cam kết trong kho. Quét này được thực hiện để ngăn chặn việc sử dụng hành vi gian lận và bảo vệ tính toàn vẹn của bất kỳ dữ liệu nhạy cảm nào. Theo mặc định, quét bí mật xảy ra trên các kho lưu trữ công cộng và bạn có thể cho phép quét bí mật trên kho lưu trữ riêng tư bởi người quản trị kho lưu trữ hoặc chủ sở hữu tổ chức.

Khi quét bí mật phát hiện một tập hợp các chứng danh, GitHub thông báo cho nhà cung cấp dịch vụ đã ban hành bí mật. Nhà cung cấp dịch vụ xác thực thông tin đăng nhập. Sau đó, nó quyết định xem họ nên thu hồi bí mật, phát hành một bí mật mới hoặc liên hệ trực tiếp với bạn. Hành động này phụ thuộc vào các rủi ro liên quan đến bạn hoặc nhà cung cấp dịch vụ.

Tìm hiểu thêm về quét bí mật cho các kho lưu trữ công cộng và.