TOOLS

ابزارهای تست نفوذ وب در ۲۰۲۶: زنجیره‌ی کار واقعی و صادقانه

محمدرضا مقدم
محمدرضا مقدم
توسعه‌دهنده ابزاربازبینی: ۲۵ مرداد ۱۴۰۵
۲۸ تیر ۱۴۰۵ ۱۸ دقیقه مطالعه

فهرست‌های «۲۰ ابزار تست نفوذ» که در فارسی منتشر می‌شوند و مدعی معرفی ابزارهای تست نفوذ حرفه‌ای هستند، دو مشکل مشترک دارند: نام‌ها و نسخه‌ها کهنه‌اند (ZAP هنوز «OWASP ZAP» نامیده می‌شود و محصول سازمانی PortSwigger هنوز «Enterprise»)، و ابزارها بدون ترتیب کاری و بدون گفتن محدودیتشان کنار هم چیده می‌شوند — طوری که خواننده تصور می‌کند Metasploit و Wireshark ابزارهای اصلی تست نفوذ وب‌اند. این مقاله زنجیره‌ی واقعی کار را به‌ترتیب فاز می‌چیند، برای هر ابزار می‌گوید دقیقاً چه کاری می‌کند و چه کاری نمی‌کند، و در پایان به نکته‌ای می‌رسد که مهم‌ترین جمله‌ی این مطلب است: پرارزش‌ترین آسیب‌پذیری‌ها را هیچ ابزاری پیدا نمی‌کند.

در یک نگاه

  • نام درست «ZAP» یا «ZAP by Checkmarx» است؛ این پروژه در سپتامبر ۲۰۲۳ از OWASP جدا شد. «OWASP ZAP» نام بازنشسته است.
  • «Burp Suite Enterprise Edition» به «Burp Suite DAST» تغییر نام داده. نسخه‌ی Community هیچ اسکنری ندارد و Collaborator هم ندارد — اما DOM Invader در Community هم موجود است.
  • Caido متن‌باز نیست، اسکنر خودکار و سرویس OAST هم‌رده‌ی Collaborator ندارد، و هنوز پیش از نسخه‌ی ۱٫۰ است.
  • Nuclei یک تطبیق‌دهنده‌ی امضای آسیب‌پذیری‌های شناخته‌شده است، نه اسکنر منطق‌آگاه؛ و خودش هم CVE داشته (CVE-2026-41645 و CVE-2026-41646، رفع‌شده در v3.8.0).
  • Metasploit ابزار اصلی تست نفوذ وب نیست و Wireshark وقتی پروکسی رهگیر دارید تقریباً هیچ‌وقت ابزار درست نیست.

پیش از فهرست ابزارهای تست نفوذ: سه قاعده

قاعده‌ی اول: ابزار جای متدولوژی را نمی‌گیرد. پوشش آزمون با مرجعی مثل WSTG v4.2 سنجیده می‌شود، نه با فهرست نرم‌افزارهای نصب‌شده. جمله‌ی «ما با Burp و Nuclei تست می‌کنیم» هیچ اطلاعاتی درباره‌ی پوشش نمی‌دهد.

قاعده‌ی دوم: نسخه و تاریخ را با هم بنویسید. هر عدد نسخه‌ای که در این مقاله می‌آید، وضعیت اوت ۲۰۲۶ است. ابزارهایی مثل Nuclei هفتگی به‌روز می‌شوند و ذکر «فلان ابزار X هزار قالب دارد» بدون تاریخ، بی‌معناست.

قاعده‌ی سوم: هر ابزار محدودیت ساختاری دارد و صادقانه‌ترین چیزی که می‌توان درباره‌ی یک ابزار گفت، همان محدودیت است. در ادامه برای هر ابزار، ستون «چه کاری نمی‌کند» به‌اندازه‌ی ستون قابلیت‌ها مهم است.

ترتیب فازها هم دلبخواه نیست: شناسایی → کشف → آزمون → بهره‌جویی → گزارش. این همان ساختاری است که در فرایند تست نفوذ و در مرحله‌بندی NIST SP 800-115 (برنامه‌ریزی، اجرا، پس از اجرا) دیده می‌شود.

فاز ۱ — شناسایی و نگاشت سطح حمله

هدف این فاز پیدا کردن آسیب‌پذیری نیست؛ پیدا کردن همه‌ی چیزی است که وجود دارد. هر دارایی که اینجا کشف نشود، آزموده هم نمی‌شود.

