PointBlank: PyPI RAT JSON-Bin қызметінде C2 жасырады

PointBlank: тегін жазбаларды орналастыру қызметі арқылы командалық арнасын басқаратын толық функционалды Python RAT

TL; DR

PyPI пакеті деп аталады gcli-бақылау Windows-тың толық қашықтан кіру құралын шығарды: пернелерді басу журналын жүргізу, веб-камера мен микрофонды түсіру, алмасу буферін бақылау, браузердің тіркелгі деректеріне кіру, экранды басқару, тұрақтылық, артықшылықтарды арттыру және өзін-өзі жарнамалаған «140+ команда». Ол не екенін жасырмады: пакеттің өзіндік PyPI қысқаша мазмұны оны «Қашықтан кіру құралы арқылы» деп сипаттады. npoint.io".

Тоқтауға тұрарлық деталь - осы сөз тіркесі «npoint.io арқылы.» Арнайы серверге қоңырау шалудың орнына, имплант қолданылды npoint[.]io (кішкентай JSON құжаттарын орналастыруға арналған тегін, заңды қызмет) командалық-басқару релесі ретінде. Оператор командаларды JSON қалтасына жазады; имплант сол қалтаны сұрайды, орындайды және нәтижелерді кері жазады. Шабуылдаушыға тиесілі доменді бұғаттаудың қажеті жоқ, жаңа IP мекенжайын белгілеудің қажеті жоқ: трафик әзірлеушілер күн сайын қолданатын қызметке барады.

Шамамен он үш жарым сағат ішінде алты нұсқасы жарық көрді, олардың әрқайсысы алдыңғысынан гөрі тиімдірек болды. Олардың әрқайсысы бағаланды. ml_болжамды_қауіпсіз қолмен қараудан бұрын автоматтандырылған жіктеуіш арқылы отбасын зиянды деп қайта жіктеді.

Шабуыл анатомиясы

gcli-бақылау импорттау пакетін орнатады gcli, 35 модульдік Python код базасы. Орнату уақыты жоқ hooks — кезінде ештеңе жұмыс істемейді пип орнатуБұл мүмкіндік модульдердің өзінде орналасқан, құрал іске қосылғаннан кейін іске қосылады және модуль орналасуы өнімнің сипаттамалық парағы сияқты оқылады:

Мүмкіндік аймағыМодульдер
Хостты бақылауkeylog, webcam, audio, clipboard, desktop, monitoring
Тіркелгі деректері және деректерге қол жеткізуbrowser, forensics, fileops, transfer, users
Табан ұстау және көтерілуpersistence, elevator, registry, security
Хост және желіні қайта құруsystem, processes, network_config, wifi, bluetooth, netutils
Басқару және бақылауclient, host, session, protocol, npoint, crypto, encrypt

Команда арнасы қызықты бөлігі болып табылады. Қашықтан қатынау құралдарының көпшілігі оператор басқаратын серверге — IP мекенжайына, доменге, хостинг провайдеріне жетеді, оны хабарлауға және офлайн режимге көшіруге болады. gcli-бақылау оның орнына емдейді тегін JSON-bin қызметі тұйықталған нұсқа ретінде. The нүкте модуль шағын JSON құжаттарын оқиды және жазады npoint[.]io кәдімгі HTTPS арқылы; Шифрлау/шифрлау Модульдер алмасқан пайдалы жүктемелерді орайды, сондықтан себеттің мазмұны ашық мәтіндік командалар болмайды. Әсері делдалдық, шифрланған реле болып табылады:

  • Оператор (шифрланған) нұсқаулықты JSON қалтасына тастайды.
  • Имплант жәбірленуші хостында іске қосылып, сол қалтадағы ақпаратты сұрайды, шифрын ашады, команда өңдегіштерінің бірін орындайды және (шифрланған) нәтижені кері жазады.
  • Желі мониторы үшін жәбірленуші жай ғана сөйлеседі npoint[.]io — әзірлеуші ​​трафигінде пайда болуының заңды себебі бар қызмет.

Мұнда екінші кезеңдегі жүктеу және шатастырылған жүктеуші жоқ: мүмкіндік толығымен оқылатын Python тілінде жеткізіледі, ал жалғыз «жасырынатын» нәрсе - реле таңдауы және релелік пайдалы жүктемелерді шифрлау.

