Bối cảnh


Tải xuống một mô hình ngôn ngữ mã nguồn mở; thông thường điều bạn lo lắng là liệu nó có chạy đúng cách hay trọng số có thực sự thật. Lần này, điều đáng lo thật sự lại nằm ở chỗ khác: một kho lưu trữ gắn nhãn 27B tham số—nhưng khi đến tay bạn, thứ bạn nhận được chỉ có 487 KB. Bên trong không phải trọng số, mà là một mã độc đánh cắp thông tin (trojan) gián điệp.


Ngày 20 tháng 8 năm 2026, kho GitHub unburdened-jackinthebox365/qwen38-uncensored đã gửi lên thư mục assets/ một tệp có tên uncensored_qwen_v2.6.zip, với dung lượng 487.153 byte. Kho lưu trữ đã đóng gói nó theo cách gần như không thể bị phát hiện: trang chủ tuyên bố cung cấp trọng số lượng tử hóa cục bộ của Qwen 3.8 27B; README nhấn mạnh có thể chạy hoàn toàn ngoại tuyến, không có telemetry (gửi dữ liệu theo dõi), và dữ liệu không rời khỏi máy. Mỗi câu đều đúng “gu” của người dùng mô hình cục bộ. Bốn ngày sau, tức ngày 24 tháng 8, README lại được chỉnh sửa—nút tải xuống, liên kết tải xuống trong phần nội dung, cùng với hai liên kết bên ngoài trước đó vốn trỏ tới trang web chính thức của Ollama và LM Studio, tất cả đều được chuyển sang địa chỉ raw của cùng một tệp ZIP.

Đến đây, sơ hở đã trở nên rõ ràng: một mô hình định lượng Q4_K_M tham số 27B, khi lưu xuống thường vượt quá 16 GB; gợi ý do bin/install.cjs đi kèm kho in ra cũng ghi khoảng 16,8 GB. Nhưng tài sản thực sự nhận được lại chỉ có 487 KB; sau khi giải nén chỉ có ba tệp—Application.cmd, util.exe và cert.txt—không có trọng số GGUF nào.


Chúng tôi nhận định đây là một kho giả mạo phân phối tệp nhân danh Qwen; dự án chính thức của Qwen không bị xâm nhập. Kịch bản cài đặt Node.js trong kho về bề ngoài thực hiện quy trình « ghi Modelfile → gọi ollama create », lần này không thực hiện kiểm chứng động; phần mã chính của kho giữ nguyên hình thức của dự án thông thường, còn ZIP độc hại được gửi lên như một tệp tải xuống trong assets/. Chỉ kiểm tra mã nguồn thông thường mà không giải nén các tài sản tải xuống, có thể sẽ bỏ sót điểm vào này.


Bài viết chủ yếu dựa trên bằng chứng tĩnh, không chạy bất kỳ mẫu nào. Các yêu cầu C2 được tái hiện bằng dữ liệu máy chủ mô phỏng: chỉ đọc phản hồi và tải payload, không thực thi nội dung tải xuống và cũng không truy cập endpoint tải lên cuối cùng; phần mô tả hành vi trong bài viết thể hiện rằng trong mã có các cài đặt hoặc đường gọi tương ứng, chứ không có nghĩa là các thao tác đó đã thực sự xảy ra trên máy chủ thật.

Phản hồi của MistEye

MistEye là nền tảng hệ thống giám sát an ninh động và tình báo mối đe dọa Web3 do SlowMist tự phát triển, tích hợp khả năng giám sát an toàn và tổng hợp tình báo, cung cấp cho người dùng cảnh báo rủi ro theo thời gian thực và bảo vệ tài sản.
Trong sự kiện này, MistEye đã hoàn tất phân tích tĩnh đối với kho mồi, tài sản tải xuống và payload tiếp theo; sử dụng dữ liệu máy chủ mô phỏng để tái hiện yêu cầu C2 và lưu bằng chứng phản hồi và tải xuống, khôi phục chuỗi triển khai nhiều giai đoạn và trích xuất các IOC về mạng và tệp. Ngày 26 tháng 8, MistEye đã kiểm tra lại tình trạng sống của C2 và việc xoay vòng cơ sở hạ tầng phân phối, đồng thời đối chiếu hành vi ngoại tuyến đối với 29 ZIP tương tự trong 23 kho. Các IOC liên quan đã được tích hợp vào động cơ phát hiện mối đe dọa của MistEye.

Dưới đây là phân tích kỹ thuật chi tiết.

Ba tệp trong gói tải 487 KB


Toàn bộ nội dung của Application.cmd là một lệnh:

start util.exe cert.txt

