Word dokumentā ievietots balts teksts uz balta fona, 8 punktu izmērā. Kad lietotājs šo failu pievieno Copilot sesijai kā avotu, Copilot to izlasa kā parastu tekstu un izpilda tur ierakstītās norādes. Demonstrācijā finanšu atskaites skaitļi izvadē nokrita uz pusi. Pēc tam Copilot iekopē visu uzbrukuma tekstu arī jaunajā dokumentā tajā pašā neredzamajā formatējumā, tāpēc fails aiziet tālāk pa uzņēmumu jau kā patstāvīgs pārnēsātājs.
Ķēdi 28. jūlijā aprakstīja drošības pētnieks blogā En Klype Salt sērijas “Context Collapse” trešajā daļā. Ziņojums Microsoft drošības reaģēšanas centram (MSRC) aizgāja 6. martā. Starp abiem datumiem ir 144 dienas, divas mazināšanas kārtas un viens modeļa jauninājums. Uzbrukums atkārtojas arī tagad.
Divi posmi, viens fails
Pirmais posms izskatās kā jau zināmā netiešā uzvedinājumu injekcija. Uzbrucējs sagatavo dokumentu, kurā JSON formātā ierakstītas norādes Copilot. Fails nonāk pie upura pa e-pastu, SharePoint mapē vai kā lejupielāde no vietnes. Upuris to pievieno Copilot for Word sesijai, lai uzrakstītu atskaiti vai kopsavilkumu. Copilot norādes izpilda un maina izvadi.
Otrais posms ir jaunums. Tās pašas norādes tiek ierakstītas rezultātā, tāpēc jaunais dokuments pats kļūst par avotu nākamajai sesijai. Sākotnējais ļaunais fails vairs nav vajadzīgs. Uzbrucēja kontrolētās norādes no viena dokumenta pārceļas uz Copilot ģenerētajiem vai rediģētajiem failiem, tie savukārt pārnes tās tālāk pa uzņēmuma parastajām darba plūsmām.
Uzvedinājumi, kas pavairo sevi, nav redzēti pirmoreiz. 2024. gada martā Stavs Koens (Cornell Tech un Technion), Rons Bitons (Intuit) un Bens Nasi (Cornell Tech) publicēja Morris II, tārpu, kas caur ģeneratīvā AI e-pasta asistentiem izplatījās bez lietotāja klikšķa. Atšķirība ir vidē. Morris II strādāja pētnieku saliktā testa ekosistēmā, šoreiz nesējs ir Microsoft biroja pakete, kuru katru dienu atver miljoni darbinieku.
Formatējums pazūd, norādes paliek
Slēpšana ar balto tekstu strādā tāpēc, ka Copilot dokumentu nolasa bez formatējuma. Fonta krāsa un izmērs modelim nenonāk. Modelis saņem vienu teksta plūsmu, kurā lietotāja uzdevums un uzbrucēja norādes izskatās vienādi. Cilvēks failu atverot neredz neko aizdomīgu, jo balts uz balta 8 punktos ekrānā nav pamanāms.
Pētnieks atsevišķi brīdina par pieeju, kurā aizsardzību uztic pašam modelim:
Paļauties uz modeli, lai tas atklātu uzvedinājumu injekcijas, ir līdzīgi kā lūgt interpretatoram izpildīt neuzticamu programmu, lai noskaidrotu, vai to izpildīt ir droši.
Problēma ir arhitektūrā. Modelim ārējais saturs jāapstrādā, lai saprastu tā nozīmi. Līdz brīdim, kad modelis šo secinājumu izdara, uzbrucēja marķieri jau ietekmē aprēķinu, no kura tas iznāk.
144 dienas MSRC sarakstē
Publikācijā pievienots pilns saskaņošanas grafiks:
- 6. marts: ziņojums MSRC ar atkārtošanas soļiem.
- 31. marts: Microsoft apstiprina aprakstīto uzvedību, produktu komandas sāk darbu pie mazināšanas.
- 3. aprīlis: izvietota pirmā mazināšana, jaunā “Edit with Copilot” pieredze.
- 9. aprīlis: sākotnējais uzbrukums vairs nestrādā, pētnieks atkārto to ar citu XPIA uzvedinājumu.
- 8. jūnijs: publicēšanu pārceļ uz 15. jūliju.
- 14. jūlijs: kā mazināšanu Microsoft nomaina pamatā esošo modeli uz GPT-5.5.
- 15. jūlijs: pašizplatīšanās atkārtota uz GPT-5.6.
- 28. jūlijs: saskaņota publiskā atklāšana.
Sākotnējais periods bija 90 dienas, to pagarināja divreiz. CVE numura šim atradumam nav. Pēc pētnieka vārdiem publicēšanas brīdī visas izvietotās mazināšanas bija ieslēgtas, tomēr uzbrukumu izdevās atkārtot.
Microsoft rēķina pēc citas mērlentes
Daļu uzvedinājumu injekcijas ziņojumu Microsoft par ievainojamībām neuzskata. Kā jūlijā rakstīja BleepingComputer, uzņēmuma pārstāvis šādus gadījumus nosauca par tādiem, kas pēc publicētajiem kritērijiem neietilpst tvērumā. MSRC vērtēšanas latiņa pieļauj ziņojumu atzīt par ārpus tvēruma, ja nav pārkāpta drošības robeža vai ja ietekme paliek pieprasītāja izpildes vidē. Inženieris Džons Rasels tā zaudēja četrus ziņojumus, tostarp par sistēmas uzvedinājuma noplūdi un par failu augšupielādes politikas apiešanu ar base64 kodējumu.
Word gadījumā MSRC uzvedību apstiprināja un divreiz mēģināja to nobloķēt. Konkrētie payload varianti tika aizvērti, uzbrukuma klase palika atvērta.
Ko var darīt jau tagad
Praktiskie ieteikumi no publikācijas ir īsi. Ārpus organizācijas saņemtu dokumentu pievienojot Copilot sesijai, tas jāuzskata par neuzticamu ievadi tāpat kā izpildāmu failu. Pirms ģenerēšanas failu vērts atvērt un saturu pārskatīt: Ctrl+A ar fonta krāsas nomaiņu slēpto tekstu padara redzamu dažās sekundēs. Pēc ģenerēšanas jāpārlasa arī rezultāts, pirms tas aiziet tālāk pa SharePoint vai e-pastu.
Ilgtermiņā pētnieks prasa izcelsmes metadatus: dokumentā būtu jāsaglabā, no kura avota nāk konkrētais fragments un ko tajā mainījis modelis. Otrs prasītais solis ir arhitektūras līmenī atdalīt uzdevumu no apstrādājamā satura, lai avota teksts nevar pārrakstīt norādes. Ne viens, ne otrs pašlaik Copilot for Word nav pieejams. Pēdējā veiksmīgā atkārtošana notika 15. jūlijā, trīspadsmit dienas pirms atklāšanas.
Komentāri
Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.