تیم پژوهشی Manifold Security یک آسیبپذیری امنیتی خطرناک در افزونه مرورگر Claude for Chrome را فاش کرده است که به افزونههای مخرب اجازه میدهد تا بدون اجازه صریح کاربر، به دادههای حساس جیمیل، گوگل داکس و تقویم گوگل دسترسی پیدا کنند. این نقص امنیتی که در نسخه فعلی v1.0.80 همچنان وجود دارد، هشت نسخه بعد از انتشار پچ مربوط به آسیبپذیری قبلی «ClaudeBleed» کشف شده است.
نحوه عملکرد حملات و دامنه تهدید
هر افزونه مرورگری که قادر به اجرای اسکریپت در دامنه claude.ai باشد، میتواند از این آسیبپذیری سوءاستفاده کند. investigaciones نشان میدهند که دو سناریوی حمله وجود دارد:
- حالت پیشفرض (Ask before acting): کاربر یک جعبه تأیید را مشاهده میکند و باید روی آن کلیک کند. امتیاز CVSS: ۷.۷ (بالا)
- حالت "Act without asking": کار به طور کاملاً بیصدا و بدون هیچ پرامپتی اجرا میشود. امتیاز CVSS: ۹.۶ (بحرانی)
ریشه فنی: عدم بررسی event.isTrusted
پس از حادثه ClaudeBleed، Anthropic مسیر پرامپتهای دلخواه را بست و فراخوانان خارجی را به نه تسک (Task) از پیش تعریفشده محدود کرد. این تسکها شامل سه مورد آموزشی، سه مورد برای دراوور (DoorDash)، سیالفورس (Salesforce) و زیلو (Zillow)، و سه مورد حیاتی برای usecase-gmail، usecase-gdocs و usecase-calendar میباشند.
نقطه ضعف در مکانیزم "راهانداز" (Trigger) نهفته است. یک اسکریپت محتوا (Content Script) در افزونه، رویداد کلیک روی المان #claude-onboarding-button را گوش میدهد و data-task-id را بررسی میکند. اگر شناسه در لیست مجاز باشد، پیام open_side_panel ارسال میشود. مشکل: هندلر هرگز event.isTrusted را چک نمیکند — پرچم مرورگری که کلیک واقعی کاربر را از کلیکهای اسکریپتی تفکیک میکند.
بنابراین، هر افزونهای که به DOM در claude.ai دسترسی دارد، میتواند المان را بسازد، شناسه وظیفه را تنظیم کند و یک کلیک مصنوعی (Synthetic Click) ارسال کند. افزونه این کلیک را به عنوان یک تعامل واقعی میپذیرد. محققان با شش خط کد در کنسول توسعهدهنده این حمله را به اثبات رساندند و لاگها isTrusted: false را تأیید کردند.
آسیبپذیری دوم: پارامتر مخفی skipPermissions
یک عیب عمیقتر اما در حال حاضر غیرقابلاستفاده مستقیم، در مکانیزم مجوزها وجود دارد. وقتی پنل جانبی Claude با پارامتر ?skipPermissions=true در URL بارگذاری شود، مستقیماً وارد حالت skip_all_permission_checks شده و بدون درخواست اجازه اقدام میکند.
یک بنر قرمز هشدار ظاهر میشود، اما فقط بعد از اینکه جلسه با امتیاز بالا آغاز شده است. این بنر thông báo میدهد، جلوی اجرا را نمیگیرد. در حال حاضر این URL تنها توسط خود افزونه ساخته میشود، اما یک باگ آینده (مانند هندلر پیام پذیرای URL، رگرسیون ساخت پنل، یا XSS در صفحه گزینهها) میتواند این مسیر را به یک خواندن حساب کاملاً بیصدا تبدیل کند.
راهکارهای مقابله و توصیههای امنیتی
تا انتشار پچ رسمی (تا ۱۴ ژوئیه منتشر نشده)، کاربران و سازمانها باید اقدامات زیر را انجام دهند:
- فوری: غیرفعال کردن گزینه "Act without asking" در تنظیمات افزونه Claude for Chrome.
- بررسی افزونهها: تمام افزونههای نصب شده که مجوز "خواندن و تغییر دادهها در claude.ai" را دارند، بازبینی و در صورت لزوم حذف شوند.
- مدیریت ریسک سازمانی: تیمهای امنیتی بایدpresence این افزونه در محیطهای سازمانی را بررسی و سیاستهای کنترل افزونههای مرورگر را تشدید کنند.
- پچ تک خطی: محققان تأکید کردهاند که افزودن بررسی
if (!event.isTrusted) return;در ابتدای هندلر کلیک، مشکل را به طور کامل برطرف میکند.
واکنش Anthropic و پیشینه امنیتی
Anthropic در ماه مه در پاسخ به ClaudeBleed، که به تزریق پرامپت دلخواه اجازه میداد، لیست مجاز تسکها را اعمال کرد. این یک پیشرفت واقعی بود، اما investigadores مانیفولد (Manifold) معتقدند که معماری اعتماد به کلیکهای غیرقابلاعتماد یک نقص طراحی پایه است که باید در سطح کد رفع شود، نه تنها با محدود کردن لیست تسکها.
The Hacker News نیز با بازبینی بیلد v1.0.80، وجود هر دو مکانیزم آسیبپذیر را تأیید کرده است.
نتیجهگیری: امنیت در عصر ابزارهای هوش مصنوعی مرورگرمحور
این رویداد نشان میدهد که ادغام عمیق مدلهای زبان بزرگ (LLM) در مرورگر از طریق افزونهها، سطح حمله جدیدی ایجاد میکند که مرزهای امنیت سنتی مرورگر را فراتر میرود. اعتماد به رویدادهای UI بدون بررسی isTrusted، یک الگوی антиپترن (Anti-pattern) شناخته شده است که در توسعه افزونههای قدرتمند هوش مصنوعی نباید تکرار شود.
کاربران باید تا انتشار پچ، از حالت "بدون پرسیدن" خودداری کنند و مجوزهای افزونههای خود را به طور منظم بررسی نمایند.