Tính cả ký tự xuống dòng tổng cộng 25 byte. Nó không giải nén mô hình, cũng không gọi Ollama; chỉ dùng util.exe trong cùng thư mục để đọc một tệp văn bản, nhờ đó quyền điều khiển được chuyển cho script Lua trong cert.txt. Trong gói nén không có tệp nào khác—ba tệp này là toàn bộ nội dung.

util.exe có 759.808 byte, là trình thông dịch LuaJIT 2.1 đã được đổi tên. LuaJIT bản thân là runtime Lua được sử dụng bởi nhiều phần mềm hợp pháp. Đường dẫn PDB còn lại trong PE ghi D:\a\defold\...\luajit.pdb, trỏ tới sản phẩm đóng gói của engine game Defold. Phân tích tĩnh không phát hiện hành vi độc hại nào trong util.exe không phụ thuộc script; tệp này chỉ chịu trách nhiệm thực thi Lua bị che giấu trong cùng thư mục.

Tên của cert.txt giống giấy chứng nhận, nội dung là Lua dạng một dòng có 182.116 byte. Toàn bộ script không có một ký tự xuống dòng nào; chuỗi được tách thành escape thập phân và lệnh gọi theo bảng tra cứu, chỉ đọc trực tiếp thì chỉ thấy một mảng số và tên biến ngắn. Dưới đây là một đoạn nhỏ ở đầu tệp, để dễ đọc tôi ngắt theo câu và kết thúc bằng dấu (…) để rút gọn:

Hai hàm đầu chịu trách nhiệm lấy ký tự theo chỉ mục và sắp xếp lại thứ tự; từ dòng thứ ba trở đi là bảng chuỗi bị tản mát (string table). Các chuỗi bản rõ vài trăm trong script đều được lưu theo dạng này, chỉ đến lúc chạy mới ghép lại thành chuỗi ban đầu.

Vì vậy, điểm rủi ro không nằm ở cái gọi là chương trình mô hình. Gói nén cung cấp một trình thông dịch phổ dụng và một đoạn văn bản; toàn bộ logic độc hại đều nằm trong cert.txt.

图片
Hình ảnh

Phản hồi C2 đã bổ sung chuỗi triển khai tiếp theo

Sau khi giải trộn ngoại tuyến, cấu trúc của cert.txt đã rõ ràng. Nó duy trì một bảng chuỗi cỡ vài trăm mục; toàn bộ nội dung bản rõ được tách thành escape dạng số, lúc chạy sẽ khôi phục từng byte. Script phân tích bằng LuaJIT FFI và gọi các API Windows như VirtualAlloc, CreateThread…

Bộ nạp có số hiệu 845. Sau khi khởi động, nó thu thập hostname, username, GUID và phiên bản hệ thống; dùng BitBlt chụp một màn hình lưu thành BMP, rồi gửi một yêu cầu xác định vị trí địa lý bằng cách truy vấn giao diện IP; ghép các nội dung này thành một yêu cầu multipart POST tới 217[.]119[.]129[.]122 được mã hóa cứng. Dưới đây là yêu cầu thực tế mà chúng tôi đã tái tạo sau khi dựng lại script:

Chuỗi sau /api/ trong đường dẫn khi giải mã ra là mã số của client 517b7c5e5663656a057f. Ảnh chụp màn hình được đặt ở phân đoạn file; phần bắt đầu bằng BM chính là tiêu đề tệp BMP. Thông tin máy chủ được đặt ở phân đoạn data; cả hai nằm trong cùng một yêu cầu. Sau khi giải mã data, có các giá trị mô phỏng như computer=SIMULATED-PC&user=simulated-user&query=203.0.113.10, không khớp với bất kỳ máy chủ thực nào.


Các tác vụ do máy chủ gửi được xử lý theo phần mở rộng, bao gồm bốn loại: payload thực thi trực tiếp trong bộ nhớ, chương trình độc lập, DLL và script. Một loader có thể xử lý hầu hết các định dạng payload phổ biến. Trong script còn có các phần viết cho Defender loại trừ, tính bền vững (persistence) bằng tác vụ theo lịch và gửi lại kết quả khi hoàn thành tác vụ; ba mục này nằm trong các nhánh điều kiện và việc có kích hoạt hay không phụ thuộc vào cấu hình loader của máy chủ và điều kiện cục bộ. Lần lấy được cấu hình hiện chỉ bật persistence, các mục còn lại tắt. Chúng thuộc chức năng kích hoạt theo điều kiện, nên không có nghĩa là thao tác tương ứng đã được hoàn tất trên máy chủ thật.


Khi địa chỉ được mã hóa cứng không còn hiệu lực, loader vẫn có một đường dự phòng. Nó sẽ gửi một eth_call tới chuỗi Polygon để đọc giá trị trả về của selector 0x3bc5de30 trên hợp đồng 0x1823A9a0Ec8e0C25dD957D0841e3D41a4474bAdc; từ đó phân tích ra C2 dự phòng. Lần đo thực tế lần này giải ra 194[.]48[.]248[.]94:

