Thông qua bài viết [1], thấy được nguy cơ, hậu quả nghiêm trọng có thể dẫn tới từ việc để lộ khóa riêng tương ứng chứng thư số người dùng trong hệ thống PKI. Khi đã để lộ khóa riêng thì chứng thư số sẽ không còn giá trị và có thể bị lợi dụng để thực hiện các tấn công giả mạo người dùng, hệ thống PKI cung cấp cơ chế thu hồi chứng thư số cho người dùng. Hai cơ chế thông báo chứng thư số đã thu hồi tới người dùng là: danh sách CRL và giao thức OCSP.
Đối với hệ thống PKI công cộng: Người dùng sử dụng chứng thư số của các CA tin cậy và phần mềm triển khai chứng thư số là các trình duyệt Web ứng dụng vào trong bảo mật dịch vụ mạng trên nền Web. Bên phát triển dịch vụ Web sẽ cung cấp máy chủ cung cấp danh sách CRL của các CA tin cậy hoặc máy chủ OCSP Responder chứa danh sách CRL này để phục vụ việc kiểm tra từ phía máy người dùng. Các trình Web phổ biến hiện nay không hỗ trợ cập nhật danh sách này tự động mà người dùng thực hiện thủ công. Đối với việc kiểm tra trạng thái chứng thư số với giao thức OCSP thì mặc định các trình Web sẽ không bật chức năng này (Firefox) hoặc thậm chí có trình duyệt Web không hỗ trợ giao thức này (Google Chrome) [3].
Trong quá trình kiểm tra, cập nhật danh sách chứng thư số thu hồi, trình duyệt Web người dùng sẽ thực hiện kết nối tới máy chủ chứa danh sách CRL hoặc máy chủ phản hồi OCSP. Những máy chủ này có địa chỉ công khai, khi đó kẻ tấn công hoàn toàn có thể ngăn chặn được quá trình cập nhật danh sách chứng thư số của người dùng từ trình duyệt: bằng cách chuyển hướng hoặc không phản hồi các thông điệp yêu cầu từ trình duyệt, bản chất làm trình duyệt tự nhận định rằng máy chủ CRL hay OCSP đang offline. Trình duyệt sau đó sẽ không kiểm tra và tiếp tục sử dụng các chứng thư số đã bị thu hồi như những chứng thư số hợp lệ.
Những điều kiện để kẻ tấn công thực hiện cuộc tấn công ngăn chặn dịch vụ này:
- Kẻ tấn công phải biết thời gian biểu cập nhật danh sách URL của người dùng trong cơ quan, tổ chức để tiến hành chặn bắt, chuyển hướng.
- Kẻ tấn công máy người dùng (máy mục tiêu) trong cùng mạng LAN sẽ dễ dàng ngăn chặn danh sách CRL từ máy chủ CA hoặc kết quả kiểm tra chứng thư số từ máy chủ OCSP gửi tới máy người dùng.
Một trường hợp khác là khi người dùng gửi yêu cầu thu hồi chứng thu số tới máy chủ CRL hoặc OCSP, thì các máy chủ bị tấn công DoS hoặc DDoS và không thể gửi phản hồi lại máy người dùng. Điều kiện xảy ra cuộc tấn công này là kẻ tấn công phải biết lịch thời gian cập nhật CRL hoặc kiểm tra chứng thư số của người dùng để thực hiện DoS hoặc DDoS máy chủ CA hoặc máy chủ OCSP tại thời điểm đó. Trường hợp này sẽ ít xảy ra bởi các tấn công này yêu cầu một số lượng máy rất lớn thực hiện cùng một thời điểm [2].
Hình 1. Tấn công từ chối dịch vụ máy chủ danh sách chứng thư số
Trong hệ thống PKI chuyên dùng: người dùng sử dụng chứng thư số các CA tin cậy và phần mềm triển khai chứng thư số phía người dùng cũng được phát triển bởi các CA này.
Các phần mềm triển khai chứng thư số này chứa danh sách CRL và sẽ cập nhật danh sách CRL theo định kỳ thời hạn ghi trong trường Next Update trong danh sách CRL đã lưu trong cơ sở dữ liệu. Trước khi thực hiện bất kỳ một tác vụ: ký hay mã hóa văn bản đều kiểm tra trạng thái chứng thư số thông qua giao thức OCSP. Việc kiểm tra CRL không thành công hoặc kiểm tra OCSP không thành công, phần mềm triển khai sẽ báo lỗi và không cho thực hiện các bất kỳ tác vụ gì khác.
Hình 2. Danh sách chứng thư số thu hồi CRL
Như vậy, tấn công từ chối dịch vụ chỉ khả thi với các hệ thống PKI công cộng và không khả thi với các hệ thống PKI chuyên dùng. Các tấn công này hiệu quả với hệ thống PKI tự phát triển mã nguồn mở như EJBCA, OpenCA, OpenSSL EasyCA bởi các PKI này hoạt động dựa trên nguyên lý các PKI công cộng, nhưng không có khả năng công bố danh sách CRL vào các máy chủ CRL của nhà phát triển trình duyệt Web. Việc công bố danh sách CRL thủ công bởi các đội ngũ quản trị các PKI này.
Tấn công xen giữa cũng dựa trên giả thiết mạnh là bị lộ khóa riêng của người dùng (với những nguyên nhân xem trong [1]) và với chính sách kiểm tra trạng thái nghiêm ngặt của các hệ thống PKI chuyên dùng thì tấn công này cũng không hiệu quả với các hệ thống này. Vì vậy phần này chỉ trình bày tấn công xen giữa với hệ thống PKI công cộng.
Trường hợp máy chủ dịch vụ và máy chủ CA thuộc cùng bên thứ ba cung cấp có nghĩa người dùng sử dụng một chứng thư số cho cả tác vụ: sử dụng dịch vụ và kiểm tra danh sách chứng thư số thu hồi. Kẻ tấn công biết được khóa riêng chứng thu số người dùng, sẽ thực hiện giả mạo người dùng kết nối tới máy chủ CA. Người dùng khi yêu cầu cập nhật, kiểm tra danh sách chứng thư số thu hồi đều không nhận được phản hồi từ máy chủ [4].
Hình 3. Tấn công xen giữa
Điều kiện thực hiện thành công tấn công này: diễn ra khi máy chủ dịch vụ thực hiện cài đặt tích hợp giao thức OCSP trên cùng thiết bị. Khi này, chứng thư số bị lộ khóa riêng người dùng sẽ dùng xác thực với cả máy chủ OCSP và máy chủ dịch vụ.
Những hệ thống PKI lớn được cấp phép bởi các tổ chức, cơ quan uy tín sẽ rất ít bị tấn công bởi dùng các khóa công khai RSA có độ dài khóa lớn (>2048 bit) hoặc các khóa công khai trên hệ mật Elliptic. Thông thường các PKI này sẽ hỗ trợ máy chủ OCSP riêng rẽ có khả năng chống DoS, DDoS tốt và cài đặt đầy đủ tính năng OCSP Stapling [3]. Để sử dụng hệ thống PKI này thì chi phí trả sẽ lớn hơn so với các giải pháp PKI tự phát triển.
Tuy nhiên, đối với các tổ chức, doanh nghiệp nhỏ thiết lập hệ thống PKI của riêng mình thông qua đội ngũ quản trị riêng hoặc thuê bên thứ ba khác, thì nguy cơ các tấn công trên là rất cao. Bởi đội ngũ quản trị hoặc các bên thứ ba cung cấp PKI thường hay thiết lập các thông số PKI mặc định: như PKI mã nguồn mở có độ dài khóa 1024 bit (thậm chí vẫn hỗ trợ 512 bit).
Nếu một trang web HTTPS (hoặc một máy chủ dịch vụ khác) được rất nhiều khách truy cập, thì máy chủ truy vấn OCSP của CA sẽ phải xử lý tất cả các yêu cầu OCSP được thực hiện bởi trình duyệt của từng máy khách truy cập.
OCSP Stapling là một tùy chọn khi cài đặt máy chủ OCSP, cấu hình mặc định sẽ không được bật lên. Khi máy chủ web được cấu hình OCSP stapling hoàn chỉnh, đầu tiên máy chủ sẽ thực hiện truy vấn OCSP đến máy chủ OCSP của CA và lưu trữ kết quả trên bộ nhớ đệm của máy chủ web. Máy chủ web sẽ tự động thực hiện lại quá trình truy vấn OCSP và cập nhật kết quả này sau một khoảng thời gian nhất định. Kết quả truy vấn OCSP này sẽ được đính kèm trong quá trình thực hiện TLS Handshake giữa trình duyệt và máy chủ web thông qua thuộc tính mở rộng Certificate Status Request. Từ đó trình duyệt có thể sử dụng ngay kết quả kiểm tra tình trạng hợp lệ của chứng thư số TLS mà không cần phải thực hiện truy vấn đến máy chủ OCSP của CA [4].
Hình 4. Cơ chế OCSP Stapling
Việc bật OCSP Stapling chống được tấn công DoS hoặc DDoS bởi các lý do:
- Kẻ tấn công không biết địa chỉ máy chủ OCSP để tấn công (địa chỉ này không đình kèm theo chứng thư số người dùng).
- Thiết lập OCSP Stapling, khi đó người dùng gửi chứng thư số của mình tới máy chủ dịch vụ kẻ tấn công coi đó là phiên liên lạc bình thường và không biết lúc nào để thực hiện DoS hoặc DDoS được. Vì để thực hiện các cuộc tấn công này yêu cầu nhiều thiết bị hoạt động tấn công cùng một thời điểm.
Người dùng có thể tự sinh cặp khóa công khai dựa trên mã nguồn tự phát triển, mã nguồn mở hoặc sinh từ thiết bị phần cứng an toàn chống sao chép (PKI Token, HSM) được cung cấp bởi bên thứ ba tin cậy.
Quá trình xin cấp chứng thư số trên hệ thống PKI người dùng chỉ cần cung cấp khóa công khai. Điều này, sẽ hạn chế nguy cơ mất khóa riêng và đảm bảo tính riêng tư về khóa của người dùng.
Khi bị mất hoặc lộ lọt khóa riêng, người dùng cần thông tin ngay lập tức về các CA để hủy bỏ chứng thư. Điều này sẽ hạn chế các tấn công giả mạo người dùng.
Đối với các quản trị hệ thống PKI mã nguồn mở cần cấu hình hệ thống PKI dựa trên các tiêu chuẩn an toàn về các thuật toán hiện hành, không nên để cấu hình mặc định.
Ngoài ra, có thể triển khai thêm các biện pháp phòng chống tấn công DoS, DDoS trong hệ thống như: giải pháp cân bằng tải, tường lửa hoặc hệ thống PKI dự phòng.
KẾT LUẬN
Qua bài viết, thấy rằng việc tấn công quá trình thu hồi chứng thư số trong hạ tầng cơ sở khóa công khai hiện nay là khả thi với các hệ thống PKI tự phát triển (bởi các phần mềm mã nguồn mở) thường xảy ra với các hệ thống PKI công cộng lớn nhưng với nhiều điều kiện tấn công hà khắc đi kèm. Hậu quả các cuộc tấn công này dẫn tới là nghiêm trọng, gây thiệt hại lớn. Yêu cầu đặt ra là quản trị viên CA cần có sự hiểu biết thấu đáo về các tấn công này để triển khai PKI được hiệu quả và có các biện pháp phòng tránh. Với người dùng, nên tự sinh cặp khóa công khai khi xin cấp chứng thư, thông tin ngay cho bên CA khi lộ khóa riêng và nên thường xuyên cập nhật các tham số an toàn cho trình duyệt Web.
TÀI LIỆU THAM KHẢO 1. Đỗ Quang Trung, Nguyễn Văn Nghị, Đào Thị Thu Thủy, Một số nguyên nhân gây rò rỉ khóa riêng chứng thư số, Tạp chí ATTT, số 4(056) 2020. 2. Scott Helme, HTTPS Certificate Revocation is broken, and it’s time for some new tools, arstechnica.com, 2017. 3. Alexey Samoshkin, SSL certificate revocation and how it is broken in practice, 2018. 4. https://medium.com/@alexeysamoshkin/howssl-certificate-revocation-is-broken-in-practiceaf3b63b9cb3 5. Alexey Busygin, Legacy of Heartbleed: MITM and Revoked Certificates, 2018. |
TS. Đỗ Quang Trung, TS. Nguyễn Văn Nghị, ThS. Nguyễn Văn Duẩn (Học viện Kỹ thuật mật mã)
09:00 | 06/01/2021
08:00 | 24/05/2022
14:00 | 24/02/2022
08:00 | 06/07/2020
14:00 | 17/03/2023
15:00 | 19/07/2021
10:00 | 18/10/2024
GitLab đã phát hành bản cập nhật bảo mật cho Community Edition (CE) và Enterprise Edition (EE) để giải quyết 08 lỗ hổng bảo mật, bao gồm một lỗ hổng nghiêm trọng có thể cho phép thực thi các CI/CD Pipeline tùy ý.
12:00 | 15/10/2024
Một làn sóng hành động thực thi pháp luật quốc tế mới với sự tham gia của 12 quốc gia đã bắt giữ 4 thành viên và phá hủy 9 máy chủ có liên quan đến hoạt động tống tiền LockBit (hay còn gọi là Bitwise Spider), đánh dấu đợt tấn công mới nhất nhằm vào băng nhóm tội phạm mạng từng có động cơ tài chính mạnh mẽ.
16:00 | 19/09/2024
Hệ thống định vị vệ tinh toàn cầu (Global Navigation Satellite System - GNSS) là hệ thống xác định vị trí dựa trên vị trí của các vệ tinh nhân tạo, do Bộ Quốc phòng Hoa Kỳ thiết kế, xây dựng, vận hành và quản lý. Hệ thống GNSS ban đầu được dùng trong mục đích quân sự nhưng sau những năm 1980, Chính phủ Hoa Kỳ cho phép sử dụng GNSS vào mục đích dân sự ở phạm vi toàn cầu. Chính vì việc mở rộng phạm vi sử dụng nên đã dẫn đến các nguy cơ mất an toàn thông tin (ATTT) cho các hệ thống này. Bài báo sau đây sẽ giới thiệu các kỹ thuật tấn công mạng vào các hệ thống định vị toàn cầu.
07:00 | 10/09/2024
Trong bối cảnh chuyển đổi số và hội nhập quốc tế ngày càng sâu rộng, Việt Nam đang trở thành mục tiêu hấp dẫn cho các cuộc tấn công chuỗi cung ứng tinh vi. Các doanh nghiệp Việt từ các tổ chức nhỏ đến các tập đoàn lớn đều phải đối mặt với nguy cơ bị tấn công qua những lỗ hổng bảo mật trong hệ thống của đối tác hay nhà cung cấp.
Các chuyên gia phát hiện ra 02 lỗ hổng Zero-day trong camera PTZOptics định danh CVE-2024-8956 và CVE-2024-8957 sau khi Sift - công cụ chuyên phát hiện rủi ro an ninh mạng sử dụng AI tìm ra hoạt động bất thường chưa từng được ghi nhận trước đó trên mạng honeypot của công ty này.
09:00 | 08/11/2024