اگر مهندس امنیتی هستید و ساعتها وقت خود را صرف بازپخش دستی درخواستهای HTTP میکنید، باید بدانید که گردشکار شما در حال تغییر است. یک نمایش عملی نشان میدهد که چگونه Claude Code میتواند یک متدولوژی کامل تست نفوذ — از ورود به سیستم تا تأیید آسیبپذیری — را بدون دخالت دستی اجرا کند.
تستهای امنیتی مدتهاست بین اسکنرهای خودکار، که فاقد ظرافت و درک عمیق هستند، و تستهای دستی با ابزارهایی مثل Burp Suite، که بسیار کند و زمانبر هستند، تقسیم شدهاند. رویکرد جدید با استفاده از سرورهای پروتکل متن مدل (Model Context Protocol یا MCP) — که شبیه به یک مترجم است و به یک عامل هوش مصنوعی اجازه میدهد کنترل مستقیم ابزارهایی را به دست بگیرد که متخصصان از پیش با آنها کار میکنند — این شکاف را پر میکند. هدف در اینجا جایگزینی مهندس نیست، بلکه خودکارسازی اجرای خستهکننده یک برنامهٔ تأییدشده و معتبر است.
معماری یکپارچهسازی
این سیستم برای عملکرد صحیح به دو سرور MCP حیاتی متکی است. این سرورها به عنوان پل ارتباطی بین استدلالهای مدل زبانی بزرگ (LLM) و ابزارهای واقعی مورد استفاده برای رهگیری ترافیک و اتوماسیون مرورگر عمل میکنند.
اول، Burp MCP به Claude Code اجازه میدهد تاریخچه درخواستهای HTTP ثبت شده را بخواند و درخواستهای دستکاریشده (Crafted Requests) را مستقیماً به سرور بفرستد. این سرور دسترسی هوش مصنوعی به ابزارهای داخلی Burp، از جمله توانایی خواندن درخواستهای کپچر شده و استفاده از ابزار «send HTTP» را فراهم میکند. کاربران میتوانند این ابزار را از فروشگاه افزونههای Burp یا از طریق دستور زیر نصب کنند:claude mcp add --transport sse burp http://127.0.0.1:9876/ -s user
دوم، Playwright MCP یک مرورگر فراهم میکند که به صورت برنامهنویسی کنترل میشود. برای اینکه اطمینان حاصل شود تمام فعالیتهای مرورگر دقیقاً همانطور که در تستهای دستی رخ میدهد در تاریخچه Burp ثبت شود، Playwright MCP طوری تنظیم شده است که ترافیک را از طریق پورت ۸۰۸۰ از Burp عبور دهد. این امر با افزودن گزینههای --proxy-server=http://127.0.0.1:8080 و --ignore-https-errors در هنگام راهاندازی محقق میشود:
claude mcp add playwright -s user -- npx @playwright/mcp@latest --proxy-server=http://127.0.0.1:8080 --ignore-https-errors
لازم به ذکر است که در حالی که گزینه --ignore-https-errors در یک محیط تست کنترلشده قابل قبول است، اما هرگز نباید در محیط عملیاتی (Production) استفاده شود.