ابزارنسخه (اوت ۲۰۲۶)کاری که می‌کندمحدودیت
subfinderv2.14.0شمارش غیرفعال زیردامنه از منابع متعدد؛ سریع‌ترین گزینهغیرفعال است، پس زیردامنه‌ای که در هیچ منبع عمومی نباشد را پیدا نمی‌کند. در آخرین نسخه منبع Meta حذف شد چون API بالادستی تعطیل شد
httpxv1.9.0بررسی زنده‌بودن، کد وضعیت، عنوان، تشخیص فناوری، داده‌ی TLS و CDNپروب است نه اسکنر؛ آسیب‌پذیری تشخیص نمی‌دهد
katanav1.6.1خزنده با حالت Headless؛ پشتیبانی از ورود خودکار و سهمیه‌ی صفحه در هر دامنهخزنده‌ها در برنامه‌های سنگین SPA همیشه پوشش ناقص دارند
amassv5.1.1کشف عمیق و همبسته‌ی دارایی: فعال و غیرفعال، حدس DNS، همبستگی ASN و WHOISسنگین و کند؛ بازنویسی لایه‌ی ذخیره‌سازی در نسخه‌های ۴ و ۵ چند بار جریان کار کاربران را شکسته است
gauv2.2.4استخراج آدرس‌های شناخته‌شده از Wayback، Common Crawl، AlienVault OTX و URLScanنتایج تاریخیاند؛ بخش بزرگی امروز ۴۰۴ می‌دهند و باید از httpx گذرانده شوند
باور غلط رایج

«waybackurls ابزار استاندارد شناسایی از آرشیو است.» این ابزار عملاً بی‌متولی است: آخرین انتشارش نسخه‌ی ۰٫۱٫۰ در آپریل ۲۰۲۲ بود، مجموعاً ۱۳ کامیت دارد و فقط Wayback Machine را می‌پرسد. جایگزین درست gau است که چهار منبع را پوشش می‌دهد و فعال نگه‌داشته شده. آموزش‌های فارسی‌ای که waybackurls را به‌عنوان استاندارد جاری معرفی می‌کنند، نرم‌افزار رهاشده توصیه می‌کنند.

نکته‌ی ارزشمند درباره‌ی ابزارهای آرشیوی: همان محدودیت «تاریخی بودن» مزیت اصلی‌شان است. آدرس‌هایی که حذف شده‌اند ولی هنوز پاسخ می‌دهند — نسخه‌ی قدیمی API، مسیر ادمین کنارگذاشته‌شده، اندپوینت آزمایشی — دقیقاً همان‌جایی هستند که بررسی‌های امنیتی جدید اعمال نشده. مبانی این فاز در شناسایی و OSINT.

فاز ۲ — کشف محتوا و فازینگ

ابزارنسخهتمایز اصلی
ffufv2.1.0 (۱۶ سپتامبر ۲۰۲۳)استاندارد عملی فازینگ وب. کلیدواژه‌ی FUZZ را می‌توان در مسیر، نام و مقدار پارامتر، هدر یا هدر Host (کشف vhost) گذاشت
feroxbusterv2.13.1 (۱۳ دسامبر ۲۰۲۵)نوشته‌شده با Rust و به‌صورت پیش‌فرض بازگشتی — تمایز اصلی‌اش با ffuf همین است
dirsearchv0.4.3پایتون؛ خروجی خوانا، ذخیره و ادامه‌ی اسکن، گزارش SQLite. کندتر از دو مورد بالا
SecListsمخزن پیوستهمجموعه‌ی مرجع واژه‌نامه‌ها (MIT). فهرست‌های شروع مناسب: raft-* و directory-list-2.3-medium.txt

درباره‌ی ffuf یک نکته‌ی صادقانه لازم است: آخرین انتشار برچسب‌دار آن v2.1.0 از سپتامبر ۲۰۲۳ است — یعنی نزدیک سه سال بدون انتشار جدید، هرچند مخزن هنوز کامیت و فعالیت دارد. این ابزار پایدار و همچنان استاندارد است، اما توصیف «مرتباً به‌روز می‌شود» درست نیست.

