39 milijonai kredencialų nutekėjo per vienerius metus
GitHub "Octoverse 2024" ataskaita rado 39 milijonus paslapčių, nutekėjusių GitHub 2024 m. Tai yra 25 % metinis padidėjimas nuo 2023 m. Paslaptys apima API raktus, duomenų bazių eilutes, autentifikavimo žetonus ir debesies kredencialus.
Priežastis žinoma. Kūrėjai įkelia kodą su paslaptimis viduje. Paslaptys atsiranda iš derinimo sesijų. Arba jos yra užkoduotos vietoje, užuot saugotos aplinkos kintamuosiuose. Esant 39 milijonams nutekėjimų, tai nėra reta situacija. Tai yra rutina.
Dirbtinio intelekto įrankiai prideda antrą nutekėjimo kanalą
GitGuardian 2025 m. tyrimas nustatė, kad 67 % kūrėjų netyčia atskleidė paslaptis kode. Tos pačios įpročiai, sukeliantys GitHub nutekėjimus, taip pat sukelia dirbtinio intelekto įrankių nutekėjimus.
Kūrėjas įkelia kodą į Claude, ChatGPT ar kitą DI asistentą pagalbai gauti. Tame kode dažnai yra gyvų kredencialų. DI modelis gauna paslaptį. Jis gali ją saugoti pokalbio istorijoje. Jis siunčia ją tiekėjo serveriams. Kūrėjas praranda kontrolę – be jokio įspėjimo.
Trys pavyzdžiai:
Duomenų bazės derinimas. Kūrėjas įkelia steko sekimą. Sekime yra prisijungimo eilutė. DI taip pat nuskaito slaptažodį.
Vamzdyno peržiūra. Kūrėjas dalijasi duomenų vamzdyno scenarijumi. Scenarijuje yra AWS prieigos raktas ir slaptas raktas. DI gauna abu.
API integracijos peržiūra. Kūrėjas prašo grįžtamojo ryšio apie integraciją. Kode yra gyvas partnerio API raktas. Raktas palieka kūrėjo tinklą.
Kiekvienu atveju tikslas yra teisėta pagalba. Kredencialų nutekėjimas yra šalutinis poveikis suteikiant DI pakankamai konteksto. Tai yra tas pats modelis kaip GitHub nutekėjimai – ne kenkėjiškas, tiesiog įprastas.
CI/CD vamzdynai susiduria su ta pačia rizika
CI/CD vamzdyno paslapčių nutekėjimai padidėjo 34 % 2024 m. Kūrimo scenarijai, diegimo konfigūracijos ir infrastruktūros kaip kodo failai dabar eina per DI peržiūrą. Šiuose failuose dažnai yra debesies kredencialų ir paslaugų paskyros žetonų.
Dirbtinio intelekto įrankiams apimant vis daugiau kūrimo ciklo – peržiūrą, dokumentus, derinimą, optimizavimą – poveikio paviršius auga kartu su jais.
Kaip MCP architektūra blokuoja nutekėjimus
Komandos, naudojančios Claude Desktop arba Cursor IDE, modelio konteksto protokolo (MCP) serverio architektūra pastato kredencialų filtrą kelyje tarp kūrėjo ir DI modelio.
MCP serveris tvarko kiekvieną tekstą, judantį per sesiją. Įkeltas kodas, steko sekimai, konfigūracijos failai, derinimo kontekstas – visa tai praeina anonimizavimo žingsnį prieš tai, kai modelis tai pamato.
Variklis randa kredencialų šablonus: API raktų formatus, duomenų bazių eilutes, OAuth žetonus, privačių raktų antraštes ir pasirinktinius formatus, kuriuos nustato jūsų saugumo komanda. Kiekvienas atitikimas pakeičiamas žetonu prieš perdavimą.
Kaip tai atrodo praktikoje:
Kūrėjas įkelia steko sekimą su duomenų bazės prisijungimo eilute. MCP serveris pakeičia eilutę [DB_CONNECTION_1]. DI mato sekimą su žetonu. Jis teikia derinimo pagalbą remiantis anoniminizuota versija. Tikrasis kredencialas niekada nepaliko vidaus tinklo.
Tai sustabdo tą patį nutekėjimo vektorių, kuris pripildo GitHub paslapčių. Kanalas kitoks – DI įrankiai, o ne git įkėlimai – tačiau sprendimas veikia tuo pačiu būdu: blokuoti prieš perdavimą.
Žiūrėkite mūsų saugumo apžvalgą, kaip anonym.legal tai tvarko DI įrankiuose ir dokumentų darbo srautuose, ir atitikties centrą audito valdymui.
Aptikimas po fakto yra per vėlu
Kai kurios komandos naudoja po įkėlimo vykdomą nuskaitymą nutekėjusioms paslaptims rasti. GitGuardian ir truffleHog gerai veikia GitHub kanalui. Jie neapima DI įrankių sesijų.
Kai paslaptis pasiekia DI tiekėjo serverius, atskleidimas yra įvykęs. Nuskaitymas randa tai po to. MCP sluoksnio anonimizavimas sustabdo ją nuo pasiekimo modelio.
39 milijonai GitHub nutekėjimų dokumentuoja vieną kanalą. DI įrankių atskleidimas yra ta pati problema kanale su mažesniu stebėjimu ir jokiu audito žurnalu. Prevencija prieš perdavimą apima abu.