Tiền tố độ dài 0x14 là 20, đúng bằng số ký tự trong địa chỉ sau khi giải mã; hai chỗ xác nhận lẫn nhau. Đoạn hex này không cần phụ thuộc vào script giải mã của chúng tôi—chỉ cần tra một bảng ASCII là có thể tự kiểm chứng. Trong năm endpoint RPC được cấu hình trong script, ba endpoint trả về dữ liệu ở trên và khớp từng byte; một endpoint yêu cầu đăng ký trả phí, còn một endpoint thì từ chối thẳng. Sau khi ghi địa chỉ vào hợp đồng chuỗi công khai, việc thay máy chủ chỉ cần gửi một giao dịch; việc chỉ chặn riêng IP dự phòng hiện tại không thể ngăn việc hợp đồng tiếp tục trả về địa chỉ mới.

Sau khi đối chiếu và chỉnh định dạng yêu cầu, mô phỏng beacon 845 nhận được HTTP 200, JSON có 1.248 byte.


Các trường phản hồi trải qua ba lớp mã hóa; hướng giải mã là Base64 → hex thường (lowercase) → XOR vòng lặp 32 byte; khóa XOR ECe6VGLRJum2qYtl79OiOU7aHot7Zhbn được viết ngay trong script. Hai đoạn dưới đây là cùng một phản hồi trước và sau khi giải mã; mỗi đoạn chụp/gắt lấy 56 ký tự đầu:

Giải ra là một chiến lược loader và một tác vụ:

Trường pump điều khiển việc có dùng dữ liệu ngẫu nhiên để mở rộng tệp ghi xuống đến kích thước chỉ định bởi máy chủ hay không; trong tác vụ hiện tại, công tắc này đang tắt.

Nhiệm vụ tải về một tệp có tên `tool.log` đến `%TEMP%\dist.lua` và thực thi. Tệp này có 396.616 byte, toàn bộ là ASCII hex; giải mã hex rồi XOR sẽ tạo ra lớp Lua đã bị che giấu (obfuscated) có 198.308 byte. Đây là bộ nạp thứ hai, số 847; C2 ban đầu đổi thành `217[.]119[.]129[.]97`, bố cục che giấu đồng cấu trúc với 845. Dùng cùng dữ liệu mô phỏng để chạy bộ nạp 847, nó gửi beacon tới `217[.]119[.]129[.]97`; máy chủ trả về hai tác vụ.

Trong hai tác vụ, một tác vụ vẫn là `tool.log`, tác vụ còn lại trỏ đến `verb.log` trong cùng kho; đường dẫn ghi xuống là `AppData\..\Local\Programs\Chromium\Application\Chromium.exe`. Cái `..` ở giữa thực hiện vượt đường dẫn tới LocalAppData, và cuối cùng tên tệp bị ngụy trang thành chương trình chính của trình duyệt Chromium.

tool.log, verb.log và hai PE còn lại đều đến từ phản hồi của C2 và được tải xuống ghi lên đĩa; trong ZIP gốc không có các tệp này. ZIP bản thân chỉ chứng minh bộ nạp có khả năng tải xuống và thực thi; phản hồi C2 đã lưu cho thấy rằng tại thời điểm thu thập, máy chủ đã gửi các tác vụ tải xuống tiếp theo cho loaderId 845.

Payload StealC được giải mã từ verb.log

Giải nén và tải


verb.log 3.089.408 字节,同样是 ASCII hex,变换链是 hex/XOR → 外层 PE → Base64URL/AES → 内层 PE。用同一把 XOR 密钥解开得到 1.544.704 字节的 64 位外层 PE,其资源段里的 Base64URL 文本解码为 797.728 字节的 AES-256-ECB 密文。密钥 bFYh8UMQGZOBUlvrpS3M4ZJybbubVbvg 由外层 PE 对两段常量数组推导得到、可静态还原,解密得到同样 797.728 字节的第二个 64 位 PE。


PE lớp ngoài tự ánh xạ (map) payload PE lớp trong trong chính tiến trình của nó: cấp phát bộ nhớ, sao chép header và các section, chỉnh sửa bảng relocation và bảng import, tạo luồng và khởi động bằng điểm vào (entry point). Trong chuỗi gọi tĩnh không có các API tiêm xuyên tiến trình như CreateProcess, WriteProcessMemory, SetThreadContext, ResumeThread—toàn bộ quá trình là tải nạp phản xạ trong tiến trình (in-process reflection loading).

Kiểm tra môi trường


