TL; DR
Yon pake PyPI ki rele kontwòl-gcli te vini ak yon zouti konplè pou aksè a distans pou Windows: anrejistreman klavye, kaptire webcam ak mikwofòn, siveyans clipboard, aksè kalifikasyon navigatè, kontwòl ekran, pèsistans, elevasyon privilèj, ak yon "plis pase 140 kòmand" li te fè piblisite pou li. Li pa t kache sa li te ye: pwòp rezime PyPI pake a te dekri li kòm yon "Zouti aksè a distans atravè npoint.io".
Detay ki vo lapenn rete sou li a se fraz sa a "via npoint.io." Olye pou yo te rele lakay yo nan yon sèvè dedye, enplant yo te itilize a npoint[.]io (yon sèvis gratis e lejitim pou òganize ti dokiman JSON) kòm relè kòmand ak kontwòl li. Operatè a ekri kòmand nan yon bin JSON; enplant lan sonde bin sa a, egzekite li, epi ekri rezilta yo. Pa gen domèn ki posede pa yon atakè pou bloke, pa gen nouvo IP pou siyalize: trafik la ale nan yon sèvis devlopè yo itilize chak jou.
Yo te pibliye sis vèsyon nan apeprè trèz èdtan edmi, chak te pi kapab pase dènye a. Yo te klase chak youn ladan yo. ml_predi_an sekirite pa yon klasifikatè otomatik anvan revizyon manyèl te reklasifye fanmi an kòm move.
Anatomi atak
kontwòl-gcli enstale pake enpòtasyon an gcli, yon baz kòd Python ki gen 35 modil. Pa gen okenn tan enstalasyon. hooks — pa gen anyen k ap mache pandan pip enstaleKapasite a rete nan modil yo menm, yo itilize l yon fwa zouti a ap fonksyone, epi prezantasyon modil la sanble ak yon fèy espesifikasyon pwodwi:
| Zòn kapasite | Modil |
|---|---|
| Siveyans lame | keylog, webcam, audio, clipboard, desktop, monitoring |
| Aksè a kalifikasyon ak done | browser, forensics, fileops, transfer, users |
| Kenbe pye & Eskalad | persistence, elevator, registry, security |
| Rekonesans lame ak rezo | system, processes, network_config, wifi, bluetooth, netutils |
| Kòmand ak kontwòl | client, host, session, protocol, npoint, crypto, encrypt |
Pati enteresan an se kanal kòmand lan. Pifò zouti aksè a distans rive nan yon sèvè operatè a kontwole — yon adrès IP, yon domèn, yon founisè hosting ke yo ka rapòte epi dekonekte. kontwòl-gcli olye trete yon sèvis JSON-bin gratis kòm yon dead-drop. pwen n modil la li epi ekri ti dokiman JSON sou npoint[.]io sou HTTPS òdinè; la kriptografik/ankripte modil yo vlope chay ki echanje yo pou kontni bin yo pa kòmand tèks klè. Efè a se yon relè medyatè, chiffres:
- Operatè a lage yon enstriksyon (chifre) nan yon bin JSON.
- Enplant la, k ap fonksyone sou lame viktim nan, sonde bin nan, dechifre li, egzekite youn nan jesyon kòmand li yo, epi ekri rezilta a (chifre) tounen.
- Pou yon monitè rezo, viktim nan ap senpleman pale ak npoint[.]io — yon sèvis ki gen yon rezon lejitim pou parèt nan trafik devlopè yo.
Pa gen okenn telechajman dezyèm etap e pa gen okenn loader obfuscated isit la: kapasite a vini antye, nan Python lizib, epi sèl "kache" a se chwa relè a ak chifreman chay itil yo relè.
Li enpòtan pou eksplike poukisa yon JSON-bin dead-drop atiran sou plan operasyonèl, paske li eksplike poukisa nou espere wè modèl la ankò:
- Pa gen okenn pwen final ki posede pa operatè a. Pa gen domèn C2 pou anrejistre, pa gen VPS pou lwe, epi pa gen anyen pou yon defansè oswa yon anrejistrè sezi. Retire domèn nan. pake pa touche kanal la; retire li chanèl vle di mande yon SaaS pou itilizasyon jeneral pou siveye yon dokiman pami plizyè milyon.
- Blanchiman repitasyon. HTTPS sortan pou yon sèvis devlopè byen koni pa gen okenn penalite repitasyon yon nouvo domèn oswa yon IP kri ta genyen. Anpil konfigirasyon filtraj sòti pèmèt li enplisitman.
- Asenkronizasyon ak refi. Yon modèl sondaj — enplant lan chèche yon dokiman sou yon entèval olye pou l kenbe yon socket ouvè — pwodui trafik ki sanble ak yon sondaj API peryodik, pa yon sesyon entèaktif. Chifreman kontni dokiman an vle di menm yon analis ki jwenn bin nan wè tèks chifre, pa yon lis kòmand.
- Wotasyon trivialChanje nan yon lòt bin, oubyen nan yon lòt sèvis nòt/kole nèt, se yon chanjman konfigirasyon yon sèl liy pou operatè a. Nenpòt lis blòk ki lye ak relè espesifik la vin pa itil depi li anbake.
Konpwomi operatè a aksepte a se débit ak latans: yon relè dead-drop pi dousman epi li gen mwens Pleasant pase yon koneksyon dirèk. Pou yon enplant siveyans ak kontwòl ki sitou bay kòmand kout epi kolekte rezilta sou tan, echanj sa a fasil pou fè.
Timeline
Fanmi an te vin pi grav byen vit. Dat kreyasyon tikè pou vèsyon ki make yo mete tout ak obsève a nan apeprè trèz èdtan edmi, epi kantite prèv eskanè a te ogmante ansanm ak kòd la — soti nan kèk sit ki make nan premye vèsyon an rive nan katòz nan dènye a.
| Version | Premye fwa yo wè l (UTC) | nòt |
|---|---|---|
0.1.0 | 2026-07-21 12:59 | Telechajman inisyal; sifas minimòm ki make ak drapo |
0.5.0 | 2026-07-21 18:01 | Kapasite a ap ogmante |
0.2.0 | 2026-07-21 18:03 | (nimerotasyon vèsyon yo pa monotonik avèk lòd telechajman an) |
0.6.0 | 2026-07-22 00:44 | Ansanm modil ki pi laj |
0.7.0 | 2026-07-22 01:58 | Bwat zouti prèske konplè |
0.7.1 | 2026-07-22 02:28 | Dènye; 35 modil, tout kapasite |
Yo pa t pibliye nimewo vèsyon yo nan lòd strik, men direksyon an klè: yon premye ti koupe, answit yon iterasyon rapid pou rive nan vèsyon 0.7.1 ki gen tout fonksyonalite yo. Sa a se fòm yon pwojè anba devlopman aktif k ap pouse nan yon rejis piblik pandan l ap grandi, se pa yon lage yon sèl fwa.
Endikatè Konpwomi
Tout endikatè ki anba yo te konfime avèk kontni pake ki sou disk la ak yon eskan endikatè deterministik vèsyon 0.7.1; pa gen youn ki espekilatif.
| Kalite | Endikatè |
|---|---|
| Pakè (PyPI) | gcli-control, vèsyon 0.1.0, 0.2.0, 0.5.0, 0.6.0, 0.7.0, 0.7.1 |
| Enpòte pakè a | gcli |
| Relè C2 | npoint[.]io (JSON-bin dead-drop; chaj chiffres) |
| Depo deklare | github[.]com/gcli-control/gcli |
| Anprent konpòtman | Modil siveyans ko-lokalize yo: keylog, webcam, audio, clipboard, browser, plis pèsistans, asansè, ak yon kouch kòmand kliyan/òt/pwotokòl nan yon sèl pake |
| Enstale hooks | Okenn: kapasite a ap fonksyone pandan zouti a ap fonksyone, pa pandan enstalasyon an. |
Nòt defansè a: Siyal ki pi fò e dirab la se pa domèn nan (yon lame relè vire trivialman) men fòmeyon sèl pake ki gen ladan twa oswa plis primitif siveyans lame diferan ta dwe apwouve bèso tibebe w la epi dirije yon bouk kòmand/repons atravè yon sèvis piblik pou hébergement kontni. Blokaj npoint[.]io Li pa pratik pou pifò boutik yo sèvi ak li kareman; bay alèt sou yon pwosesis inatandi ki kaptire aparèy opinyon yo epi ki kominike avèk yon sèvis JSON-bin pi solid.
Konpòtman obsève ak ankadreman
De bagay fè echantiyon sa a dwòl, epi toulede se reyalite obsèvab olye ke konklizyon sou motif.
Li te fè piblisite pou tèt li. Rezime pake a ki te distribye sou PyPI a te bay lis kapasite yo nan yon langaj senp — aksè a distans, kontwòl Desktop, jesyon itilizatè, webcam, odyo, keylogger, pèsistans, done navigatè, WiFi, rejis, "plis pase 140 kòmand." Pa t gen okenn tantativ pou fè pase kòd la kòm yon asistan pou konstriksyon, yon anbalaj CLI, oswa yon sèvis piblik ajan IA, ki se degizman ki pi komen nou wè sou rejis piblik yo. Kit ouvèti sa a reflete yon zouti ekip wouj ki pibliye san kontwòl aksè oswa yon lòt bagay se yon kesyon kontni pake a poukont li pa rezoud; sa ki sèten se ke yon twous zouti aksè a distans ak siveyans ki fonksyone, pou tout objektif, te ka enstale pa nenpòt moun ki te gen... pip.
Li te apiye sou konfyans nan yon sèvis ki benin. Lè l sèvi avèk npoint[.]io paske relè a se teknik ki defini an. Li se yon egzanp yon modèl ki pi laj — routage C2 atravè yon SaaS lejitim (kole sit, bwat JSON, chat entènèthooks, dokiman nwaj) pou trafik move a melanje ak aktivite nòmal devlopè a epi pa gen okenn pwen final ki posede pa operatè a pou sezi. Chaj itil yo sou relè a te chiffres, kidonk kontni bin nan pa t ap li kòm kòmand pou yon obsèvatè aksidantèl.
Siyal piblikatè yo mens e jenerik. Pakè a te deklare yon otè nan "kontribitè gcli" ak yon lisans MIT, epi li te montre paj dakèy li ak chan depo li yo nan github[.]com/gcli-control/gcli. Pa gen anyen nan sa ki verifye: yon chèn otè se tèks lib, yon header lisans MIT pa koute anyen, epi yon URL depo nan metadone pake a se yon reklamasyon, pa yon prèv orijin. Modèl la — yon non tou nèf, yon otè kolektif jenerik, ak yon òganizasyon/repo oto-referansyèl ki kreye otou pake a — se sa yon pwojè sanble lè li kanpe espesyalman pou pote kòd la, olye de yon zouti etabli ki rive devlope yon karakteristik kontwòl a distans. Nou note sa yo kòm obsèvasyon; yo konsistan avèk, men yo pa etabli poukont yo, yon distribisyon ki fèt espesyalman.
Nou dekri dispozisyon an kòm move sou baz kapasite ak livrezon: yon enplantasyon konplè, aksè a distans ak siveyans ki ka fonksyone, distribye sou yon endèks pake piblik ak yon relè sekrè. Nou pa bay yon sib oswa yon motif.
Enpak, tandans ak sa defansè yo ka fè
Yon pwen avèg pou triyay oryante sou degizman. Anpil kle triyaj pakè otomatik sou la degize siyal yo malveyan tipik nan rejis la — tach ki bouche, lè enstalasyon an hooks, ti pawòl pou rekòlte kalifikasyon. Yon pake ki tou senpleman ouvètman yon RAT, ak kòd pwòp ki lizib e san okenn zen enstalasyon, pa prezante okenn nan siyal sa yo epi li ka pase euristik ki atann kache. Siyal ki detekte klas sa a yon fason fyab yo estriktirèl olye ke yo baze sou degizman: yon resansman kapasite (konbyen primitif siveyans lame diferan ki koegziste nan yon sèl pake) ak analiz fòm C2 (yon bouk kòmand/repons ki dirije atravè yon sèvis hosting kontni jeneral). Verifikasyon sa yo deklanche kèlkeswa jan onèt oswa... toufe anbalaj la ye.
Tandans SaaS-kòm-C2 a. Abize yon sèvis hosting lejitim kòm yon "dead-drop" se pa nouvo, men li kontinye fonksyone paske pri defansif pou bloke sèvis la wo epi pri ofansif pou chanje sèvis prèske zewo. Atann plis. Defans rezo ki lye ak move domèn espesifik yo demode imedyatman; règ konpòtman yo ("pwosesis sa a li clipboard la ak webcam la epi answit kominike avèk yon API pou hosting nòt") pa demode.
Yon eskis deteksyon beton. Règ dirab la pa nonmen npoint[.]io ditou. Li konbine de obsèvasyon ki endividyèlman komen men ansanm ki ra sou yon pwomotè nòmal oswa yon lame CI:
alèt lè yon sèl pwosesis, nan yon sèl sesyon, tou de:
(A) jwenn aksè a yon primitif siveyans lame — yon aparèy opinyon (klavye/sourit kwòk), kamera, mikwofòn, kaptire ekran, bouk lekti clipboard, oswa yon depo kalifikasyon navigatè ("Login Done" / "Eta Lokal" / DPAPI); EPI
(B) fè demann sortan bay yon sèvis piblik content-hosting / paste / JSON-bin / chat-webhook epi voye yo pou revizyon, kèlkeswa sèvis espesifik ki nan (B) a.
Ni youn ni lòt pa sispèk poukont li: anpil kopi ekran zouti lejitim, ak anpil pòs JSON sou yon API hosting. Konjonksyon ki andedan yon pwosesis ki pa dire lontan se siyal la, epi li siviv nenpòt wotasyon relè.
Etap pratik pou ekip yo:
- Trete enstalasyon pakè piblik yo sou òdinatè devlopè ak CI yo kòm yon limit ekzekisyon, pa yon konvenyans — yon RAT sou yon ajan konstriksyon se yon RAT ak sekrè ou yo.
- Prefere miwa entèn ki nan lis otorize yo; yon pake ki gen non literal pou kontwòl remote epi ki dekri yon keylogger pa ta dwe janm rezoud sou yon endèks antrepriz.
- Alèt sou la konbinezon — aparèy opinyon oswa kaptire ekran plis trafik sortan nan yon sèvis kontni/kole/JSON-bin — olye de sou nenpòt primitif endividyèl, ki gen itilizasyon benin nan izolasyon.
- Pa konte sou yon nòt "san danje" otomatik kòm yon vèdik tèminal pou pakè ki gen kapasite aksè laj nan men òdinatè a; voye yo bay revizyon imen.
Fanmi pakè a klase kòm move epi yo refere li pou retire li nan rejis la. Piske yon C2 ki baze sou relè pa kite okenn lame ki posede pa operatè a nan yon twou, valè defans dirab la se nan anprent konpòtman ki anwo a, pa nan okenn antre nan lis blòk endividyèl.





