Ứng dụng Microsoft 365 trên Android cho phép mọi ứng dụng đánh cắp Token tài khoản thông qua Flag gỡ lỗi còn sót lại

Một flag phát triển bị bỏ quên trong các bản phát hành chính thức của một số ứng dụng Microsoft 365 trên Android đã vô hiệu hóa quá trình kiểm tra giới hạn chia sẻ token tài khoản cho các ứng dụng Microsoft tin cậy. Bất kỳ ứng dụng nào khác trên cùng một điện thoại đều có thể yêu cầu và lấy được token của người dùng đã đăng nhập, từ đó đọc email, mở tệp, xem lịch và gửi tin nhắn dưới danh nghĩa người dùng đó mà không cần mật khẩu, màn hình đăng nhập hay thông báo cấp quyền.
\n
\n \"Microsoft\n
\n\n

Một flag (cờ) phát triển bị bỏ quên trong các bản phát hành chính thức của một số ứng dụng Microsoft 365 trên Android đã vô hiệu hóa quá trình kiểm tra giới hạn chia sẻ token tài khoản cho các ứng dụng Microsoft tin cậy.

\n\n

Bất kỳ ứng dụng nào khác trên cùng một chiếc điện thoại đều có thể yêu cầu và lấy được token của người dùng đã đăng nhập, từ đó đọc email, mở tệp, duyệt lịch và gửi tin nhắn dưới danh nghĩa người dùng đó. Không cần mật khẩu, không màn hình đăng nhập, và không có thông báo yêu cầu quyền truy cập.

\n\n

Microsoft đã tung ra bản vá, và nếu bạn đang sử dụng các ứng dụng Microsoft 365 trên Android, hãy cập nhật chúng ngay lập tức.

\n\n

Chi tiết về lỗ hổng FlagLeft

\n\n

Lỗ hổng này, được Enclave đặt tên là FlagLeft, đã ảnh hưởng đến Word, PowerPoint, Excel, Microsoft 365 Copilot, Microsoft Loop và OneNote - sáu ứng dụng với hàng tỷ lượt tải xuống. Teams được phát hành với flag tương tự được đặt thành false nên không bị ảnh hưởng, điều mà Enclave nhận định là một sự nhầm lẫn trong quá trình phát triển hơn là một thiết kế có chủ đích.

\n\n

Các ứng dụng Microsoft 365 vốn chia sẻ quyền truy cập tài khoản một cách có chủ đích, vì vậy khi bạn đăng nhập vào Word, bạn sẽ không phải đăng nhập lại cho PowerPoint. Quá trình chuyển giao này đáng lẽ phải xác minh bên yêu cầu và từ chối bất kỳ ứng dụng nào không phải là ứng dụng Microsoft đáng tin cậy.

\n\n

Yanir Tsarimi và Ofek Levin của Enclave đã phát hiện ra rằng việc kiểm tra này bị bỏ qua do một dòng mã duy nhất còn sót lại trong mã nguồn chính thức: setIsDebugMode(true). Lỗi này nằm trong một SDK dùng chung của Microsoft, do đó lỗ hổng tương tự đã xuất hiện trên hàng loạt ứng dụng.

\n\n

Rủi ro từ việc rò rỉ FOCI tokens

\n\n

Các token được bàn giao là FOCI tokens, loại refresh tokens gia đình mà Microsoft sử dụng để thực hiện single sign-on (đăng nhập một lần) trên các ứng dụng của mình. Chúng có thể được làm mới và tái sử dụng trong thời gian dài, và lưu lượng truy cập kết quả trông hoàn toàn bình thường trong nhật ký hệ thống (logs). Về phía người dùng, sẽ không có dấu hiệu gì bất thường xảy ra.

\n\n
\n \n
\n\n

Enclave đã xây dựng một bản thực nghiệm (proof of concept) hoạt động thành công, thực hiện rút token thông qua một ứng dụng bên thứ ba chưa được xác minh và sử dụng chúng để đọc email. Microsoft phân loại đây là các lỗ hổng local spoofing; nói một cách đơn giản, kẻ tấn công chỉ cần một ứng dụng độc hại đã hiện diện sẵn trên thiết bị.

\n\n

Các mã CVE và bản vá được phát hành

\n\n

Microsoft đã công bố bốn mã CVE vào ngày 12 tháng 5, tất cả đều được phân loại là spoofing thuộc nhóm kiểm soát truy cập không đúng cách (CWE-284):

\n \n\n

Enclave cũng đã báo cáo lỗ hổng tương tự trong Loop và OneNote, nhưng cả hai đều không nhận được mã CVE riêng biệt trong đợt tháng 5. NVD liệt kê bản dựng Word cho Android đã được vá là 16.0.19822.20190, với các phiên bản cũ hơn bị ảnh hưởng. Các ứng dụng khác đã được khắc phục thông qua cùng các bản cập nhật trên Google Play.

\n\n

Trong bản phát hành Patch Tuesday tháng 5 của Microsoft, không có thông tin nào cho thấy lỗ hổng này đã bị khai thác rộng rãi hoặc công khai trước đó, và không có bằng chứng công khai nào về việc lỗ hổng bị lợi dụng trước khi có bản vá.

\n\n

Khuyến nghị và hành động cần thiết

\n\n

Người dùng nên làm gì? Hãy cập nhật Word, PowerPoint, Excel, Microsoft 365 Copilot, Loop và OneNote từ Google Play. Các đội ngũ bảo mật quản lý đội ngũ thiết bị Android nên đẩy các bản cập nhật thông qua MDM và xác nhận các thiết bị không còn sử dụng các bản dựng cũ hơn 16.0.19822.20190.

\n\n
\n Bản vá đã lấp đầy lỗ hổng, nhưng nó không có tác dụng hồi tố để vô hiệu hóa các token mà kẻ tấn công có thể đã nắm giữ. FOCI refresh tokens có thời hạn tồn tại lâu hơn cả một bản cập nhật ứng dụng, vì vậy đối với các tài khoản trên thiết bị đã chạy bản dựng cũ cùng với các ứng dụng không đáng tin cậy, người dùng nên thực hiện thu hồi refresh tokens và yêu cầu đăng nhập mới.\n
\n