Nhà nghiên cứu bảo mật Ammar Askar đã tiết lộ một lỗ hổng nghiêm trọng trong Visual Studio Code vào ngày 2 tháng 6 năm 2026, cho thấy kẻ tấn công có thể đánh cắp mã truy cập OAuth của GitHub thông qua một cuộc tấn công một cú nhấp chuột đầy tinh vi. Microsoft đã phát hành bản vá khẩn cấp ngay ngày hôm sau, ngày 3 tháng 6, thời gian phản hồi nhanh chóng này cho thấy Redmond đã coi trọng vấn đề này đến mức nào.
Lỗ hổng này nhắm vào GitHub.dev, phiên bản dựa trên trình duyệt của VS Code mà hàng triệu nhà phát triển sử dụng để chỉnh sửa mã trực tiếp trong trình duyệt của họ. Một kẻ tấn công khai thác lỗ hổng này có thể truy cập vào mọi kho lưu trữ liên kết với mã thông báo bị xâm phạm của nạn nhân, bao gồm cả các kho riêng tư.
Cú tấn công hoạt động như thế nào
Lỗ hổng tồn tại trong hệ thống webview của VS Code, thành phần chịu trách nhiệm hiển thị nội dung web nhúng bên trong trình soạn thảo. Các webview giao tiếp với quá trình chính của VS Code thông qua cơ chế truyền tin nhắn, và đó là nơi mọi chuyện trở nên thú vị.
Chuỗi tấn công bắt đầu bằng một liên kết độc hại trỏ đến không gian làm việc GitHub.dev. Trong không gian làm việc đó có một tập tin Jupyter notebook chứa mã JavaScript độc hại. Khi nạn nhân mở liên kết, mã trong notebook sẽ được thực thi trong bối cảnh webview.
Từ đó, script độc hại mô phỏng các sự kiện bàn phím để tương tác với giao diện VS Code một cách lập trình. Nó tận dụng mô hình tin tưởng mà GitHub.dev mở rộng cho nội dung không gian làm việc, hiệu quả lừa trình soạn thảo xử lý mã của kẻ tấn công như thể đó là đầu vào hợp lệ của người dùng.
Sau đó, kịch bản cài đặt một tiện ích mở rộng độc hại từ không gian làm việc đáng tin cậy. Tiện ích mở rộng này lặng lẽ đánh cắp mã OAuth của nạn nhân trên GitHub mà không gây ra bất kỳ cảnh báo nào. Toàn bộ chuỗi hành động chỉ yêu cầu người dùng nhấp vào một liên kết duy nhất.
Askar đã công bố một kho lưu trữ chứng minh khái niệm đầy đủ cùng với việc tiết lộ, cung cấp cho các đội bảo mật thông tin cần thiết để hiểu và kiểm tra lỗ hổng này.
Phản ứng của Microsoft và mô hình tổng thể
Bản vá ngày 3 tháng 6 của Microsoft đã giới thiệu hai biện pháp bảo vệ chính. Thứ nhất, nó thêm một lời nhắc xác nhận khi người dùng cố gắng mở một số loại tệp trong GitHub.dev, phá vỡ chuỗi một lần nhấp liền mạch từng giúp cuộc tấn công trở nên hiệu quả. Thứ hai, nó chặn các lệnh tiện ích mở rộng có thể gây hại mà vụ khai thác dựa vào để cài đặt mã độc một cách lặng lẽ.
Thời điểm tiết lộ này đáng chú ý. Vài tuần trước đó, vào ngày 20 tháng 5 năm 2026, chính GitHub đã bị xâm phạm bảo mật khi một phần mở rộng VS Code bị đầu độc đã gây tổn hại đến khoảng 3.800 kho lưu trữ nội bộ.
Điều này có nghĩa gì đối với các nhà phát triển và tổ chức
Đối với các nhà phát triển cá nhân, hành động ngay lập tức rất đơn giản: đảm bảo các phiên GitHub.dev được cập nhật với các bản vá mới nhất của Microsoft. Thay đổi bất kỳ token OAuth nào có thể đã bị lộ, đặc biệt nếu bạn đã nhấp vào các liên kết không quen thuộc đến các không gian làm việc GitHub.dev trong vài tuần gần đây. Kiểm tra các tiện ích mở rộng đã cài đặt và gỡ bỏ bất kỳ tiện ích nào bạn không sử dụng thường xuyên.
Các đội ngũ bảo mật nên kiểm tra những nhân viên nào có quyền truy cập vào GitHub.dev và xem các token OAuth của họ có quyền hạn rộng hơn mức cần thiết hay không. Nguyên tắc quyền tối thiểu, chỉ cấp token quyền truy cập tối thiểu cần thiết, đã giúp hạn chế đáng kể thiệt hại từ cuộc tấn công cụ thể này.
