چرا برنامهٔ CVE بیشتر آسیبپذیریهای AI agent رو نمیبینه
خلاصهٔ کاملتر
نویسنده تعریف میکنه که تیمشون به یه AI agent دسترسی خواندن به کل fleet کوبرنتیز داده بود و اسکنر آسیبپذیری هیچ ایرادی پیدا نکرد. ولی بررسی دستی چهار مشکل نشون داد: دسترسیش به Secretها میرسید، service account مشترک داشت، خود مدل کلاستر مقصد رو انتخاب میکرد (یعنی یه confused deputy، ابزاری که با اختیارات خودش کار یکی دیگه رو انجام میده) و هیچ سقفی برای حجم داده تو یه جواب نبود. هیچکدوم CVE نمیگیرن، چون هیچ قطعهای خراب نیست.
به گفتهٔ نویسنده، ایرادهای agent و MCP (پروتکلی که agentها باهاش به ابزارها وصل میشن) شش جا ممکنه باشن: باگ پیادهسازی، منطق اعتماد و تأیید تو host، پیشفرض ناامن تو پروتکل یا SDK، prompt injection، ترکیب سمی ابزارها و پکیج مخرب یا rug pull. CVE فقط دو تای اول رو خوب توصیف میکنه. مثلاً پکیج postmark-mcp پونزده نسخهٔ سالم داد و تو نسخهٔ 1.0.16 یه BCC مخفی به همهٔ ایمیلها اضافه کرد.
نکتهٔ مهم اینه که CVE یه نمونه رو میبنده، نه یه کلاس رو. تو mcp-server-git، فیکس CVE در دسامبر ۲۰۲۵ فقط git_diff و git_checkout رو در برابر argument injection (یعنی رد شدن مقدار شبیه flag مستقیم به git CLI) محافظت کرد. چهار ابزار دیگه یعنی git_show، git_create_branch، git_log و git_branch سه ماه بعد بدون هیچ CVE فیکس شدن. یعنی اسکنرت از روز آپگرید میگفت همهچی تمیزه، در حالی که نبود.
نمرهها هم کمکی نمیکنن. همون CVE-2025-68144 از NVD نمرهٔ 7.1، از GitHub نمرهٔ 6.3 و تو بعضی خبرها 8.1 گرفته. ولی شدت واقعی به استقرار خودت بستگی داره: agentی که روی ریپوهای خودت بدون ورودی بیرونی و بدون egress (یعنی راه خروج داده به بیرون) کار میکنه ریسک کمی داره. همون سرور تو agentی که PRهای بیرونی رو بررسی میکنه و توکن push و ابزار fetch داره، میتونه به اجرای کد و نشت داده برسه.
خط تولید CVE هم اشباع شده. NIST از ۱۵ آوریل ۲۰۲۶ فقط برای حدود ۱۵ تا ۲۰ درصد رکوردها enrichment اولویتدار انجام میده، M-Trends 2026 میانگین زمان تا exploit رو منفی ۷ روز تخمین زده و curl هم bug bounty خودش رو بست. تو اتحادیهٔ اروپا هم از ۱۱ سپتامبر ۲۰۲۶ برای آسیبپذیریای که فعالانه exploit میشه، باید ظرف ۲۴ ساعت هشدار اولیه بدی.
پیشنهاد نویسنده پنج بخش داره: inventory همهٔ MCP serverها، منابعی مثل GitHub Security Advisories و OSV.dev بهجای NVD، تریاژ با سه سؤال (ورودی مهاجم به agent میرسه؟ میتونه داده بفرسته بیرون؟ exploit شده؟) و کنترلهای قطعی بیرون از مدل. یکی از این کنترلها hash گرفتن از تعریف ابزارها تو هر سشنه، تا اگه سرور یهو توضیح یه ابزار رو عوض کرد (rug pull) گیر بیفته:
return {
t.name: hashlib.sha256(
json.dumps(t.model_dump(mode="json", by_alias=True, exclude_none=True),
sort_keys=True).encode()
).hexdigest()
for t in tools
}نکات کلیدی:
- CVE فقط دو تا از شش محل آسیبپذیری agentها (باگ پیادهسازی و منطق تأیید host) رو خوب پوشش میده
- فیکس CVE-2025-68144 دو ابزار mcp-server-git رو محافظت کرد و چهار ابزار دیگه سه ماه بعد بدون CVE فیکس شدن
- پیشفرض STDIO تو SDKهای رسمی MCP به ده CVE پاییندستی، از جمله LiteLLM و Windsurf، ربط داده شده
- تو اتحادیهٔ اروپا از ۱۱ سپتامبر ۲۰۲۶ هشدار اولیه برای آسیبپذیری فعالانه exploitشده باید ظرف ۲۴ ساعت داده بشه
- agent «فقط خواندنی» که راه خروج داده داره، عملاً ابزار نشت دادهست




