Hiện nay, vấn đề đảm bảo an toàn, giảm thiểu các lỗ hổng bảo mật, ngăn chặn nguy cơ bị chèn mã độc trong các phần mềm, ứng dụng luôn là câu hỏi lớn khi các phần mềm, ứng dụng đóng vai trò không thể thiếu cho mọi hoạt động trong các tổ chức, doanh nghiệp. Đặc biệt là đối với các phần mềm chuyên dụng được sử dụng trong an ninh, quốc phòng, các tổ chức tài chính, tín dụng, thanh toán hay các công ty phát triển phần mềm, ứng dụng mã nguồn mở, hậu quả sẽ không thể đo đếm được nếu không có giải pháp kiểm soát và đảm bảo an ninh bảo mật từng bước ngay từ khi phần mềm được thiết kế, lập trình, test thử nghiệm đến triển khai thực tế.
1. Giới thiệu về giải pháp phân tích đánh giá an ninh bảo mật cho phần mềm, ứng dụng ở mức mã nguồn (source code) – MICRO FOCUS Fortify SCA (Static Code Analyzer)
MICRO FOCUS Fortify Static Code Analyzer (SCA) sử dụng nhiều thuật toán và kỹ thuật nhằm đảm bảo an toàn cho mã nguồn để thực hiện phân tích mã nguồn ứng dụng đối với các điểm yếu an ninh có thể khai thác được, từ đó nhận diện và đưa ra cách khắc phục các điểm yếu.
Fortify SCA xác định và chỉ ra được nguyên nhân gốc rễ của các điểm yếu trong mã nguồn, đánh giá, phân loại các các rủi ro tương ứng với các điểm yếu an ninh và cung cấp hướng dẫn chi tiết cho người lập trình để làm sao có thể khắc phục các điểm yếu này một cách hiệu quả và tốn ít thời gian nhất. MICRO FOCUS Fortify SCA cho phép phát hiện hơn 689 danh mục các điểm yếu, với hơn 22 ngôn ngữ lập trình.
2. Giới thiệu về MICRO FOCUS
MICRO FOCUS là một công ty hàng đầu thế giới chuyên cung cấp các giải pháp phân tích bảo mật cho các sản phẩm công nghệ thông tin và phần mềm được thành lập năm 1976 có trụ sở tại Newbury, Berkshire, Anh. Hiện nay công ty là một phần của OpenText – một công ty công nghệ đến từ Canada sau thương vụ mua lại vào tháng 1 năm 2023.
Giải pháp MICRO FOCUS Fortify – Software Security Testing của công ty đã 10 năm liên tiếp trong nhóm Top Leader Gartner.
MICRO FOCUS Fortify – Software Security Testing: Được hầu hết các tổ chức lớn trên thế giới (Fortune 500) ở các lĩnh vực lựa chọn sử dụng:
Với MICRO FOCUS Fortify, khách hàng có thể:
- Tiến hành phân tích tĩnh để xác định nguyên nhân gốc rễ của các lỗ hổng bảo mật trong mã nguồn.
- Hỗ trợ 1,000,000 API và phát hiện trên 1,032 loại lỗ hổng về bảo mật thông qua 27 ngôn ngữ lập trình.
- Sắp xếp kết quả theo các thứ tự mức độ nghiêm trọng của các nguy cơ.
- Hỗ trợ sửa chữa các lỗ hổng chi tiết trên các dòng code.
- Giúp khách hàng đưa ra các báo cáo tuân thủ các tiêu chuẩn bảo mật như PCI DSS 3.0, ISO, OWASP Top 10…
Các lý do lựa chọn sản phẩm MICRO FOCUS Fortify Static Code Analyzer (SCA)
- Là một trong những sản phẩm đứng đầu trên thị trường, cho phép phát hiện chính xác và hiệu quả nhất các điểm yếu trên mã nguồn của phần mềm.
- Dễ dàng tích hợp vào môi trường của các tổ chức thông qua: Script, plug-ins và các công cụ giao diện làm việc GUI… do đó các lập trình viên có thể dễ dàng sử dụng.
- Cho phép thực hiện kiểm tra và duy trì vấn đề an toàn cho các ứng dụng mà không cần quan tâm đến ngôn ngữ lập trình mà tổ chức đang sử dụng hay các ứng dụng đó do tổ chức phát triển, thuê viết từ bên ngoài, sản phẩm thương mại hay mã nguồn mở.
- Cho phép hỗ trợ nhiều loại ngôn ngữ lập trình, nền tảng khác nhau.
- Cho phép nhận diện các điểm yếu an ninh trong mã nguồn, phân loại, đánh giá theo mức độ quan trọng và cung cấp hướng dẫn chi tiết để khắc phục.
- Cho phép đội ngũ phát triển phần mềm làm việc với bộ phận đảm bảo an ninh trong việc tìm, rà soát và khắc phục các vấn đề an ninh, từ đó giảm thiểu các rủi ro trên phần mềm, thời gian và tiền bạc của tổ chức.
- MICRO FOCUS Fortify SCA có thể cung cấp cho khách hàng dưới dạng sản phẩm triển khai thông thường (On-premise) hoặc dạng dịch vụ (On-demand).
- Cho phép đáp ứng với mọi nhu cầu, phạm vi của tổ chức.
- Cho phép tổ chức chủ động quản lý rủi ro và tuân thủ theo các yêu cầu an ninh cho ứng dụng.
Các tính năng chính của giải pháp
- Cho phép thực hiện dò quét mã nguồn (Source code scanning) và xác định gốc rễ nguyên nhân các điểm yếu an ninh của phần mềm.
- Cho phép phân tích nhiều ngôn ngữ lập trình bao gồm cả Java, Net, C/C++, Objective-C, Android, PHP, COBOL và SAP.
- Cho phép phát hiện 680 loại điểm yếu (vulnerability categories) và 22 ngôn ngữ phát triển phần mềm.
- Cho phép phát hiện các điểm yếu an ninh và các điểm yếu này được chia thành các danh mục khác nhau đối với mỗi ngôn ngữ lập trình. Cung cấp tài liệu hoặc link trên website của hãng mô tả chi tiết về danh mục các điểm yếu này.
- Cho phép hiển thị kết quả dò quét trên giao diện tổng hợp ở dạng biểu đồ tóm tắt. Đồng thời cho phép người quản trị thực hiện phân tích sâu (drill down) thông tin chi tiết ngay trên biểu đồ.
- Cho phép hiển thị các vấn đề sau khi dò quét theo các nhóm như: Critical, High, Medium, Low.
- Cho phép đánh giá và gán giá trị kiểm tra (Assign auditing values) đối với một vấn đề hoặc một nhóm các vấn đề sau khi phân tích kết quả dò quét. Ví dụ: sau khi dò quét và phát hiện ra 1 vấn đề trong phần mềm thì người thực hiện đánh giá/người lập trình sau khi kiểm tra có thể đưa ra đánh giá và gán giá trị cho vấn đề đó, ví dụ: xem đó là một vấn đề thực sự hay không.
- Cho phép bổ sung ý kiến (Comment) cho các vấn đề đã tìm ra và cho chính các đánh giá của người thực hiện.
- Cho phép đính kèm chụp màn hình hoặc ảnh về vấn đề tìm ra. Hỗ trợ các định dạng ảnh phổ biến như GIF, JPG, PNG.
- Cho phép nhận diện toàn bộ các tính năng trong mã nguồn từ đó xác định các tính năng này nằm ở đâu trong mã nguồn.
- Cho phép hợp nhất kết quả phân tích của các lần dò quét để xác định vấn đề nào mới xuất hiện, vấn đề nào đã được loại bỏ và những vấn đề nào đều được tìm thấy trong các lần dò quét.
- Cung cấp giải thích về điểm yếu và khuyến nghị khắc phục cho người lập trình, bao gồm cả thông tin chi tiết về dòng code.
- Cho phép nhiều Auditor có thể làm việc trên một kết quả dò quét đồng thời.
- Giải pháp phải có khả năng tích hợp với các môi trường phát triển tích hợp (IDE) như Eclipse, Visual Studio, Jdeveloper, IntelliJ để thực hiện phân tích mã nguồn.
- Cung cấp sẵn các mẫu báo cáo kiểm tra khả năng tuân thủ theo một số tiêu chuẩn như: PCI DSS Compliance (Application Security Requirements), OWASP Top 10, OWASP Mobile Top 10, FISMA Compliance: FIPS 200, DISA STIG, CWE/SANS Top 25
- Cho phép tạo báo cáo theo các định dạng PDF, HTML, DOC.
- Cho phép cập nhật phiên bản phần mềm (manually) theo dạng thủ công hoặc tự động (Automatically).
Mô hình triển khai của giải pháp
Mô hình triển giải pháp đánh giá an ninh cho ứng dụng ở mức mã nguồn được triển khai từ đơn giản cho đến phức tạp tùy theo mô hình và mức độ trưởng thành của mỗi mô hình. Phần mềm Fortify SCA được triển khai trên 3rd server, yêu cầu tối thiểu 2 máy chủ: 01 máy chủ đóng vai trò Scan Server, 01 máy chủ đóng vai trò quản trị tập trung SSC.
Mô hình triển khai Fortify SCA trong mô hình trưởng thành như hình minh họa và mô tả sau:
- 01 máy chủ cài đặt thành phần Fortify SCA làm nhiệm vụ Translation mã nguồn. Thành phần này có thể triển khai tích hợp trên Build server của khách hàng.
- 01 máy chủ triển khai thành phần Fortify SCA Scanning làm nhiệm vụ quét, phát hiện các điểm yếu an ninh.
- 01 máy chủ triển khai thành phần quản trị tập trung SSC.
- 01 máy chủ cài đặt thành phần Database cho SSC.
- Phần Fortify IDE-plugin Remidiation được triển khai ngay trên các máy tính của lập trình viên.
Mô hình về quy trình hoạt động
Quy trình hoạt động của giải pháp như sau:
- Các lập trình viên sau khi hoàn thành phần coding sẽ upload source code lên SCA (Stactic Code Analyzer) hoặc cài đặt SCA lên các ứng dụng lập trình của mình để quét trực tiếp trên ứng dụng.
- SCA sẽ thực hiện việc dò quét lỗ hổng theo toàn bộ các source code của ứng dụng được upload lên, quá trình quét lỗ hổng hoàn toàn được tự động hóa bởi engine của MICRO FOCUS Fortify SCA hỗ trợ 23 ngôn ngữ lập trình, 836,000 API với các “analysis rule” đề dò quét các lỗ hổng bảo mật.
- Sau khi hoàn thành quá trình dò quét lỗ hổng SCA sẽ gửi kết quả về thành phần SSC (Software Security Center) để đưa ra các Report giúp quản lý và đánh giá các lỗ hổng bảo mật của ứng dụng đang phát triển, tại đây các Auditor, trưởng nhóm hay CISO đọc các kết quả Report sau đó đệ trình các vấn đề về an ninh đến bộ Bug Tracker để phân tích Bug, các lập trình viên sẽ dựa vào các kết quả Bug này để thực hiện vá lỗi.
- Quy trình liên tục được thực hiện cho đến khi ứng dụng đảm bảo được các yêu tố đánh giá an toàn dựa theo các chuẩn mà doanh nghiệp thực hiện.
Lợi ích chính của giải pháp
- Đảm bảo phần mềm của khách hàng là đáng tin cậy, sử dụng công nghệ phân tích khác nhau để xác định các lỗ hổng nhiều hơn bất kỳ phương pháp phát hiện khác, giúp cải thiện tính chính xác của các kết quả.
- Giải quyết các vấn đề nghiêm trọng nhất của khách hàng đầu tiên, giúp đội an ninh bảo mật và phát triển ứng dụng biết được các lỗ hổng ở đâu để giải quyết.
- Giảm trừ chi phí cho việc phát hiện và sửa chữa các lỗ hổng ứng dụng, giúp khách hàng xác định các lỗ hổng trong suốt quá trình phát triển ứng dụng.
- Nâng cao năng suất làm việc và trao đổi giữa đội an ninh bảo mật và đội phát triển ứng dụng.
- Giảm thiểu các mối nguy cơ với các kết quả liên kết với nhau.
- Cải thiện các quy trình giúp quá trình đánh giá an ninh bảo mật hiệu quả hơn.
Công ty chúng tôi luôn luôn mong muốn được trở thành đối tác tin cậy và là nhà cung cấp thiết bị, giải pháp hàng đầu cho sự thành thành công của Quý Khách hàng. Mọi thông tin chi tiết Quý Khách vui lòng liên hệ:
Công ty Cổ phần Công nghệ MITAS Hà Nội
Địa chỉ: Tầng 5, tòa nhà C’Land, Số 81 Lê Đức Thọ, Nam Từ Liêm, Hà Nội
Web: https://mitas.vn | ĐT: (+84) 243 8585 111 | Email: sales@mitas.vn
Sự ủng hộ tin yêu của Quý Khách hàng là động lực và tài sản vô giá đối với tập thể công ty chúng tôi. Chúng tôi xin trân trọng cảm ơn./.