SBOM (Danh sách Vật liệu Phần mềm) là gì?
Một Danh sách Vật liệu Phần mềm (SBOM) là một danh sách chi tiết các thành phần cấu thành phần mềm, bao gồm các thư viện bên thứ ba và mã nguồn mở, và phiên bản khung. Nó giống như danh sách các thành phần bên trong ứng dụng.
Bằng cách theo dõi mọi thành phần bên trong ứng dụng, nhóm phát triển có thể nhanh chóng phát hiện khi có các lỗ hổng mới được phát hiện.
Tại sao SBOM quan trọng trong An ninh mạng
Ứng dụng hiện đại được xây dựng bằng cách kết hợp hàng trăm hoặc hàng nghìn phụ thuộc bên thứ ba và thư viện mã nguồn mở để tăng tốc phát triển. Nếu một trong số đó có lỗ hổng, nó sẽ đặt toàn bộ ứng dụng vào rủi ro.
một SBOM giúp nhóm phát triển:
- Xác định lỗ hổng sớm hơn bằng cách lập bản đồ thành phần bị ảnh hưởng
- Cải thiện tuân thủ các tiêu chuẩn như NIST, ISO, hoặc Lệnh Hành pháp 14028 ở Hoa Kỳ
- Tăng cường an ninh chuỗi cung ứng bằng cách đảm bảo tính minh bạch trong thành phần phần mềm
- Xây dựng niềm tin với khách hàng và đối tác bằng cách cho thấy các thành phần nào được bao gồm
Các yếu tố chính của một SBOM
Một SBOM đúng thường bao gồm:
- Tên thành phần (ví dụ:
lodash) - Phiên bản (ví dụ: 4.17.21)
- Thông tin giấy phép (mã nguồn mở hoặc độc quyền)
- Nhà cung cấp (dự án hoặc nhà cung cấp duy trì nó)
- Mối quan hệ (cách các thành phần phụ thuộc lẫn nhau)
Ví dụ trong thực tế: Vụ vi phạm Apache Struts (Equifax, 2017)
Năm 2017, kẻ tấn công đã khai thác lỗ hổng nghiêm trọng trong khung công tác Apache Struts (CVE-2017-5638), được sử dụng trong các ứng dụng web của Equifax (một công ty đa quốc gia của Mỹ chuyên về báo cáo tín dụng tiêu dùng). Bản vá cho lỗ hổng này đã có sẵn, nhưng Equifax đã không áp dụng kịp thời.
Do thiếu khả năng nhìn thấy tất cả các phụ thuộc và thư viện bên trong ứng dụng của họ, lỗi trong thư viện Struts đã không được chú ý, dẫn đến một trong những vụ vi phạm dữ liệu lớn nhất trong lịch sử, hơn 147 triệu dữ liệu cá nhân bị lộ.
Nếu một SBOM đã được áp dụng, Equifax có thể nhanh chóng:
- Xác định rằng các ứng dụng của họ đang sử dụng phiên bản dễ bị tổn thương của Apache Struts
- Ưu tiên vá lỗi ngay khi lỗ hổng được công bố
- Giảm thời gian mà kẻ tấn công có thể khai thác điểm yếu
Trường hợp này cho chúng ta biết vai trò quan trọng của SBOM trong việc giữ an toàn cho các thành phần phần mềm, giúp tổ chức hành động nhanh hơn với các lỗ hổng mới được công bố.