و دو نکته‌ی عملی که کیفیت این فاز را تعیین می‌کنند. اول، فیلترگذاری: برنامه‌هایی که برای هر مسیر پاسخ ۲۰۰ می‌دهند، بدون فیلتر اندازه/کلمه/خط و بدون کالیبراسیون خودکار (-ac) نتیجه‌ی بی‌مصرف می‌دهند. دوم، انتخاب واژه‌نامه: فهرست معروف common.txt کوچک و کم‌بازده است. مخزن SecLists خودش هشدار می‌دهد که حجمش بزرگ است و ممکن است هشدار مثبت کاذب آنتی‌ویروس ایجاد کند. مکمل‌های خوب: واژه‌نامه‌های Assetnote (تولیدشده از خزش واقعی) و fuzzdb. مبانی در فازینگ و کاربرد ابزار در ffuf.

فاز ۳ — پروکسی رهگیر: ستون فقرات کار

اینجا قلب تست نفوذ وب است. بیش از بخش عمده‌ی زمان یک پروژه‌ی واقعی در پروکسی رهگیر می‌گذرد: مشاهده‌ی ترافیک، تکرار دستی درخواست، تغییر پارامتر، مقایسه‌ی پاسخ.

Burp Suite — و تفکیک دقیق نسخه‌ها

نسخه‌ی جاری Professional و Community 2026.7.3 (۶ اوت ۲۰۲۶) و نسخه‌ی Burp Suite DAST برابر 2026.8.1 (۱۳ اوت ۲۰۲۶) است.

قابلیتCommunity (رایگان)Professional (اشتراکی)
پروکسی HTTP(S)/WebSocket و تاریخچهدارددارد
Repeater، Decoder، Sequencer، Comparerدارددارد
DOM Invaderدارددارد
Intruderفقط نسخه‌ی دمو با محدودیت شدید نرخکامل
Burp Scannerندارد — هیچ اسکنریدارد
Burp Collaborator (تشخیص خارج‌باندی/OAST)ندارددارد
ذخیره‌ی فایل پروژه، جست‌وجو در پروژه، خزش کشف محتوا، تولید گزارشندارددارد
افزونه‌های اختصاصی Pro در BApp Storeندارددارد
باور غلط رایج — چهار مورد در یک جا

۱) «Burp Community اسکنر محدود دارد» — هیچ اسکنری ندارد. ۲) «DOM Invader قابلیت Pro است» — در Community هم موجود است و همین آن را به بهترین ابزار رایگان شکار DOM XSS تبدیل می‌کند. ۳) «Burp Professional خرید یک‌باره است» — اشتراک است، به‌ازای هر کاربر و برای دوره‌ی مشخص. ۴) «Burp Suite Enterprise قیمتش فلان است» — این محصول اکنون Burp Suite DAST نام دارد و قیمت عمومی ندارد؛ هر عددی که نقل شود از منبع ثالث یا کهنه است.

ZAP (ZAP by Checkmarx)

نسخه‌ی جاری 2.17.0 (۱۵ دسامبر ۲۰۲۵)، رایگان و تحت Apache-2.0. تیم ZAP در سپتامبر ۲۰۲۳ از OWASP جدا شد و از سپتامبر ۲۰۲۴ با Checkmarx همکاری می‌کند؛ نام درست «ZAP» یا «ZAP by Checkmarx» است و پروژه صفحه‌ای برای همین تصحیح دارد.

مزیت اصلی ZAP، رایگان بودن و قابلیت خودکارسازی کامل است — به همین دلیل انتخاب پیش‌فرض DAST در خط لوله‌ی CI/CD است. نسخه‌ی ۲٫۱۷ سه بهبود مهم آورده که مستقیماً به ضعف تاریخی‌اش پاسخ می‌دهند: «Insights» برای سنجش اثربخشی اسکن، حذف تکراری‌های هشدار غیرفعال، و هشدارهای «Systemic» که مسائل سراسری مثل هدر غایب را به‌جای هزاران تکرار، به‌صورت نمونه گزارش می‌کنند. ضعف‌های باقی‌مانده نسبت به Burp: نویز بیشتر یافته‌ها، ارگونومی ضعیف‌تر برای کار دستی، خزش ضعیف‌تر در SPA، و نداشتن سرویس OAST هم‌رده‌ی Collaborator به‌صورت آماده.

Caido

نسخه‌ی v0.57.0 (۵ ژوئن ۲۰۲۶). معماری‌اش بک‌اند Rust با رابط وب و تفکیک کلاینت/سرور است، پس می‌توان نمونه را روی سرور دور اجرا کرد و با کلاینت سبک وصل شد. تمایزهایش ارگونومی جریان کار است: Workflows، زبان فیلترگذاری HTTPQL/StreamQL، و Automate به‌جای Intruder.

باور غلط رایج

