Skip to main content

Command Palette

Search for a command to run...

Sau 7 tháng ngủ yên, Gootloader trỗi dậy với chiêu thức khiến antivirus bối rối

Gootloader - một “loader” phần mềm độc hại dựa trên JavaScript, được điều khiển qua các website bị xâm nhập hoặc các website do attaker kiểm soát.

Updated
7 min read
Sau 7 tháng ngủ yên, Gootloader trỗi dậy với chiêu thức khiến antivirus bối rối

Tổng quan

Gần đây một chiến dịch tấn công nguy hiểm đã quay trở lại và được biết đến với cái tên là Gootloader. Đây là một “loader” (trình tải mã độc) viết bằng JavaScript, thường được dùng để tạo “điểm vào” (initial access) cho kẻ tấn công.

Trước tiên chúng ta sẽ cùng đi qua một đôi nét về Gootloader, nó được thiết kế để lây nhiễm máy tính nạn nhân, tải xuống và thực thi các payload khác. Thông thường là ransomware, backdoor, hoặc công cụ truy cập từ xa (RAT). Gootloader xuất hiện lần đầu vào khoảng năm 2020, như một nhánh phát triển của Gootkit Trojan – một loại ngân hàng Trojan (banking trojan) chuyên đánh cắp thông tin tài chính. Càng ngày theo thời gian, Gootloader đã tiến hóa từ một trojan đơn lẻ thành nền tảng phân phối malware đa năng được nhiều nhóm tội phạm mạng thuê hoặc chia sẻ sử dụng.

Gootloader's “mothership” controls malicious content – Sophos News

Mỗi chiến dịch Gootloader thường gắn liền với các chiến dịch SEO poisoning – lợi dụng công cụ tìm kiếm để lừa người dùng tải xuống file độc hại. Chúng thường xuyên nhắm tới doanh nghiệp nhỏ và vừa, đặc biệt là các công ty hành chính, kế toán, luật hay người dùng cá nhân có thói quen tải tài liệu miễn phí từ Google.

Một khi hệ thống bị nhiễm Gootloader, kẻ tấn công có thể chiếm quyền quản trị mạng (Domain Controller) chỉ trong vài giờ. Các cuộc tấn công từng được ghi nhận cho thấy chỉ sau 20 phút đã có hoạt động dò quét nội bộ. Chính vì thế mà nó được xem là một trong những loader nguy hiểm và tinh vi nhất hiện nay, vì nó không chỉ lây nhiễm mà còn đánh lừa cả người dùng lẫn hệ thống phòng thủ tự động.

GootLoader, From SEO Poisoning to Multi-Stage Downloader

Chi tiết chiến dịch

Như đã đề cập để thực hiện chiến dịch ban đầu kẻ tấn công sẽ lừa nạn nhân truy cập vào Website bị tấn công (SEO poisoning) sau đó sẽ click vào link dowload giả mạo để tải payload.

Một điểm thú vị ở đây là Gootloader sử dụng endpoint bình thường như /wp-comments-post.php của WordPress để nhận các POST request và phân phối payload. Điều này giúp đánh lừa nạn nhân một cách dễ dàng cũng như khó bị phát hiện và lẩn tránh hệ thống kiểm duyệt.

Payload ZIP sẽ được kẻ tấn công mã hóa XOR với khóa riêng theo tên file, như trong chiến dịch này ghi nhận: Missouri_Utility_Easement_Guide_2023.pdf.

Một điểm nữa cần lưu ý ở phần mềm độc hại này là chính là kỹ thuật “tàng hình“ bằng “font WOFF2” và “glyph substitution”. Đây là một kỹ thuật tinh vi trong mã nguồn JavaScript. Tại đây tên file hay ký tự hiện ra nhìn bình thường khi người dùng nhìn trang, nhưng thực tế trong mã nguồn là các ký tự “rác” như ›μI€vSO₽*'Oaμ==€‚‚33O%33‚€×:O[TM€v3cwv,.. Tức là Font WOFF2 sẽ được nhúng vào JavaScript (Z85 encoding), và khi trình duyệt render, glyph của ký tự “O”, “a”, “9”, “±” … bị hoán đổi để hiển thị các ký tự khác.