Payload bên trong trước tiên kiểm tra môi trường: nếu ngôn ngữ hệ thống mặc định khớp với một trong các ngôn ngữ tiếng Nga, tiếng Ukraina, tiếng Belarus, tiếng Kazakhstan, tiếng Uzbekistan thì thoát; sau đó dùng tên sự kiện (Event) ghép từ thông tin máy chủ để kiểm soát một phiên duy nhất, rồi xác minh ngày hết hạn được nhúng; tất cả đều đạt thì mới chuyển sang logic chính.

Thu thập mục tiêu

  • Trình duyệt: Chrome, Edge, Brave lấy dữ liệu đăng nhập, cookie, lịch sử và các cơ sở dữ liệu liên quan; Firefox gọi các interface NSS để giải mã thông tin đăng nhập đã lưu. Khi cơ sở dữ liệu bị khóa thì dùng Restart Manager để kết thúc tiến trình đang chiếm giữ.

  • Thư và vận hành: thông tin đăng nhập tài khoản Foxmail và Outlook, thông tin phiên WinSCP; trong đó phiên WinSCP trực tiếp tương ứng với máy chủ mà nạn nhân có thể truy cập.

  • Steam: cấu hình đăng nhập, token và tệp sentinel.


Từ Chrome 127 trở đi, cookie và mật khẩu đã lưu được bảo vệ bởi App-Bound Encryption; khóa được lưu trong dịch vụ cấp hệ thống, chỉ sao chép tệp cơ sở dữ liệu thì không lấy được bản rõ. Vì vậy payload tích hợp một PE trợ giúp, dùng Early-bird APC injection để đưa vào chrome.exe/brave.exe/msedge.exe đang ở trạng thái treo; module trợ giúp bên trong tiến trình trình duyệt đọc App-Bound Key đã được mã hóa, thông qua cổng COM Elevation tương ứng của từng trình duyệt sẽ xuất ra khóa bản rõ 32 byte để các tệp cơ sở dữ liệu đã thu thập trước đó có thể được đọc lại.


Việc thu thập ví hoàn toàn do máy chủ điều khiển: bộ thu thập đệ quy phân phối các tác vụ được C2 gửi theo từng loại, nhánh wallets sẽ tra cứu theo tên tác vụ và tên tệp trong thư mục nội bộ; C2 cũng có thể gửi kèm ID mở rộng, để thu thập dữ liệu lưu trữ và IndexedDB của các tiện ích Chromium tương ứng. Trong bản mã rõ không có tên thương hiệu ví và đường dẫn cài đặt, cũng không có việc triển khai cách phân tích các cụm từ ghi nhớ BIP39, secp256k1 hoặc khóa riêng—việc thu thập ví nào do máy chủ quyết định khi gửi tác vụ; danh sách mục tiêu của vòng này không được nêu trong mẫu tĩnh.

Tải lên và quy kết

Payload còn có các chức năng như chụp màn hình, thu thập thông tin hệ thống và danh sách tiến trình, dùng PowerShell để tải xuống và thực thi lần hai, leo thang đặc quyền, và tự xóa khi thoát.

Việc tải dữ liệu lên thực hiện qua JSON POST chia theo phân mảnh 512 KiB. Endpoint tải lên trong tệp được mã hóa bằng RC4 rồi lưu ở dạng Base64; giải mã bằng khóa cấu hình 55uUe45tr1x1xy1lSK cho ra http[:]//89[.]169[.]12[.]194, còn phần body yêu cầu lại được mã hóa bằng một khóa RC4 khác.

StealC là một loại Trojan chuyên dùng để đánh cắp thông tin đăng nhập của trình duyệt, cookie, ví mã hóa và các dữ liệu nhạy cảm khác, sau đó gửi tới C2 của kẻ tấn công. Phạm vi thu thập của payload bên trong, phần hỗ trợ giải mã App-Bound, nhánh ví và việc tải lên được mã hóa bằng RC4… đều khớp với các đặc trưng đã biết của StealC, vì vậy chúng tôi xếp nó vào nhóm StealC.
Nếu các tài liệu này được lấy thành công, hậu quả sẽ khác nhau: cookie của trình duyệt tương ứng phiên đăng nhập đã bị chiếm quyền; thông tin email và Steam tương ứng tài khoản sẽ bị mất; phiên WinSCP tương ứng máy chủ mà nạn nhân vận hành. Một khi khóa riêng ví hoặc cụm từ ghi nhớ bị rò rỉ, việc chuyển tài sản sẽ không thể hoàn tác.

Xác minh lại: cơ sở hạ tầng phân phối đang được xoay vòng


