טל; דר
אן איינציקער npm ארויסגעבער האט געשיקט אכט קליינע פעקלעך וועמענס נעמען לייענען זיך ווי טעגליכע בוי-שטיינער פאר בלאק-טשעין און וואלעט אנטוויקלונג, base58-utils, abi-encode, eth-dev, arb-kit, layer2-sdk, solana-key-utils, eth-wallet-helpers, און crypto-validate-libיעדע איינע אנטהאלט יא א ארבעטנדיקע נוצלעכקייט. אבער נאך יענער נוצלעכקייט איז צוגעלייגט א זעלבסט-ארויפרופנדיקער בלאק קאוד וואס לויפט אין דעם מאמענט וואס דער מאדול ווערט אימפארטירט.
אומגעפער 37 סעקונדעס נאך אימפארט, יענער בלאָק דעקאָדירט אַ פּיילאָוד וואָס ווערט געשיקט אינעווייניק אין דעם פּעקל פֿאַרשטעלט ווי אַ טעסט פֿיקסטשור, שרײַבט עס צו אַ פֿאַרבאָרגענעם טעקע אונטערן באַניצער'ס היים דירעקטאָרי, רעגיסטרירט זיך צו ריסטאַרטן אויף יעדן login אַריבער ווינדאָוז, מאַקאָס, און לינוקס, און לאָנטשט דעם דעקאָדירטן סקריפּט ווי אַ דיטאַטשט פּראָצעס. גאָרנישט וועגן דעם פייערט זיך בעת npm אינסטאַלאַציע; עס וואַרט ביז דער קאָד ווערט אימפּאָרטירט און געלאָפן, וואָס איז אַ שטילער מאָמענט ווי די אינסטאַלאַציע.
די פּיילאָוד איז נישט דורכזיכטיג. עס ווערט געשיקט ווי פּשוט base64, אַזוי דעקאָדירן די "טעסט פיקסטשער" באַקומט צוריק די צווייטע סטאַגע אין גאַנצן: א קריפּטאָ-בייטל און סודות גנב וואָס וואַרט ביז די מאַשין זיצט ליידיק, כאַרוואַסטירט פּריוואַטע שליסלען און זוימען-פראַזעס, ענקריפּץ יעדן געפינס מיט אַ האַרדקאָדירטן RSA-4096 שליסל, און עקספילטרירט עס דורך פּינינג עס צו עפנטלעכן IPFS סטאָרידזש, בעאַקאַנינג צוריק יעדע 12 שעה.
מיר טראַקן דעם קלאַסטער ווי פאַנטאָם סינקאלע אכט פעקלעך זענען געווען לייוו אין די npm רעגיסטרי אין דער צייט פון אנאליז, ארויסגעגעבן אונטער איין אקאונט.
| יקאָוסיסטאַם | npm |
| פּאַקקאַגעס | base58-utils, abi-encode, eth-dev, arb-kit, layer2-sdk, solana-key-utils, eth-wallet-helpers, crypto-validate-lib |
| פּלאַטפאָרמעס געצילטע | פֿענצטער, מאַקאָס, לינוקס |
| קערן נאַטור | פארשפעטיקטער, אימפארט-צייט דראַפּער באַהאַלטן ווי אַ טעסט פיקסטשער; אינסטאַלירט קראָס-פּלאַטפאָרמע פּערסיסטענס |
| Payload | קריפּטאָ-בייטל און סודות גנב, RSA-4096 ענקריפּשאַן, עקספילטראַציע דורך עפנטלעכע IPFS פּינינג |
אַטאַק אַנאַטאָמיע
יעדע פּעקל קוקט נישט באַמערקעוודיק בײַם ערשטן לייענען. base58-utils, למשל, איז א פאר קילאבייטן פון נול-אפהענגיקייט Base58 / Bitcoin-WIF העלפער קאוד — פונקט וואס דער נאמען צוזאגט. דער באטרעפנדיקער קאוד זיצט נאָך דעם מאָדול'ס מאָדול.עקספּאָרטן, וואו אַ לייענער וואָס איבערקוקט דעם אָנהייב פֿון דער טעקע וועט מסתּמא נישט קוקן: אַ זיך-אויפֿרופֿנדיקע פֿונקציע וואָס פּלאַנירט זיך מיט אַ טייַמער.
די קייט פון אפעראציעס, רעקאנסטרואירט פון די פעקל קוואל, לויפט אזוי:
1. Package is required() by the host project
2. A self-invoking function schedules a callback ~37,000 ms later (setTimeout)
3. On fire, the callback reads test/fixtures/keypairs.dat (a base64 blob)
4. It base64-decodes that blob into a Node.js script
5. It writes the script to ~/.cache-db/.node-sync/syncd.js (mode 0o700)
6. It installs login-persistence for that script (see below)
7. It spawns "node syncd.js" as a detached processצוויי דיזיין ברירות שטייען ארויס.
די פּיילאָוד רייזט ווי אַ טעסט פיקסטשער. די צווייטע שטאפל איז נישט געשריבן ווי קלארע קאד. עס לעבט אין טעסט/פֿיקסטשורס/שליסל־פּאָרן.דאַט, א base64 טעקע וועמענס נאמען פארמישט זיך אין א פעקל וואס זאגט אז עס האנדלט מיט שליסל-פארן. פאר א מענטש וואס ליינט איבער דעם טארבאל, זעט עס אויס ווי ביישפיל דאטן; פארן צוגעלייגטן קאוד, איז עס א סקריפט צו דעקאדירן און לויפן. דער דראפער אליין אנטהאלט נישט קיין נעטווארק אדרעס — יענע וואס וואוינען אין דער צווייטער שטאפל — אבער עס איז נישטא קיין צוגעלייגטע פארדעקונג: די פיקסטשור איז אן איינציקע שיכט פון base64, ממילא דעקאדירט עס (באַזע64 -ד) באַקומט צוריק דאָס גאַנצע סינקד.דזשעי.עס און זיין נעץ אויפפירונג. די נעקסטע סעקציע גייט דורך וואס יענע אויפגעהויבענע שטאפל טוט.
דעטאָנאַציע איז פֿאַרשפּעטיקט און פֿאַרבונדן מיטן אימפּאָרט, נישט מיטן אינסטאַלירן. ווייל דער טריגער איז דאַרפן () פּלוס אַ ~37-סעקונדע טיימער אַנשטאָט אַן אינסטאַל קרוק, די נאַטור סיימפּט טשעקס וואָס נאָר קוקן די נפּם ינסטאַלירן שריט, און די פארשפעטיגונג האלט לענגער ווי אסאך קורץ-לעבעדיגע זאמדקאסט און CI לויפונגען. ווען עפעס ווערט אויסגעפירט, איז די אינסטאלאציע וואס האט אריינגעצויגן דעם פעקל שוין לאנג געענדיגט.
אַמאָל דער דעקאָדירטער סקריפּט איז אויף דיסק ביי ~/.cache-db/.node-sync/syncd.js — אַ דרך אויסגעקליבן צו לייענען ווי אַ רוטינע קאַש דירעקטאָרי — דער דראַפּער מאַכט עס איבערלעבן ריבוטס אויף אַלע דריי הויפּט פּלאַטפאָרמעס:
- לינוקס: אַ קראָן איינטראַג וואָס רילאָנטשט דעם סקריפּט. דער איינטראַג ווערט אינסטאַלירט דורך פילטערירן דעם עקזיסטירנדיקן קראָנטאַב דורך grep -v סינקד, וואָס האָט די זייַט־עפֿעקט פֿון אויסלאָזן דעם נײַעם אַרײַנטרעף פֿון אַ פּשוטער ליסטע וואָס זוכט greps פֿאַרן זעלבן נאָמען.
- פֿענצטער: אַ פּלאַנירטע אויפֿגאַבע מיטן נאָמען וויננאָוד סינק, איינגעשטעלט צו ווידער לויפן אויף א 12-מינוט אינטערוואַל.
- macOS: אַ לאָנטשד אַרבעט מיטן נאָמען com.apple.syncd, פאָרשטעלן אין עטלעכע פון די פּאַקאַדזשאַז — אַ לייבל וואָס נאָכמאַכט אַ לעגיטימע עפּל סיסטעם סערוויס.
דער סקריפּט ווערט דעמאָלט גלייך אָנגעהויבן ווי אַ באַזונדערער פּראָצעס, אַזוי אַז עס לויפֿט ווייטער נאָכדעם וואָס די אימפּאָרטירנדיקע פּראָגראַם פֿאַרענדיקט זיך.
וואָס טוט די צווייטע שטאַפּל
ווייל די פיקסטשער איז אן איינציקע באזע64 שיכט, דעקאדירט די צווייטע שטאפל ריין און קען געלייענט ווערן אין גאנצן. אלע אכט פעקלעך טראגן איינע פון דריי וועריאנטן פון דעם זעלבן סקריפט, וואס אידענטיפיצירט זיך אין א קעפל קאמענטאר אלס פאַנטאָם סינקד וו3 - די לעצטע צייט (“שלאָפנדיקער מאָל”). זײַן אַרבעט איז צו גנבענען קריפּטאָקוררענסי-בײַטל מאַטעריאַל און דעוועלאָפּער סודות און זיי אַוועקשיקן פֿון דער מאַשין. עס לויפט אין די פֿאָלגענדע טריט:
- 1. וואַרט ביז די מאַשין איז ליידיק. איידער איר טאָן עפּעס, סינקד.דזשעי.עס טשעקט ווי לאַנג דער באַניצער איז נישט אַקטיוו און גייט נאָר ווייטער פֿון אַ געוויסער גרענעץ (אַרום 15 מינוט) — עקספּרינטיידל אויף לינוקס, יאָרעג HIDIdleTime אויף macOS, און א PowerShell idle-time קווערי אויף Windows. האַרוועסטינג טענדירט דעריבער צו פּאַסירן ווען קיינער איז נישט ביים קלאַוויאַטור.
- 2. נעמט א ווײַט-קאנטראלירטן אקטיוואציע סוויטשדער סקריפּט נעמט ארויס א קליינע קאנפיגוראציע פון א דעד-דראפ פארן טאן עפעס. די הויפט מקור איז א גיטהאב גיסט רויע URL (gist.githubusercontent.com/juang55/…/cfg.txt); דער סקריפּט אַקטיוויזירט זיך נאָר אויב יענע קאָנפיגוראַציע לייענט אַקטיוו=1אויב די הויפּטזאַך איז נישט פֿאַראַן, פֿאַלט עס צוריק צו דריי פֿעסטקאָדירטע IPFS אינהאַלט אידענטיפֿיקאַטאָרן, געכאפט דורך די עפֿנטלעכע גייטווייס. גייטוויי.פּינאַטאַ.וואָלקן, ipfs.io, און קלאודפלער-ipfs.com. דאָס גיט דעם אָפּעראַטאָר אַן נאָך-דעם-פאַקט אַרעם/דיסאַרעם קאָנטראָל און אַ אַראָפּנעמען-קעגנשטעליק פאַלבעק. (די קלענסטע וואַריאַנט, געשיקט אין קריפּטאָ-וואַלידייט-ליב, עט-בייטל-העלפערס, און סאָלאַנאַ-קיו-יוטילס, האט די גיסט שיכט אראפגענומען און פארלאזט זיך נאר אויף די IPFS אידענטיפיצירערס.)
- 3. זאַמלען בייטל מאַטעריאַל און סודות. דער סקריפּט גייט דורך דעם באַניצער'ס היים דירעקטאָרי — ~/.config/solana, ~/.עטהערעום/קיסטאָר, ~/.גיסעריי, ~/.האַרט הוט, ~/.שש, און דעסקטאָפּ/דאקומענטן/דאַונלאָודז (אריינגערעכנט שפּאַניש-שפּראַכיקע טעקע נעמען), פּלוס ~/.ענוו און שאָל rc טעקעס, און די עקוויוואַלענט אַפּפּדאַטאַ לאָקאַציעס אויף ווינדאָוז. עס צילט אויף עטהערעום פּריוואַטע שליסלען, ביטקאָין WIF שליסלען, BIP-39 זוימען פראַזעס, סאָלאַנאַ שליסל-פּערז, עטהערעום שליסל-סטאָר JSON, SSH שליסלען, און סוד-טראָגנדיקע סביבה וועריאַבאַלן. די גרעסערע וואַריאַנט (אין אַבי-ענקאָוד, base58-utils, עט-דעוו) טראָגט דאָס גאַנצע 2048-וואָרטיקע BIP-39 ווערטערבוך און ניצט רעגולערע אויסדרוקן צו עקסטראַקט יחיד שליסלען און וואַלידירטע זוימען פראַזעס פון יעדן טעקסט וואָס עס לייענט; די צוויי קלענערע וועריאַנטן גלייַכן אַנשטאָט טעקעס לויט שליסל-וואָרט (זוימען, מנעמאַניק, wallet, מעטאַמאַסק, פאַנטאָם, לעדזשער, טרעזאָר, …) און אַרויפֿלאָדן גאַנצע טעקעס.
- 4. ענקריפטירן און עקספילטרירן דורך א פובליק פּינינג סערוויס. יעדע געפינס איז פארבונדן מיט א גאסטגעבער'ס פינגער-אפדרוק (באַניצער נאָמען@האָסט נאָמען, פּלאַטפאָרמע, צייטשטעמפּל) און ענקריפּטעד מיט אַ כאַרדקאָדעד RSA-4096 עפנטלעכן שליסל עמבעדיד אין דעם סקריפּט. דער ענקריפּטעד רעקאָרד ווערט דעמאָלט אַרויפגעלאָדן דורך פּינינג עס צו IPFS דורך api.pinata.cloud/pinning/pinJSONToIPFS, אויטענטיפיצירט מיט האַרדקאָודעד פּינאַטאַ אַפּי קרעדענשאַלז. עס איז נישטאָ קיין ספּעציעלע C2 סערווער צו קאָנפיסקירן: די געגנבעטע דאַטן איז פּאַרקט אין עפנטלעכער דעצענטראַליזירטער סטאָרידזש, צוריקקריגבאַר דורך דעם אָפּעראַטאָר ניצן די רעזולטאַט אינהאַלט העשיז. אַפּלאָודז זענען ספּאַיסט מיט אַ פּאָר סעקונדעס פון ראַנדאָם דזשיטער, און אַ היגע לאָג פון צייטשטעמפּל | שליסל-טיפ | צוריקגעקערטע האַש ווערט געהאלטן ביי ~/.cache-db/.node-sync/.sl.
- 5. האלטן אן און בעקאן אויף א 12-שעה ציקל. די צווייטע שטאפל שטעלט צוריק איר אייגענע אנהאלטונג — א קראן איינטראג אויף לינוקס, א com.apple.syncd לאָנטשד דזשאָב אויף macOS, און אַ סקעדזשולד טאַסק מיטן נאָמען ווינדאָוסנאָוד סינק אויף ווינדאָוס — איינגעשטעלט צו ווידער לויפן יעדע 12 שעה. באַמערקט אַז דאָס איז אַ אַנדערש ווינדאָוס אויפגאַבע נאָמען פֿון דער וואָס דער דראַפּער אינסטאַלירט (וויננאָוד סינק); ביידע זענען ווערט צו זוכן.
טיימליין
די אכט פּעקלעך זענען ארויסגעגעבן געוואָרן אין אַ קורצער צײַט דעם 2026-07-13 און 2026-07-14. עטלעכע האָבן מער ווי איין ווערסיע; דער דראָפּער איז אידענטיש איבער די ווערסיעס, נאָר די ליניע אָפֿסעטן פֿאַרשייבן זיך ווען די גרייס פֿון דעם גוטאַרטיקן נוצלעכן קאָד העכער אים ענדערט זיך.
| דאַטע | געשעעניש |
|---|---|
| 2026-07-13 | ערשטע פּעקלעך אין קלאַסטער דערשייַנען אונטער איין ארויסגעבער (solana-key-utils, eth-wallet-helpers, crypto-validate-lib און פריע ווערסיעס פון די איבעריגע) |
| 2026-07-13 → 07-14 | איבערבליבענע נעמען און נאכפאלג ווערסיעס ארויסגעגעבן; די זעלבע צוגעלייגטע דראַפּער שיפן אין יעדן |
| 2026-07-14 | אַלע אַכט אָנגעצייכנט און אַנאַליזירט; יעדער פּעקל נאָך אינסטאַלירבאר פֿון רעגיסטרי |
איבער דעם אויסברוך, האט זיך די ארויסגעבער'ס רעגיסטרי רעפּוטאַציע גערוקט פון בערך נייטראַל ביים אָנהייב פונעם קלאַסטער צו שטאַרק נעגאַטיוו ווען דעטעקשאַנז האָבן זיך אָנגעזאַמלט — אַ באַאָבאַכטבאַרער זייטיגע ווירקונג פון די פּאַקאַדזשאַז וואָס זענען געוואָרן געפֿאָנדט, נישט אַ דיזיינירטע פֿונקציע.
ינדיקאַטאָרס פון קאָמפּראָמיס
אלע אינדיקאטארן אונטן זענען באשטעטיקט געווארן פאראן ביים אנאליז צייט — די אין די "צווייטע-פאזע" טאבעלעס דורך דעקאדירן טעסט/פֿיקסטשורס/שליסל־פּאָרן.דאַט און לייענען די אויפגעכאפּטע סינקד.דזשעי.עס.
טעקעס און וועגן
| ינדיקאַטאָר | ראָלע |
|---|---|
~/.cache-db/.node-sync/syncd.js | דעקאָדירט צווייטע שטאַפּל, געשריבן מיט מאָדע 0o700 |
~/.cache-db/.node-sync/.sl | לאקאלער עקספילטראציע לאג (צייטשטעמפּל | שליסל-טיפ | IPFS העש) |
test/fixtures/keypairs.dat | Base64-ענקאָודעד פּיילאָוד סטיידזשד ין די טאַרבאָל ווי אַ "טעסט פיקסטשער" |
צווייטע-שטאַפּל נעץ אינפראַסטרוקטור (איבערגענומען פֿון syncd.js)
| ינדיקאַטאָר | ראָלע |
|---|---|
gist.githubusercontent.com/juang55/b298754cb72942b1cdcf02ccd45cde2f/raw/cfg.txt | אקטיווירונג דעד-דראָפּ; סקריפּט לויפט נאָר אויב קאָנפיג לייענט active=1 |
Qmcqz3w8j4qFQXDAXAxnrdc2oSX3nzBT4NqtpTqL8mr1ga | IPFS קאָנפיגאַציע פאַלבעק (CID) |
QmdTXoqVmTHY1i4ZWLdLkoQ9YChp5TXPh5cWXwnAYZt5iF | IPFS קאָנפיגאַציע פאַלבעק (CID) |
QmfJkLU5gdCpqbbqEjWYC2anXW9FmuEeSLLeLiHVJKYUjp | IPFS קאָנפיגאַציע פאַלבעק (CID) |
gateway.pinata.cloud, ipfs.io, cloudflare-ipfs.com | IPFS גייטווייז געניצט צו ברענגען די קאָנפיג פאַלבעק |
api.pinata.cloud/pinning/pinJSONToIPFS | עקספילטראַציע ענדפּוינט, גע'גנב'עטע דאַטן געפּינט צו עפנטלעכע IPFS |
| פּינאַטאַ אַפּי שליסל | 13c766575b9270a9825d, האַרטקאָדירטע עקספילטראַציע קרעדענשאַל |
צווייטע-שטאַפּל זאַמלונג צילן (ריקאַווערד פֿון syncd.js)
| ינדיקאַטאָר | ראָלע |
|---|---|
~/.config/solana, ~/.ethereum/keystore, ~/.foundry, ~/.hardhat, ~/.ssh, ~/.env, שאָל rc טעקעס | דירעקטאָריעס/טעקעס געזוכט פֿאַר שליסלען און סודות |
AppData\Roaming\Solana, AppData\Local\ethereum\keystore | געזוכט ווינדאָוס עקוויוואַלענטן |
| אַרטיפאַקט טיפּן געזאַמלט | ETH פּריוואַטע שליסלען, ביטקאָין WIF, BIP-39 זוימען פראַזעס, סאָלאַנאַ שליסל פּאָרן, Ethereum שליסל קראָם JSON, SSH שליסלען, סוד סביבה וואַרס |
פּערסיסטענס אַרטיפאַקץ
| פּלאַטפאָרמע | ינדיקאַטאָר |
|---|---|
| לינוקס | קראָן איינטריט לאָנטשינג syncd.js; אינסטאלירט דורך קראנטאב פילטערירט דורך grep -v syncd |
| פֿענצטער | געפּלאַנטע אויפגאַבע WinNodeSync (טראָפּער) און WindowsNodeSync (צווייטע שטאפל) |
| מאַקאָס | לאָנטשד לייבל com.apple.syncd |
| אַלע | די צווייטע שטאפל גייט ווייטער אן אויף א 12-שעה ציקל |
בעהאַוויאָראַל
- זעלבסט-ארויפרופנדיקע פונקציע צוגעלייגט נאך מאָדול.עקספּאָרטן, סקעדזשולינג א setTimeout פון ~37,000 מיליסעקונדעס ביים אימפארט.
- קינד_פּראָסעס שפּאָן ("נאָוד", ) מיט די אפגעטיילטע אָפּציע סעט.
- ליידיק-געיטעד אקטיוואציע אין דער צווייטער שטאפל (עקספּרינטיידל / יאָרעג HIDIdleTime / PowerShell ליידיגע צייט; ~15-מינוט שוועל).
- פּער-געפינען RSA-4096 ענקריפּשאַן, דערנאָך HTTPS פּאָסטן צו אַ עפֿנטלעכער IPFS פּינינג API.
פּאַקאַדזשאַז און ווערסיעס (npm, publisher solbuilder_io)
| פּעקל | ווערסיעס |
|---|---|
base58-utils | קסנומקס, קסנומקס, קסנומקס |
abi-encode | קסנומקס, קסנומקס, קסנומקס |
eth-dev | קסנומקס, קסנומקס, קסנומקס |
arb-kit | קסנומקס, קסנומקס |
layer2-sdk | קסנומקס, קסנומקס |
solana-key-utils | 1.0.0 |
eth-wallet-helpers | 1.0.0 |
crypto-validate-lib | 1.0.0 |
פאַרלעגער
- סאָלבילדער_יאָ - angel_lopez89[@]proton[.]me, אימעיל נישט וועריפיצירט, קיין וועריפיצירט מקור-קאנטראל אקאונט, קיין פארבינדענע רעפאזיטארי.
צושרייבונג און באמערקטע אויפפירונג
די אַכט פּאַקאַדזשאַז טיילן זיך איין פאַרלעגער אַקאַונט און איין פּיילאָוד. יעדער איז אַ טריוויאַל פּאַקאַדזש - אַ פּאָר קילאָבייטן פון עכטן יוטיליטי קאָד מיטן זעלבן דראַפּער צוגעלייגט - פאַרעפֿנטלעכט אָן אַ פֿאַרבונדענע רעפּאָזיטאָרי און אונטער אַן נישט וועריפֿייד דיספּאָוזאַבאַל-סטיל אימעיל. יענע איינהייטלעכקייט, דער געטיילטער דראָפּ פּאַט, די געטיילטע פּערסיסטענס לייבאַלס, און די געטיילטע שליסל-פּאָרן.דאַט סטאַגינג טעקעס זענען וואָס פֿאַרבינדן דעם קלאַסטער צוזאַמען.
די פּעקלעך זענען ומגעוויינטלעך אָפן וועגן זייער אייגענעם נאַטור. סאָלאַנאַ-קיו-יוטילס טראָגט אינליין באַמערקונגען וואָס באַשרײַבן דעם צוגעלייגטן בלאָק אין פּשוטע טערמינען — מען באַצייכנט עס פאַנטאָם: אומזעיקבאַרע אָנהאַלטונג, אן אנדערער (אין שפאניש) לייענט אַרויסוואַרפן טאָפּאָ אויף הינטערגרונט, "לויפן דעם מאָל אין הינטערגרונט." דאָס זענען די קאָד'ס אייגענע אַנאָטאַציעס פון וואָס עס טוט; דער קאַמפּיין נאָמען אין דעם פּאָסטן איז געצויגן פון יענעם ערשטן לייבל צוזאַמען מיטן פאַלשן נאָוד "סינק דאַעמאָן" (סינק) וואָס די פּערסיסטענס מאַשינערי נאָכמאַכט.
מיר באַשרײַבן נאָר וואָס דער קאָד טוט באַאָבאַכטבאַר. די נעמען פֿון די פּאַקאַדזשאַז — אַלע קריפּטאָ, וואָלעט, און בלאָקטשיין-טולינג טערמינען — ווײַזן אויף דעם דעוועלאָפּער עולם וואָס וועט זיי מערסטנס אַרויסנעמען מיטן נאָמען; עס אַליין באַשטעטיקט נישט ווער דער פּובליקאַטאָר איז. די צווייטע שטאַפּל איז געווען גאָר צוריקקריגבאַר דורך דעקאָדירן די base64 פֿיקסטשור, און זײַן נאַטור איז באַשריבן אויבן: עס זאַמלט וואָלעט שליסלען, זוימען-פֿראַזעס, און סודות און עקספֿילטרירירט זיי, RSA-ענקריפּטעד, צו עפֿנטלעכער IPFS סטאָרידזש דורך Pinata. א באַמערקעוודיקע דיזיין ברירה איז די אַוועק פֿון אַ פּריוואַטן C2 סערווער — קאָנפֿיגוראַציע קומט פֿון אַ GitHub gist און IPFS, און געגנבעטע דאַטן ווערן פּאַרקט אין עפֿנטלעכער דעצענטראַליזירטער סטאָרידזש קיילד דורך אינהאַלט העש, ביידע פֿון וועלכע זענען שווערער צו כאַפּן ווי אַן איינציקער אַטאַקער-קאָנטראָלירטער האָסט. קיין פֿריִערדיקע עפֿנטלעכע באַריכטן וואָס פּאַסן צו דעם קלאַסטער זענען נישט געפֿונען געוואָרן אין דער צײַט פֿון שרײַבן.
השפּעה, טרענדס און גיידאַנס פֿאַר פֿאַרטיידיקער
ווער איז אויסגעשטעלט. יעדער וואס האט צוגעלייגט איינע פון די פעקלעך צו א נאָדע פראיעקט און דערנאך געלאפן קאוד וואס אימפארטירט עס. ווייל דעטאנאציע איז אימפארט-צייט אנשטאט אינסטאל-צייט, איז פשוט האבן דעם פעקל פאראן נישט גענוג — אבער יעדע נארמאלע באנוץ וואס לאדט דעם מאדול דערגרייכט דעם פיילד. די לאקער נעמען צילן אויף דעוועלאפערס וואס בויען אויף עטהערעום, סאלאנה, ארביטרום, לייער-2, און אלגעמיינע וואלעט/קאודינג טולינג — די באפעלקערונג וואס איז מערסטנס מסתמא צו האבן פונקט די אקטיוון וואס די צווייטע שטאפל זוכט. יעדער וואס האט געלאפן איינע פון די מאדולן אויף א מאשין וואס האלט וואלעט שליסלען, זוימען פראזן, קי סטארס, SSH שליסלען, אדער... .ענוו סודות זאָלן באַהאַנדלען די קרעדענשעלס ווי קאָמפּראָמיטירט און זיי ראָטירן.
צוויי מוסטערן וואָס זענען ווערט צו אינטערנאַליזירן. ערשטער, פּיילאָוד-ווי-פיקסטשערשיקן די צווייטע שטאפל אלס base64 אינעווייניק פון א דאטן טעקע מיט א גלייבלעך נאמען (טעסט/פֿיקסטשורס/שליסל־פּאָרן.דאַט) האַלט די זיכטבארע מקור פון דעם פּעקל אויסזעענדיק ריין און שטופּט דעם בייזוויליקן אינהאַלט אין אַ טעקע וואָס רעצענזיע מכשירים און מענטשלעכע סקימערס באַהאַנדלען אָפט ווי ינערט דאַטן. צווייטנס, אימפארט-צייט פארשפעטיקטע אויספירונג מיט קראָס-פּלאַטפאָרמע פּערסיסטענסאריבערפירן דעם טריגער אראפ דעם אינסטאל קרוק, צולייגן א טיימער, און דערנאך אנהאלטן אריבער קראן, סקעדזשולד טאסקס, און לאנטשד איז א באוואוסטזיניגער שריט אוועק פון די מער גערוישפולע אינסטאל-סקריפּט טעכניקן וואס אויטאמאטישע רעגיסטרי סקענירן באאבאכטעט דאס נאנטסטע.
אנווייזונגען פֿאַר פֿאַרטיידיקער און אויפֿהאַלטערס:
- באַהאַנדלען צוגעלייגטן קאָד נאָך מאָדול.עקספּאָרטן אלס א רעצענזיע פריאריטעט — דראַפּער לאָגיק באַהאַלט זיך אָפט אונטער דער "עכטער" מאָדול ייבערפלאַך.
- גיי נישט אויס פון דעם אז דאטן טעקעס זענען אינערט. א base64 בלאב אונטער טעסט/פֿיקסטשורס/ וואָס ווערט געלייענט ביי ראַנטיים און דעקאָדירט איז עקסעקוטאַבאַל-אַדדזשאַסענט; מאַרקירט ראַנטיים לייענונגען פון פיקסטשער טעקעס וואָס פיטער אַ פונקציע/עוואַל/שרײַב-דאַן-רויג קייט.
- גיי אויף דער זוכעניש פארן דראפ-וועג ~/.cache-db/.node-sync/ און פֿאַר די פּערסיסטענס יוניץ וויננאָוד סינק (געפלאנטע אויפגאבע) און com.apple.syncd (launchd) אויף דעוועלאָפּער מאשינען וואָס האָבן אַרויסגעצויגן די נעמען.
- וואָרענונג אויף נאָדע פּראָצעסן וואָס שאַפֿן קראָן איינטריטן, סקעדזשולד טאַסקס, אָדער לאָנטשד דזשאָבס — לעגיטימע לייברעריז טאָן דאָס זעלטן ביי אימפּאָרט.
- בעפֿאָרצוגן לאָקפֿײַלס און פּינד ווערסיעס, און איבערקוקן דעם דיפֿ פֿון יעדער נײַער קליינער "נוצלעכקייט" דעפּענדענץ, ספּעציעל נול-דעפּענדענסי פּאַקאַדזשאַז ארויסגעגעבן דורך נישט-באשטעטיגטע אקאונטס אָן קיין פֿאַרבונדענע רעפּאָזיטאָרי.
פֿאַר רעגיסטרי פֿאַרטיידיקער, איז די מסקנא אַז install-hook מאָניטאָרינג איז נייטיק אָבער נישט גענוג: אַן אימפּאָרט-צייט, טייַמער-פֿאַרשפּעטיקטער דראַפּער סטיידזשד אין אַ דאַטן טעקע וועט דורכגיין אַן install-צייט-בלויז קאָנטראָל, און דער פּערסיסטאַנס שריט איז אָפֿט דער הויכסטער אָבסערווירבאַרער סיגנאַל וואָס בלייבט איבער צו כאַפּן.