JSON-bin өлі тамшысы неліктен операциялық тұрғыдан тартымды екенін түсіндіруге тұрарлық, себебі бұл үлгіні қайтадан көруді неге күтетінімізді түсіндіреді:

  • Операторға тиесілі соңғы нүкте жоқ. Тіркеуге болатын C2 домені, жалға алуға болатын VPS және қорғаушы немесе тіркеуші тартып алатын ештеңе жоқ. пакет арнаға тимейді; алып тастау арна жалпы мақсаттағы SaaS-тен миллиондаған құжаттың ішіндегі бір құжатты бақылауды сұрау дегенді білдіреді.
  • Абыройды жылыстату. Белгілі әзірлеуші ​​қызметіне шығыс HTTPS жаңа домен немесе шикі IP мекенжайы сияқты беделге қатысты айыппұлдарды көтермейді. Көптеген шығыс сүзгілеу параметрлері оған жанама түрде мүмкіндік береді.
  • Асинхрондылық және жоққа шығарушылық. Сауалнама моделі – имплант құжатты ашық сокет ұстаудың орнына белгілі бір аралықта алады – интерактивті сессия емес, мерзімді API сауалнамасына ұқсайтын трафикті жасайды. Құжат мазмұнын шифрлау тіпті себетті тапқан аналитиктің де командалар тізімін емес, шифрланған мәтінді көретінін білдіреді.
  • Тривиалды айналуБасқа себетке немесе мүлдем басқа жазба/қою қызметіне көшу оператор үшін бір жолдық конфигурацияны өзгерту болып табылады. Белгілі бір релеге қосылған кез келген блоктау тізімі жіберілген сәтте ескіреді.

Оператор қабылдайтын ымыра - өткізу қабілеті мен кідіріс: тұйықталған реле тікелей қосылымға қарағанда баяу және өткізу қабілеті төмен. Негізінен қысқа командалар беретін және уақыт өте келе нәтижелерді жинайтын бақылау және басқару импланты үшін бұл сауданы жасау оңай.

Timeline

Отбасы тез өсті. Белгіленген нұсқаларға арналған билет жасау уақыт белгілері бүкіл бақыланған доғаны шамамен он үш жарым сағат ішінде орналастырады, ал сканердің өзіндік дәлелдер саны кодпен бірге өсті — бірінші нұсқадағы бірнеше белгіленген сайттардан соңғы нұсқадағы он төртке дейін.

нұсқаАлғаш рет көрінді (UTC)Ескерту
0.1.02026-07-21 12:59Бастапқы жүктеу; минималды белгіленген бет
0.5.02026-07-21 18:01Мүмкіндік кеңейеді
0.2.02026-07-21 18:03(жүктеу ретімен нұсқа нөмірлеуі монотонды емес)
0.6.02026-07-22 00:44Кеңірек модульдер жиынтығы
0.7.02026-07-22 01:58Құралдар жиынтығы толықтай дерлік
0.7.12026-07-22 02:28Соңғы нұсқа; 35 модуль, толық қуаттылық

Нұсқа нөмірлері қатаң ретпен жарияланбаған, бірақ бағыт айқын: алдымен шағын үзінді, содан кейін толық функционалды 0.7.1 нұсқасына қарай жылдам итерация. Бұл белсенді әзірленіп жатқан жобаның бір реттік төмендеу емес, өскен сайын қоғамдық тізілімге жіберілуінің нысаны.

Келісім көрсеткіштері

Төмендегі барлық индикаторлар дискідегі пакеттің мазмұнымен және 0.7.1 нұсқасының детерминирленген индикатор сканерлеуі бойынша расталды; ешқайсысы болжамды емес.

түріИндикатор
Пакет (PyPI)gcli-control, 0.1.0, 0.2.0, 0.5.0, 0.6.0, 0.7.0, 0.7.1 нұсқалары
Пакетті импорттауgcli
C2 релесіnpoint[.]io (JSON-bin өлі жүктемесі; шифрланған пайдалы жүктемелер)
Көрсетілген репозиторийgithub[.]com/gcli-control/gcli
Мінез-құлық саусақ ізіБірге орналасқан бақылау модульдері: keylog, webcam, audio, clipboard, browser, сонымен қатар бір пакетте тұрақтылық, лифт және клиент/хост/протокол командалық қабаты
орнату hooksЖоқ: мүмкіндік орнату кезінде емес, құралдың жұмыс уақытында іске қосылады

