PhantomBot ពីការលួចព័ត៌មានសម្ងាត់ទៅជា Botnet

PhantomBot៖ យុទ្ធនាការ Typosquat ដែលបានបង្វែរពីការលួចព័ត៌មានសម្ងាត់ទៅជាឧបករណ៍ Botnet ដែលអាចប្រើប្រាស់បានភ្លាមៗ

​មាតិកា

ប្រកាសដែលត្រូវតែអាន

ប្រកាសថ្មីៗបំផុតដែលគួរឱ្យចាប់អារម្មណ៍

TL; កុង

អ្នកបោះពុម្ពផ្សាយ npm តែមួយ deadcode09284814បានធ្វើយុទ្ធនាការ typosquat ប្រឆាំងនឹងអ្នកស្របច្បាប់ axios និង chalk-template កញ្ចប់ចាប់តាំងពីពាក់កណ្តាលខែឧសភា ឆ្នាំ២០២៦។

យុទ្ធនាការនេះបានចាប់ផ្តើមជាចោរលួចអត្តសញ្ញាណប័ណ្ណ និងកាបូបលុយធម្មតា ដោយលួចយកទិន្នន័យទៅជា... ផ្លូវរូងក្រោមដី Serveo HTTPS.

On 2026-05-17ជាមួយនឹង axois-utils:1.0.9ប្រតិបត្តិករបានប្តូរ payload ទាំងស្រុង៖ រនាំងដំឡើងបីជាន់ដូចគ្នា អ្នកបោះពុម្ពផ្សាយដូចគ្នា ឈ្មោះកញ្ចប់ដូចគ្នា។

ប៉ុន្តែស្គ្រីបដំឡើងឥឡូវនេះគឺជាការជ្រើសរើស botnet DDoS ឆ្លងវេទិកា។

បន្ទុកនិយាយទៅកាន់ localhost.run រូងក្រោមដី និងទទួលយកពាក្យបញ្ជាទឹកជំនន់ ដោយប្រែក្លាយបរិស្ថានដែលឆ្លងមេរោគទៅជាផ្នែកមួយនៃ botnet ដែលមានសមត្ថភាព DDoS។

ប្រតិបត្តិករថែមទាំងបានដឹកជញ្ជូន ប្រព័ន្ធគោលពីររបស់ម៉ាស៊ីនបម្រើ C2 នៅខាងក្នុង tarball ដែលបង្ហាញពីការកើនឡើងយ៉ាងច្បាស់ពីការលួចព័ត៌មានសម្ងាត់ទៅជាហេដ្ឋារចនាសម្ព័ន្ធ botnet សកម្ម។

កញ្ចប់ពីរ កំណែបួននៅតែសកម្មនៅលើបញ្ជីឈ្មោះ និងប្រតិបត្តិករមួយឥឡូវនេះកំពុងដំណើរការម៉ូឌុលទាំងពីរស្របគ្នា។

ភាពធ្ងន់ធ្ងរ៖ ខ្ពស់។

ចំណងជើង IOC កំណែ axois-utils ឬ chalk-tempalte ណាមួយពីអ្នកបោះពុម្ពផ្សាយ deadcode09284814

ការវាយប្រហារ៖ របៀបដែលវាដំណើរការ

យុទ្ធនាការនេះត្រូវបានបង្កើតឡើងនៅលើរនាំងចែកចាយដែលគួរឱ្យធុញដោយចេតនា៖ ឈ្មោះកញ្ចប់ typosquat ពីរ អក្សរមួយខុសពីកញ្ចប់ដែលមានការទាញយករាប់រយលានដងជារៀងរាល់សប្តាហ៍ (axios, គំរូដីស) និងការដំឡើងបីដង hooks ដែលធានាការប្រតិបត្តិ។ អ្វីដែលគួរឱ្យចាប់អារម្មណ៍នោះគឺអ្វីដែលជារនាំង ដឹក — និងការពិតដែលថាប្រតិបត្តិករបានផ្លាស់ប្តូរទំនិញដោយមិនបានផ្លាស់ប្តូរអ្វីផ្សេងទៀត។

រនាំងដែលបានចែករំលែក

កំណែដែលបានបោះពុម្ពផ្សាយនីមួយៗនៃកញ្ចប់ទាំងពីរប្រកាសពីវដ្តជីវិតទាំងបីដូចគ្នា។ hooks in កញ្ចប់:

រាយបញ្ជីបន្ទុកនៅក្រោមទាំងបី hooks គឺហួសហេតុពេក - ក្រោយការដំឡើង តែម្នាក់ឯងនឹងដំណើរការតាមលំនាំដើម ល្ងាចដំឡើងជម្រើសគឺសំខាន់ណាស់៖ npm ដំឡើង - មិនអើពើស្គ្រីប រំលងស្គ្រីប ប៉ុន្តែលំហូរការងារទូទៅមួយចំនួន (ឃ្លាំងសម្ងាត់ CI ស្ដារវដ្តជីវិតដែលដំណើរការឡើងវិញ) hooks ជាជម្រើស ឬអ្នកអភិវឌ្ឍន៍ដែលធ្វើសវនកម្មតែប៉ុណ្ណោះ ក្រោយការដំឡើង) ធ្វើសេចក្តីប្រកាសបីដងដែលមានន័យថា ជាការភ្នាល់ដែលមានសុវត្ថិភាពបំផុតសម្រាប់អ្នកវាយប្រហារ។

