HTML smuggling: một kỹ thuật giấu mã độc vào ảnh SVG

nktung

Super Moderator
Thành viên BQT
08/10/2013
401
989 bài viết
HTML smuggling: một kỹ thuật giấu mã độc vào ảnh SVG
Anh-whitehat-vn.png
  • HTML smuggling là một kỹ thuật mà kẻ tấn công sử dụng để ẩn mã độc hại được mã hóa trong tệp đính kèm email HTML hoặc trang web.
  • Sau khi nạn nhân nhận được email và mở tệp đính kèm, trình duyệt của họ sẽ giải mã và chạy mã độc, sau đó mã này sẽ tải về thiết bị của nạn nhân những mã độc khác.
  • Những kẻ tấn công trong vụ Qakbot sử dụng một kỹ thuật tương đối mới tận dụng hình ảnh Đồ họa vectơ (SVG) được nhúng trong tệp đính kèm email HTML.
1689299512354.png

Hình 1. Chu trình lây nhiễm mã độc vào file SVG dùng kỹ thuật HTML Smuggling (Theo Talos)

Có nhiều cách khác nhau mà những kẻ tấn công đã được ghi nhận là lạm dụng các tính năng hợp pháp của JavaScript và HTML để thực hiện HTML smuggling. Tuy nhiên, gần đây đã chứng kiến những kẻ tấn công triển khai một kỹ thuật tương đối mới - việc sử dụng hình ảnh Đồ họa véc tơ mở rộng (SVG).

Không giống như hình ảnh raster dựa trên pixel như JPEG, hình ảnh SVG dựa trên vectơ, có nghĩa là chúng có thể tăng kích thước mà không làm giảm chất lượng hình ảnh. Hình ảnh SVG được xây dựng bằng XML, cho phép chúng được đặt trong HTML bằng các thẻ đánh dấu XML thông thường. Các email độc hại có tệp đính kèm HTML với hình ảnh SVG được mã hóa chứa các thẻ HTML <script>. Việc chèn các thẻ tập lệnh trong hình ảnh SVG là một tính năng hợp lệ của SVG. Thật không may, tính năng này đang bị những kẻ tấn công lạm dụng để chuyển mã JavaScript vào máy tính của nạn nhân. Những kẻ tấn công dựa vào thực tế là: các trình duyệt web sẽ giải mã và thực thi mã JavaScript này như thể nó là một phần tiêu chuẩn của HTML của tài liệu.

Trong trường hợp này, mã JavaScript được ẩn dấu bên trong hình ảnh SVG chứa toàn bộ mã được nén (zip) và sau đó được tập hợp lại (bằng chính đoạn mã Java script) trên máy của nạn nhân. Do payload của phần mềm độc hại được tạo trực tiếp trên máy của nạn nhân và không được truyền qua mạng nên kỹ thuật smuggling HTML này có thể bypass sự phát hiện của các thiết bị bảo mật được thiết kế để lọc nội dung độc hại truyền qua mạng.
Dưới đây là một email Qakbot độc hại. Qakbot sẽ chiếm email của nạn nhân và reply dưới dạng câu trả lời theo một chuỗi email đã trao đổi từ trước. Điều thú vị là kẻ gian lại lấy các email rất cũ, trong hình là kẻ gian đã chọn các email từ năm 2020 trong khi thời điểm relply lúc này là 2022.

qbot.png

Hình 2. Email độc hại Qakbot
Khi nạn nhân mở tệp đính kèm HTML từ email, mã JavaScript nhúng bên trong hình ảnh SVG sẽ kích hoạt, tạo ra một kho lưu trữ zip độc hại và sau đó hiển thị cho người dùng một hộp thoại để lưu tệp. Tệp đính kèm HTML cũng hiển thị mật khẩu mà nạn nhân phải sử dụng để mở file lưu trữ zip.

qakbot3.png

Hình 3. Hộp thoại bật lên từ mã JavaScript yêu cầu lưu tài liệu

qakbot6.png

Hình 4. Gợi ý nạn nhân nhập password để mở tài liệu

Bên trong tệp đính kèm HTML, chúng ta có thể thấy mã được kẻ tấn công sử dụng để chạy JavaScript trên máy nạn nhân. Bên cạnh một số kỹ thuật che giấu rõ ràng như HTML mã hóa chữ “F” trong File và chữ “P” trong Password, chúng ta cũng có thể thấy rõ thẻ <embed> chứa hình ảnh SVG được mã hóa base64.

qakbot4.png

Hình 4. File đính kèm
Khi base64 được giải mã và JavaScript được giải mã, chúng ta có thể thấy kỹ thuật SVG HTML smuggling được sử dụng bởi chiến dịch Qakbot này. Hàm charCodeAt() được sử dụng để chuyển đổi văn bản từ biến JavaScript thành đốm màu nhị phân. Sử dụng hàm createObjectURL(), blob nhị phân được chuyển đổi thành file zip mà nạn nhân được yêu cầu lưu trên máy.
qakbot5.png

Hình 5. Giải mã ảnh SVG đính kèm

Nếu nạn nhân nhập mật khẩu do kẻ tấn công cung cấp và mở file zip, họ có thể giải nén tệp .iso. Tệp .iso nhằm mục đích lây nhiễm Qakbot vào máy nạn nhân.

Kết luận​

Vì HTML smuggling có thể vượt qua các biện pháp phòng thủ mạng truyền thống nên điều quan trọng là phải triển khai một số loại bảo vệ an ninh cho các điểm cuối trong môi trường của bạn. Có khả năng bảo vệ điểm cuối mạnh mẽ có thể ngăn việc thực thi mã độc và ngăn các mã độc khởi chạy bộ mã đã tải xuống. Bảo mật điểm cuối cũng có thể thực thi các quy tắc về phân quyền, chỉ cho phép các tệp tin cậy được chạy.
Một cách phòng chống HTML smuggling hiệu quả là đào tạo người dùng của bạn về nhận thức về bảo mật. Trong nhiều năm, các chuyên gia bảo mật email đã lặp đi lặp lại nhắc nhở rằng người dùng không nên mở các tệp đính kèm email đáng ngờ hoặc nhấp vào liên kết trong các thư đáng ngờ.
Khi những người quản trị mạng cải thiện khả năng quét nội dung độc hại, chúng ta có thể thấy những kẻ tấn công tìm cách bypass.

Theo Cisco Talos
 
Chỉnh sửa lần cuối:
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Thẻ
html smuggling
Bên trên