Clickjacking từ lâu đã được xem là một kỹ thuật tấn công đơn giản trong thế giới an ninh mạng. Theo truyền thống, nó liên quan đến việc đặt một khung (frame) vô hình lên trên một trang web hợp pháp để lừa người dùng nhấp vào một nút mà họ không mong muốn, ví dụ như che nút “Delete Account” bằng một lớp phủ “Play Video” giả mạo. Tuy nhiên, một nhà nghiên cứu bảo mật tên Lyra đã công bố một kỹ thuật mới tinh vi được gọi là SVG clickjacking, về cơ bản đã thay đổi đáng kể cục diện các lỗ hổng bảo mật liên quan đến clickjacking.
Sự Phát Triển Của Kỹ Thuật Tấn Công Clickjacking
Một nhà nghiên cứu bảo mật đã tiết lộ một kỹ thuật khai thác mới, chuyển đổi căn bản cách thức hoạt động của các cuộc tấn công clickjacking. Từ những thủ thuật “nút ẩn” đơn giản, chúng đã trở thành các cuộc khai thác tương tác phức tạp, có khả năng đọc nội dung màn hình và thực thi logic.
Kỹ thuật mới này, được Lyra (còn gọi là reban2001) đặt tên là SVG clickjacking, tận dụng các bộ lọc Scalable Vector Graphics (SVG) để tạo ra các lớp phủ “thông minh”. Các lớp phủ này có thể phát hiện và phản ứng với trạng thái của một trang web mục tiêu.
Sự Khác Biệt Với Clickjacking Truyền Thống
Không giống như clickjacking truyền thống, nơi kẻ tấn công chỉ đơn giản phủ một iframe vô hình để lừa người dùng nhấp vào một nút, phương pháp mới này cho phép trang tấn công “đọc” các pixel từ trang web của nạn nhân. Sau đó, nó có thể thay đổi giao diện của chính mình dựa trên những gì người dùng nhìn thấy.
Sự đổi mới này biến clickjacking từ một cuộc tấn công tĩnh thành một cuộc tấn công động và tương tác, mở ra nhiều khả năng khai thác phức tạp hơn.
Cơ Chế Hoạt Động Cốt Lõi của SVG Clickjacking
Trọng tâm của lỗ hổng bảo mật này nằm ở cách các trình duyệt hiện đại xử lý các bộ lọc SVG như feDisplacementMap, feColorMatrix và feComposite. Mặc dù các công cụ này được thiết kế cho các hiệu ứng đồ họa như khúc xạ hoặc thay đổi màu sắc, Lyra đã chứng minh rằng chúng có thể được tái sử dụng để thực hiện các phép toán logic.
Xây Dựng Cổng Logic Bằng Bộ Lọc SVG
Bằng cách kết nối chuỗi các bộ lọc này lại với nhau, kẻ tấn công có thể xây dựng các cổng logic hoạt động (AND, OR, XOR) trực tiếp trong công cụ kết xuất của trình duyệt. Điều này biến bộ lọc SVG thành một máy tính nguyên thủy có khả năng giám sát một iframe cross-origin.
Ví dụ, một cuộc tấn công SVG clickjacking có thể phát hiện nếu một hộp thoại cụ thể đã xuất hiện, nếu một hộp kiểm được chọn, hoặc nếu văn bản lỗi màu đỏ hiển thị. Sau đó, nó có thể tự động cập nhật lớp phủ giả mạo để hướng dẫn người dùng qua một quy trình nhiều bước.
Bằng Chứng Khai Thác Thực Tế
Lyra đã chứng minh mức độ nghiêm trọng của kỹ thuật này với một cuộc tấn công thử nghiệm (proof-of-concept) nhắm vào Google Docs. Cuộc tấn công này đã mang về khoản tiền thưởng 3.133,70 USD từ Chương trình Thưởng Tìm Lỗi (Vulnerability Reward Program) của Google.
Trong bản demo, kẻ tấn công đã lừa người dùng tạo một tài liệu, nhập một “captcha” giả vào một hộp văn bản (thực ra là một trường nhập liệu của Google Docs), và nhấp qua một chuỗi các nút. Điều đáng chú ý là cuộc tấn công này yêu cầu lớp phủ phải phản ứng với trạng thái của tài liệu.
Nó ẩn hộp nhập liệu giả khi người dùng đã “nhập” captcha thành công và chỉ hiển thị nút mới khi tài liệu đã sẵn sàng. Lyra nhận định rằng: “Trước đây, các phần riêng lẻ của một cuộc tấn công như vậy có thể được thực hiện thông qua clickjacking truyền thống… nhưng toàn bộ cuộc tấn công sẽ quá dài và phức tạp để trở thành hiện thực.”
Bạn có thể tìm hiểu thêm về nghiên cứu này trên blog của Lyra: https://lyra.horse/blog/2025/12/svg-clickjacking/
Khả Năng Rò Rỉ Dữ Liệu qua SVG Clickjacking
Có lẽ ứng dụng đáng chú ý nhất của SVG clickjacking là khả năng rò rỉ dữ liệu. Nhà nghiên cứu đã chỉ ra cách kỹ thuật này có thể đọc các pixel nhạy cảm từ một trang web mục tiêu và mã hóa dữ liệu đó vào một URL. URL này sau đó được hiển thị dưới dạng một mã QR có thể quét được, sử dụng bộ lọc feDisplacementMap.
Điều này tạo ra một kịch bản mà kẻ tấn công có thể yêu cầu người dùng “quét mã này để xác minh bạn là con người”, trong khi mã đó thực sự chứa một URL với dữ liệu phiên hoặc thông tin riêng tư bị đánh cắp của họ được nhúng trong các tham số.
Đánh Giá Tác Động và Biện Pháp Đối Phó
Nghiên cứu này đánh dấu một sự leo thang đáng kể trong các cuộc tấn công “UI redress” hay lừa đảo giao diện người dùng. Bằng cách chứng minh rằng các bộ lọc SVG có thể hoạt động như một kênh bên (side-channel) để đọc các pixel cross-origin và thực thi logic, nghiên cứu này cho thấy việc chỉ dựa vào sự che giấu trực quan không còn là một biện pháp phòng thủ đầy đủ chống lại SVG clickjacking.
Như Lyra đã lưu ý, kỹ thuật này cho phép các kỹ thuật tấn công mạng trở nên “tương tác” và “phản hồi”, vượt qua sự phỏng đoán mù quáng từng giới hạn tác động của các cuộc khai thác như vậy. Các nhà phát triển và quản trị hệ thống cần xem xét lại các phương pháp phòng thủ clickjacking hiện tại để đối phó hiệu quả với nguy cơ mới này.