«Caido متن‌باز و جایگزین Burp Pro است.» هر دو بخش نادرست است. پرسش‌های متداول خود Caido می‌گوید متن‌باز نیست (فقط اکوسیستم افزونه‌هایش متن‌باز است). و Caido اسکنر خودکار معادل Burp Scanner ندارد و سرویس OAST هم‌رده‌ی Collaborator هم ندارد — یعنی برای هر کسی که به اسکن خودکار یا تشخیص آسیب‌پذیری‌های کور تکیه می‌کند، جانشین Burp Pro نیست. علاوه بر آن، این ابزار در تمام عمرش در نسخه‌ی 0.x بوده و هنوز به ۱٫۰ نرسیده. توصیف درست: پروکسی دستی خوش‌ساخت با ارگونومی مدرن که جریان کار دستی Burp را جایگزین می‌کند، نه اسکن آن.

mitmproxy

نسخه‌ی 12.2.3، تحت MIT. جایگاه واقعی‌اش رهگیری اسکریپت‌پذیر و بدون رابط گرافیکی در حجم بالاست: افزونه‌ی پایتون برای بازنویسی خودکار درخواست و پاسخ، استفاده در خط لوله، و ثبت ترافیک اپ موبایل. اسکنر ندارد و معادل Repeater/Intruder هم ندارد؛ مکمل Burp و Caido است نه جانشین آن‌ها. مقایسه‌ی تفصیلی این سه در Burp Suite و Caido.

فاز ۴ — اسکن آسیب‌پذیری

Nuclei

نسخه‌ی v3.9.0 (۱۰ ژوئن ۲۰۲۶)، تحت MIT، نیازمند Go نسخه‌ی ۱٫۲۴٫۲ یا بالاتر. مخزن قالب‌ها در اوت ۲۰۲۶ حدود ۱۱٬۹۹۷ فایل قالب در ۸۷۳ دایرکتوری دارد، شامل ۱٬۴۹۶ قالب اختصاصی آسیب‌پذیری‌های در حال بهره‌جویی فعال (KEV) با منبع CISA و VulnCheck.

ماهیت واقعی Nuclei را باید صریح گفت: این ابزار یک تطبیق‌دهنده‌ی امضا بر پایه‌ی قالب است، نه اسکنر منطق‌آگاه. در چه کاری عالی است: تشخیص CVE شناخته‌شده، پنل و فایل افشاشده، پیکربندی نادرست، اعتبارنامه‌ی پیش‌فرض و بررسی تصاحب زیردامنه — و همه‌ی این‌ها روی فهرست اهداف بسیار بزرگ. چه کاری نمی‌کند: IDOR، نقص منطق کسب‌وکار، و تزریق نوظهور را پیدا نمی‌کند.

باور غلط رایج

«ابزار امنیتی خودش امن است.» Nuclei خودش هم CVE داشته است: CVE-2026-41645 و CVE-2026-41646 در نسخه‌ی v3.8.0 (۱۸ آپریل ۲۰۲۶) رفع شدند. اگر روی نسخه‌ی قدیمی هستید، ارتقا دهید. همین منطق برای همه‌ی ابزارها و برای WAF و دستگاه‌های امنیتی هم برقرار است — این‌ها نرم‌افزارند و سابقه‌ی آسیب‌پذیری دارند. نکته‌ی دوم: اجرای کل مجموعه‌ی قالب‌ها روی هدف عملیاتی، پرسروصدا و کند است؛ با -tags، -severity یا -t فیلتر کنید.

Nikto — وضعیت صادقانه

نسخه‌ی 2.6.0 (۱۱ فوریه؛ سال انتشار در مخزن ذکر نشده و ما عدد حدسی نمی‌نویسیم). این ابزار یک اسکنر وب‌سرور قدیمی است: بررسی فایل‌ها و CGIهای خطرناک، نسخه‌ی قدیمی سرور، و پیکربندی نادرست سرور. واقعیت امروزش این است: بسیار پرسروصدا، به‌سادگی توسط هر WAF/IDS تشخیص داده می‌شود، برنامه‌های مدرن و SPA و API را نمی‌فهمد، احراز هویت را معنادار پشتیبانی نمی‌کند، و نرخ مثبت کاذب بالایی دارد. ارتباطش با تست نفوذ برنامه‌ی وب مدرن به‌شدت کم شده و تنها کاربرد باقی‌مانده‌اش یک عبور سریع اولیه روی زیرساخت قدیمی است. محتوایی که Nikto را در کنار Burp به‌عنوان اسکنر اصلی برنامه‌ی وب معرفی می‌کند، حدود یک دهه عقب است.

