Tìm các gói nguồn mở dễ bị tổn thương trong mã của bạn và nhận hướng dẫn khắc phục để bạn có thể nhanh chóng giảm rủi ro nguồn mở của mình.
SCA cho phép bạn tránh các sự cố bảo mật trong mã nguồn mở, giúp các nhà phát triển của bạn tự do mở rộng quy mô nỗ lực sản xuất của họ.
Chỉ riêng GitHub đã lưu trữ hơn 100 triệu kho lưu trữ. Ngừng theo dõi thủ công các phụ thuộc nguồn mở của bạn bằng bảng tính và bắt đầu theo dõi chúng tự động.
Với SCA, bạn có thể xác định mã của bên thứ ba mà bạn đang sử dụng, mã đó tồn tại ở đâu trong bối cảnh phát triển của bạn và liệu mã đó có dễ bị tổn thương hay an toàn với hóa đơn nguyên liệu phần mềm tự động (SBOM) hay không.
Bất chấp niềm tin phổ biến, nguồn mở không nhất thiết phải miễn phí. Các vi phạm cấp phép bị cáo buộc có thể khiến các doanh nghiệp trở thành mục tiêu của các vụ kiện lớn.
SCA giúp bạn tránh những rủi ro này bằng cách xác định giấy phép nào áp dụng cho mã nguồn mở mà bạn đang sử dụng trong khi đảm bảo ghi công của bạn là chính xác.
Checkmarx SCA sử dụng các phương pháp sau để xác định gói bên thứ ba trong dự án của bạn:
Checkmarx SCA xác định tất cả các tệp trong dự án của bạn có thể là một phần của gói bên thứ ba và phân tích chúng để xác định gói nào đang được sử dụng. Điều này được thực hiện bằng cách so sánh hàm băm và siêu dữ liệu của các tệp có liên quan (ví dụ: tệp .jar cho Java, tệp .js cho JS) trong dự án được quét với hàm băm và siêu dữ liệu của các gói được lập danh mục trong cơ sở dữ liệu. Phân tích tệp được thực hiện cho các ngôn ngữ/khung được hỗ trợ, sử dụng các loại tệp tương ứng được chỉ định.
Checkmarx SCA sử dụng các trình quản lý gói để giải quyết các phụ thuộc đối với các kho lưu trữ công khai hoặc do khách hàng xác định và trích xuất các cây phụ thuộc. Giải pháp phụ thuộc được thực hiện bằng cách sử dụng các trình quản lý gói được hỗ trợ và các tệp kê khai tương ứng được chỉ định.
Manufacturer/ Nhà sản xuất | Checkmarx |
---|---|
Header / Localization/ Khu vực kích hoạt | Toàn cầu |
Category/ Danh mục sản phẩm | Phần mềm bảo mật |
Part Number (P/N)/ Mã sản phẩm | - |
Collections/ Dòng sản phẩm | - |
Packaged Quantity/ Số lượng đóng gói | 1 cho đến nhiều, theo yêu cầu đặt hàng |
Software / Version/ Phiên bản | Mới nhất |
Language/ Ngôn ngữ | English/ đa ngôn ngữ |
Distribution Media/ Đóng gói | - |
Operating System/ Platform/ Nền tảng sử dụng | - |
Software / License Type/ Loại giấy phép | New/ Renew/ Upgrade/ Extend/ Maintenance & Support |
Length of term/ Thời hạn bản quyền | Thuê bao |
License management/ Quản lý bản quyền | - |
Customer secition/ Đối tượng khách hàng | Doanh nghiệp |
Advanced version/ Phiên bản cao cấp hơn | - |
Comparison/ So sánh sản phẩm | Xem mô tả so sánh hoặc tài liệu đính kèm |
Service & Support Basic/ Dịch vụ và hỗ trợ cơ bản | - |
Service & Support Advance/ Dịch vụ và hỗ trợ nâng cao | Tư vấn hệ thống/ Triển khai cài đặt/ Hỗ trợ 1 năm/ Đào tạo sử dụng |
“Node Locked” có nghĩa là Phần mềm được cấp phép để cài đặt, chạy và sử dụng trên một máy tính.
"Named User" có nghĩa là giấy phép được gắn với một người dùng được đặt tên cụ thể để giấy phép chỉ có thể được sử dụng bởi người dùng được đặt tên đó.
Giấy phép “Project Based” cho phép quét một dự án có tên duy nhất trong thời hạn của giấy phép, trong đó thuật ngữ “Project” được định nghĩa là một cơ sở mã duy nhất được duy trì theo thời gian và được sử dụng để xây dựng một ứng dụng hoặc mô-đun phần mềm có tên cụ thể.
“Integration License” có nghĩa là phần tích hợp đã mua có thể được sử dụng trong thời hạn của bất kỳ giấy phép Phần mềm đang hoạt động nào mà Khách hàng đã mua.
“Concurrent Engine Unit” có nghĩa là số lần quét có thể được thực hiện song song bằng Phần mềm tại bất kỳ thời điểm nào.
Người dùng: (i) sử dụng một trong các giao diện người dùng của Phần mềm (nghĩa là thông qua giao diện người dùng, plugin IDE, v.v.) hoặc (ii) sử dụng đầu ra của các lần quét (thông qua API, hệ thống bán vé, báo cáo PDF, hoặc bất kỳ hình thức nào khác không yêu cầu quyền truy cập trực tiếp vào Phần mềm) nhằm mục đích theo dõi, giải quyết hoặc khắc phục các lỗ hổng do Phần mềm phát hiện, phải được cung cấp dưới dạng Người dùng được đặt tên.
Khách hàng không được: (1) cung cấp quyền truy cập vào Phần mềm cho bất kỳ cá nhân nào không có Giấy phép Người dùng Được đặt tên hợp lệ; hoặc (2) phân phối đầu ra do Phần mềm tạo ra vi phạm các hạn chế của Người dùng được đặt tên nêu trên; tuy nhiên, việc xem xét tóm tắt báo cáo: (a) bởi nhân viên quản lý của Khách hàng hoặc (b) vì mục đích kiểm tra, sẽ không được coi là sử dụng giấy phép Người dùng được đặt tên khi những người dùng đó không truy cập Phần mềm hoặc sử dụng tóm tắt báo cáo để khắc phục các lỗ hổng được phát hiện bởi Phần mềm.
Khách hàng có thể chuyển nhượng giấy phép Người dùng được đặt tên khi Người dùng được đặt tên hiện có từ chức, bị chấm dứt hoặc vĩnh viễn không còn yêu cầu quyền truy cập vào Phần mềm. Việc chuyển giao đó được thực hiện khi Khách hàng nhanh chóng thu hồi thông tin đăng nhập của cá nhân không còn là Người dùng được đặt tên được ủy quyền và xác thực hợp lệ cá nhân là Người dùng được đặt tên được ủy quyền thay thế.
Khách hàng có thể chuyển giấy phép phần mềm Node Lock sang một máy khác với số lần hợp lý bằng cách: (a) gửi yêu cầu chuyển giấy phép bằng văn bản cho Bên cấp phép; (b) lấy khóa cấp phép mới (HID) từ Bên cấp phép, khóa này được yêu cầu để kích hoạt phần mềm trên máy mới; và (c) nhanh chóng xóa phần mềm đã cài đặt trước đó khi chuyển phần mềm sang máy mới.
Bên cấp phép bảo lưu quyền hạn chế chuyển nhượng giấy phép nếu hoạt động đó quá mức hoặc cấu thành sự lạm dụng, như được xác định bởi Bên cấp phép theo quyết định hợp lý của mình.
Java, NodeJS, .NET, Python, PHP, iOS, Go, Ruby, C++, Unity
Checkmarx SCA có khả năng quét Dockerfile và hình ảnh container miễn là chúng được lưu trữ trong các registry được hỗ trợ và được sử dụng trong các hệ sinh thái được hỗ trợ.
Các lần quét container chạy qua SCA Resolver hỗ trợ quét hình ảnh từ bất kỳ registry nào mà bạn có thể chạy lệnh docker pull, ví dụ: DockerHub, Amazon Elastic Container Registry (ECR), Google Container Registry (GCR), Quay, JFrog Container Registry (JCR) v.v.
Debian (dpkg), Alpine (apk), C (conan), C++ (conan), Dotnet (deps.json), Go (go.mod, Go binaries), Java (jar, ear, war, par, sar, native-image), JavaScript (npm, yarn), PHP (composer), Python (wheel, egg, poetry, requirements.txt), Red Hat (rpm), Ruby (gem)