Ngày 26 tháng 8, chúng tôi dùng cùng dữ liệu máy chủ mô phỏng để gửi lại ba đoạn beacon. Cả ba endpoint đều trả về HTTP 200, trường chiến lược loader không thay đổi từng chữ. Sự thay đổi nằm ở địa chỉ tải xuống trong tác vụ.

vs.log và tool.log cũ giống hệt từng byte, chỉ đổi tên; bộ nạp 847 không có thay đổi. Sau khi giải mã ssl.log là phiên bản mới của lớp ngoài PE, kích thước 1.539.072 byte; địa chỉ entry và kích thước hình ảnh đều thay đổi, khóa AES cũng được xoay vòng thành yK8-eM8KFA8Hl8cCybERmOLZupFvfCNZ。

Payload lớp trong giải mã bằng khóa mới vẫn có dung lượng 797.728 byte. So sánh từng byte với phiên bản cũ, toàn bộ tệp chỉ khác đúng một chỗ, nằm ở đoạn dữ liệu chỉ đọc; mã build báo cáo lên máy chủ từ build5 đổi thành build1. Endpoint tải lên, khóa cấu hình RC4 và khóa của body yêu cầu đều khớp hoàn toàn.

Đổi kho, đổi tên tệp, cập nhật PE lớp ngoài, đổi khóa AES—các hành động này làm cho hash chính xác của các tệp cũ không còn hiệu lực. Liệu cấu trúc ổn định và đặc trưng hành vi có còn khớp được hay không cần kiểm chứng bằng các quy tắc cụ thể. Bản thân payload đánh cắp trong hai ngày này vẫn giữ ổn định, chỉ thay một nhãn phiên bản; đây là quan sát giữa hai ngày thu thập, chưa đủ để kết luận rằng nó sẽ không thay đổi trong thời gian dài hơn.


Nhiều kho GitHub độc hại hơn


Chúng tôi cũng thu thập 29 mẫu ZIP độc hại nằm trong 23 kho GitHub. Kiểm tra ban đầu cho thấy tất cả các mẫu đều dùng Lua như một phần của chuỗi thực thi; các dạng phổ biến bao gồm việc các launcher .cmd hoặc .bat gọi LuaJIT cục bộ hoặc bộ thông dịch được đổi tên, rồi tiếp tục thực thi script Lua trong cùng thư mục. Chủ đề mồi (bait) của các kho liên quan bao phủ nhiều nhóm như mô hình và công cụ AI, dịch vụ MCP, script phát triển và dự án ví.

Cần lưu ý rằng hiện nay chúng tôi chưa thực hiện hoàn nguyên đầy đủ mã và phân tích toàn bộ chuỗi tấn công cho từng trong số 29 mẫu này, vì vậy bằng chứng hiện có chỉ có thể xác nhận rằng chúng đều có hành vi độc hại và cùng sử dụng stack công nghệ Lua; không thể kết luận rằng tất cả mẫu đều sử dụng phương thức che giấu, quy trình thực thi, hạ tầng C2 hoặc payload cuối cùng hoàn toàn giống nhau.


Tóm tắt


Một kho GitHub giả mạo Qwen chỉ vào điểm tải xuống của ZIP 487 KB: trong gói không có trọng số mô hình, chỉ có một trình thông dịch LuaJIT và một script bị che giấu. Phản hồi C2 được lưu liên quan đến payload đánh cắp bên trong, nên chúng tôi xếp nó vào StealC.


Rủi ro liên quan đến phiên trình duyệt, email và thông tin vận hành, token Steam và tài liệu liên quan đến ví—giả định rằng các tài liệu tương ứng được lấy thành công. Giữa hai lần thu thập, kho phân phối, tên tệp, PE lớp ngoài và khóa AES đã thay đổi; còn payload lớp trong chỉ khác một ký tự trong mã build. 29 ZIP tương tự rải trong 23 kho cho thấy khung tải (deployment) này đã được tái sử dụng hàng loạt; toàn bộ chuỗi tải tiếp theo của từng biến thể vẫn cần xác nhận từng mẫu một.


Khuyến nghị

1. Cô lập và thu thập hiện trường: khi máy chủ trúng các ZIP, hash của script, C2 hoặc URL tải xuống được liệt kê trong bài viết, hãy trước hết lưu nguồn tải xuống, cây tiến trình, nhật ký kết nối mạng và tệp đã ghi xuống; sau đó mới tiến hành dọn dẹp.

2. Kiểm tra thay đổi trên máy chủ: nếu phát hiện các bản ghi thực thi của launcher, hoặc các bản ghi tải LuaJIT hoặc bộ thông dịch đổi tên để nạp văn bản bị che giấu cỡ lớn, hãy kiểm tra tác vụ theo kế hoạch, phím Run và mục StartupApproved, đồng thời xác nhận xem danh sách loại trừ của Defender có được thêm vào đĩa hệ thống hoặc các phần mở rộng .exe, .dll hay không.