در سمت اسکن تجاری، Burp Scanner (در Pro و DAST) پوشش خوبی روی تزریق و مسائل سمت کلاینت دارد و می‌تواند مشخصات API را مصرف کند: OpenAPI به‌صورت JSON یا YAML، WSDL برای SOAP، مجموعه‌های Postman با قالب صادرشده‌ی v2.1.0، و GraphQL از راه Introspection. محدودیت‌های مستندشده‌اش را هم بدانید: ارجاع بیرونی در OpenAPI/WSDL پشتیبانی نمی‌شود، آدرس سرور باید مطلق باشد، محیط‌ها و اسکریپت‌های Postman پشتیبانی نمی‌شوند، و GraphQL نیازمند فعال بودن Introspection است. جزئیات آزمون API در آزمون API.

فاز ۵ — بهره‌جویی و جایگاه محدود آن

sqlmap

نسخه‌ی 1.10 با نام رمز «Tiarsus Helexina»، تحت GPLv2. پنج تکنیک تزریق را خودکار می‌کند — بولی کور، زمان‌محور کور، خطامحور، UNION و کوئری‌های پشته‌ای — و بیش از ۴۰ پایگاه‌داده را پشتیبانی می‌کند، از جمله انبارهای داده‌ی ابری مثل Redshift، Snowflake و ClickHouse. قابلیت‌هایش تا خواندن و نوشتن فایل روی سرور پایگاه‌داده و اجرای دستور سیستم‌عامل (--os-shell، --os-cmd) گسترش می‌یابد.

محدودیت‌هایی که در عمل مهم‌اند: sqlmap به نقطه‌ی تزریقی نیاز دارد که شما قبلاً پیدا کرده‌اید — جریان کار حرفه‌ای، دادن درخواست ذخیره‌شده با سوییچ -r است، نه حدس زدن با -u. اسکریپت‌های Tamper در برابر WAFهای مدرن نتیجه‌ی نامطمئنی دارند. مقادیر بالای --level و --risk حجم عظیمی ترافیک می‌سازند. توان تخریب دارد و باید در دامنه‌ی مشخص و با احتیاط به کار رود. تزریق مرتبه‌دوم را بدون تنظیم صریح پیدا نمی‌کند، و در برابر NoSQL و بیشتر انواع تزریق واسطه‌شده با ORM بی‌اثر است. کاربرد عملی در sqlmap.

Metasploit — و چرا اینجا نیست

نسخه‌ی جاری شاخه‌ی 6.4.x است؛ نصب‌کننده‌ی منتشرشده در ۲۶ جولای ۲۰۲۶ برابر 6.4.147 بود. یک نکته‌ی فنی: Rapid7 برای این پروژه انتشار برچسب‌دار در GitHub منتشر نمی‌کند، پس ارجاع به «آخرین نسخه در GitHub Releases» نادرست است؛ نسخه از طریق بیلدهای شبانه و نصب‌کننده رصد می‌شود.

باور غلط رایج

