Lỗ hổng ‘One-Click’ trên GitHub.dev cho phép kẻ tấn công đánh cắp toàn bộ OAuth Token
Một lỗ hổng bảo mật nghiêm trọng trên môi trường GitHub.dev cho phép kẻ tấn công chiếm đoạt GitHub OAuth token của người dùng chỉ bằng một cú nhấp chuột, từ đó truy cập trái phép vào các kho lưu trữ...
Các nhà nghiên cứu bảo mật vừa phát hiện một lỗ hổng nguy hiểm trong môi trường GitHub.dev (phiên bản trình duyệt của Visual Studio Code), cho phép kẻ tấn công đánh cắp GitHub OAuth token của người dùng chỉ thông qua một liên kết độc hại. Theo nhà nghiên cứu Ammar Askar, token này có quyền đọc và ghi vào toàn bộ các kho lưu trữ (repository) của nạn nhân, bao gồm cả các dự án riêng tư.
Table Of Content
Cơ chế tấn công
GitHub.dev hoạt động bằng cách sử dụng một OAuth token được gửi từ GitHub.com để tương tác với API của GitHub thay mặt người dùng. Lỗ hổng này nằm ở cơ chế truyền tin giữa cửa sổ VS Code chính và các webviews (thường dùng để hiển thị bản xem trước Markdown hoặc Jupyter notebooks).
Kẻ tấn công có thể thực thi JavaScript độc hại bên trong một webview không an toàn để mô phỏng các thao tác bàn phím (keydown events). Từ đó, chúng kích hoạt Command Palette (Ctrl+Shift+P) để tự động cài đặt một extension độc hại do kẻ tấn công kiểm soát. Extension này sẽ trích xuất GitHub OAuth token và gửi về máy chủ của kẻ tấn công, cho phép chúng liệt kê và truy cập vào mọi repository mà nạn nhân có quyền.
Bỏ qua cơ chế kiểm duyệt
Điểm đáng chú ý trong phương thức tấn công này là việc lợi dụng tính năng local workspace extensions của VS Code. Bằng cách đặt extension vào thư mục .vscode/extensions trong workspace, kẻ tấn công có thể cài đặt trực tiếp mà không cần thông qua hộp thoại xác nhận tin cậy, qua đó bypass thành công bước kiểm tra nhà phát hành (publisher trust check).
Nhà nghiên cứu cũng chỉ ra rằng, vì các extension có khả năng thiết lập phím tắt (keybindings) riêng, kẻ tấn công có thể dễ dàng kích hoạt các lệnh VS Code mong muốn để thực thi hành vi độc hại mà không bị người dùng phát hiện.
Tình trạng hiện tại
Thông tin về lỗ hổng đã được gửi tới Microsoft vào ngày 2/6/2026. Hiện tại, Microsoft đã xác nhận sự tồn tại của vấn đề và đang trong quá trình phát triển bản vá. Đại diện từ Microsoft cũng khẳng định rằng lỗ hổng này chỉ ảnh hưởng đến phiên bản web của GitHub.dev và không tác động đến VS Code Desktop.
Nguồn tham khảo: The Hacker News


No Comment! Be the first one.