Қорғаушының ескертпесі: ең күшті берік сигнал - бұл домен емес (релелік хосты тривиальды айналады), бірақ нысаныүш немесе одан да көп әртүрлі хост-бақылау примитивтерін біріктіретін бір пакет және команда/жауап циклын қоғамдық мазмұнды хостинг қызметі арқылы бағыттайды. Блоктау npoint[.]io outright көптеген дүкендер үшін тиімсіз; кіріс құрылғыларын түсіріп, JSON-bin қызметіне хабарласатын күтпеген процесс туралы ескерту әлдеқайда сенімді.

Байқалған мінез-құлық және құрылым

Бұл үлгіні ерекше ететін екі нәрсе бар, және екеуі де мотив туралы қорытындылардан гөрі байқалатын фактілер.

Өзін жарнамалады. PyPI-де таратылған пакеттің қысқаша мазмұны мүмкіндіктерді қарапайым тілде санамалап көрсетті — қашықтан кіру, жұмыс үстелін басқару, пайдаланушыны басқару, веб-камера, аудио, пернетақтаны тіркеуші, тұрақтылық, браузер деректері, WiFi, тізілім, «140+ команда». Кодты құрастыру көмекшісі, CLI орамашысы немесе AI-агент утилитасы ретінде беруге әрекет жасалмады, бұл біз жалпыға қолжетімді тізілімдерде жиі кездесетін жасырын көрініс. Бұл ашықтық кіруді басқарусыз жарияланған қызыл команда құралын немесе басқа нәрсені көрсете ме, жоқ па, бұл мәселе пакеттің мазмұнының өзі шешпейтін мәселе; жұмыс істейтін, жалпы мақсаттағы қашықтан кіру және бақылау құралдар жинағын кез келген адам орната алатыны анық. PIP.

Ол мейірімді қызметке деген сенімге негізделген. пайдалану npoint[.]io өйткені реле анықтаушы әдіс болып табылады. Бұл кеңірек үлгінің мысалы - C2-ні заңды SaaS арқылы бағыттау (қою сайттары, JSON қалталары, чат веб-торабы)hooks, бұлттық құжаттар) зиянды трафиктің қалыпты әзірлеуші ​​​​әрекетіне араласуы және операторға тиесілі соңғы нүктенің болмауы үшін. Реледегі пайдалы жүктемелер шифрланған, сондықтан себеттің мазмұны кездейсоқ бақылаушыға командалар ретінде оқылмайтын еді.

Баспагердің сигналдары жұқа және жалпылама. Пакет жарияланды автор «gcli үлескерлерінің» және MIT лицензиясының деректерін және оның басты беті мен репозиторий өрістерін көрсетті github[.]com/gcli-control/gcliМұның ешқайсысы тексеру емес: автор жолы тегін мәтін, MIT лицензиясының тақырыбы тегін, ал пакет метадеректеріндегі репозиторий URL мекенжайы шығу тегінің дәлелі емес, талап болып табылады. Үлгі - жаңа атау, жалпы ұжымдық автор және пакеттің айналасында жасалған өзіндік сілтеме жасайтын ұйым/репозиторий - жоба қашықтан басқару мүмкіндігін өсірген белгіленген құрал емес, кодты тасымалдау үшін арнайы орнатылған кездегідей көрінеді. Біз мұны бақылау ретінде атап өтеміз; олар мақсатты түрде құрылған дистрибуциямен сәйкес келеді, бірақ өздігінен оны орнатпайды.

Біз бұл әрекетті мүмкіндігі мен жеткізілімі негізінде зиянды деп сипаттаймыз: толық, іске қосылатын қашықтан қатынау және бақылау импланты, жасырын ретрансляциясы бар жалпыға қолжетімді пакет индексінде таратылады. Біз нысананы немесе себепті анықтамаймыз.

Әсер, үрдістер және қорғаушылар не істей алады

