Một lỗ hổng bảo mật nghiêm trọng trong việc triển khai OAuth của Microsoft đã được phát hiện, cho phép kẻ tấn công bên ngoài có thể truy cập trái phép vào các ứng dụng nội bộ của Microsoft . Lỗ hổng này khai thác các điểm yếu trong cách các ứng dụng đa thuê bao xử lý token xác thực, có khả năng làm lộ dữ liệu và hệ thống nhạy cảm của công ty.
Lỗ hổng tập trung xung quanh Entra ID của Microsoft (trước đây là Azure Active Directory ) và cấu hình ứng dụng đa thuê bao của nó. Khi các ứng dụng được thiết lập để hoạt động trên nhiều tổ chức khác nhau, chúng có thể chấp nhận token xác thực từ người dùng bên ngoài công ty của họ. Tuy nhiên, nhiều ứng dụng nội bộ của Microsoft đã không xác thực đúng cách các token này, tạo ra một khoảng trống bảo mật nguy hiểm.
Các Thành Phần Lỗ Hổng Chính:
- Ứng dụng OAuth đa thuê bao trong Microsoft Entra ID
- Xác thực token không đúng cách (thiếu kiểm tra issuer, tenant, subject)
- Cài đặt đồng ý người dùng mặc định cho phép quyền ứng dụng rộng rãi
- Ứng dụng nội bộ được tiếp xúc với internet công cộng mà không có bảo vệ cấp độ mạng
Phương thức tấn công đơn giản đến ngạc nhiên
Cuộc tấn công hoạt động bằng cách lừa người dùng cấp quyền cho các ứng dụng độc hại có vẻ hợp pháp. Sau khi được cấp quyền, kẻ tấn công có thể sử dụng các token OAuth được chế tạo đặc biệt để truy cập vào các hệ thống nội bộ của Microsoft mà lẽ ra phải bị cấm. Vấn đề cốt lõi là nhiều ứng dụng chỉ kiểm tra xem token có hợp lệ hay không, nhưng không kiểm tra xem nó có đến từ đúng tổ chức hoặc người dùng hay không.
Các cuộc thảo luận cộng đồng cho thấy đây không chỉ là vấn đề của Microsoft . Sự phức tạp của cấu hình OAuth và Entra ID đã tạo ra sự nhầm lẫn rộng rãi trong các nhà phát triển. Nhiều tổ chức vô tình có các lỗ hổng tương tự vì các ứng dụng của họ không xác thực đúng cách các yêu cầu token như nhà phát hành, thuê bao và chủ thể.
Các Thành Phần Bề Mặt Tấn Công:
- Ứng Dụng Doanh Nghiệp Entra ID
- Ứng Dụng Đa Thuê Bao so với Ứng Dụng Thuê Bao Đơn
- Quyền OAuth và Quyền MS Graph
- Quyền Được Ủy Quyền so với Quyền Ứng Dụng
- Các Vector Tấn Công Lừa Đảo Thông Qua Đồng Ý
Chính sách Zero Trust không thể ngăn chặn vi phạm
Sự cố này đã khơi mào cuộc tranh luận về các phương pháp bảo mật hiện đại. Microsoft , giống như nhiều công ty lớn, đã chuyển từ bảo mật mạng truyền thống sang mô hình zero trust nơi mọi kết nối phải được xác thực. Tuy nhiên, phương pháp này đã thất bại trong việc ngăn chặn cuộc tấn công vì chính hệ thống xác thực đã bị xâm phạm.
Một số chuyên gia bảo mật cho rằng các biện pháp phòng thủ mạng truyền thống như VPN có thể đã cung cấp một lớp bảo vệ bổ sung. Các ứng dụng nội bộ được tiếp xúc với internet công cộng đã trở thành mục tiêu dễ dàng một khi lỗ hổng OAuth được phát hiện. Một VPN được cấu hình đúng cách yêu cầu xác thực đa yếu tố có thể đã làm cho các hệ thống này khó tiếp cận hơn nhiều.
Phản hồi Bug Bounty của Microsoft làm thất vọng cộng đồng bảo mật
Có lẽ điều đáng lo ngại nhất là phản hồi của Microsoft đối với nhà nghiên cứu bảo mật đã phát hiện ra những lỗ hổng này. Mặc dù tìm ra cách truy cập vào các máy chủ build nơi Windows được biên dịch và có khả năng làm lộ mã nguồn, nhà nghiên cứu đã không nhận được bất kỳ phần thưởng tài chính nào. Điều này đã thu hút sự chỉ trích gay gắt từ cộng đồng bảo mật, với nhiều người chỉ ra rằng chương trình bug bounty của Microsoft đã trở nên ngày càng keo kiệt.
Chương trình bug bounty của Microsoft chỉ còn là bóng của quá khứ. Họ đã âm thầm loại bỏ rất nhiều phát hiện có tác động cao trong năm 2023.
Việc thiếu phần thưởng làm nản lòng các nhà nghiên cứu bảo mật hợp pháp trong việc báo cáo lỗ hổng cho Microsoft , có khả năng để lại các lỗ hổng quan trọng không được phát hiện cho đến khi các tác nhân độc hại tìm thấy chúng.
Phản hồi bảo mật của Microsoft:
- Các ứng dụng nội bộ đã được vá lỗi nhưng không có bản sửa lỗi nào được triển khai trên toàn hệ thống tenant
- $0 USD tiền thưởng được trả mặc dù đã truy cập được vào các máy chủ build Windows
- Chương trình bug bounty được báo cáo là đã loại bỏ nhiều phát hiện có tác động cao trong năm 2023
Tác động rộng rãi ngoài Microsoft
Trong khi Microsoft đã vá các ứng dụng nội bộ của họ, các vấn đề cấu hình OAuth cơ bản ảnh hưởng đến vô số tổ chức sử dụng Microsoft 365 và Entra ID . Nhiều công ty có cài đặt mặc định cho phép người dùng cấp quyền cho bất kỳ ứng dụng nào, tạo ra các cơ hội tấn công tương tự.
Sự phức tạp kỹ thuật của OAuth và Entra ID khiến các nhà phát triển dễ mắc những sai lầm nguy hiểm. Ngay cả các kỹ sư có kinh nghiệm cũng gặp khó khăn với các mô hình quyền phức tạp và cấu hình đa thuê bao, dẫn đến các khoảng trống bảo mật mà kẻ tấn công có thể khai thác.
Sự cố này làm nổi bật những thách thức đang diễn ra của bảo mật đám mây và tầm quan trọng của việc xác thực token đúng cách trong các hệ thống xác thực hiện đại. Các tổ chức sử dụng dịch vụ nhận dạng của Microsoft nên xem xét lại quyền ứng dụng của họ và cân nhắc hạn chế sự đồng ý của người dùng để ngăn chặn các cuộc tấn công tương tự.
Tham khảo: Consent & Compromise: Abusing Entre OAuth for Fun and Access to Internal Microsoft Applications