3. Xử lý thông tin đăng nhập: khi xác nhận mẫu thực thi hoặc phát hiện tải trọng (payload) tương ứng đã rơi xuống, hãy đặt lại phiên trình duyệt và các mật khẩu đã lưu, tài khoản email, mã token Steam và thông tin phiên WinSCP; nếu trên máy chủ có lưu khóa riêng ví hoặc cụm từ ghi nhớ, trước tiên hãy chuyển tài sản sang địa chỉ mới, rồi mới xử lý chính máy chủ.

4. Tăng phát hiện kết hợp: thêm chuỗi « launcher nhỏ → LuaJIT cục bộ hoặc trình thông dịch đã đổi tên → văn bản một dòng cỡ lớn trong cùng thư mục → gửi yêu cầu HTTP hoặc ghi vào bộ nhớ thực thi » vào các quy tắc giám sát. Chuỗi này đều mượn các dịch vụ hợp pháp; việc phán đoán dựa trên tổ hợp hành vi, kết hợp với các URL độc hại chính xác được liệt kê trong bài viết; không chặn toàn diện Raw GitHub hoặc public Polygon RPC.

IOC


IP


217[.]119[.]129[.]122


194[.]48[.]248[.]94


217[.]119[.]129[.]97


89[.]169[.]12[.]194


URL


http[:]//217[.]119[.]129[.]122/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=


http[:]//217[.]119[.]129[.]97/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=


https[:]//raw[.]githubusercontent[.]com/unburdened-jackinthebox365/qwen38-uncensored/main/assets/uncensored_qwen_v2[.]6[.]zip

 

https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/tool[.]log

 

https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/verb[.]log

https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/vs[.]log

https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/ssl[.]log

                 

Phụ thuộc độc hại

                 

https[:]//github[.]com/unburdened-jackinthebox365/qwen38-uncensored

                 

https[:]//github[.]com/Minaadelfouad64/tools

                 

https[:]//github[.]com/fuhuhlatoogan/mtp

                 

https[:]//github[.]com/0ogata0/qwen-php-client

                 

https[:]//github[.]com/115th-discomfited211/Awesome-Harness-Engineering

                 

https[:]//github[.]com/123affano1/claudetrack

                 

https[:]//github[.]com/1sustgmboab/nexonco-mcp

                 

https[:]//github[.]com/2josEx/claude-brain

                 

https[:]//github[.]com/428alexander9/claude-skills-marketplace

                 

https[:]//github[.]com/45d5r/databricks-mcp-server

                 

https[:]//github[.]com/7ossamfarid/mcp-mindmesh

                 

https[:]//github[.]com/Bean5789/bbd2api

                 

https[:]//github[.]com/CleverPortal/CollabNote-Fullstack-App

                 

https[:]//github[.]com/Juanvil9941/AI-Invoice-System

                 

https[:]//github[.]com/Kalainilavann/takeout_downloader_script

                 

https[:]//github[.]com/Prestonflatfooted659/Void-Tools-v2.0

                 

https[:]//github[.]com/Walloperlioncub193/Canva-Resource

                 

https[:]//github[.]com/archontelemetered604/clash-for-windows

                 

https[:]//github[.]com/fantastic-interpolation620/ctx-wire

                 

https[:]//github[.]com/mikenob39wang/phone-number-location-tracking-tool

                 

https[:]//github[.]com/recognisable-riddance165/Portable-Offline-LLM

                 

https[:]//github[.]com/sociologisttentcaterpillarmoth213/100xdev-ci-cd

                 

https[:]//github[.]com/soldat-panther/qq-farm-cdp-auto

                 

https[:]//github[.]com/thaddeusprobabilistic193/Xault-Wallet

                 

https[:]//github[.]com/twelfth-puerperium297/tokenoptim

                 

https[:]//github[.]com/wasila7220/multi-model-router

                 

Tệp độc hại

                 

filename: uncensored_qwen_v2.6.zip
MD5: bf21a07ad5743d3ae9f55ff526428a0a
SHA1: 8e3391c17c3f4fb6f42594de7425df96dbbbc01e
SHA256: 36d0bac5743ed9c6858258f28f2c2f9161dc06c4d5af73eb7eda1211ea610758

                 

filename: Application.cmd
MD5: 17d94f34b9d15449b03bc099a637782b
SHA1: eb474f898256e8e7baaf0d63b306d1169e637c73
SHA256: 7c4f3e09c6428d0a0d7d85615695f5fedb35bb4e7180d31e1f8a1bacf22e5639

                 

filename: cert.txt
MD5: ccfc0f145861f23c6850c691c4be54b9
SHA1: b88ac887493f31cf9f160ddbc6bc3a2aa298a0ca
SHA256: a75561a3224d9f836058a6d0204ed2e6c1f638275a59495935cd2a5e46fd28ca

                 