«Metasploit یکی از ابزارهای اصلی تست نفوذ وب است.» نه. Metasploit یک چارچوب بهره‌جویی و پس‌ازبهره‌جویی شبکه و میزبان است. در یک پروژه‌ی برنامه‌ی وب فقط در سه جای محدود ظاهر می‌شود: (۱) بهره‌جویی از یک CVE شناخته‌شده در پشته‌ی زیرین پس از اثرانگشت‌گیری (Struts، Confluence، Jenkins، WebLogic و مانند آن‌ها)؛ (۲) تولید Payload با msfvenom و گرفتن اتصال با Handler، برای بارگذاری روی RCE یا آپلودی که دستی پیدا کرده‌اید؛ (۳) پس‌ازبهره‌جویی و چرخش. ماژول‌های auxiliary/scanner/http/* آن به‌مراتب ضعیف‌تر از Burp، ZAP و Nuclei هستند و عملاً هیچ‌وقت ابزار درست نیستند. جایگاه دقیق‌تر در Metasploit.

ابزارهای مرزی: کجا واقعاً لازم می‌شوند

Nmap

نسخه‌ی 7.991 (۶ اوت ۲۰۲۶). توجه کنید که لایسنس آن NPSL است — لایسنسی اختصاصی Nmap و نه GPLv2 استاندارد؛ این نکته هنگام بازتوزیع مهم می‌شود. در پروژه‌ی وب کاربردهای مشخصی دارد: یافتن سرویس‌های وب روی پورت‌های غیرمتعارف (۸۰۸۰، ۸۴۴۳، ۸۰۰۰، ۹۰۰۰)، اثرانگشت نسخه با -sV، بررسی TLS با اسکریپت‌های NSE، و — مهم‌تر از همه — تأیید اینکه واقعاً چه چیزی در معرض است در برابر آنچه مشتری فکر می‌کند در معرض است. محدودیت: درباره‌ی منطق برنامه هیچ چیز نمی‌گوید و اسکریپت‌های http-* جایگزین ضعیفی برای اسکنر واقعی‌اند. کاربرد در Nmap.

Wireshark — و چرا معمولاً لازم نیست

نسخه‌ی پایدار 4.6.8، تحت GPLv2. واقعیت این است که Wireshark برای آزمون HTTPS یک برنامه‌ی وب تقریباً هیچ‌وقت ابزار درست نیست: پروکسی رهگیر همان ترافیک را رمزگشایی‌شده و قابل ویرایش در اختیارتان می‌گذارد و Wireshark این دوم را ندارد. جایگاه واقعی‌اش چهار وضعیت است: اشکال‌زدایی دست‌دهی و مذاکره‌ی مجموعه‌رمز TLS، تحلیل پروتکل‌های غیر HTTP که برنامه به آن‌ها وابسته است (MQTT، قالب‌بندی gRPC روی HTTP/2، TCP سفارشی)، بررسی کلاینت‌های ضخیم یا موبایلی که تنظیم پروکسی سیستم را نادیده می‌گیرند یا گواهی را Pin کرده‌اند، و تشخیص اینکه چرا پروکسی هیچ ترافیکی نمی‌بیند. محتوایی که Wireshark را ابزار محوری تست نفوذ وب معرفی می‌کند، فهرست ابزار را پر می‌کند. توضیح بیشتر در Wireshark.

Postman

یک ابزار توسعه و QA است که برای آزمون امنیت به کار گرفته می‌شود، نه ابزار امنیتی: هیچ تشخیص آسیب‌پذیری ندارد. کاربرد واقعی‌اش تمرین اندپوینت‌های مستند، مدیریت محیط و متغیر، و — مهم‌ترین کاربرد امنیتی — تولید مجموعه‌ی Postman با قالب صادرشده‌ی v2.1.0 برای تغذیه‌ی Burp Scanner است.

ابزارهای مرورگر و DOM Invader

ابزارهای توسعه‌دهنده‌ی مرورگر سطح آزمون اصلی‌اند، نه فرعی: نقطه‌ی توقف روی تغییر DOM و روی XHR/fetch برای ردیابی مسیر منبع تا سینک در DOM XSS؛ زبانه‌ی Application برای بررسی پرچم‌های کوکی (HttpOnly، Secure، SameSite، پیشوندهای __Host-) و یافتن توکن در localStorage؛ جست‌وجو در منابع برای پیدا کردن اندپوینت و کلید در باندل JS؛ و Source Mapهای رهاشده که کل درخت کد اصلی را بازسازی می‌کنند.

و DOM Invader — افزونه‌ی پیش‌نصب در مرورگر داخلی Burp — چهار کار می‌کند: تشخیص DOM XSS با تزریق Canary و گزارش سینک‌هایی که آن را دریافت می‌کنند، آزمون پیام‌های postMessage، یافتن خودکار منابع آلودگی Prototype و ابزارک‌های قابل بهره‌جویی، و تشخیص DOM Clobbering. مهم‌تر از همه: در نسخه‌ی Community هم موجود است، یعنی رایگان است.

بازبینی کد و SAST

اگر پروژه جعبه‌سفید است، این لایه بازدهی کشف را به‌شدت بالا می‌برد.

ابزاروضعیت لایسنستوان و محدودیت
Semgrep (v1.165.0، ۳ ژوئن ۲۰۲۶)فقط Semgrep Community Edition متن‌باز است (LGPL 2.1)؛ Code، Secrets، Supply Chain و پلتفرم AppSec اختصاصی‌اندتحلیل ایستای الگومحور و آگاه از AST با قواعد YAML خوانا. موتور باز، تحلیل درون‌فایلی است؛ تحلیل جریان داده‌ی میان‌فایلی قابلیت پرداختی است
Opengrepفورک کاملاً متن‌بازپاسخ اکوسیستم به سخت‌تر شدن لایسنس Semgrep در ۲۰۲۴؛ هر بحث منصفانه‌ای درباره‌ی SAST متن‌باز باید نامش را ببرد
CodeQLرایگان فقط برای متن‌باز و پژوهش دانشگاهیقوی‌ترین موتور: کد به یک پایگاه‌داده تبدیل می‌شود و با زبان QL پرس‌وجو می‌شود، پس ردیابی واقعی جریان داده در کل برنامه ممکن است. محدودیت: نیاز به Build برای زبان‌های کامپایلی، ساخت پایگاه‌داده کند و سنگین، یادگیری QL دشوار، و برای کد تجاری بسته رایگان نیست
ابزارهای زبان‌محورعمدتاً متن‌بازبالاترین نسبت سیگنال: Bandit برای پایتون، gosec برای Go، Brakeman برای Rails، PHPStan و Psalm برای PHP، SpotBugs با find-sec-bugs برای جاوا، njsscan برای JS

و محدودیت مشترک همه‌ی SAST که باید در گزارش هم گفته شود: این ابزارها دسته‌ی تزریق و سوءاستفاده‌ی رمزنگاری را خوب پیدا می‌کنند و نقص کنترل دسترسی و منطق کسب‌وکار را عملاً هیچ. یعنی همان جایی که پرتأثیرترین یافته‌ها زندگی می‌کنند، خارج از توان SAST است. تفصیل در بازبینی کد منبع.

فاز ۶ — گزارش و آنچه هیچ ابزاری پیدا نمی‌کند

در فاز گزارش، ابزارها نقش کمکی دارند و نه بیشتر: تولید گزارش خودکار Burp Pro برای پیوست شواهد خام، ثبت درخواست و پاسخ کامل از تاریخچه‌ی پروکسی، ماشین‌حساب رسمی CVSS برای ساخت بردار، و شناسه‌های CWE و WSTG برای دسته‌بندی. اما گزارش را انسان می‌نویسد، و گزارشی که خروجی PDF ابزار باشد، گزارش تست نفوذ نیست — نشانه‌های تشخیصش در گزارش تست نفوذ فهرست شده.

و اکنون مهم‌ترین بخش این مقاله. با همه‌ی ابزارهای بالا، این دسته‌ها همچنان بیرون از دسترس خودکارسازی می‌مانند:

دستهچرا ابزار پیدا نمی‌کند
کنترل دسترسی و IDORابزار نمی‌داند کاربر ۵ مجاز به دیدن رکورد ۷ است یا نه. هر دو درخواست از دید ابزار معتبرند
منطق کسب‌وکاردستکاری قیمت، دور زدن مرحله، انباشت تخفیف — همه با درخواست‌های کاملاً معتبر انجام می‌شوند
شرایط مسابقههر درخواست به‌تنهایی مشروع است؛ آسیب‌پذیری در هم‌زمانی است
زنجیره‌سازیترکیب دو یافته‌ی متوسط به یک مسیر بحرانی، استدلال انسانی است نه تطبیق الگو
طراحی ناامنOWASP خودش تصریح می‌کند «طراحی ناامن را هیچ پیاده‌سازی بی‌نقصی اصلاح نمی‌کند» — و هیچ ابزاری هم آن را نمی‌بیند

و این‌ها حاشیه نیستند. کنترل دسترسی شکسته رتبه‌ی یک OWASP Top 10:2025 است و OWASP گزارش می‌کند ۱۰۰٪ برنامه‌های آزموده‌شده نوعی نقص کنترل دسترسی داشته‌اند. یعنی پرفراوان‌ترین دسته‌ی آسیب‌پذیری در وب، همان دسته‌ای است که ابزارها ساختاراً نسبت به آن کورند. مبانی در IDOR و شرایط مسابقه.

نتیجه‌ی عملی برای کسی که در حال ارزیابی یک پیشنهاد است: فهرست ابزارهای یک پیمانکار، هیچ اطلاعاتی درباره‌ی کیفیت کارش نمی‌دهد. همه‌ی این ابزارها در دسترس همه هستند و بیشترشان رایگان‌اند. آنچه تفاوت می‌سازد نفر-روز آزمون دستی، ذهنیت سوءاستفاده و توان مستندسازی است — استدلال کامل در هزینه تست نفوذ و معیارهای سنجش در کارشناس تست نفوذ. برای دیدن این زنجیره در عمل، نمونه تست نفوذ نشان می‌دهد پنج یافته‌ی اصلی یک پروژه چگونه بیرون از خروجی هر اسکنری پیدا شدند. اجرای همین زنجیره روی سامانه‌ی شما در تست نفوذ وب توضیح داده شده و شروعش با فرم مشاوره است.

پرسش‌های متداول

بهترین ابزار تست نفوذ وب کدام است؟

پرسش دقیق‌تر این است: بهترین ابزار برای کدام فاز؟ برای کار دستی و ستون فقرات پروژه، پروکسی رهگیر (Burp Suite یا Caido). برای شناسایی، خانواده‌ی subfinder و httpx و katana. برای فازینگ، ffuf یا feroxbuster. برای تشخیص مسائل شناخته‌شده، Nuclei. برای CI/CD، ZAP. هیچ ابزار واحدی همه‌ی این‌ها را پوشش نمی‌دهد و مهم‌تر از ابزار، پوشش آزمون بر پایه‌ی WSTG است.

آیا OWASP ZAP جایگزین رایگان Burp Suite است؟

اول یک تصحیح: نام درست ZAP یا ZAP by Checkmarx است — این پروژه در سپتامبر ۲۰۲۳ از OWASP جدا شد. و پاسخ: تا حدی. ZAP رایگان و کاملاً قابل خودکارسازی است و در CI/CD بهتر از Burp جا می‌افتد. اما نویز یافته‌هایش بیشتر است، ارگونومی کار دستی‌اش ضعیف‌تر است، خزش SPA ضعیف‌تری دارد و سرویس OAST هم‌رده‌ی Burp Collaborator ندارد.

با نسخه‌ی رایگان Burp Suite می‌توان تست نفوذ حرفه‌ای انجام داد؟

برای یادگیری و کار دستی محدود بله. برای پروژه‌ی حرفه‌ای نه: نسخه‌ی Community هیچ اسکنری ندارد، Collaborator ندارد، فایل پروژه ذخیره نمی‌کند و Intruder آن دموی به‌شدت محدودشده است. نکته‌ی مثبت و کمتر گفته‌شده: DOM Invader در Community هم موجود است و بهترین ابزار رایگان شکار DOM XSS است.

آیا Metasploit برای تست نفوذ وب لازم است؟

معمولاً نه. Metasploit یک چارچوب بهره‌جویی شبکه و میزبان است و در پروژه‌ی وب فقط در سه جای محدود ظاهر می‌شود: بهره‌جویی از CVE شناخته‌شده در پشته‌ی زیرین، تولید Payload با msfvenom و گرفتن اتصال، و پس‌ازبهره‌جویی. ماژول‌های اسکنر HTTP آن به‌مراتب ضعیف‌تر از Burp، ZAP و Nuclei هستند.

آیا Nuclei می‌تواند جای تست نفوذ دستی را بگیرد؟

نه. Nuclei یک تطبیق‌دهنده‌ی امضا است: برای تشخیص CVE شناخته‌شده، پنل افشاشده، پیکربندی نادرست و اعتبارنامه‌ی پیش‌فرض روی مقیاس بزرگ عالی است، اما IDOR، منطق کسب‌وکار و تزریق نوظهور را پیدا نمی‌کند. نکته‌ی مهم دیگر: خودش هم CVE داشته (CVE-2026-41645 و CVE-2026-41646، رفع‌شده در v3.8.0) پس نسخه‌ی قدیمی را ارتقا دهید.

Caido بهتر است یا Burp؟

بستگی دارد به اینکه به اسکن خودکار نیاز دارید یا نه. Caido ارگونومی مدرن‌تر و معماری کلاینت/سرور دارد که اجرای روی سرور دور را ممکن می‌کند، اما متن‌باز نیست، اسکنر خودکار ندارد، سرویس OAST هم‌رده‌ی Collaborator ندارد و هنوز پیش از نسخه‌ی ۱٫۰ است (v0.57.0). توصیف درست: جانشین جریان کار دستی Burp، نه جانشین اسکن آن.

محمدرضا مقدم
WRITTEN BY

محمدرضا مقدم

توسعه‌دهنده ابزار

مغز خودکارسازی تیم؛ ابزارها و زیرساخت داخلی پی‌هانتر را می‌سازد تا اسکن و گزارش‌گیری سریع‌تر و دقیق‌تر انجام شود.

PENTEST

آموزش تست نفوذ با کالی لینوکس

ادامه مطلب ←
PENTEST

فرایند تست نفوذ گام‌به‌گام برای سازمان‌ها

ادامه مطلب ←
WEB

ابزارهای تست امنیت سایت: رایگان و حرفه‌ای

ادامه مطلب ←