គំរូដីស បន្ថែមយន្តការទីពីរ៖ វាប្រកាស axois-utils:^1.0.7 ជា​ពេល​ដំណើរការ ភាពអាស្រ័យការដំឡើង typosquatted គំរូដីស ដូច្នេះ​ទាញ typosquat ដែលជាបងប្អូន​ចូល​មក​ដែរ ហើយ​បន្ទុក​ផ្ទុក​ទាំងពីរ​ដំណើរការ។ កញ្ចប់​ទាំងពីរ​គឺជា​គូ​ដែល​សម្របសម្រួល​គ្នា មិនមែនជា​បញ្ជី​ឯករាជ្យ​ទេ។

ដំណាក់កាល A — អត្តសញ្ញាណប័ណ្ណ / អ្នកលួចកាបូប (2026-05-15 → បច្ចុប្បន្ន)

ដំណាក់កាល A គឺជាបន្ទុកដើម។ ឧបករណ៍ផ្ទុកគឺជាឧបករណ៍ខ្លីមួយ ក្រោយការដំឡើង.js ដែលចង្អុលទៅផ្លូវរូងបញ្ច្រាស Serveo HTTPS៖

ដែនរង Serveo អ៊ិនកូដ IP គោលដៅ (80.200.28.28) ដោយផ្ទាល់នៅក្នុងឈ្មោះម៉ាស៊ីន — អនុសញ្ញាដែលអាចស្គាល់បានសម្រាប់សេវាកម្មនោះ។ ប្រតិបត្តិករបង្វិលបុព្វបទដែនរងចៃដន្យរវាងកំណែនានា ដើម្បីគេចពីបញ្ជីរារាំងដែនដែលមិនទាន់បានកំណត់ ប៉ុន្តែ IP មូលដ្ឋានមិនដែលផ្លាស់ប្តូរទេ។chalk-tempalte: ១.០.១៤ ដែលប្រើ 8a3e818ea8f11186-80-200-28-28…ការប្រើប្រាស់ 1.0.16 / 1.0.19 / 1.0.20 f04a273bd84c0622-….)

ក្រោយការដំឡើង.js ដៃ​ចេញ​ទៅ phantom.jsម៉ូឌុល “អ្នកប្រមូល” ដែល​មាន​កញ្ចប់​ចំនួន 7,667 ខ្សែ។ phantom.js ដើរជាមួយម្ចាស់ផ្ទះសម្រាប់៖