filename: tool.log,vs.log
MD5: 8063ba8ec896b52e5e6d435cc60e82f7
SHA1: f445bd4c5b65b7e013ec518f34f4cd64676201d2
SHA256: 7ebbb61733d8aefcf9401f00e8ff7e593c9f0edecb6609675aebd3eb78a5ae2d

                 

filename: verb.log
MD5: 650a8ee5d091275040ae4dd02dcdd806
SHA1: 343d819ceb63c742912723c42fd158b82d0a90be
SHA256: 699af883d862d8949a494f69e2d300142ce506a0ac6c7a239193c111dfed241e

                 

filename: inner-payload.aes256-ecb-decrypted.bin
MD5: 01e433263a7fd50e812195ff4c11cc90
SHA1: ea53a41c53181374cade8d69882bb1390f0c2562
SHA256: ec981c45d494896037583c746543490176c9ce9a1482e62c4e8ab189c2650b1c

                 

filename: ssl.log
MD5: 9d11bce9c213924b53bcb986f07945c6
SHA1: 2abf1436933dc6b63a016661d5d16f1eda303b59
SHA256: 7b0d919bd510cbcc587cca4b74aad1e086fb1fc34882a39946e6db7d4361a746

                 

filename: inner-payload.build1.bin
MD5: 370f95bf40a9c9fe852b2e4bdd95689f
SHA1: 219a0e7c3907bb65ef7db7428400745570d4e105
SHA256: 5d63f3dc9371d4496ca0e728a794151978e94b69ae4b3c705cea4e67cc6cf208

                 

filename: client_qwen_php_v2.4.zip
SHA256: 073c6192ab4c2d5d25fc13acab4c216c96f9d5926064c534e3803bb31d527b28


filename: Engineering_Harness_Awesome_1.9.zip
SHA256: 0870fe8a4d9e64e335047e16ed1d6b0805beab9686495a1e8c247cf2e1a8e930

                 

filename: Software_v1.6.zip
SHA256: 71b37b48f80106fc864be7e82481cd1a2f7decfeaf1dce45abb924d7f32da933

                 

filename: nexonco-mcp-v3.0-alpha.1.zip
SHA256: a866d90d6f1dd82ddcd2cbef4f5550c77bb58dbda87c02eedb441a117b7d89b9

                 

filename: claude-brain-v1.4-alpha.3.zip
SHA256: a271231ebf6174b11aeb3337c238abc0eac44b48b5fa8d2b168883601d8cc3a5

                 

filename: brain_claude_2.2-alpha.1.zip
SHA256: ca4babb4444af81cf93b34436de7a4a3c8e1a93f6233bcc8753ddd868b4c9eaa

                 

filename: claude-skills-marketplace_v3.4.zip
SHA256: 438033226b1bd1e26db8ab71a777e74cc90b5c31310139269fe8e52308f6c938

                 

filename: skills-marketplace-claude-2.9.zip
SHA256: f07a4eadd43513f56ae4fdf6f6dfc966de17f06093c75c1dec0dd426668779f9

                 

filename: server_databricks_mcp_1.6.zip
SHA256: 66afc7d87d10dbe392898c4e5c613e0442fabb396415c2bef3a5ef2ac752c5ad

                 

filename: mindmesh_mcp_1.0-alpha.5.zip
SHA256: e8da8c82ccb1c6fd68e7c03187485d6ebbd07a4946a7f07cac54fef65b00d2bf

                 

filename: bbd-api-3.1.zip
SHA256: 3524dc4a232c76067f8b2df9adf34ae1106dcc1528e5467c1abc285fc51d1e82

                 

filename: Note-Collab-App-Fullstack-v3.6-alpha.5.zip
SHA256: 6f823d15658b07d6d90f292848fcdd30fe840f83d653cc34966e2fd61d9c3117

                 

filename: Invoice_A_System_3.9.zip
SHA256: 8332d91619563e46e248f427cf489f8bd61a83124eb4c95749ce284b443a2803

                 

filename: downloader-script-takeout-v1.1.zip
SHA256: 8412f2d2b47181f272b0c0e02fe619331e0c2c8d3b90f32e8ce08ac98aaec3f6

                 

filename: downloader_takeout_script_v3.8.zip
SHA256: b781102c6ff857fb45089a6b3d30c5ebb7699ec7e8771bfa0039bef28de782bd

                 

filename: takeout-downloader-script-galvanocauterization.zip
SHA256: 13dc7623c66d1fed51ae94b0d96e8ed45c93d893afabf9aceb4ef0a8da0243ee

                 

