# 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](https://news.sophos.com/wp-content/uploads/2021/03/gootloader-party-wall.png align="center")

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](https://blogs.blackberry.com/content/dam/blogs-blackberry-com/images/blogs/2022/07/gootloader-fig10.png align="center")

## **Chi tiết chiến dịch**

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2F709e79b4c5444cd38b8297c7053da8e5 align="center")

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.

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2F9d1053e339144907a5bc649b005293c1 align="center")

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.

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2F90c3540d9fba45a58a82d00c992e5f04 align="left")

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`.

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2F0314ad938c704182ad02144f267aa045 align="left")

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.

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

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2Fcee68841f8094a4d93727bedec7e1306 align="center")

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` và `%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)** là **đị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.

\=&gt; ví dụ `REPORT.TXT`

![MS-DOS DIR /X Command - Display short names for non-8dot3 file names](https://i.ytimg.com/vi/uGFYiJTjMVM/maxresdefault.jpg align="center")

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

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2F24fab952d4e04b9e84e432d39e8f017f align="center")

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.**
    

![](https://cdn.builder.io/api/v1/image/assets%2F3eb6f92aedf74f109c7b4b0897ec39a8%2Fabfb441e7ba847f08b7a4ef0b1a3b011 align="left")

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 &lt;username&gt; /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: ^&gt; C:\\Windows\\Temp\\\_\_output &gt; 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.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1762531584108/f8605c29-c582-45a6-8c4d-f8ed2f9caf63.png align="center")

## **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**
    
    * * hxxps://[cortinaspraga.com/](http://cortinaspraga.com/)
            
        * hxxp://[cookcountyjudges.org/](http://cookcountyjudges.org/)
            
        * hxxps://[x.fybw.org/](http://x.fybw.org/)
            
        * hxxps://[jungutah.com/](http://jungutah.com/)
            
        * hxxps://[influenceimmo.com/](http://influenceimmo.com/)
            
        * hxxps://[tokyocheapo.com/](http://tokyocheapo.com/)
            
        * hxxps://[espressonisten.de/](http://espressonisten.de/)
            
        * hxxps://[tiresdoc.com/](http://tiresdoc.com/)
            
        * hxxps://[hotporntv.net/](http://hotporntv.net/)
            
        * hxxps://[yourboxspring.nl/](http://yourboxspring.nl/)
            
        * **hxxps://**[**filmcrewnepal.com/**](http://filmcrewnepal.com/)
            
        * **hxxps://**[**yoga-penzberg.de/**](http://yoga-penzberg.de/)
            
        * **hxxps://**[**sugarbeecrafts.com/**](http://sugarbeecrafts.com/)
            
        * **hxxps://**[**www.worldwealthbuilders.com/**](http://www.worldwealthbuilders.com/)
            
        * **hxxps://**[**lepolice.com/**](http://lepolice.com/)
            
        * **hxxps://**[**www.lovestu.com/**](http://www.lovestu.com/)
            
        * **hxxps://**[**bluehamham.com/**](http://bluehamham.com/)
            
        * **hxxps://**[**vps3nter.ir/**](http://vps3nter.ir/)
            
        * **hxxps://**[**whiskymuseum.at/**](http://whiskymuseum.at/)
            
        * **hxxps://**[**latimp.eu/**](http://latimp.eu/)
            
        * **hxxps://**[**solidegypt.net/**](http://solidegypt.net/)
            
        * **hxxps://**[**wessper.com/**](http://wessper.com/)
            
        * **hxxps://**[**www.pathfindertravels.se/tickets/**](http://www.pathfindertravels.se/tickets/)
            
        * **hxxps://**[**www.smithcoinc.biz/**](http://www.smithcoinc.biz/)
            
        * **hxxps://**[**kollabmi.se/**](http://kollabmi.se/)
            
        * **hxxps://**[**xxxmorritas.com/**](http://xxxmorritas.com/)
            
        * **hxxps://**[**onsk.dk/**](http://onsk.dk/)
            
        * **hxxps://**[**villasaze.ir/**](http://villasaze.ir/)
            
        * **hxxps://**[**blossomthemesdemo.com/**](http://blossomthemesdemo.com/)
            
        * **hxxps://**[**headedforspace.com/**](http://headedforspace.com/)
            
        * **hxxps://**[**spirits-station.fr/**](http://spirits-station.fr/)
            
        * **hxxps://**[**www.us.registration.fcaministers.com/**](http://www.us.registration.fcaministers.com/)
            
        * **hxxps://**[**motoz.com.au/**](http://motoz.com.au/)
            
        * **hxxps://**[**routinelynomadic.com/**](http://routinelynomadic.com/)
            
        * **hxxps://**[**www.wagenbaugrabs.ch/**](http://www.wagenbaugrabs.ch/)
            
        * **hxxps://**[**studentspoint.org/**](http://studentspoint.org/)
            
        * **hxxps://**[**cortinaspraga.com/**](http://cortinaspraga.com/)
            
        * **hxxps://**[**dailykhabrain.com.pk/**](http://dailykhabrain.com.pk/)
            
        * **hxxps://**[**myanimals.com/**](http://myanimals.com/)
            
        * **hxxps://**[**www2.pelisyseries.net/**](http://www2.pelisyseries.net/)
            
        * **hxxps://**[**www.claritycontentservices.com/wp/**](http://www.claritycontentservices.com/wp/)
            
        * **hxxps://**[**patriotillumination.com/**](http://patriotillumination.com/)
            
        * **hxxps://**[**michaelcheney.com/**](http://michaelcheney.com/)
            
        * **hxxps://**[**allreleases.ru/**](http://allreleases.ru/)
            
        * **hxxps://**[**cloudy.pk/**](http://cloudy.pk/)
            
        * **hxxps://**[**eliskavaea.cz/**](http://eliskavaea.cz/)
            
        * **hxxps://**[**r34porn.net/**](http://r34porn.net/)
            
        * **hxxps://**[**www.wagenbaugrabs.ch/**](http://www.wagenbaugrabs.ch/)
            
        * **hxxps://**[**leadoo.com/**](http://leadoo.com/)
            
        * **hxxps://**[**ostmarketing.com/**](http://ostmarketing.com/)
            
        * **hxxps://**[**egyptelite.com/**](http://egyptelite.com/)
            
        * **hxxps://**[**restaurantchezhenri.ca/**](http://restaurantchezhenri.ca/)
            
        * **hxxps://**[**www1.zonewebmaster.eu/news/**](http://www1.zonewebmaster.eu/news/)
            
        * **hxxps://**[**campfosterymca.com/**](http://campfosterymca.com/)
            
        * **hxxps://**[**idmpakistan.pk/**](http://idmpakistan.pk/)
            
        * **hxxps://**[**themasterscraft.com/**](http://themasterscraft.com/)
            
        * **hxxps://**[**unica.md/**](http://unica.md/)
            
        * **hxxps://**[**cargoboard.de/**](http://cargoboard.de/)
            
        * **hxxps://**[**www.supremesovietoflove.com/wp/**](http://www.supremesovietoflove.com/wp/)
            
        * **hxxps://**[**buildacampervan.com/**](http://buildacampervan.com/)
            
        * **hxxps://**[**www.minklinkaps.com/**](http://www.minklinkaps.com/)
            
        * **hxxps://**[**aradax.ir/**](http://aradax.ir/)
            
        * **hxxps://**[**medicit-y.ch/**](http://medicit-y.ch/)
            
        * **hxxps://**[**redronic.com/**](http://redronic.com/)
            
        * **hxxps://**[**www.ferienhausdehaanmieten.de/**](http://www.ferienhausdehaanmieten.de/)
            
        * **hxxps://**[**gravityforms.ir/**](http://gravityforms.ir/)
            
        * **hxxps://**[**apprater.net/**](http://apprater.net/)
            
        * **hxxps://**[**fotbalovavidea.cz/**](http://fotbalovavidea.cz/)
            
        * **hxxps://**[**usma.ru/**](http://usma.ru/)
            
        * **hxxps://**[**thetripschool.com/**](http://thetripschool.com/)
            

## **Tham khảo**

1. [Gootloader malware is back with new tricks after 7-month break](https://www.bleepingcomputer.com/news/security/gootloader-malware-is-back-with-new-tricks-after-7-month-break/)
    
2. [Gootloader | Threat Detection Overview | Huntress](https://www.huntress.com/blog/gootloader-threat-detection-woff2-obfuscation)