خطمبنای دستی (Manual Baseline)
پیش از اتوماسیون، یک خطمبنای دستی با استفاده از مرورگر داخلی Burp ایجاد شد. اپلیکیشن هدف، یک برنامه وب ساده برای اشتراکگذاری تکههای کد (Snippet) است. قانون اصلی کسبوکار در این برنامه بسیار ساده است: کاربران میتوانند تکههای کد خود را ایجاد، ویرایش و حذف کنند، اما نباید بتوانند این کار را برای تکههای کدی که متعلق به کاربران دیگر است انجام دهند.
مورد تست امنیتی روی الگوی کلاسیک IDOR (ارجاع مستقیم ناامن به شیء) متمرکز است. در حالی که مرورگر این قانون را در سطح رابط کاربری (UI) — از طریق مخفی کردن دکمه ویرایش برای تکههای کد دیگران — اجرا میکند، هدف این است که تعیین کنیم آیا بکاند (Backend) نیز این قانون را اجرا میکند یا خیر. اگر کاربری یک درخواست PUT /snippets/:id با شناسه تکه کد شخص دیگری بسازد و آن را مستقیماً ارسال کند، آیا سرور آن را مسدود خواهد کرد؟
جریان تست دستی مراحل زیر را دنبال میکند:
- ورود به سیستم و ایجاد یک تکه کد، سپس ویرایش آن برای تولید یک درخواست
PUT /snippets/:idدر تاریخچه HTTP. - ارسال آن درخواست به بخش Repeater در Burp.
- استخراج شناسه یک تکه کد متعلق به کاربر دیگر (جایی که مقدار
is_owner: falseاست) از یک پاسخGET /snippets. - جایگزینی شناسه تکه کد اصلی با شناسه هدف در Repeater.
در این تست خاص، پاسخ دریافتی 403 Forbidden بود که تأیید میکرد سیستم مجوزها (Authorization) به درستی کار میکند. تست مشابهی روی نقطه پایان (Endpoint) مربوط به DELETE نیز پاسخ 401 Unauthorized را بازگرداند.
دو بررسی سریع دیگر نیز در Repeater برای تأیید کنترلهای امنیتی کلی انجام شد:
- احراز هویت (Authentication): جایگزینی کوکی نشست (Session Cookie) با یک مقدار نامعتبر منجر به پاسخ
403 Forbiddenشد که نشان میدهد اپلیکیشن درخواستهای احراز نشده را به درستی رد میکند. - حفاظت CSRF: جایگزینی هدر
CSRF-Tokenبا یک مقدار نامعتبر در همان مسیر تغییردهنده (Mutating Route)، باز هم منجر به پاسخ403 Forbiddenشد و تأیید کرد که محافظت CSRF فعال است.
یک یافته دستی کلیدی دیگر، افشای اطلاعات (Information Disclosure) بود: پاسخهای خطا بسیار مفصل (Verbose) بودند. این پاسخها نام فریمورک (Express)، مسیرهای داخلی فایلها و نام کتابخانهها را فاش میکردند. اگرچه این مورد یک نقص در احراز هویت یا CSRF نیست، اما به مهاجم زمینه غیرضروری درباره پشته فناوری (Technology Stack) مورد استفاده میدهد.
اجرای مورد تست IDOR
هدف این است که ببینیم آیا Claude Code میتواند دقیقاً همین متدولوژی را دنبال کند و با تلاش دستی کمتر، به همان نتایج برسد. این تست همان اپلیکیشن اشتراکگذاری تکه کد را هدف قرار میدهد تا بررسی کند آیا بکاند قوانین مالکیت را اجرا میکند یا خیر.
بهجای استفاده از یک پرامپت مبهم مانند «برنامه من را برای IDOR تست کن» — که ممکن است منجر به نتایج غیرقابلپیشبینی شود — یک نسخه کدگذاریشده از متدولوژی دستی به هوش مصنوعی ارائه شد. این کار تضمین میکند که Claude Code یک گردشکار تعریفشده را اجرا کند، نه اینکه به صورت آزادانه و تصادفی جستجو کند:
- باز کردن مرورگر Playwright و ورود با اعتبارنامههای موجود در فایل README.
- ایجاد یک تکه کد و سپس ویرایش آن.
- دریافت درخواست مربوطه از تاریخچه Burp.
- یافتن شناسه تکه کدی که متعلق به کاربر دیگری است.
- ایجاد یک تب Repeater با همان درخواست، اما با شناسه تکه کد کاربر دیگر.
- اجرای همین مورد با استفاده از ابزار «send http» و گزارش در مورد وجود یا عدم وجود آسیبپذیری.

مزیت جعبهسفید (White-Box Advantage)
یک جزئیات بسیار مهم در اینجا تنظیمات محیطی است: جلسه Claude Code مستقیماً از دایرکتوری سورسکد اپلیکیشن باز شده است. این امر به هوش مصنوعی دسترسی همزمان به ابزارهای Burp MCP و کد واقعی برنامه را میدهد.
این قابلیت، چیزی را که در حالت عادی یک تست «جعبهسیاه» (Black-box) میبود، به یک تست «جعبهسفید» (White-box) تبدیل میکند. وقتی تست پاسخ 403 Forbidden را برمیگرداند، هوش مصنوعی صرفاً کد وضعیت را بر اساس ترافیک شبکه گزارش نمیکند، بلکه سورسکد را تحلیل میکند تا خلاصهای دقیق ارائه دهد:
- نتیجه
403 Forbiddenحاصل از درخواست HTTP را تأیید میکند. - دقیقاً فایل و شماره خطی را که در آن مجوزها (Authorization) اجرا شدهاند، شناسایی میکند.
- مکانیزم خاص را توضیح میدهد: اینکه چگونه شناسه مالک تکه کد پیش از اجازه عملیات بهروزرسانی یا حذف، با شناسه کاربر احراز هویت شده مقایسه میشود.
این قابلیت جعبهسفید، زمان بین «یافتن یک مشکل» و «ارائه محل اصلاح آن» را بهطور قابل توجهی کاهش میدهد. در این مورد، تأیید فوری ارائه میدهد که محافظت در کجای کد پیادهسازی شده است.