Маскировкаға бағытталған сұрыптаудың соқыр нүктесі. Көптеген автоматтандырылған пакет сұрыптау кілттері жасырыну сигналдары типтік тізілім зиянды бағдарламасы — түсініксіз дақтарды орнату уақыты hooks, сенім грамоталарын жинауға арналған бір жолды сұрақтар. Қарапайым пакет ашық түрде RATтаза оқылатын кодпен және орнату ілмегі жоқ, бұл хабарлардың ешқайсысын ұсынбайды және жасыруды күтетін эвристиканы айналып өте алады. Бұл класты сенімді түрде анықтайтын сигналдар жасыруға негізделген емес, құрылымдық болып табылады: мүмкіндіктер санағы (бір пакетте қанша түрлі хост-бақылау примитивтері бірге өмір сүреді) және C2 пішінді талдау (жалпы мақсаттағы мазмұнды хостинг қызметі арқылы бағытталатын команда/жауап циклі). Бұл тексерулер қаншалықты адал немесе сенімді екеніне қарамастан. мұқалмаған қаптама дегеніміз.

SaaS-as-C2 тренді. Заңды хостинг қызметін тұйыққа тіреу ретінде теріс пайдалану жаңалық емес, бірақ ол жұмыс істей береді, себебі қызметті бұғаттаудың қорғаныс құны жоғары және қызметтерді ауыстырудың шабуыл құны нөлге жақын. Одан да көп күтіңіз. Белгілі бір нашар домендерге негізделген желілік қорғаныс бірден ескіреді; мінез-құлық ережелері («бұл процесс буфер мен веб-камера оқиды, содан кейін жазбаларды орналастыру API-імен байланысады») ондай емес.

Нақты анықтау эскизі. Тұрақты ереже аталмайды npoint[.]io мүлдем. Ол қалыпты әзірлеушіде немесе CI хостында жеке-жеке кең таралған, бірақ бірге сирек кездесетін екі бақылауды біріктіреді:

бір сеанс ішінде бір процесс кезінде екеуі де ескертіледі:
(A) хост бақылауының қарапайым түріне — енгізу құрылғысына (пернетақта/тышқан ілмегі), камераға, микрофонға, экран суретіне, буфер оқу цикліне немесе браузердің тіркелгі деректері қоймасына ("Login Деректер" / "Жергілікті штат" / DPAPI); ЖӘНЕ
(B) (B) тармағындағы нақты қызметке қарамастан, жалпыға қолжетімді мазмұнды орналастыру / қою / JSON-bin / чат-вебхук қызметіне шығыс сұрауларын жасайды, содан кейін шолу үшін көтереді.

Екі жартысы да күдікті емес: көптеген заңды құралдардың скриншоттары және көптеген JSON хостинг API-іне жарияланады. Бір қысқа мерзімді процестің ішіндегі конъюнкция сигнал болып табылады және ол кез келген реле айналымынан аман қалады.

Командаларға арналған практикалық қадамдар:

  • Әзірлеуші ​​мен CI хосттарындағы жалпыға қолжетімді пакеттерді орнатуды ыңғайлылық емес, орындау шекарасы ретінде қарастырыңыз — құрастыру агентіндегі RAT сіздің құпияларыңыз бар RAT болып табылады.
  • Рұқсат етілген ішкі айналарды артық көріңіз; қашықтан басқару құралы үшін тікелей аталған және пернетақта логгерін сипаттайтын пакет ешқашан корпоративтік индексте көрсетілмеуі керек.
  • Ескерту Комбинациясы — кіріс құрылғысы немесе экран суреті және шығыс трафикті мазмұн/қою/JSON-bin қызметіне жіберу — кез келген жеке қарапайым қызметке емес, оның жеке пайдалы қолданылуына.
  • Кең хостқа кіру мүмкіндігі бар пакеттер үшін автоматтандырылған «қауіпсіз» бағаны терминалдық шешім ретінде пайдаланбаңыз; оларды адам шолуына жіберіңіз.

Пакеттер тұқымдасы зиянды деп жіктеліп, тізілімді жоюға жіберілді. Реле негізіндегі C2 операторға тиесілі хост қалдырмайтындықтан, берік қорғаныс мәні жоғарыдағы мінез-құлық саусақ ізінде, бірде-бір блоктау тізіміндегі жазбада емес.

sca-құралдары-бағдарламалық жасақтама-композиция-талдау-құралдары
Бағдарламалық жасақтама тәуекелдеріне басымдық беріңіз, оларды жойыңыз және қауіпсіз етіңіз
Тегін аккаунтыңызды алыңыз.
Несие картасы қажет емес.

Бағдарламалық жасақтаманы әзірлеу және жеткізуді қауіпсіз етіңіз

Xygeni өнім жиынтығымен бірге