Lỗ hổng link chia sẻ ChatGPT có thể chạy mã độc trong phiên đăng nhập và đọc hội thoại riêng tư
Các nhà nghiên cứu của hãng bảo mật Parameter đã phát hiện một lỗ hổng trong ChatGPT: một link chia sẻ hội thoại độc hại có thể chạy mã của kẻ tấn công ngay trong phiên đăng nhập của người mở link, từ đó đọc các cuộc trò chuyện riêng tư. Nhóm báo cáo qua chương trình bug bounty của OpenAI vào ngày 18/10; OpenAI đã khắc phục 8 ngày sau đó và xếp mức độ nghiêm trọng P1, mức cao nhất.
Cách thức tấn công
Cái bẫy chỉ là một hội thoại ChatGPT bình thường được chia sẻ qua link công khai, có thể gửi qua email, tin nhắn, phiếu hỗ trợ hay bài đăng mạng xã hội giống như bất kỳ link chia sẻ thật nào. Nạn nhân không cần cài đặt gì, không cần tham gia workspace hay đăng nhập qua kẻ tấn công. Ở phiên bản đáng tin cậy nhất, họ chỉ cần mở link và bấm nút Preview của ChatGPT một lần. Ở phiên bản sau, Parameter cài để trang tự mở Preview, nên chỉ cần mở link là đủ.
Kẻ tấn công làm được gì
Khi link mở ra, mã của kẻ tấn công chạy bên trong phiên đăng nhập của nạn nhân với quyền truy cập ngang với trang ChatGPT thật. Nó liệt kê các hội thoại gần đây, mở một cuộc trò chuyện riêng chưa từng được chia sẻ với kẻ tấn công và gửi một phần nhỏ nội dung đó tới máy chủ do nhóm nghiên cứu kiểm soát. Mã gọi trực tiếp các API đã đăng nhập của ChatGPT thay vì sao chép những gì hiển thị trên màn hình. Vì chạy với toàn quyền web của nạn nhân, phạm vi ảnh hưởng không giới hạn ở các hội thoại đó: theo nhóm nghiên cứu, về cơ bản họ có thể thực hiện bất kỳ hành động nào thay cho tài khoản ChatGPT của nạn nhân. Đây là thử nghiệm có kiểm soát; Parameter không ghi nhận trường hợp lỗ hổng bị lợi dụng ngoài thực tế và chạy thử nghiệm đọc chat riêng giữa các tài khoản tách biệt, không nhắm vào người dùng thật.
Chuỗi lỗi vượt qua sandbox
Theo Parameter, ChatGPT có thể biến một khối HTML trong chat thành trang web nhỏ qua tính năng Preview. Vì trang này chứa được mã tùy ý, ChatGPT chạy nó trong một khung bị khóa trên địa chỉ web riêng, nơi nó không đọc được trang ChatGPT chính xung quanh. Sandbox đó vẫn giữ được. Đường vào đến từ một tính năng thứ hai trong cùng hội thoại: hội thoại chia sẻ còn chứa một biểu đồ tương tác, và việc vẽ biểu đồ tải thư viện toán học MathLive vào trang ChatGPT chính. Việc tải MathLive để lại một listener đang chạy ở đó, chấp nhận các thông điệp về bàn phím ảo của nó.
Thông điệp truyền giữa các khung trình duyệt chỉ an toàn nếu bên nhận kiểm tra người gửi. Parameter phát hiện listener này chấp nhận thông điệp bàn phím từ bất kỳ người gửi nào và cho phép thông điệp mang HTML thô. Preview sau đó có thể vượt ranh giới, đưa HTML của kẻ tấn công vào trang chính đáng tin cậy. HTML đó dựng một khung mới mà trình duyệt coi là thuộc chatgpt.com, rồi một script tải từ YouTube cung cấp mã chạy bên trong. Chính sách bảo mật nội dung của ChatGPT giới hạn nguồn script của trang: nó chặn mã inline nhưng cho phép script từ YouTube, nên bước này thành công.
OpenAI đã sửa gì
Parameter cho biết OpenAI đã tái hiện cả việc chạy mã lẫn bằng chứng đọc chat riêng, nâng mức nghiêm trọng từ P2 lên P1 và triển khai bản vá trên hai phiên bản giao diện web ChatGPT. Đến ngày 26/10, cả hai phiên bản đều từ chối các thông điệp mà cuộc tấn công dựa vào. Nhóm nghiên cứu truy nguyên vấn đề về ba lựa chọn thiết kế trùng khớp:
- MathLive xử lý một thông điệp thay đổi cấu hình mà không kiểm tra khung nào đã gửi nó.
- Thông điệp đó được phép mang HTML thô làm dữ liệu bố cục bàn phím.
- HTML có thể tạo một khung không bị sandbox và thừa hưởng danh tính chatgpt.com.
Bước YouTube chỉ là cách vòng cuối cùng, không phải nguyên nhân gốc. Chỉ chặn nó vẫn để Preview không đáng tin có thể đẩy HTML vào trang chính.
Người dùng ChatGPT không cần làm gì: bản vá nằm phía OpenAI, không phải cài đặt hay đặt lại gì. Parameter công bố bài viết chi tiết ngày 28/10, sau khi lỗi được sửa. OpenAI trả tổng cộng 5.000 USD cho báo cáo.
Nguồn: The Hacker News
Trích nguồn từ: The Hacker News
Bài viết liên quan
eMudhra và lỗ hổng khóa yếu: dấu vết khai thác và tiến độ vá lỗi
Cloudflare ghi nhận khoảng 22.000 lần bắt tay TLS dùng khóa yếu của eMudhra, phần lớn bị chặn nhờ vá lỗi kịp thời; eMudhra tuyên bố rời thị trường CA công cộng.
Đọc thêm
Lỗ hổng CVSS 10.0 trong LXD và MicroCloud cho phép giả mạo client tin cậy mà không cần khóa riêng
Lỗ hổng nghiêm trọng CVE-2026-112816 trong LXD và MicroCloud của Canonical cho phép kẻ tấn công đăng nhập với tư cách client tin cậy chỉ với chứng chỉ công khai, đạt điểm CVSS tối đa 10.0. Canonical đã phát hành bản vá.
Đọc thêm
NetamLoader tấn công hệ thống Windows 10 của chính phủ châu Á qua .NET injection
Kaspersky phát hiện chuỗi lây nhiễm tinh vi nhắm vào bản Windows 10 tùy chỉnh dành riêng cho cơ quan chính phủ ở châu Á, sử dụng framework .NET có tên NetamLoader.
Đọc thêm
Cloudflare ghi nhận 18,2 triệu cuộc tấn công DDoS lớp mạng trong quý 3, tăng 38%
Cloudflare cho biết đã tự động chặn 18,2 triệu cuộc tấn công DDoS lớp mạng và 14,4 nghìn tỷ yêu cầu HTTP DDoS trong quý 3/2026, tương đương khoảng 8.226 cuộc tấn công mỗi giờ.
Đọc thêm
Tin tặc kết hợp ba lỗ hổng Ivanti Connect Secure để chiếm quyền root không cần xác thực
CISA đưa hai lỗ hổng Ivanti Connect Secure vào danh mục KEV sau khi bị khai thác thực tế, trong chuỗi khai thác ba lỗ hổng cho phép chiếm quyền root mà không cần xác thực.
Đọc thêm
Làm việc với User Secrets trong ứng dụng ASP.NET Core
Chúng ta tìm hiểu cách làm việc với UserSecrets để quản lý các thông tin cấu hình nhạy cảm và bí mật của ứng dụng.
Đọc thêm
Tổng quan các loại thuật toán mã hoá dữ liệu
Bài viết rất hay giới thiệu về tổng quan các loại thuật toán mã hoá dữ liệu dành cho những bạn nào muốn tìm hiểu về thuật toán mã hoá.
Đọc thêm
Series bảo mật trong ASP.NET MVC - 5: Rỏ rỉ thông tin máy chủ
Các thông tin về phiên bản được sử dụng bởi một kẻ tấn công sẽ khai thác để tấn công vào hệ thống.
Đọc thêm
Series bảo mật trong ASP.NET MVC - 4: Upload các tệp tin có hại
Qua 3 bài trước chúng ta đã từng tìm hiểu về cách bảo vệ tất cả các trường nhập liệu. Nhưng chúng ta đã bỏ qua một trường chính là trường File Upload
Đọc thêm
Series bảo mật trong ASP.NET MVC - 3: Tấn công Cross-Site Scripting (XSS)
Tấn công Cross-site Scripting (XSS) là cách tấn công bằng việc đẩy các đoạn mã javascript vào hệ thống thông qua các trường nhập liệu
Đọc thêm