TL; DR
Ununura npm-eldonisto, deadcode09284814, efektivigis tajperar-ne-skutiman kampanjon kontraŭ la legitima axios kaj chalk-template pakaĵoj ekde meze de majo 2026.
La kampanjo komenciĝis kiel konvencia ŝtelo de akreditaĵoj kaj monujoj, elfiltrante datumojn al Serveo HTTPS-tunelo.
On 2026-05-17kun axois-utils:1.0.9, la funkciigisto tute interŝanĝis la utilan ŝarĝon: sama triobla instal-hoka skafaldo, sama eldonisto, sama pakaĵnomo.
Sed la instala skripto nun estas transplatforma DDoS-botreta rekruto.
La utila ŝarĝo parolas al localhost.run tunelas kaj akceptas inundkomandojn, transformante infektitajn mediojn en parton de DDoS-kapabla robotreto.
La funkciigisto eĉ sendis la C2-servila duuma ene de la tar-dosiero, montrante klaran pliiĝon de ŝtelo de akreditaĵoj al aktiva botreta infrastrukturo.
Du pakaĵoj, kvar versioj ankoraŭ aktivaj en la registro, kaj unu funkciigisto nun funkciiganta ambaŭ modulojn paralele.
Severeco: alta.
La Atako: Kiel Ĝi Funkcias
La kampanjo estas konstruita sur intence teda liveroskafaldo: du tajperarajn pakaĵnomojn, unu literon malsimilajn al pakaĵoj kun centoj da milionoj da semajnaj elŝutoj (aksioj, kreto-ŝablono), kaj triobla instalado hooks kiuj garantias ekzekuton. Interesas, kion la skafaldo portas — kaj la fakton, ke la funkciigisto ŝanĝis la kargon sen ŝanĝi ion alian.
La komuna skafaldo
Ĉiu publikigita versio de ambaŭ pakaĵoj deklaras la samajn tri vivciklojn hooks in pako.json:
"scripts": { "preinstall": "node <payload>.js", "install": "node <payload>.js", "postinstall": "node <payload>.js" } Listigi la utilan ŝarĝon sub ĉiuj tri hooks estas troigo — postinstalo sole funkcius defaŭlte npaga instaliLa elekto gravas: npm install –ignore-scripts preterlasas skriptojn, sed plurajn komunajn laborfluojn (CI-kaŝmemoraj restarigoj kiuj reekzekutas vivciklon hooks selekteme, aŭ programistoj kiuj nur revizias postinstalo) igu trioble redundan deklaron la plej sekura veto por la atakanto.
kreto-ŝablono aldonas duan mekanismon: ĝi deklaras axois-utiloj:^1.0.7 kiel rultempo dependecoInstali la typosquatted kreto-ŝablono tial ankaŭ tiras la gefratan tajperaron, kaj ambaŭ utilaj ŝarĝoj funkcias. La du pakaĵoj estas kunordigita paro, ne sendependaj listoj.
Fazo A — akreditaĵo / monujoŝtelisto (2026-05-15 → nuntempo)
Fazo A estas la originala utila ŝarĝo. La ŝargilo estas mallonga postinstall.js kiu montras al Serveo HTTPS-inversa tunelo:
// chalk-tempalte/postinstall.js:11-13 const C2_HOST = "f04a273bd84c0622-80-200-28-28.serveousercontent.com"; const C2_PORT = 443; const C2_PATH = '/collect'; La subdomajno Serveo ĉifras la celan IP-adreson (80.200.28.28) rekte en la gastiga nomo — rekonebla konvencio por tiu servo. La funkciigisto rotacias la hazardan subdomajnan prefikson inter versioj por eviti naivajn domajnajn bloklistojn, sed la subesta IP-adreso neniam moviĝas. (kreto-ŝablono:1.0.14 uzita 8a3e818ea8f11186-80-200-28-28…; 1.0.16 / 1.0.19 / 1.0.20 uzo f04a273bd84c0622-….)
postinstall.js manoj for al fantomo.js, 7,667-linia faskigita "kolektilo-" modulo. fantomo.js promenigas la gastiganton por:
SSH privataj ŝlosiloj (~/.ssh/*) |
.npmrc enhavo kaj ajna npm_* ĉirkaŭaĵaj ĵetonoj |
| Dosieroj pri akreditaĵoj de AWS, GCP kaj Azure |
GitHub persona-alir-ĵetona regula esprimo (ghp_*, gho_*, ghu_*, ghs_*) |
| Kriptomonujaj artefaktoj por Bitcoin, Exodus, Electrum, Monero, Litecoin, Dogecoin, Zcash, Dash |
Rekursia .env* promeni tra ~/projects, ~/dev, ~/code, ~/workspace, kaj la instalo cwd |
Ŝelaj historioj kaj la plena process.env |
La pakaĵo estas sendita al la Serveo-tunelo ĉe / kolektiNe estas malklarigado, nek kontraŭ-VM-logiko, nek enscenigado — la veto de la funkciigisto estas je volumeno kaj rapideco.
Fazo B — Rekruto de PhantomBot DDoS (2026-05-17, nur axois-utils:1.0.9)
Fazo B anstataŭigas phantom.js + postinstall.js per ununura dosiero nomita distrube.js (la preseraro estas de la funkciigisto). La triobla-hoka skafaldo en package.json estas senŝanĝa; la pakaĵo konservas la saman nomon, amplekson, kaj version-bump-ŝablonon. Deekstere, axois-utils:1.0.9 aspektas kiel negrava daŭrigo de 1.0.6. Interne, ĝi estas malsama familio de malica programaro.
distrube.js malfermiĝas per agorda bloko kiu nomas la propran markigon de la funkciigisto:
// 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')}`; |
La komentoj estas adresitaj al estonta funkciigisto, kiu ruligos la ilaron (“Uzu vian localhost.run HTTPS URL”). Tio, plus tio, kio estas enhavita apud la robota kliento, estas la indiko, ke ĉi tio ne estas nur viktima ŝarĝo — ĝi estas la ilaro mem.
La fluo:
- persisto unue funkcias. La skripto instaliĝas laŭ tri malsamaj manieroj por ĉiu operaciumo (registro Kuri + Startiga dosierujo + schtaskoj en Vindozo; crontab + fantoma-roboto.servo sistemd-unuo + .bashrc/.zshrc aldoni + /etc/rc.local sur Linukso; Lanĉagento com.fantomo.roboto.plist en macOS). La nomo de la persista servo kaj la etikedo LaunchAgent estas ambaŭ fantoma-roboto / com.fantomo.roboto, de kie ankaŭ venas la nomo de la kampanjo.
- Sisteminformoj elfil funkcias unufoje — unufoja fingrospura POST al b94b6bcfa27554.lhr.life:443/collect portanta gastigantnomon, platformon, arkitekturon, uzantnomon, CPU/RAM, retinterfacojn, process.env, cwd, hejmdosieron, nodversion kaj publikan IP-adreson. Ĉi tio estas multe malpli agresema ol Fazo A: neniu SSH, neniuj monujoj, neniu .env-rikuro. La tasko de la roboto estas registriĝi, ne ŝteli.
- Korbatbuklo malfermas HTTPS POST ĉiujn 30 sekundojn al b94b6bcfa27554.lhr.life:443/. La uzanto-agento estas PhantomBot/1.0. TLS-konfirmo estas eksplicite malŝaltita (rejectUnauthorized: false). La C2-respondo estas analizita kiel JSON de la formo {type, target, port, duration, threads, method} kaj sendita.
- Inundarsenalo estas konektita al ses komandoj:
| Komandotipo | modulo | Notoj |
|---|---|---|
| ping | Respondo pri viveco | Roboto identigas sin |
| Http | HTTP-inundo | Tavolo-7 petinundo |
| https | HTTPS-inundo | Sama kiel http, TLS-envolvita |
| tcp | TCP-inundo | 65 KB hazarda-utila ŝarĝo spamo |
| udp | UDP-inundo | 65,507-bajtaj UDP-pakaĵetoj |
| rapida | HTTP/2 rapida rekomencigo de DoS | La tekniko CVE-2023-44487 de 2023 |
Ĉiuj kvin inundmoduloj prenas celo, haveno, daŭroKaj fadenoj argumento — la roboto estas ĝenerala dungita inundoprogramo, ne celanta iun ajn specifan viktimon. La listo de viktimoj de la funkciigisto troviĝas sur la C2, ne en la pakaĵo.
Kio estas nova ĉi tie — la sendita C2-duuma dosiero
Fazo A estas konata formo: ŝtelo de akreditaĵoj, instala hoko, vendist-tunelita C2. Fazo B estas ankaŭ konata formo — DDoS-botretoj estis fiksaĵo de malicaj npm-pakaĵoj dum jaroj. Kio estas nekutima estas, ke la funkciigisto sendis la servila flanko de la ilaro ene de la npm-tar-dosiero:
- c2 — 4-megabajta kompilita Go ELF-duuma dosiero
- c2.go — la 426-linia Go-fonto por tiu duuma dosiero
Nek dosiero estas alvokata de iu ajn instala hoko. Ili ne estas parto de la viktima utila ŝarĝo. Ili sidas en la pakaĵdosierujo same kiel dokumenta dosiero. La plej kredinda interpreto estas, ke la funkciigisto puŝis sian evoluigan laborarbon al npm sen zorge prizorgi la dosierliston — vera OpSec-eraro — kaj kio estis enmetita estas la kompleta duflanka ilaro: la kliento, kiun la viktimo funkciigas, kaj la servilo, kiun la funkciigisto funkciigas.
Jen la parto de la rakonto, kiu pravigas la priskribon de "kompleta robotreta ilaro". Ĉiu, kiu elŝutis axois-utils:1.0.9 antaŭ ol la maldungo havas ne nur viktiman specimenon — ili havas funkciantan C2-servilon.
La pivoto, en unu frazo
Sama eldonisto, samaj pakaĵnomoj, sama triobla-hoka skafaldo, sama "fantoma" markigo — sed la utila ŝarĝo ŝanĝis monetigan modelon subite: de "rikoltaj sekretoj, kiujn mi povas revendi" ĝis "lua inunda kapacito, kiun mi povas lui". La instaltempaj TTP-oj, kiujn defendantoj devus observi, estas preskaŭ identaj en ambaŭ fazoj; signatur-bazitaj defendoj ligitaj al la monuj-padaj ĉenoj de Fazo A aŭ al fantomo.jsLa 7,667-linia kolektanto de s tute maltrafintus Fazon B.
| Dato (UTC) | okazaĵo |
|---|---|
| 2026-05-15 | Unua publikigo: axois-utils:1.0.4 (LAN-testkonstruo, programplatformo ĉe 192.168.129.19) |
| 2026-05-15 | axois-utils:1.0.6 publikigita — Fazo A C2 interŝanĝita al 80.200.28.28 tra Serveo-tunelo; la fontkomento // Change to '80.200.28.28' for public konfirmas la interŝanĝon de programisto ĝis produkto |
| 2026-05-16 | chalk-tempalte:1.0.14 kaj 1.0.16 publikigita — ĉenita ŝargilo deklaranta axois-utils:^1.0.7 kiel rultempa dependeco; Serveo-subdomajno rotaciita |
| 2026-05-16 | Kampanjo de Fazo A malkovrita dum rutina npm-skanado; konfirmite-malicaj juĝoj aplikitaj |
| 2026-05-17 | axois-utils:1.0.9 publikigita — pivoto de utilŝarĝo: PhantomBot DDoS rekrutas per localhost.run tunelo; flanke de la funkciigisto c2 binara kaj c2.go fonto sendita en la tarball |
| 2026-05-17 | chalk-tempalte:1.0.19 kaj 1.0.20 publikigita — ankoraŭ Fazo A (ŝtelisto); funkciigisto nun funkciigas ambaŭ modulojn paralele |
| 2026-05-17 | Malkovro de Fazo B dum rutina skanado; verdiktoj aplikitaj trans ĉiuj 2026-05-17 versioj |
| (daŭranta) | Raportoj pri forigo atendantaj; ĉiuj kvar publikigitaj pakaĵoj restas haveblaj en la registro dum la verkado de ĉi tio. |
Indikiloj de Kompromiso
pakaĵoj
| Ekosistemo | pakaĵo | versioj |
|---|---|---|
| npm | axois-utils (tajperaro de aksio) | 1.0.4, 1.0.6, 1.0.9 |
| npm | chalk-tempalte (tajperaro de kreto-ŝablono) | 1.0.14, 1.0.16, 1.0.19, 1.0.20 |
Aŭtora identeco
| Kampo | valoro |
|---|---|
| npm-eldonisto | deadcode09284814 |
| Retpoŝto de eldonisto | phantomdeadcode@tutamail.com |
| SCM konfirmo | neniu |
Komando-kaj-kontrolo
| fazo | Punkto de punkto | transporto |
|---|---|---|
| A | f04a273bd84c0622-80-200-28-28.serveousercontent.com:443/collect | Serveo HTTPS-tunelo |
| A | 8a3e818ea8f11186-80-200-28-28.serveousercontent.com:443/collect | Serveo HTTPS-tunelo (pli frua versio) |
| A | 80.200.28.28:443/collect | Subesta VPS-finpunkto |
| B | b94b6bcfa27554.lhr.life:443/ | localhost.run HTTPS-inversa-tunelo |
Dosieraj resumoj (SHA-256)
| dosiero | SHA-256 | Notoj |
|---|---|---|
c2 (Iru al ELF, 4 MB) | 165fa92d237fd017c227d00da06ab788212a62be94bf61e95df2d22d00377ef2 | Operatorflanka C2-servilo, sendita interne axois-utils:1.0.9 |
c2.go (426 linioj) | 7d0ae79fdb1e9968f3323a3712b624643a782ba3efb2cf3a2cb9c4c5513cea30 | Iru al la fonto por la C2-duuma dosiero |
distrube.js | 308b15c023088a7188dea4ef609010ac2493eb4c365b103053d7621a9ca5b935 | Fazo B robota kliento |
phantom.js (chalk-tempalte:1.0.19) | 9e380ec88d3ccf3929e1a104e3b868d4d7b59ca189a8a431a54e9f3357dfdd81 | Fazo A akreditaĵo / monujo-kolektanto |
phantom.js (chalk-tempalte:1.0.20) | d1c9e3f296ee9f7d5032f73f9c504cede50334bc14c394055fd5cb9c3a6e08b3 | Fazo A-kolektilo (variaĵo 1.0.20) |
postinstall.js (chalk-tempalte:1.0.19 = 1.0.20) | ffba9bdd6793edd5b38e12900252c1813a693f59c25af51c3b658cf3f27b6162 | Fazo A ŝargilo, bajt-identa tra ambaŭ versioj |
Atribuo kaj Motivo
Ni spuras ĉi tiun kampanjon kiel PhantomBot, prenante la propran markigon de la funkciigisto de la Uzanto-agento: PhantomBot/1.0 korbatkaplinio, la fantoma-roboto.servo sistemd-unuo, la com.fantomo.roboto etikedo LaunchAgent, kaj la fantomamortakodo@ retpoŝtadreso. La funkciigisto estas kohera pri ĉi tiu nomo tra almenaŭ kvar artefaktoj.
Katalogo de signaloj
- eldonisto - morta kodo09284814 ĉe npm. Unu-administra konto, forĵetebla retpoŝto de Tutamail, ne SCM konfirmo. Neniu antaŭa publikiga historio preter ĉi tiu kampanjo.
- Markiga reuzo — “fantomo” aperas en la retpoŝto de la eldonisto, en la dosiernomo de la kolektanto de Fazo A (fantomo.js), en la nomo de la persista servo de Fazo B (fantoma-roboto.servo), en la etikedo LanĉAgento (com.fantomo.roboto), kaj en la robotprogramo Uzanto-Agento (FantomaRoboto/1.0).
- infrastrukturo — Unuopa VPS ĉe 80.200.28.28 frontas Fazon A per Serveo-subdomajna rotacio; Fazo B moviĝas al lokagastiganto.run inversa tunelo (b94b6bcfa27554.lhr.vivo). Ambaŭ vendistaj servoj estas senpagaj kaj postulas nur eliran SSH flanke de la funkciigisto, konforme al malalt-buĝetaj, malalt-OpSec-aranĝoj.
- kodstilo — Simpla JavaScript tra la tuta teksto; neniu malklarigado, neniu ĉifrado de ĉenoj, neniuj kontraŭ-VM-kontroloj. Variablaj nomoj estas priskribaj (ŝteliSisteminformojn, plenumiKomandon, httpFloodKomentoj en distrube.js rekte alparoli estontan operatoron (“Uzu vian localhost.run HTTPS URL”), sugestante ke la dosiero estis celita esti redistribuita kiel ilaro, ne uzata de ununura atakanto.
- OpSec-deglito — La tar-dosiero de Fazo B liveras kaj la robotan klienton kaj la funkciigistan C2-servilon (c2 ELF + c2.go fonto). Ĉi tio kongruas kun funkciigisto kiu puŝis sian laborarbon al npm sen kontroli la dosierliston. Aŭ la funkciigisto estas nesperta, aŭ la ilaro estas signifis esti distribuita publike kaj la C2-duuma dosiero estas parto de la produkto.
- Memkonfirmo - axois-utils:1.0.4 enhavas la fontan komenton // Ŝanĝu al '80.200.28.28' por publika sur linio 12, konfirmante la progreson de disvolviĝo / starigo / produktado, kiun funkciigistoj tipe neas.
motivado
La utila ŝarĝo de Fazo A estas simpla financa ŝtelo: akreditaĵoj, nubaj ŝlosiloj, GitHub-ĵetonoj kaj kriptaj monujoj ĉiuj havas likvajn revendajn merkatojn. Fazo B ankaŭ estas financa, sed nerekta: DDoS-kontraŭ-dungaj ("startigiloj") servoj luas inundan kapaciton minute, kaj robotoj kiel tiu sendita ĉi tie estas la inventaro sur kiu tiuj servoj funkcias. La 30-sekunda korbato, la ĝenerala celo/haveno/daŭro komanda skemo, kaj la kvin-protokola inunda arsenalo estas la standard produkto de startigilo.
Funkciigante ambaŭ modulojn paralele — kreto-ŝablono:1.0.19 kaj 1.0.20 daŭre sendi la ŝteliston dum axois-utils:1.0.9 sendas la roboton — sugestas, ke la funkciigisto sekurigas enspezfluojn anstataŭ forlasi Fazon A. La pivoto estas Krome, ne anstataŭaĵo.
Kion ni ne asertas
Ni ne povis konfirmi realmondan identecon malantaŭ la morta kodo09284814 tenilo, kaj ni ne atribuas ĉi tiun kampanjon al iu ajn nomita minacaktoro, grupo aŭ lando. La "fantoma" markigo estas sufiĉe kohera tra artefaktoj por sugesti ununuran funkciigiston, sed la ilar-stila liverado de la C2-duuma dosiero lasas malferman eblecon, ke estontaj pakaĵoj de senrilataj teniloj reuzos la saman kodon.
Efiko, Tendencoj & Kion Defendantoj Devus Fari
efiko
La legitimaj okupataj celoj aksioj kaj kreto-ŝablono estas vaste dependaj en la JavaScript-ekosistemo; aksioj sole troviĝas inter la tridek plej elŝutitaj npm-pakaĵoj. La nomoj de tajperaro estas unu klavopremon for de la veraj (aksois ↔ aksioj, ŝablono ↔ ŝablono), kaj ambaŭ estas lingve kredindaj misliterumoj.
Ni ne povis akiri fidindajn elŝutajn statistikojn por la malicaj versioj antaŭ la forigo — npm ne konservas elŝutajn nombrojn laŭversie post kiam pakaĵo estas malpublikigita, kaj npms.io-stilaj prokuriloj estas bruaj je ĉi tiu skalo. Ĉiu organizo, kies ŝlosdosiero solvas al pakaĵo nomita axois-utiloj or kreto-ŝablono de eldonisto morta kodo09284814 devus esti traktata kiel kompromitita: rotaciu ĉiun akreditaĵon ĉeestantan en procezo.env sur la trafita gastiganto, kontrolu persistecajn vektorojn por ĉiu operaciumo (vidu "Kion defendantoj devus fari" sube), kaj forigu la dependecon.
Emerĝantaj ŝablonoj
Ĉi tiu kampanjo ekzempligas ŝanĝon, kiun ni vidis en pluraj lastatempaj npm-okazaĵoj: la instal-hoka skafaldo estas la daŭra aktivaĵola utila ŝarĝo estas interŝanĝeblaLa sama eldonisto, la sama pakaĵo, la sama antaŭinstali / instali / postinstalo triobla, kaj eĉ la sama versio-tuba kadenco — la sola afero, kiu ŝanĝiĝis inter axois-utils:1.0.6 kaj axois-utils:1.0.9 estis la dosiero la hooks kuri. Subskribo-bazita detekto ŝlosita al la utila ŝarĝo de Fazo A (monuj-padaj ĉenoj, fantomo.jsLa 7,667-linia kolektanto de 's, la gastiganto Serveo C2) markintus la unuajn tri versiojn kaj tute maltrafintus Fazon B.
La sama ŝablono videblas en aliaj kampanjoj de 2026, kiujn ni spuris: ununura funkciigisto kun stabila skafaldo, ŝanĝante inter ŝtelo de akreditaĵoj, ekzamen-trompantaj klientoj, elpelado per Telegram-robotoj, kaj nun DDoS-rekrutado. Defendantoj, kiuj fidas je utilŝarĝaj subskriboj, daŭre perdos la duan raŭndon de ĉiu kampanjo.
La konsekvenco estas, ke instaltempaj TTP-oj estas la pli bona signaloTrioblaj deklaracioj pri instal-hoko, instal-skriptoj kiuj importas https or infana_procezo, instalu skriptojn kiuj skribas al dosierujoj de uzanto-startigo, kaj instalu skriptojn kiuj solvas gastignomojn en senpagaj inverstunelaj servoj (Serveo, lokagastiganto.run, ngrok, cloudflared) estas ĉiuj maloftaj en legitimaj pakaĵoj kaj oftaj en malicaj.
Kion defendantoj devus fari
- Ŝlosdosiera revizio. Serĉu ĉiun package-lock.json / fadeno.seruro / pnpm-seruro.yaml en via organizo por la precizaj ĉenoj axois-utiloj kaj kreto-ŝablonoTraktu ajnan matĉon kiel kompromison.
- Turnu sekretojn sur trafitaj gastigantoj. Fazo A amas-rikoltis SSH, nubo, GitHub, npm, kaj monujaj akreditaĵoj. Supozu ĉiun akreditaĵon iam ajn ĉeestantan en procezo.env, ~ / .ssh, ~/.aws, ~/.npmrc, ~/.agordo, aŭ iu ajn .env* dosiero sur la trafita gastiganto estas eksponita.
- Forigu persistecon (Fazo B). En Vindozo, forigu HKCU\Software\Microsoft\Windows\CurrentVersion\Run\SystemUpdate, forigi %APPDATA%\Microsoft\Windows\Startmenuo\Programoj\Startup\system-update.batKaj schtasks /delete /tn Sistemĝisdatigo /fEn Linukso, crontab -e kaj forigi @reboot node …, sistemctl –uzanto malŝalti –nun fantomo-roboto.servo tiam forigu ~/.config/systemd/user/phantom-bot.service, frotpurigilo .bashrc / .zshrc / /etc/rc.localEn macOS, lanĉi_kodon malŝarĝi ~/Biblioteko/Lanĉilo-Agentoj/com.fantomo.bot.plist tiam forigu la plist.
- Bloku la C2-gastigantojn. Aldonu la kvar C2-finpunktojn en la IOC-tabelo al via elira bloklisto. *.serveousercontent.com kaj *.lhr.vivo povas esti blokita pogrande se via medio ne havas legitiman uzon por invers-tunelaj servoj.
- Ĉasi laŭ instaltempa TTP, ne utila ŝarĝo. Stokregistro-ŝlosdosieraj enigoj kies pako.json deklarita antaŭinstali, instaliKaj postinstalo ĉiuj montrante al la sama skripto. Kontrolu kontraŭ la aĝo de la pakaĵo kaj la stato de la eldonisto. Ĉi tiu ŝablono maloftas en legitimaj pakaĵoj kaj estas la plej fidinda signalo, kiun PhantomBot reuzas.
- Audito por la C2-duuma dosiero. Ĉiu, kiu elŝutis axois-utils:1.0.9 havas la C2-servilon de la funkciigisto (c2 ELF, sha256 165fa92d…) sur disko. Skani kaŝmemorojn kaj CI-artefaktajn stokejojn. La duuma dosiero estas dormanta per si mem, sed ĝia ĉeesto sur laborstacio estas nedubebla pruvo, ke la pakaĵo estis instalita.
Ferma linio
La sama funkciigisto, la sama pakaĵo, kaj la sama instala hoko povas liveri tute malsamajn minacojn ene de 48 horoj. Observu la skafaldon, ne la utilan ŝarĝon.