مقیاسپذیری از طریق مهارتهای هوش مصنوعی
برای فراتر رفتن از دموهای تکمرحلهای، این گردشکار از «مهارتها» (Skills) استفاده میکند؛ مهارتها در واقع قالبهای پرامپت قابلاستفاده مجدد هستند که میتوان آنها را با نام فراخوانی کرد. وقتی یک متدولوژی ابتدا به صورت دستی و سپس توسط هوش مصنوعی تأیید شد، شما نمیخواهید برای هر نقطه پایان (Endpoint) جدید، کل پرامپت را دوباره بنویسید.
کاربر میتواند از Claude Code بخواهد که جلسه را بستهبندی کند: «یک مهارت به نام 'test-idor' بر اساس مراحلی که در این جلسه طی کردیم بساز».
این امر به تستکننده اجازه میدهد تا کل این توالی را روی نقاط پایان مختلف یا اپلیکیشنهای متفاوت، تنها با ارائه زمینه (Context) مربوطه اجرا کند، بدون اینکه نیاز باشد متدولوژی را از ابتدا بازسازی کند. این روند، فرآیند را از یک دموی جالب به یک گردشکار امنیتی تکرارپذیر و مقیاسپذیر تبدیل میکند.

قابلیتها و محدودیتها
این رویکرد مبتنی بر هوش مصنوعی، جایگزینی برای قضاوت یک مهندس امنیت نیست، بلکه یک ابزار اجرای قدرتمند است. این سیستم زمانی بیشترین اثربخشی را دارد که مهندس قبل از شروع، دقیقاً بداند چه چیزی را تست میکند.
جایگاههای برتری (نقاط قوت):
- متدولوژیهای تعریفشده: اجرای گامهای سازگار و تکرارپذیر در نقاط پایان یا اپلیکیشنهای متعدد.
- قابلیت ردیابی: متصل کردن نتایج HTTP مستقیماً به خطوط خاصی از سورسکد.
- تست رگرسیون: تأیید اینکه یک کنترل امنیتی که قبلاً تست شده است، پس از ادغام تغییرات کد (Code Change) همچنان پابرجا است.
جایگاههای ضعف (محدودیتها):
- تست اکتشافی (Exploratory Testing): هوش مصنوعی فاقد شهود انسانی برای متوجه شدن یک رفتار غیرمنتظره و «کشیدن نخ سرنخ» برای یافتن یک باگ نوظهور است.
- زنجیرههای حمله پیچیده: زنجیرههای چندمرحلهای که در آن هر گام به استدلالی درباره نتیجه قبلی وابسته است، به گونهای که مشخص کردن آنها از پیش دشوار است.
- توسعه متدولوژی: هوش مصنوعی نمیتواند استراتژی امنیتی را اختراع کند؛ کاربر باید ابتدا متدولوژی را به صورت دستی توسعه داده و تأیید کند.




نتیجهگیری
رویکردهای دستی و خودکار مکمل یکدیگرند و نه رقیب. تست دستی جایی است که مهندس متدولوژی را توسعه و تأیید میکند؛ Claude Code جایی است که مهندس آن را اجرا و مقیاس میکند. با ترکیب Burp MCP برای رهگیری و بازپخش، Playwright MCP برای اتوماسیون مرورگر و دسترسی مستقیم به سورسکد برای درک زمینه، تیمهای امنیتی میتوانند به ردیابی و کارایی بسیار بیشتری دست یابند.
الگوی موفقیت در اینجا مشابه هر ابزار امنیتی مؤثری است: بدانید چه چیزی را تست میکنید، یک متدولوژی شفاف تعریف کنید و از ابزار برای اجرای آن استفاده کنید — نه برای جایگزینی تفکر انتقادی مورد نیاز در تحلیلهای امنیتی.
گام بعدی شما
- اگر از Claude Code استفاده میکنید، سرورهای MCP مربوط به Burp و Playwright را نصب کنید تا ابزارهای وب را به مدل متصل کنید.
- متدولوژیهای تکراری تست نفوذ خود را به صورت گامبهگام بنویسید و آنها را به «مهارت» (Skill) تبدیل کنید تا در پروژههای آتی سریعتر اجرا شوند.
- برای کاهش زمان رفع باگ، جلسات Claude Code را مستقیماً در پوشه سورسکد پروژه باز کنید تا تحلیل «جعبهسفید» فعال شود.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما دربارهی تراشههای Blackwell مراجعه کنید.




گفتگو