Những cuộc tấn công APT – Lỗ hổng Nitro và RSA

rsa poison ivy

  Cuộc tấn công Nitro được ghi nhận vào tháng 10 năm 2011 báo cáo về một loạt cuộc tấn công khởi nguồn vào tháng 7 năm 2011 đánh vào các công ty dược phẩm và ngành công nghiệp motor cũng như các tổ chức nhân quyền (phi chính phủ). Đợt tấn công được tiếp diễn xuyên suốt tháng 12 năm 2011 với việc những kẻ tấn công dùng những báo cáo ghi lại hoạt động của họ làm mồi nhử. Mã độc được dùng là PoisonIvy, đó là một Trojan điều khiển truy cập từ xa (RAT) được dùng rộng rãi .

PoisonIvy cũng được dùng trong việc khai thác lỗ hổng RSA. Trong khi cuộc tấn công chống lại RSA, đó là một của chiến dịch chống lại nhiều tổ chức khác nhau, tận dụng lỗ hổng zero-day của Adobe Flash Player thông qua bảng tính của Microsoft Excel, payload cuối cùng của nó chính là Poisonlvy.

Một tuyến mạng được tạo ra do PoisonIvy bắt đầu với 256 bytes dữ liệu ngẫu nhiêu sau khi cơ chế TCP “bắt tay ba bước ” thành công. Những bytes này bao gồm 1 yêu cầu “thách thức” để xem xét nếu “client” được cấu hình với mật khẩu đã nén trong server (nạn nhân).

Những cuộc tấn công APT – Lỗ hổng Nitro và RSA

Hình 1: Mô tả lỗ hổng RSA

Phát hiện đơn giản dựa trên yêu cầu của 256 bytes sẽ lộ ra những cảnh báo nhầm. Điều này có thể, tuy nhiên phải được kết hợp với việc phát hiện giao thức nhận dạng. Trong khi cổng (port) mặc định cho PoisonIvy là 3460, nó hầu như được phát hiện ra sử dụng cổng 80,443 và 8080. Lưu lượng này có thể được phát hiện chung bằng việc tìm kiếm 256 byte gói tin chuyển đi chứa hầu hết những gói dữ liệu không phải mã ASCII trên những cổng (port) PoisonIvy thường dùng. Điều này giúp làm giảm những cảnh báo nhầm nhưng vẫn bao phủ các biến thể PoisonIvy rộng rãi miễn là chúng sử dụng yêu cầu “thách thức” như đã nói đến.

Những cuộc tấn công APT – Lỗ hổng Nitro và RSA

Hình 2: Các cổng được sử dụng phổ biến bởi các PoisonIvy

 Sau khi những phản ứng thách thức được nhận, client (controller) gửi 4 bytes chỉ định kích thước của mã nguồn nó sẽ gửi đi. Giá trị này là “D0 15 00 00” đồng nhất cho tất cả các mẫu chúng ta phân tích được trong phiên bản này của PoisonIvy. Điều này tạo ra chỉ số bổ sung tuyệt vời và gia tăng đáng kể mức độ tin cậy của cơ chế phát hiện xâm nhập.

Những cuộc tấn công APT – Lỗ hổng Nitro và RSA

Hình 3: Giao tiếp ban đầu giữa máy chủ PoisonIvy và ứng dụng khách

  PoisonIvy cũng sử dụng những yêu cầu “keep-alive” dài 48 bytes. Những yêu cầu xuất hiện với cùng 1 độ đài nhưng nội dung của chúng đôi chút khác nhau phụ thuộc vào “mật khẩu” mà PoisonIvy client/server được cấu hình. Mật khẩu mặc định, “Admin”, liên tục bị phát hiện.

Những cuộc tấn công APT – Lỗ hổng Nitro và RSA

Hình 4: Minh họa việc yêu cầu giữ lại 48 bytes từ RSA PoisonIvy

  Những con RAT như Gh0st và PoisonIvy là những bản có sẵn được chia sẽ rộng rãi và thường xuyên được dùng trong tấn công APT nhưng việc tiếp cận nó rất dễ bị phát hiện. Trong trường hợp Nitro và RSA, lưu lượng truy cập là tiêu chuẩn và rất dễ bị phát hiện. Tuy nhiên kiểu tấn công này vẫn đang thật sự diễn ra thành công.

 

BÌNH LUẬN

Please enter your comment!
Please enter your name here