filename: Void-v-Tools-v1.7.zip
SHA256: 841d0c25137f35b60d940705ab7b5dc3e9936f37e0561934e72c5dafe93466d8

                 

filename: Resource-Canva-2.2.zip
SHA256: ac6a24d02209df94f56f67e7f3f19dc997f7a2625b91add1dd10cdec0a06d392

                 

filename: for-clash-windows-3.2.zip
SHA256: 036062622f3a1fa2718afc91f8fe4edc693b757365dfc2c0958b70fe8c84c20d

                 

filename: wire-ctx-2.6-alpha.1.zip
SHA256: db0640eb414a89bb62953f0aa7603557f3b8de515e7c3696156abc10f835ecef

                 

filename: location-tracking-tool-phone-number-v3.3.zip
SHA256: 3fc5816afde3e58bf9fcaa1b3873f2d4bc8629ee7a8341a4a4979d2729cad5e6

                 

filename: location_number_tracking_tool_phone_v2.5.zip
SHA256: 398ea394f9a4242ebe9fd67a5ca62445fc4a34b1731d4f99b8eea5e65a98ddcb

                 

filename: tracking-tool-location-number-phone-3.2.zip
SHA256: b6e81d95c0c336e8b8bde3889f4df4ee17639f6ff055c631de19cab3c7efb63b

                 

filename: Offline_LLM_Portable_v2.1-alpha.1.zip
SHA256: 1313b6cfb1ea43367fdd845f64526b4972a3a345bb8b13cef7ebb678d59b5f55

                 

filename: ci_cd_xdev_v2.3-alpha.3.zip
SHA256: ed1ae6799ecb1fc7c5239c4ab95b3b9de9462f21219f144a25b91b6fd430a2c2

                 

filename: farm-cdp-qq-auto-1.1.zip
SHA256: 6145aeacba6533e10dcea287d0fff64c48a790c58ae266ed18ea5d13c36d27ca

                 

filename: v3.9.zip
SHA256: a0dd4924bec9bc077b1f98ddcb45b4e07b01e63ad703c2507d822b5b5130a077

                 

filename: Software-Lithodes.zip
SHA256: 40c2b7b8dcfa6bfe0a199af9ea4baa00a4b8ecd73afa326702cdc4197d64bdef

                 

filename: model-multi-router-v3.5-beta.1.zip
SHA256: 152929ae778e6ed9f358ca8590d2155e1a04137b109a5442891e1ba3fe1a7f82


Về MistEye


MistEye là nền tảng nền tảng giám sát an ninh động và tình báo mối đe dọa Web3 do SlowMist tự phát triển; thông qua API cung cấp khả năng phát hiện hoạt động độc hại và cảnh báo rủi ro chuỗi cung ứng trong hệ sinh thái gói mã nguồn mở.


Tất cả các gói độc hại và IOC liên quan đến hoạt động lần này đã được tích hợp vào công cụ phát hiện mối đe dọa của MistEye; nhà phát triển có thể dùng API để kiểm tra tự động các phụ thuộc của dự án, nhanh chóng xác định liệu có trúng gói độc hại đã biết hay không và nhận khuyến nghị xử lý.

                 

📖 Tài liệu API: https://app.misteye.io/api-docs


🛠️ MistEye-DepScan:https://github.com/slowmist/MistEye-DepScan
Công cụ CLI nhẹ: chỉ với một lệnh để quét các phụ thuộc của dự án và các gói đã cài đặt toàn cục có chứa các gói độc hại đã biết; hỗ trợ hệ sinh thái npm / PyPI / Cargo / Go / RubyGems


🛠️ MistEye-Skills:https://github.com/slowmist/misteye-skills
Gói kỹ năng bảo mật của trợ lý mã hóa AI, tự động kích hoạt kiểm tra bảo mật MistEye trước khi cài đặt phụ thuộc và truy cập URL


🛠️ MistEye-DNS-Guard:https://github.com/slowmist/MistEye-DNS-Guard
Công cụ bảo vệ an toàn DNS, phát hiện tên miền độc hại và truy cập rủi ro, nhận diện các mối đe dọa mạng như phishing, C2…


Bài viết được viết bởi nhóm Threat Intelligence của SlowMist kết hợp với hệ thống Threat Intelligence MistEye và phân tích do SlowMist Agent AI điều khiển; nếu có bất kỳ vấn đề nào, hoan nghênh liên hệ và phản hồi.


Tham khảo


[1]https://x.com/OpcodeIntel/status/2091578565628502324

[2]https://www.microsoft.com/en-us/security/blog/2026/06/24/stealc-and-amadey-breaking-down-infostealers-and-the-cybercrime-services-that-deliver-them/

[3]https://security.googleblog.com/2024/07/improving-security-of-chrome-cookies-on.html