Microsoft 365 Copilot bị khai thác thông qua sơ đồ Mermaid, cho phép hacker rút dữ liệu bí mật
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.
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ố:
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à:
Đ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.
Tham khảo nguồn
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
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.
Copilot được gắn với email, SharePoint, OneDrive, Teams, nghĩa là mọi dữ liệu doanh nghiệp.
Đ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ày | Sự kiện |
|---|---|
| 30/07/2025 | Phát hiện kỹ thuật rút dữ liệu qua sơ đồ Mermaid. |
| 04/08/2025 | Johann Rehberger (wunderwuzzi) công bố bài viết về lỗ hổng tương tự trong Cursor IDE. |
| 07/08/2025 | Tham dự MSRC Researcher Celebration Party tại DEFCON. |
| 14/08/2025 | Phát hiện kỹ thuật prompt injection gián tiếp kết hợp rút dữ liệu. |
| 15/08/2025 | Báo cáo toàn chuỗi lỗ hổng tới MSRC kèm PoC video. |
| 15/08/2025 | MSRC mở hồ sơ lỗ hổng, chuyển trạng thái từ New → Review / Repro. |
| 21/08/2025 | MSRC thông báo họ không thể tái hiện và yêu cầu thêm thông tin. |
| 22/08/2025 | Gửi thêm video PoC và payload Excel. |
| 27/08/2025 | MSRC xác nhận nhận thông tin và gửi tới đội engineering. |
| 08/09/2025 | MSRC xác nhận hành vi báo cáo và chuyển trạng thái từ Review/Repro → Develop. |
| 12/09/2025 | Nhóm bounty MSRC bắt đầu xem xét khả năng thưởng. |
| 19/09/2025 | MSRC chuyển trạng thái từ Develop → Pre-Release. |
| 26/09/2025 | MSRC giải quyết xong hồ sơ, chuyển trạng thái từ Pre-Release → Complete. |
| 26/09/2025 | Bắt đầu phối hợp với MSRC cho việc phát hành blog post. |
| 30/09/2025 | Nhó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/2025 | MSRC yêu cầu bản thảo blog post và ngày công bố mục tiêu. |
| 07/10/2025 | Bản thảo blog post được gửi tới MSRC. |
| 10/10/2025 | MSRC 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/2025 | MSRC cho phép công bố vào ngày 21/10/2025. |
| 21/10/2025 | Blog post được công bố.. |
Tham khảo nguồn
BÀI MỚI ĐANG THẢO LUẬN