កូនសោឯកជន SSH (~/.ssh/*)
.npmrc មាតិកា និងណាមួយ npm_* ថូខឹន env
ឯកសារ​បញ្ជាក់​អត្តសញ្ញាណ AWS, GCP និង Azure
GitHub regex ថូខឹនចូលប្រើផ្ទាល់ខ្លួន (ghp_*, gho_*, ghu_*, ghs_*)
វត្ថុបុរាណកាបូបលុយឌីជីថលសម្រាប់ Bitcoin, Exodus, Electrum, Monero, Litecoin, Dogecoin, Zcash, Dash
ការ​ហៅ​ឡើងវិញ .env* ដើរឆ្លងកាត់ ~/projects, ~/dev, ~/code, ~/workspaceនិង cwd ដំឡើង
ប្រវត្តិសែល និងពេញលេញ process.env

បាច់ត្រូវបានបង្ហោះទៅកាន់ផ្លូវរូងក្រោមដី Serveo នៅ / ប្រមូលមិនមានការបិទបាំង គ្មានតក្កវិជ្ជាប្រឆាំងនឹង VM គ្មានការរៀបចំ — ការភ្នាល់របស់ប្រតិបត្តិករគឺទៅលើបរិមាណ និងល្បឿន។

ដំណាក់កាល B — ការជ្រើសរើស PhantomBot DDoS (2026-05-17, axois-utils:1.0.9 តែប៉ុណ្ណោះ)

ដំណាក់កាល B ជំនួស phantom.js + postinstall.js ជាមួយឯកសារតែមួយដែលមានឈ្មោះថា distrube.js (កំហុសវាយអក្សរគឺជាប្រតិបត្តិករ)។ រចនាសម្ព័ន្ធ triple-hook នៅក្នុង package.json មិនមានការផ្លាស់ប្តូរទេ។ កញ្ចប់នៅតែរក្សាឈ្មោះ វិសាលភាព និងលំនាំ version-bump ដដែល។ ពីខាងក្រៅ axois-utils:1.0.9 មើលទៅដូចជាការបន្តបន្ទាប់តិចតួចទៅនឹង 1.0.6។ នៅខាងក្នុង វាគឺជាក្រុមគ្រួសារមេរោគខុសគ្នា។

distrube.js បើកជាមួយប្លុកកំណត់រចនាសម្ព័ន្ធដែលដាក់ឈ្មោះម៉ាកយីហោផ្ទាល់ខ្លួនរបស់ប្រតិបត្តិករ៖

// axois-utils-1.0.9/distrube.js:11-15
// Use your localhost.run HTTPS URL (the tunnel handles HTTP internally)
const C2_HOST = 'b94b6bcfa27554.lhr.life'; // Your localhost.run tunnel
const C2_PORT = 443; // HTTPS port - tunnel handles SSL
const BOT_ID = `${os.hostname()}_${Date.now()}_${crypto.randomBytes(4).toString('hex')}`;

មតិយោបល់ទាំងនេះត្រូវបានផ្ញើទៅកាន់ប្រតិបត្តិករនាពេលអនាគតដែលកំពុងដំណើរការឧបករណ៍នេះ (“ប្រើ localhost.run HTTPS URL របស់អ្នក”)។ នោះ បូករួមទាំងអ្វីដែលភ្ជាប់មកជាមួយ bot client គឺជាការប្រាប់ថានេះមិនមែនគ្រាន់តែជា payload របស់ជនរងគ្រោះនោះទេ — វាគឺជាឧបករណ៍នេះ។

លំហូរ៖

  1. ការតស៊ូ ដំណើរការមុន។ ស្គ្រីបដំឡើងខ្លួនវាតាមវិធីបីយ៉ាងផ្សេងគ្នាក្នុងមួយប្រព័ន្ធប្រតិបត្តិការ (បញ្ជីឈ្មោះ Run + ថតឯកសារចាប់ផ្តើម + កិច្ចការ នៅលើវីនដូ; crontab + សេវាកម្ម phantom-bot ឯកតាប្រព័ន្ធ + .bashrc/.zshrc បន្ថែម + /etc/rc.local នៅលើលីនុច; LaunchAgent com.phantom.bot.plist នៅលើ macOS)។ ឈ្មោះសេវាកម្ម persistence និងស្លាក LaunchAgent គឺទាំងពីរ។ ខ្មោច-បូត / com.phantom.botដែលក៏ជាប្រភពនៃឈ្មោះយុទ្ធនាការនេះផងដែរ។
  2. បញ្ជីព័ត៌មានប្រព័ន្ធ ដំណើរការម្តង — ការផ្ញើស្នាមម្រាមដៃម្តង POST ទៅកាន់ b94b6bcfa27554.lhr.life:443/collect ដែលមានឈ្មោះម៉ាស៊ីន, វេទិកា, arch, ឈ្មោះអ្នកប្រើប្រាស់, CPU/RAM, ចំណុចប្រទាក់បណ្តាញ, process.env, cwd, homedir, កំណែ node និង IP សាធារណៈ។ នេះមិនសូវឈ្លានពានជាងដំណាក់កាល A ទេ៖ គ្មាន SSH គ្មានកាបូប គ្មានការបញ្ជូនបន្ត .env។ ការងាររបស់ bot គឺចុះឈ្មោះ មិនមែនលួចទេ។
  3. ចង្វាក់​បេះដូង បើក HTTPS POST រៀងរាល់ 30 វិនាទីម្តងទៅកាន់ b94b6bcfa27554.lhr.life:443/។ User-Agent គឺ PhantomBot/1.0។ ការផ្ទៀងផ្ទាត់ TLS ត្រូវបានបិទយ៉ាងច្បាស់លាស់ (rejectUnauthorized: false)។ ការឆ្លើយតប C2 ត្រូវបានវិភាគជា JSON នៃទម្រង់ {type, target, port, duration, threads, method} ហើយត្រូវបានបញ្ជូន។
  4. ឃ្លាំងអាវុធទឹកជំនន់ ត្រូវបានភ្ជាប់ទៅនឹងពាក្យបញ្ជាចំនួនប្រាំមួយ៖
ប្រភេទពាក្យបញ្ជា ម៉ូឌុល ភក្ដិកំណត់ត្រាកំណត់
ping ការឆ្លើយតបអំពីភាពរស់រវើក បូតកំណត់អត្តសញ្ញាណខ្លួនឯង
http ទឹកជំនន់ HTTP សំណើ​កម្រិត 7 លិចលង់
HTTPS ទឹកជំនន់ HTTPS ដូចគ្នានឹង http ដែលរុំដោយ TLS
tcp ទឹកជំនន់ TCP សារឥតបានការផ្ទុកទិន្នន័យចៃដន្យទំហំ 65 KB
pud ទឹកជំនន់ UDP កញ្ចប់ UDP ទំហំ ៦៥,៥០៧ បៃ
យ៉ាងឆាប់រហ័ស ការកំណត់ឡើងវិញរហ័ស HTTP/2 DoS បច្ចេកទេស CVE-2023-44487 ឆ្នាំ 2023

ម៉ូឌុលទឹកជំនន់ទាំងប្រាំយក គោលដៅ, កំពង់ផែ, រយៈពេល។និង ខ្សែស្រឡាយ អាគុយម៉ង់ — បូតនេះគឺជាកម្មវិធីសម្រាប់ជួលទូទៅ មិនមែនសំដៅលើជនរងគ្រោះជាក់លាក់ណាមួយឡើយ។ បញ្ជីជនរងគ្រោះរបស់ប្រតិបត្តិករស្ថិតនៅលើ C2 មិនមែននៅក្នុងកញ្ចប់ទេ។

អ្វីដែលថ្មីនៅទីនេះ — ប្រព័ន្ធគោលពីរ C2 ដែលបានដឹកជញ្ជូន

ដំណាក់កាល A គឺជារូបរាងដែលធ្លាប់ស្គាល់៖ ការលួចអត្តសញ្ញាណប័ណ្ណ ការដំឡើងទំពក់ អ្នកលក់-ផ្លូវរូងក្រោមដី C2។ ដំណាក់កាល B គឺ ផងដែរ រូបរាងដែលធ្លាប់ស្គាល់ — បណ្តាញ DDoS គឺជាឧបករណ៍ផ្ទុកកញ្ចប់ npm ដែលមានគំនិតអាក្រក់អស់រយៈពេលជាច្រើនឆ្នាំមកហើយ។ អ្វីដែលមិនធម្មតានោះគឺថា ប្រតិបត្តិករបានដឹកជញ្ជូន ផ្នែកខាងម៉ាស៊ីនមេ នៃឧបករណ៍នៅខាងក្នុង npm tarball៖

  • c2 — ប្រព័ន្ធគោលពីរ Go ELF ទំហំ ៤ មេហ្គាបៃ ដែលបានចងក្រង
  • c2.go — ប្រភព Go ៤២៦ ខ្សែសម្រាប់ប្រព័ន្ធគោលពីរនោះ

ឯកសារទាំងពីរមិនត្រូវបានហៅដោយទំពក់ដំឡើងណាមួយឡើយ។ ពួកវាមិនមែនជាផ្នែកមួយនៃបន្ទុករបស់ជនរងគ្រោះទេ។ ពួកវាស្ថិតនៅក្នុងថតឯកសារកញ្ចប់ដូចគ្នានឹងឯកសារឯកសារដែរ។ ការអានដែលសមហេតុផលបំផុតគឺថា ប្រតិបត្តិករបានរុញដើមឈើការងារអភិវឌ្ឍន៍របស់ពួកគេទៅ npm ដោយមិនបានថែរក្សាបញ្ជីឯកសារ - ស្លាយ OpSec ពិតប្រាកដ - ហើយអ្វីដែលបានបញ្ជូនគឺជាឧបករណ៍ទ្វេភាគីពេញលេញ៖ អតិថិជនដែលជនរងគ្រោះដំណើរការ និងម៉ាស៊ីនមេដែលប្រតិបត្តិករដំណើរការ។

នេះ​គឺជា​ផ្នែក​មួយ​នៃ​រឿង​ដែល​បង្ហាញ​ពី​ភាពត្រឹមត្រូវ​នៃ​ការ​កំណត់​រចនាសម្ព័ន្ធ "ឧបករណ៍​ botnet ​ដែល​អាច​ដំណើរការ​បាន​ពេញលេញ"។ អ្នក​ដែល​បាន​ទាញយក axois-utils:1.0.9 មុនពេលការវាយកម្ទេចមិនត្រឹមតែមានគំរូជនរងគ្រោះប៉ុណ្ណោះទេ — ពួកគេមានម៉ាស៊ីនមេ C2 ដែលដំណើរការ។

ចំណុច​ស្នូល ក្នុង​ប្រយោគ​មួយ

អ្នកបោះពុម្ពផ្សាយដូចគ្នា ឈ្មោះកញ្ចប់ដូចគ្នា រនាំងបីជាន់ដូចគ្នា ការផ្សព្វផ្សាយម៉ាក "ខ្មោច" ដូចគ្នា — ប៉ុន្តែ បន្ទុកបានផ្លាស់ប្តូរគំរូរកប្រាក់ពេញមួយយប់: ពី "អាថ៌កំបាំងនៃការប្រមូលផលដែលខ្ញុំអាចលក់បន្ត" ទៅ "ជួលសមត្ថភាពទឹកជំនន់ដែលខ្ញុំអាចជួល"។ TTP ពេលវេលាដំឡើងដែលអ្នកការពារគួរតែមើលគឺស្ទើរតែដូចគ្នានៅទូទាំងដំណាក់កាលទាំងពីរ។ ការការពារដែលមានមូលដ្ឋានលើហត្ថលេខាត្រូវបានចាក់សោទៅនឹងខ្សែអក្សរផ្លូវកាបូបរបស់ដំណាក់កាល A ឬទៅ phantom.jsឧបករណ៍ប្រមូលខ្សែ 7,667 របស់អ្នកនឹងខកខានដំណាក់កាល B ទាំងស្រុង។

កាលបរិច្ឆេទ (UTC) ព្រឹត្តការណ៍
2026-05-15 ការបោះពុម្ពផ្សាយលើកដំបូង៖ axois-utils:1.0.4 (ការបង្កើតសាកល្បង LAN ឧបករណ៍អភិវឌ្ឍន៍នៅ 192.168.129.19)
2026-05-15 axois-utils:1.0.6 បានបោះពុម្ពផ្សាយ — ដំណាក់កាល A C2 បានប្តូរទៅ 80.200.28.28 តាមរយៈផ្លូវរូងក្រោមដី Serveo; មតិយោបល់ប្រភព // Change to '80.200.28.28' for public បញ្ជាក់​ការ​ផ្លាស់ប្ដូរ​ dev→prod
2026-05-16 chalk-tempalte:1.0.14 និង 1.0.16 បានបោះពុម្ពផ្សាយ — ការប្រកាសអំពីឧបករណ៍ផ្ទុកខ្សែសង្វាក់ axois-utils:^1.0.7 ជាការពឹងផ្អែកពេលដំណើរការ; ដែនរង Serveo ត្រូវបានបង្វិល
2026-05-16 យុទ្ធនាការដំណាក់កាល A ត្រូវបានរកឃើញក្នុងអំឡុងពេលស្កេន npm ជាប្រចាំ; សាលក្រមព្យាបាទដែលបានបញ្ជាក់ត្រូវបានអនុវត្ត
2026-05-17 axois-utils:1.0.9 បានបោះពុម្ពផ្សាយ — payload pivot៖ PhantomBot DDoS recruit តាមរយៈ localhost.run tunnel; ផ្នែកប្រតិបត្តិករ c2 គោលពីរ និង c2.go ប្រភពដែលបានដឹកជញ្ជូននៅក្នុង tarball
2026-05-17 chalk-tempalte:1.0.19 និង 1.0.20 បានបោះពុម្ពផ្សាយ — នៅតែជាដំណាក់កាល A (លួច); ប្រតិបត្តិករឥឡូវនេះកំពុងដំណើរការម៉ូឌុលទាំងពីរស្របគ្នា
2026-05-17 ការរកឃើញដំណាក់កាល B អំឡុងពេលស្កេនជាប្រចាំ; សាលក្រមត្រូវបានអនុវត្តនៅទូទាំង 2026-05-17 កំណែ
(កំពុងបន្ត) របាយការណ៍​លុប​វីដេអូ​កំពុង​រង់ចាំ​ការ​សម្រេច​ចិត្ត; កញ្ចប់​ទាំង​បួន​ដែល​បាន​បោះពុម្ពផ្សាយ​នៅ​តែ​អាច​រក​បាន​នៅ​លើ​បញ្ជី​ឈ្មោះ​នៅ​ពេល​សរសេរ​នេះ

សូចនាករនៃការសម្របសម្រួល

កញ្ចប់

ប្រព័ន្ធអេកូ កញ្ចប់សមាជិក កំណែ
ម៉ោងងង axois-utils (typosquat នៃ axios) 1.0.4, 1.0.6, 1.0.9
ម៉ោងងង chalk-tempalte (typosquat នៃគំរូដីស) 1.0.14, 1.0.16, 1.0.19, 1.0.20

អត្តសញ្ញាណអ្នកនិពន្ធ

វាល តម្លៃ
អ្នកបោះពុម្ពផ្សាយ npm deadcode09284814
អ៊ីមែលរបស់អ្នកបោះពុម្ពផ្សាយ phantomdeadcode@tutamail.com
SCM ការផ្ទៀងផ្ទាត់ គ្មាន

ពាក្យបញ្ជា និងការគ្រប់គ្រង

ជំហាន ចំណុចបញ្ចប់ ការដឹកជញ្ជូន
A f04a273bd84c0622-80-200-28-28.serveousercontent.com:443/collect ផ្លូវរូងក្រោមដី Serveo HTTPS
A 8a3e818ea8f11186-80-200-28-28.serveousercontent.com:443/collect ផ្លូវរូងក្រោមដី Serveo HTTPS (កំណែមុន)
A 80.200.28.28:443/collect ចំណុចបញ្ចប់ VPS មូលដ្ឋាន
B b94b6bcfa27554.lhr.life:443/ localhost.run HTTPS reverse-tunnel

សេចក្តីសង្ខេបឯកសារ (SHA-256)

ឯកសារ SHA-256 ភក្ដិកំណត់ត្រាកំណត់
c2 (ទៅ ELF, ៤មេកាបៃ) 165fa92d237fd017c227d00da06ab788212a62be94bf61e95df2d22d00377ef2 ម៉ាស៊ីនមេ C2 ខាងប្រតិបត្តិករ ដឹកជញ្ជូននៅខាងក្នុង axois-utils:1.0.9
c2.go (៤២៦ បន្ទាត់) 7d0ae79fdb1e9968f3323a3712b624643a782ba3efb2cf3a2cb9c4c5513cea30 ចូលទៅកាន់ប្រភពសម្រាប់ប្រព័ន្ធគោលពីរ C2
distrube.js 308b15c023088a7188dea4ef609010ac2493eb4c365b103053d7621a9ca5b935 កម្មវិធី​បូត​ដំណាក់កាល B
phantom.js (chalk-tempalte:1.0.19) 9e380ec88d3ccf3929e1a104e3b868d4d7b59ca189a8a431a54e9f3357dfdd81 អ្នកប្រមូលប័ណ្ណសម្គាល់/កាបូបដំណាក់កាល A
phantom.js (chalk-tempalte:1.0.20) d1c9e3f296ee9f7d5032f73f9c504cede50334bc14c394055fd5cb9c3a6e08b3 ឧបករណ៍ប្រមូលដំណាក់កាល A (វ៉ារ្យ៉ង់ 1.0.20)
postinstall.js (chalk-tempalte:1.0.19 = 1.0.20) ffba9bdd6793edd5b38e12900252c1813a693f59c25af51c3b658cf3f27b6162 ឧបករណ៍ផ្ទុកដំណាក់កាល A បៃដូចគ្នានៅទូទាំងកំណែទាំងពីរ

ការបញ្ជាក់ និងការលើកទឹកចិត្ត

យើងតាមដានយុទ្ធនាការនេះដូចជា PhantomBotដោយយកម៉ាកយីហោផ្ទាល់ខ្លួនរបស់ប្រតិបត្តិករពី ភ្នាក់ងារអ្នកប្រើប្រាស់៖ PhantomBot/1.0 ចំណងជើងចង្វាក់បេះដូង, នេះ សេវាកម្ម phantom-bot ឯកតាប្រព័ន្ធ, នេះ com.phantom.bot ស្លាក LaunchAgent និង លេខកូដស្លាប់ខ្មោច@ អាសយដ្ឋានអ៊ីមែល។ ប្រតិបត្តិករមានភាពស៊ីសង្វាក់គ្នាអំពីឈ្មោះនេះនៅទូទាំងយ៉ាងហោចណាស់វត្ថុបុរាណចំនួនបួន។

កាតាឡុកសញ្ញា

  • បោះពុម្ពផ្សាយ - លេខកូដស្លាប់០៩២៨៤៨១៤ នៅលើ npm។ គណនីគ្រប់គ្រងតែមួយ, អ៊ីមែលដែលអាចចោលបាន Tutamail, ទេ SCM ការផ្ទៀងផ្ទាត់។ គ្មានប្រវត្តិបោះពុម្ពផ្សាយពីមុនមកក្រៅពីយុទ្ធនាការនេះទេ។
  • ការប្រើប្រាស់ម៉ាកយីហោឡើងវិញ — “phantom” លេចឡើងនៅក្នុងអ៊ីមែលរបស់អ្នកបោះពុម្ពផ្សាយ នៅក្នុងឈ្មោះឯកសារប្រមូល Phase A (phantom.js), នៅក្នុងឈ្មោះសេវាកម្មរក្សាភាពស្ថិតស្ថេរដំណាក់កាល B (សេវាកម្ម phantom-bot), នៅក្នុងស្លាក LaunchAgent (com.phantom.bot) និងនៅក្នុង bot User-Agent (ផាន់ថាមបូត/១.០).
  • ហេដ្ឋារចនាសម្ព័ន្ធ — VPS តែមួយនៅ 80.200.28.28 ផ្នែកខាងមុខ ដំណាក់កាល A តាមរយៈការបង្វិលដែនរង Serveo; ដំណាក់កាល B ផ្លាស់ទីទៅ a localhost.run ផ្លូវរូងក្រោមដីបញ្ច្រាស (b94b6bcfa27554.lhr.ជីវិត)។ សេវាកម្មទាំងពីររបស់អ្នកលក់គឺឥតគិតថ្លៃ ហើយតម្រូវឱ្យមាន SSH ចេញតែនៅខាងប្រតិបត្តិករប៉ុណ្ណោះ ស្របតាមការដំឡើង OpSec ដែលមានថវិកាទាប។
  • រចនាប័ទ្មកូដ — JavaScript ធម្មតា​ពេញ​មួយ​ប្រព័ន្ធ; គ្មាន​ការ​បិទបាំង គ្មាន​ការ​អ៊ិនកូដ​ខ្សែអក្សរ គ្មាន​ការ​ត្រួតពិនិត្យ anti-VM។ ឈ្មោះ​អថេរ​អាច​ពិពណ៌នា​បាន (លួចព័ត៌មានប្រព័ន្ធ, ប្រតិបត្តិពាក្យបញ្ជា, httpFlood)។ មតិយោបល់នៅក្នុង distrube.js ផ្ញើទៅកាន់ប្រតិបត្តិករនាពេលអនាគតដោយផ្ទាល់ (“ប្រើ URL HTTPS របស់ localhost.run របស់អ្នក”) ដោយបង្ហាញថាឯកសារនេះត្រូវបានបម្រុងទុកដើម្បីចែកចាយឡើងវិញជាឧបករណ៍ មិនមែនប្រើប្រាស់ដោយអ្នកវាយប្រហារតែមួយនោះទេ។
  • ស្លីប OpSec — tarball ដំណាក់កាល B ដឹកជញ្ជូនទាំង bot client និងម៉ាស៊ីនមេ C2 ខាងប្រតិបត្តិករ (c2 អេលហ្វ + c2.go (ប្រភព)។ នេះស្របនឹងប្រតិបត្តិករដែលបានរុញដើមឈើការងាររបស់ពួកគេទៅ npm ដោយមិនបានធ្វើសវនកម្មបញ្ជីឯកសារ។ ទាំងប្រតិបត្តិករគ្មានបទពិសោធន៍ ឬឧបករណ៍គឺ... មានន័យ ត្រូវចែកចាយជាសាធារណៈ ហើយប្រព័ន្ធគោលពីរ C2 គឺជាផ្នែកមួយនៃផលិតផល។
  • ការបញ្ជាក់ខ្លួនឯង - axois-utils:1.0.4 មាន​មតិ​ប្រភព // ប្តូរទៅ '80.200.28.28' សម្រាប់សាធារណៈ នៅលើបន្ទាត់ទី 12 ដោយបញ្ជាក់ពីវឌ្ឍនភាព dev / staging / production ដែលប្រតិបត្តិករជាធម្មតាបដិសេធ។

ការលើកទឹកចិត្ត

បន្ទុក​ដំណាក់កាល A គឺជាការលួចហិរញ្ញវត្ថុដោយផ្ទាល់៖ លិខិតសម្គាល់ កូនសោពពក ថូខឹន GitHub និងកាបូបលុយគ្រីបតូទាំងអស់មានទីផ្សារលក់បន្តសាច់ប្រាក់។ ដំណាក់កាល B ក៏ជាហិរញ្ញវត្ថុផងដែរ ប៉ុន្តែដោយប្រយោល៖ សេវាកម្ម DDoS-for-hire (“booter”) ជួលសមត្ថភាពទឹកជំនន់តាមនាទី ហើយបូតដូចជាបូតដែលបានដឹកជញ្ជូននៅទីនេះគឺជាសារពើភ័ណ្ឌដែលសេវាកម្មទាំងនោះដំណើរការ។ ចង្វាក់បេះដូង 30 វិនាទី ទូទៅ គោលដៅ/កំពង់ផែ/រយៈពេល។ គ្រោងការណ៍ពាក្យបញ្ជា និងឃ្លាំងអាវុធទឹកជំនន់ពិធីការប្រាំគឺ standard ផលិតផលរបស់ប្រតិបត្តិករ booter ។

ការដំណើរការម៉ូឌុលទាំងពីរស្របគ្នា — chalk-tempalte: ១.០.១៤ និង 1.0.20 បន្តដឹកជញ្ជូនអ្នកលួចខណៈពេលដែល axois-utils:1.0.9 ដឹកជញ្ជូន bot — បង្ហាញថាប្រតិបត្តិករកំពុងការពារប្រាក់ចំណូលជាជាងបោះបង់ចោលដំណាក់កាល A។ pivot គឺជា ការបន្ថែមមិនមែនជាការជំនួសទេ។

អ្វីដែលយើងមិនអះអាង

យើងមិនទាន់អាចបញ្ជាក់ពីអត្តសញ្ញាណពិតនៅពីក្រោយរឿងនេះនៅឡើយទេ។ លេខកូដស្លាប់០៩២៨៤៨១៤ ចំណុចទាញ ហើយយើងមិនសន្មតយុទ្ធនាការនេះទៅឱ្យអ្នកគំរាមកំហែង ក្រុម ឬប្រទេសណាមួយដែលបានដាក់ឈ្មោះនោះទេ។ ការដាក់ស្លាកសញ្ញា "phantom" គឺស្របគ្នាគ្រប់គ្រាន់នៅទូទាំង artifacts ដើម្បីណែនាំប្រតិបត្តិករតែមួយ ប៉ុន្តែការដឹកជញ្ជូនបែប kit នៃប្រព័ន្ធគោលពីរ C2 ទុកលទ្ធភាពដែលកញ្ចប់នាពេលអនាគតពីចំណុចទាញដែលមិនទាក់ទងគ្នានឹងប្រើកូដដូចគ្នាឡើងវិញ។

ផលប៉ះពាល់ និន្នាការ និងអ្វីដែលអ្នកការពារគួរធ្វើ

ផលប៉ះពាល់

គោលដៅអង្គុយចោងហោងស្របច្បាប់ axios និង គំរូដីស ត្រូវបានពឹងផ្អែកយ៉ាងទូលំទូលាយនៅក្នុងប្រព័ន្ធអេកូឡូស៊ី JavaScript; axios តែម្នាក់ឯងស្ថិតក្នុងចំណោមកញ្ចប់ npm ចំនួនសាមសិបដែលទាញយកច្រើនជាងគេ។ ឈ្មោះ typosquat គឺនៅឆ្ងាយពីឈ្មោះពិតមួយដង (អាកសូយស៍axios, tempalteពុម្ព) ហើយទាំងពីរសុទ្ធតែជាកំហុសអក្ខរាវិរុទ្ធដែលអាចទុកចិត្តបានខាងភាសា។

យើងមិនអាចទទួលបានស្ថិតិទាញយកដែលអាចទុកចិត្តបានសម្រាប់កំណែព្យាបាទមុនពេលដកចេញទេ — npm មិនរក្សាទុកចំនួនទាញយកក្នុងមួយកំណែទេ បន្ទាប់ពីកញ្ចប់មួយមិនត្រូវបានបោះពុម្ពផ្សាយ ហើយ npms.ioប្រូកស៊ី​បែប -style មាន​សំឡេង​រំខាន​ក្នុង​កម្រិត​នេះ។ អង្គការ​ណា​ដែល​ឯកសារ​ចាក់សោ​របស់​វា​ត្រូវ​បាន​ដោះស្រាយ​ទៅ​ជា​កញ្ចប់​ដែល​មាន​ឈ្មោះ axois-utils or គំរូដីស ពីអ្នកបោះពុម្ពផ្សាយ លេខកូដស្លាប់០៩២៨៤៨១៤ គួរតែត្រូវបានចាត់ទុកថាជាការគំរាមកំហែង៖ បង្វិលរាល់ព័ត៌មានបញ្ជាក់អត្តសញ្ញាណដែលមាននៅក្នុង process.env នៅលើម៉ាស៊ីនដែលរងផលប៉ះពាល់ សូមត្រួតពិនិត្យវ៉ិចទ័រឋិតថេរក្នុងមួយប្រព័ន្ធប្រតិបត្តិការ (សូមមើល “អ្វីដែលអ្នកការពារគួរធ្វើ” ខាងក្រោម) ហើយលុបការពឹងផ្អែកចេញ។

លំនាំដែលកំពុងលេចឡើង

យុទ្ធនាការនេះបង្ហាញពីការផ្លាស់ប្តូរដែលយើងបានឃើញនៅក្នុងឧប្បត្តិហេតុ npm ថ្មីៗជាច្រើន៖ រន្ទា​ដែល​តោង​ជាប់​នឹង​ទំពក់​ដំឡើង​គឺជា​ទ្រព្យ​សកម្ម​ប្រើប្រាស់​បាន​យូរអង្វែង; បន្ទុកអាចផ្លាស់ប្តូរបានអ្នកបោះពុម្ពផ្សាយដូចគ្នា កញ្ចប់ដូចគ្នា ដូចគ្នា ដំឡើងជាមុន / ដំឡើង / ក្រោយការដំឡើង បីដង និងសូម្បីតែចង្វាក់លោតដូចគ្នា — រឿងតែមួយគត់ដែលបានផ្លាស់ប្តូររវាង axois-utils:1.0.6 និង axois-utils:1.0.9 តើឯកសារនោះជា hooks ដំណើរការ។ ការរកឃើញដែលមានមូលដ្ឋានលើហត្ថលេខាត្រូវបានចាក់សោទៅ payload ដំណាក់កាល A (ខ្សែអក្សរផ្លូវកាបូប phantom.jsឧបករណ៍ប្រមូលខ្សែ 7,667 របស់ Serveo C2) នឹងបានសម្គាល់កំណែបីដំបូង ហើយខកខានដំណាក់កាល B ទាំងស្រុង។

គំរូដូចគ្នានេះអាចមើលឃើញនៅទូទាំងយុទ្ធនាការឆ្នាំ 2026 ផ្សេងទៀតដែលយើងបានតាមដាន៖ ប្រតិបត្តិករតែមួយដែលមានរនាំងដែលមានស្ថេរភាព ការប្តូររវាងការលួចអត្តសញ្ញាណ អតិថិជនបន្លំប្រឡង ការលួចចូលប្រព័ន្ធ Telegram-bot exfil និងឥឡូវនេះការជ្រើសរើស DDoS។ អ្នកការពារដែលពឹងផ្អែកលើហត្ថលេខា payload នឹងបន្តចាញ់ជុំទីពីរនៃយុទ្ធនាការនីមួយៗ។

ផលបូកគឺថា TTP ពេលវេលាដំឡើងគឺជាសញ្ញាល្អជាងសេចក្តីប្រកាស triple install-hook ដំឡើងស្គ្រីបដែលនាំចូល HTTPS or ដំណើរការកុមារដំឡើងស្គ្រីបដែលសរសេរទៅកាន់ថតឯកសារចាប់ផ្តើមអ្នកប្រើប្រាស់ និងដំឡើងស្គ្រីបដែលដោះស្រាយឈ្មោះម៉ាស៊ីននៅលើសេវាកម្ម reverse-tunnel ឥតគិតថ្លៃ (Serveo, localhost.run, ngrok, cloudflared) សុទ្ធតែកម្រមាននៅក្នុងកញ្ចប់ស្របច្បាប់ និងជារឿងធម្មតានៅទូទាំងកញ្ចប់ដែលមានមេរោគ។

អ្វីដែលអ្នកការពារគួរធ្វើ

  • ការត្រួតពិនិត្យឯកសារចាក់សោ. ស្វែងរករាល់ កញ្ចប់-lock.json / សោរ​អំបោះ / pnpm-lock.yaml នៅក្នុងអង្គការរបស់អ្នកសម្រាប់ខ្សែអក្សរពិតប្រាកដ axois-utils និង គំរូដីសចាត់ទុកការប្រកួតណាមួយជាការសម្របសម្រួល។
  • បង្វិលអាថ៌កំបាំង លើម៉ាស៊ីនដែលរងផលប៉ះពាល់។ ដំណាក់កាល A ទិន្នន័យសម្ងាត់ SSH, cloud, GitHub, npm និង wallet ដែលប្រមូលបានជាបាច់។ សន្មតថាទិន្នន័យសម្ងាត់ទាំងអស់ដែលធ្លាប់មាននៅក្នុង process.env, ~ / .ssh, ~/.aws, ~/.npmrc, ~/.config, ឬណាមួយ .env* ឯកសារនៅលើម៉ាស៊ីនដែលរងផលប៉ះពាល់ត្រូវបានបង្ហាញ។
  • លុបបំបាត់ភាពជាប់លាប់ (ដំណាក់កាល B)។ នៅលើវីនដូ សូមលុប HKCU\Software\Microsoft\Windows\CurrentVersion\Run\SystemUpdate, យកចេញ %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\system-update.batនិង schtasks / លុប / tn ការអាប់ដេតប្រព័ន្ធ / fនៅលើលីនុច crontab -e និងយកចេញ @ចាប់ផ្ដើម​ណូត​ឡើងវិញ …, systemctl –user បិទ –now phantom-bot.service បន្ទាប់មកលុប ~/.config/systemd/user/phantom-bot.service, ដុសខាត់ .bashrc / .zshrc / /etc/rc.localនៅលើ macOS, launchctl unload ~/Library/LaunchAgents/com.phantom.bot.plist បន្ទាប់មកលុប plist ចេញ។
  • រារាំងម៉ាស៊ីនមេ C2 ។ បន្ថែមចំណុចបញ្ចប់ C2 ចំនួនបួននៅក្នុងតារាង IOC ទៅក្នុងបញ្ជីរារាំងការចាកចេញរបស់អ្នក។ *.serveousercontent.com និង *.lhr.life អាចត្រូវបានរារាំងការលក់ដុំ ប្រសិនបើបរិស្ថានរបស់អ្នកមិនមានការប្រើប្រាស់ស្របច្បាប់សម្រាប់សេវាកម្មផ្លូវរូងក្រោមដីបញ្ច្រាស។
  • ស្វែងរកតាមពេលវេលាដំឡើង TTPមិនមែនបន្ទុកទេ។ ធាតុឯកសារចាក់សោសារពើភ័ណ្ឌដែលមាន កញ្ចប់ ប្រកាស ដំឡើងជាមុន, ដំឡើងនិង ក្រោយការដំឡើង ទាំងអស់ចង្អុលទៅស្គ្រីបដូចគ្នា។ ពិនិត្យឡើងវិញប្រឆាំងនឹងអាយុកញ្ចប់ និងស្ថានភាពផ្ទៀងផ្ទាត់អ្នកបោះពុម្ពផ្សាយ។ គំរូនេះកម្រមាននៅក្នុងកញ្ចប់ស្របច្បាប់ ហើយវាជាសញ្ញាដែលអាចទុកចិត្តបំផុតតែមួយគត់ដែល PhantomBot ប្រើប្រាស់ឡើងវិញ។
  • ការត្រួតពិនិត្យសម្រាប់ប្រព័ន្ធគោលពីរ C2។ អ្នកណាដែលបានទាញយក axois-utils:1.0.9 មានម៉ាស៊ីនមេ C2 របស់ប្រតិបត្តិករ (c2 អែលហ្វ, sha256 ១៦៥fa៩២d…) នៅលើថាស។ ស្កេនឃ្លាំងសម្ងាត់ និងកន្លែងផ្ទុកវត្ថុបុរាណ CI។ ប្រព័ន្ធគោលពីរនេះអសកម្មដោយខ្លួនវាផ្ទាល់ ប៉ុន្តែវត្តមានរបស់វានៅលើស្ថានីយការងារគឺជាភស្តុតាងច្បាស់លាស់ដែលថាកញ្ចប់ត្រូវបានដំឡើង។

បន្ទាត់បិទ

ប្រតិបត្តិករដូចគ្នា កញ្ចប់ដូចគ្នា និងទំពក់ដំឡើងដូចគ្នា អាចបង្កការគំរាមកំហែងខុសគ្នាទាំងស្រុងក្នុងរយៈពេល 48 ម៉ោង។ សូមប្រយ័ត្នចំពោះរនាំង មិនមែនបន្ទុកនោះទេ។

ឧបករណ៍វិភាគសមាសភាពកម្មវិធី sca
ផ្តល់អាទិភាព ដោះស្រាយ និងធានាសុវត្ថិភាពហានិភ័យផ្នែកទន់របស់អ្នក
ទទួលបានគណនីឥតគិតថ្លៃរបស់អ្នក។
មិនតម្រូវឱ្យមានកាតឥណទានទេ។

ធានាសុវត្ថិភាពនៃការអភិវឌ្ឍន៍ និងការដឹកជញ្ជូនកម្មវិធីរបស់អ្នក

ជាមួយឈុតផលិតផល Xygeni