\=> Ví dụ: “9” hiển thị thành “o”, “±” thành “i”.

Khi đã được nạn nhân tải xuống thì Gootloader sẽ tiếp tục quá trình duy trì trên máy mục tiêu bằng cách sử dụng Scheduled Task. Tại bước này chúng sẽ tạo một tệp shorcut .lnk trong %AppData%\Roaming\ISIS Drivers\Outreach Services.lnk%AppData%\Roaming\PFU\Molecular Ecology.lnk … sử dụng tên dài nhưng lại tham chiếu bằng tên 8.3 (short filename). Chúng ta có thể hiểu đơn giản 8.3 (short filename)định dạng tên file cổ từ DOS: tối đa 8 ký tự cho tên, 3 ký tự cho phần mở rộng. Mục đích chính vẫn là để ẩn tên dài, đánh lừa signature và tránh phát hiện dựa trên chuỗi.

\=> ví dụ REPORT.TXT

MS-DOS DIR /X Command - Display short names for non-8dot3 file names

Sau đó Shortcut sẽ khởi chạy file .js (ví dụ EMC ControlCenter.js, Adaptive Algorithms.js) nằm trong cùng folder.

Sau khi loader hoạt động thì đương nhiên backdoor sẽ thực thi, thông thường Supper backdoor được triển khai. Kỹ thuật của Supper backdoor rất “rất tinh vi” mặc dù chức năng không mới:

  • API hammering (gọi hàng loạt API gây nhiễu phân tích).

  • Xây dựng shellcode tại runtime: đoạn mã viết byte vào vùng nhớ, đánh dấu vùng nhớ là executable và nhảy vào đó.

  • Sử dụng API hashing để tránh hooking và các công cụ bảo mật thông thường: sử dụng LdrGetDllHandle, LdrLoadDll thay vì LoadLibraryA.

  • Dữ liệu gửi và nhận tới C2 được mã hóa bằng XOR cipher.

Cuối cùng sau khi backdoor được triển khai thì một loạt hành động thường thấy như: liệt kê máy chủ domain controller, quét nhóm Domain Admins, thực hiện Kerberoasting (kỹ thuật lấy mật khẩu dịch vụ từ Active Directory) sẽ được thực hiện:

  • net user <username> /domain

  • nltest /dclist:

  • net group "domain admins" /domain

  • nltest /domain_trusts

  • cmd.exe /Q /c echo C:\Windows\system32\cmd.exe /C vssadmin list shadows /for=C: ^> C:\Windows\Temp\__output > C:\Windows\TEMP\execute.bat & C:\Windows\system32\cmd.exe /Q /c C:\Windows\TEMP\execute.bat & del C:\Windows\TEMP\execute.bat

Trong chiến dịch chỉ chưa đến 17 giờ từ lúc xâm nhập ban đầu tới khi chiếm Domain Controller và tạo user trong Domain Admins đã cho thấy mức độ nguy hiểm của phần mềm độc hại này. Bên cạnh đó chúng còn thực hiện lateral movement (di chuyển ngang) qua WinRM, sử dụng công cụ như Impacket để thực hiện lệnh từ xa. Sau đó rất có thể thực hiện dump database AD (NTDS.dit), enumerate Volume Shadow Copies (để chuẩn bị mã độc tống tiền).

Và đương nhiên trong toàn bộ quá trình thông tin mà chúng lấy được sẽ đươc gửi đến những máy chủ C2 để duy trì kết nối.

Kết luận

Mặc dù Gootloader sử dụng các kỹ thuật rất tân tiến (font WOFF2 để che tên file, mã hóa XOR, obfuscation JavaScript), nhưng mô hình tấn công hậu xâm nhập lại dựa trên các kỹ thuật “cơ bản nhưng hiệu quả” như enumeration AD, lateral movement, tạo account Domain Admin…

