drošība · 4 min · 11.07.2026

GhostApproval: simlinks atver SSH piekļuvi caur AI koda asistentiem

Wiz pētnieki šonedēļ publicēja uzbrukuma metodi ar nosaukumu GhostApproval — ar simboliskas saites (simlink) palīdzību tā liek AI koda asistentiem rakstīt failus ārpus projekta mapes. Skartie rīki: Amazon Q Developer, Anthropic Claude Code, Augment, Cursor, Google Antigravity un Windsurf.

Simlinks ir faila sistēmas rādītājs uz citu failu. Kad programma atrisina simlinku pirms rakstīšanas, tā raksta mērķa failā, nevis saites adresē. Šis mehānisms ir Unix sistēmās kopš 1980. gadiem, un ar to saistītās drošības problēmas ir labi dokumentētas. GhostApproval gadījumā problēma ir tā, ka AI koda asistenti šo pārbaudi neveic: viņi neredz atšķirību starp parastu failu un simlinku, kas norāda uz ~/.ssh/authorized_keys vai jebkuru citu sensitīvu failu.

Kā uzbrukums norisinās

Uzbrucējs izveido git repozitoriju ar failu project_settings.json, kas ir simlinks uz ~/.ssh/authorized_keys. README vai .cursorrules fails instruē AI asistentu pievienot konfigurācijas rindu šim failam. Kad izstrādātājs klonē repozitoriju un atver to savā rīkā, asistents izpilda instrukciju — ieraksta uzbrucēja SSH publisko atslēgu upura authorized_keys failā. No tā brīža uzbrucējam ir pastāvīga SSH piekļuve bez paroles. Upuris var nodzēst repozitoriju — tas nekā nemaina.

Wiz demonstrēja uzbrukumu ar praktisku PoC. Instrukcijas forma var būt README, AGENTS.md, .cursorrules vai jebkurš fails, kuru asistents lasa automātiski projekta atvēršanā. Šis uzbrukums darbojas tāpēc, ka AI koda asistenti ir izstrādāti, lai lasītu un izpildītu projekta instrukcijas pēc iespējas plašāk — tas ir to galvenais lietderīgums. Drošības robeža starp “projekta failu” un “sistēmas failu” šajos rīkos bieži nav skaidri definēta. The Register to apraksta kā Unix drošības galvassāpes jaunā formā: rīki uzticami izpilda instrukcijas, nepārbaudot, vai rakstāmā faila ceļš paliek projekta robežās.

Vendoru reakcijas

Amazon, Cursor un Google uzskata kļūdu par kritisku vai augsta riska — visi ir izlaiduši ielāpus un sākuši CVE reģistrācijas procesu. Augment un Windsurf ir apstiprinājuši Wiz ziņojumu, bet labojumu vēl nav. Anthropic ieņēma citādu pozīciju.

Kā ziņo The Hacker News, Anthropic norāda: ja lietotājs ir uzticējies projekta mapei un apstiprinājis darbību, lēmums ir paša lietotāja. Šis scenārijs ir “ārpus mūsu draudu modeļa”. Wiz ar to nepiekrīt — izstrādātājs git klonā neredz, ka project_settings.json ir simlinks, jo standarta git izvads simlinku rāda kā parastu failu bez papildu marķējuma.

“Scenārijs, kurā lietotājs uzticas direktorijai un apstiprina labojumu, ir ārpus mūsu draudu modeļa.” — Anthropic, atbildē Wiz pētniekiem

Cik reāls ir risks

Uzbrukumam nepieciešami divi soļi: upurim jāklonē ļaunprātīgs repozitorijs un jāapstiprina AI asistenta rakstīšanas darbība. Klusā ekspluatācija tas nav. Tomēr izstrādātāji regulāri atver nepazīstamus repozitorijus — pārbaudot pull request’us no atvērtā koda projektiem vai klonējot paraug kodus no GitHub diskusijām un bloga ierakstiem.

Infosecurity Magazine rakstā Wiz norāda, ka sociālās inženierijas slānis šajā uzbrukumā ir minimāls. Pietiek ar pārliecinošu README tekstu — upurim nav jānoklikšķina uz aizdomīgas saites vai jāatver e-pasta pielikums. Atšķirībā no parastiem pikšķerēšanas uzbrukumiem šeit nav skaidra “aizdomīga momenta”, ko var pamanīt. Repozitorijā viss izskatās kā ikdienas darbs.

Ko darīt tagad

Amazon Q Developer, Cursor un Google Antigravity lietotājiem — atjauniniet uz pašreizējo versiju, ielāpi pieejami. Augment un Windsurf lietotājiem labojuma vēl nav; pagaidām drošākais variants ir atspējot automātisku failu rakstīšanu projektos, ko klonējat pirmo reizi, vai palaist rīku smilšukastes vidē. Claude Code gadījumā Anthropic labojumu neplāno.

SecurityWeek rakstā Wiz pētnieki iesaka vienu piesardzības pasākumu: pirms apstiprinat jebkuru failu labojumu no nesen klonēta repozitorija, pārbaudiet ar ls -la, vai mērķa fails nav simlinks. Šis vienas komandas ieradums bloķē visu GhostApproval uzbrukumu klasi neatkarīgi no tā, kādu rīku lietojat.

Avoti

komentārisaruna

Komentāri

Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.

Pievieno komentāru

Tavs e-pasts netiks publicēts. Obligātie lauki atzīmēti.

vēl no drošībasaistītie