Microsoft 365 Copilot bị khai thác thông qua sơ đồ Mermaid, cho phép hacker rút dữ liệu bí mật

VNZ-NEWS
Một nhà nghiên cứu bảo mật đã phát hiện chuỗi lỗ hổng kết hợp indirect prompt injection + khả năng render Mermaid trong M365 Copilot để rút dữ liệu nội bộ (email…) ra ngoài.

Copilot1.jpg


Kỹ thuật hacker sử dụng ở đây là gài lệnh ẩn trong file, dặn Copilot tóm tắt. Copilot chạy công cụ lấy email, mã hóa ra hex, nhúng vào một sơ đồ Mermaid giả nút “Login” với hyperlink chứa dữ liệu. Khi người dùng click, dữ liệu gửi về server kẻ tấn công.

Vấn đề này rất nghiệm trọng , Copilot có quyền truy cập rất nhiều dữ liệu nội bộ, từ email đến SharePoint và OneDrive. Nếu bị lạm dụng, phạm vi rò rỉ có thể rất lớn.

Thêm nữa, prompt injection hiện chưa có giải pháp triệt để. LLM vẫn rất dễ bị “dẫn dắt” bởi các chỉ dẫn khéo léo ẩn trong nội dung. Việc phân biệt giữa “nội dung” và “mệnh lệnh” là bài toán chưa được giải xong.

Khi có cả ba yếu tố:
  • LLM dễ nghe lời
  • Kênh rút dữ liệu (hyperlink, sơ đồ)
  • Hành vi bấm của người dùng
Ta có điều mà cộng đồng gọi là “Lethal Trifecta”.
Vì đây không phải lừa người dùng nhập dữ liệu. AI tự đi lấy dữ liệu theo lệnh bị giấu trong tài liệu.

Tức là:
  • Không cần trick người dùng.
  • Không cần bypass bảo mật nội bộ.
  • AI tự làm giúp hacker.
Nghiêm trọng ở chỗ:

Copilot được gắn với email, SharePoint, OneDrive, Teams, nghĩa là mọi dữ liệu doanh nghiệp.

Anh-man-hinh-2025-10-27-luc-14.08.41.jpg


Điểm gây tranh cãi lớn nhất: MSRC xác định M365 Copilot nằm ngoài phạm vi bounty. Nghĩa là người tìm ra lỗ hổng không được thưởng.
Nhiều người cho rằng đây là một động thái “nguy hiểm”, vì nó giảm động lực báo lỗi có trách nhiệm. Một số bình luận còn nói thẳng: “Microsoft đang vô tình khuyến khích người tìm lỗi đem bán exploit thay vì báo cáo.” Lập luận này không phải vô lý. Hệ sinh thái an toàn cần sự khuyến khích, không phải ngăn cản.

Microsoft đã vá lỗ hổng bằng cách loại bỏ khả năng hyperlink hoạt động trong sơ đồ Mermaid.


NgàySự kiện
30/07/2025Phát hiện kỹ thuật rút dữ liệu qua sơ đồ Mermaid.
04/08/2025Johann Rehberger (wunderwuzzi) công bố bài viết về lỗ hổng tương tự trong Cursor IDE.
07/08/2025Tham dự MSRC Researcher Celebration Party tại DEFCON.
14/08/2025Phát hiện kỹ thuật prompt injection gián tiếp kết hợp rút dữ liệu.
15/08/2025Báo cáo toàn chuỗi lỗ hổng tới MSRC kèm PoC video.
15/08/2025MSRC mở hồ sơ lỗ hổng, chuyển trạng thái từ New → Review / Repro.
21/08/2025MSRC thông báo họ không thể tái hiện và yêu cầu thêm thông tin.
22/08/2025Gửi thêm video PoC và payload Excel.
27/08/2025MSRC xác nhận nhận thông tin và gửi tới đội engineering.
08/09/2025MSRC xác nhận hành vi báo cáo và chuyển trạng thái từ Review/Repro → Develop.
12/09/2025Nhóm bounty MSRC bắt đầu xem xét khả năng thưởng.
19/09/2025MSRC chuyển trạng thái từ Develop → Pre-Release.
26/09/2025MSRC giải quyết xong hồ sơ, chuyển trạng thái từ Pre-Release → Complete.
26/09/2025Bắt đầu phối hợp với MSRC cho việc phát hành blog post.
30/09/2025Nhóm bounty MSRC xác định M365 Copilot không nằm trong phạm vi được thưởng và do đó không đủ điều kiện nhận tiền thưởng.
03/10/2025MSRC yêu cầu bản thảo blog post và ngày công bố mục tiêu.
07/10/2025Bản thảo blog post được gửi tới MSRC.
10/10/2025MSRC công nhận bản thảo blog post và yêu cầu thêm thời gian xem xét.
13/10/2025MSRC cho phép công bố vào ngày 21/10/2025.
21/10/2025Blog post được công bố..

Tham khảo nguồn