Điều này càng cho thấy được một thông điệp quan trọng: không cần exploit zero-day cho toàn bộ chuỗi tấn công. Kẻ tấn công chỉ cần một entry (“loader”) và sau đó dùng các kỹ thuật đã được biết tới để kiểm soát môi trường.

Khuyến nghị

  1. Cách ly host nghi ngờ

    • Ngay khi phát hiện host có .lnk lạ hoặc process chạy từ %AppData%/Startup: isolate host khỏi mạng (disconnect network / remove VLAN).
  2. Hạn chế quyền

    • Giảm thiểu quyền chạy PowerShell, hạn chế người dùng có quyền local admin, bật logging đầy đủ cho WinRM, PowerShell, Event Logs.
  3. Chỉ tải tài liệu từ trang chính thức hoặc nguồn đáng tin.

    • Nếu cần “mẫu hợp đồng thuê nhà”, hãy tải từ trang cơ quan nhà nước hoặc công ty có uy tín, không tải từ blog, diễn đàn hoặc trang có quảng cáo lạ.
  4. Cẩn trọng với kết quả tìm kiếm “SEO poisoning”

    • Kẻ tấn công tạo website giả xuất hiện trên top Google với tiêu đề hợp pháp (PDF, DOC, Guide...), nhưng khi nhấn tải lại nhận được .zip chứa .js hoặc .lnk.
  5. Khi nhận email hoặc tin nhắn có tệp đính kèm

    • Không mở file đính kèm từ người lạ, hoặc khi email chỉ nói “vui lòng xem tài liệu” mà không có nội dung cụ thể.

    • Kiểm tra kỹ đuôi file thật:

      • Trong Windows, bật hiển thị “File name extensions” (View → tick “File name extensions”) để xem thật sự là .pdf hay .js.

      • Kẻ tấn công thường đặt tên “Invoice.pdf.js” để đánh lừa người dùng.

    • Không nhấp vào shortcut (.lnk) ngay cả khi icon giống Word/PDF.

IOC

  1. C2

    • 103.253.42[.]91

    • 91.236.230[.]134

    • 213.232.236[.]138

    • 146.19.49[.]177

    • 178.32.224[.]219

    • 37.59.205[.]2

    • 193.104.58[.]64

  2. File Hash

    • cf44aa11a17b3dad61cae715f4ea27c0cbf80732a1a7a1c530a5c9d3d183482a

    • 39d980851be1e111c035e4db2589fa3d5f59a5bef7b7b3e36bff5435c78f7049

    • b9a61652dffd2ab3ec3b7e95829759fc43665c27e9642d4b2d4d2f7287254034

    • 2f056ce0657542da3e7e43fb815a8973c354624043f19ef134dff271db1741b3

    • c2326db8acae0cf9c5fc734e01d6f6c1cd78473b27044955c5761ec7fd479964

    • ad88076fd75d80e963d07f03d7ae35d4e55bd49634baf92743eece19ec901e94

    • cf44aa11a17b3dad61cae715f4ea27c0cbf80732a1a7a1c530a5c9d3d183482a

    • c2b9782c55f75bb1797cb4fbae0290b44d0fcad51bf4f2c11c52ebbe3526d2ac

    • 7557d5fed880ee1e292aba464ffdc12021f9acbe0ee3a2313519ecd7f94ec5c4

    • 5ec9e926d4fb4237cf297d0d920cf0e9a5409f0226ee555bd8c89b97a659f4b0

    • 87cbe9a5e9da0dba04dbd8046b90dbd8ee531e99fd6b351eae1ae5df5aa67439

  3. Domain

Tham khảo

  1. Gootloader malware is back with new tricks after 7-month break

  2. Gootloader | Threat Detection Overview | Huntress

More from this blog

F

FPT IS Security

761 posts

Dedicated to providing insightful articles on cybersecurity threat intelligence, aimed at empowering individuals and organizations to navigate the digital landscape safely.