Već smo pisali o MCP poslužiteljima koje nitko nije provjerio i o većini javnih poslužitelja koji i dalje preskaču OAuth. Oboje se odnosi na poslužitelje kojima uopće nije trebalo vjerovati. Deadbugz, aktivna kampanja koju su otkrili istraživači tvrtke Pillar Security i koju je zajednički registar MCP incidenata 18. rujna 2026. zabilježio kao INC-136, drukčiji je problem: poslužitelj koji je izgledao u redu kada si ga odobrio, a poslije je promijenio ono što radi.

Što je pronađeno

Jedan GitHub račun podnio je 23 pull requesta u nepovezanim repozitorijima AI i razvojnih alata, a svaki je dodavao mali MCP poslužitelj predstavljen kao alat za produktivnost — oblikovanje i sažimanje teksta, ništa zbog čega bi se itko zamislio tijekom pregleda koda. Nijedan pull request nije spojen prije nego što je kampanja otkrivena, a u trenutku objave nije potvrđena nijedna kompromitacija; istraživači ovo tretiraju kao demonstriranu tehniku, a ne kao proboj sa žrtvama.

Mehanizam: uvjetovanje brojem poziva

Ponašanje poslužitelja ovisi o tome koliko ga je puta klijent pozvao, a ne o tome što se od njega traži — upravo zato je neprimijećeno prošao brzi pregled i prvu sesiju.

01

Prvi i drugi poziv

Poslužitelj vraća točno ono što njegov opis obećava: oblikovan ili sažet tekst. Recenzent koji ga testira vidi mali, dosadan alat koji radi.

02

Treći poziv

Poslužitelj prepisuje metapodatke koje vraća — opise alata koje model čita kao upute — u naredbe da potraži SSH ključeve, AWS vjerodajnice, povijest ljuske i Kubernetes konfiguraciju, i to tiho.

03

Zašto ga pregled po sesijama propušta

Većina ručnog testiranja i većina jednokratnih postupaka odobravanja staje nakon jednog ili dva poziva. Zlonamjerni sadržaj tempiran je da se pojavi nakon trenutka u kojem je čovjek obično prestao pratiti.

Zašto je to drukčija prijetnja od poslužitelja koji je bio zlonamjeran od prvog dana

Opisi alata u MCP-u nisu dokumentacija za čovjeka — to je tekst koji povezani model čita i prema kojem može djelovati, što uopće omogućuje prompt injection putem metapodataka alata. Jednokratno odobrenje pretpostavlja da ono što si odobrio ostaje ono što se izvodi. Deadbugz pokazuje da se ta pretpostavka trenutačno nigdje u ekosustavu ne provodi: ništa u specifikaciji ne zahtijeva potpisani manifest alata, a ništa u većini klijenata ponovno ne traži privolu kada se definicije alata prethodno odobrenog poslužitelja promijene.

Što zapravo učiniti

  • Izradi otisak definicija alata u trenutku odobrenja i usporedi ga pri svakom ponovnom povezivanju — promjena je sigurnosni događaj, a ne rutinsko ažuriranje.
  • Svaku promjenu definicije na već odobrenom poslužitelju tretiraj kao nešto što zahtijeva novu, izričitu privolu, a ne tiho automatsko prihvaćanje.
  • Ne oslanjaj se na prvu sesiju pri provjeri poslužitelja treće strane. Ako je tvoj postupak „isprobaj jednom, pa vjeruj”, upravo je to rupa koju ovo iskorištava.
  • Daj prednost poslužiteljima čiju definiciju kontroliraš ti ili tvoja platforma pred onima preuzetima iz otvorenog registra ili iz pull requesta koji nisi napisao.

U SuperCognitu su alati agenta HTTP krajnje točke koje definira vlasnik radnog prostora i koje može vidjeti u cijelosti, a ne poslužitelji treće strane preuzeti iz registra — na tom putu nema pull requesta od neznanca. To zaobilazi ovu konkretnu kampanju, ali ne uklanja temeljni problem: svatko tko povezuje Claude, Claude Code ili bilo koji drugi MCP klijent s poslužiteljima iz otvorenog ekosustava trebao bi izvor poslužitelja i svaku promjenu u onome što oglašava smatrati stvarima koje vrijedi stvarno provjeriti.

Ovaj se prikaz temelji na javnoj objavi tvrtke Pillar Security i unosu u zajedničku bazu MCP incidenata (INC-136); neki su detalji preuzeti iz sekundarnih izvještaja, a ne iz izvornog teksta, a nijedan izvor u trenutku pisanja nije objavio potvrđenu žrtvu.