AI kod yozuvchi agentni qanday himoyalash kerak: Uning harakatlarini ko'rish nima uchun hozir muhim?
AI kod yozuvchi agentlarning yashirin kuchi va xavfi
2024-yilda dastur yozayotgan har kim AI kod yordamchilarini sinab ko‘rgan. Fikringni aytasan, agent loyihangni o‘qiydi, o‘zgartiradi, testlarni ishga tushiradi va o‘zgarishlarni saqlaydi. Sen esa choyingni ichib o‘tiribsan. Bu haqiqatan o‘zgarish keltiradi.
Lekin haqiqat shuki: ko‘pchilik dasturchilar agentning ish vaqtida nima qilayotganini tushunmaydi.
Agent shell buyruq bajaradi, fayl yozadi yoki sozlamalarni o‘qiydi – hammasi sening ruxsatlaring bilan, sening fayl tizimingda, sening kalitlaring orqali. U SSH kalitlaringni, AWS tokenlaringni, env o‘zgaruvchilarini ko‘radi. Sen esa shunchaki chat oynasini ko‘rasan. Ichkarida nima bo‘layotgani? Qora quti.
Haqiqiy va qo‘rqinchli holat
Tasavvur qil: agentga autentifikatsiya modulini tozalashni aytasan. U kodlarni o‘qiydi, yaxshilaydi, testlarni ishga tushiradi. Keyin zararli bog‘liqlik, prompt injection yoki oddiy xato tufayli ~/.ssh/known_hosts ni o‘qishga urinadi. Yoki ~/.aws/credentials/ ga yozmoqchi bo‘ladi.
Buni sezasanmi? Ehtimol, ish kech bo‘lguncha emas.
Bu xavfsizlik masalasi haqida kam gapiryapmiz. Shuning uchun AI agentlar uchun ish vaqti monitoringi zarur bo‘lib qoldi.
Prempti: Kod agenting uchun Falco
Ochiq kod jamoasi ishga tushdi. Mavjud Falco xavfsizlik tizimini AI agent tool chaqiruvlariga qo‘shsak, kuchli narsa chiqadi: agent harakat qilmoqchi bo‘lganda aniq ko‘rish va qoidalar .
Qanday ishlaydi:
Agent tool chaqirishdan oldin (fayl o‘qish, yozish, bash va h.k.) Prempti uni ushlaydi. So‘rov Falco ga boradi, u sening qoidalaring bo‘yicha tekshiradi. Natija:
- Allow – harakat davom etadi
- Deny – bloklanadi, agentga sabab aytiladi
- Ask – senga tasdiqlash uchun so‘raydi
Kernel moduli yo‘q. Root kerak emas. Container yo‘q. Oddiy user-space xizmati agent pipeline ga ulanadi.
Agent nafaqat bloklanadi – nima uchun ekanini tushuntiriladi. Bu senga ko‘rsatiladi, xavfsizlik shaffof bo‘ladi.
Ikki rejim: Kuzat, keyin himoya qil
Prempti ikki rejim bilan keladi, aqlli yondashuv:
Monitor rejimi agent nimalarga tegayotganini ko‘rsatadi, bloklamaydi. Bir necha seans o‘tkaz, xatti-harakatini o‘rgan, qoidalarni sozla, ishonchni oshir.
Guardrails rejimi (standart) qarorlarni majburiy qiladi. Deny bloklaydi, ask so‘raydi, allow o‘tkazadi.
Rejimlarni o‘zgartir:
premptictl mode monitor # faqat kuzat
premptictl mode guardrails # qarorlarni bajar
premptictl logs # jonli loglarni ko‘r
Xavfsizlik vositalari shunday bo‘lishi kerak: avval kuzat, keyin ishonch bilan himoya.
Qoidalar yozish: Oson va tanish
Falco qoidalari yozgan bo‘lsang, bu ham shunga o‘xshaydi. Mana eski hujum usulini bloklovchi qoida – shell ga to‘g‘ridan-to‘g‘ri pipe yuborish (prompt injection uchun klassika):
- rule: Deny pipe to shell
desc: Shell interpretatorlarga pipe bloklash
condition: >
tool.name = "Bash"
and (tool.input_command contains "| sh"
or tool.input_command contains "| bash"
or tool.input_command contains "| zsh")
output: >
Falco shell ga pipe ni blokladi (%tool.input_command)
priority: CRITICAL
source: coding_agent