تحلیل‌گر CSP

Content-Security-Policy (CSP) و Content-Security-Policy-Report-Only را برای هر URL تحلیل کنید. دستورالعمل‌های پرخطر (مانند unsafe-inline، wildcard)، استراتژی‌های مفقود nonce/hash، الگوهای منسوخ را شناسایی کرده و توصیه‌های عملی برای تقویت دفاع در برابر XSS ارائه دهید. از تغییر مسیرها، بازرسی هدر خام، فیلتر کردن، یافته‌ها و خروجی JSON/PDF پشتیبانی می‌کند.

Loading…

درباره تحلیل‌گر CSP

یک URL را برای بررسی هدرهای CSP آن وارد کنید و به سرعت ببینید که آیا سیاست واقعاً از شما در برابر XSS و تزریق محافظت می‌کند یا خیر. این تحلیل‌گر مجوزهای خطرناک (مانند unsafe-inline یا wildcardهای گسترده) را برجسته می‌کند، موارد مفقود (استراتژی nonce/hash، محدودیت‌های frame) را توضیح داده و به شما کمک می‌کند تا با استفاده از report-only به سمت یک CSP عملی و قابل استقرار حرکت کنید.

ویژگی‌ها

  • هدرهای Content-Security-Policy و Content-Security-Policy-Report-Only را شناسایی و توضیح دهید.
  • مشکلات رایج CSP را علامت‌گذاری کنید: unsafe-inline، unsafe-eval، wildcardهای گسترده و منابع بیش از حد مجاز.
  • راهنمایی برای اجرای امن‌تر اسکریپت/استایل از طریق استراتژی‌های مبتنی بر nonce و hash.
  • دستورالعمل‌های مفقودی را که اغلب در تقویت دنیای واقعی اهمیت دارند (مانند frame-ancestors، object-src، base-uri) شناسایی کنید.
  • بینش‌های Report-Only: درک کنید که چه چیزی مسدود می‌شود و چگونه CSP را بدون اختلال در تولید پیاده‌سازی کنید.
  • تغییر مسیرها (تا ۱۰ مورد) را دنبال کنید تا سیاست پاسخ نهایی که مرورگرها اعمال می‌کنند را تحلیل کنید.
  • نمای هدرهای خام برای خروجی دقیق سرور و اشکال‌زدایی.
  • یافته‌ها + کارت امتیاز با فیلتر «فقط مشکلات».
  • تحلیل را به JSON یا PDF برای حسابرسی‌ها، تیکت‌ها و بررسی‌های امنیتی صادر کنید.
  • شامل آگاهی از هدرهای منسوخ برای شناسایی سیاست‌های قدیمی و نیازهای مهاجرت.

🧭 نحوه استفاده for csp-analyzer

1

URL برای تحلیل را وارد کنید

URL صفحه‌ای که می‌خواهید بررسی کنید (معمولاً صفحه اصلی یا پوسته برنامه) را وارد کنید.

2

در صورت نیاز، دنبال کردن تغییر مسیر را فعال کنید

«دنبال کردن تغییر مسیرها» را فعال نگه دارید تا تحلیل‌گر به مقصد نهایی HTTPS/www/محلی که CSP واقعی برگردانده می‌شود، برسد.

3

کارت امتیاز و یافته‌ها را مرور کنید

با یافته‌ها شروع کنید تا خطرات حیاتی (unsafe-inline، wildcardها، محدودیت‌های مفقود) را شناسایی کرده و درک کنید کدام دستورالعمل‌ها امتیاز را هدایت می‌کنند.

4

هدرهای خام را هنگام اشکال‌زدایی بررسی کنید

«نمایش هدرهای خام» را روشن کنید تا نام/مقادیر دقیق هدر را تأیید کنید (در صورت وجود چندین هدر CSP یا تغییر آنها توسط پروکسی/CDN مفید است).

5

یک گزارش برای گردش کار امنیتی خود صادر کنید

برای اتوماسیون JSON یا برای حسابرسی‌های امنیتی و تیکت‌های مهندسی PDF را دانلود کنید.

مشخصات فنی

مدل درخواست

این ابزار یک بازرسی هدر URL را انجام داده و بر تحلیل هدرهای امنیتی، از جمله سیاست‌های CSP و report-only تمرکز می‌کند.

تنظیمرفتارپیش‌فرض
دنبال کردن تغییر مسیرهازنجیره تغییر مسیرها را دنبال می‌کند تا سیاست مؤثر بازگردانده شده توسط آدرس نهایی را تحلیل کندفعال
حداکثر تغییر مسیرهاسقف تغییر مسیر برای جلوگیری از حلقه‌ها۱۰
مهلت زمانیمحدودیت مهلت زمانی درخواست۱۵۰۰۰ میلی‌ثانیه
کاربر-عاملکاربر-عامل درخواست را شناسایی می‌کندEncode64Bot/1.0 (+https://encode64.com)
شبکه‌های خصوصیبرای ایمنی، دسترسی به محدوده‌های شبکه خصوصی را مسدود می‌کندغیرفعال (شبکه‌های خصوصی مجاز نیستند)

هدرهای CSP بررسی شده

تحلیلگر هم سیاست‌های اجرایی و هم غیراجرایی را بررسی کرده و آن‌ها را به شکلی خوانا ارائه می‌دهد.

هدرمعنی
Content-Security-Policyسیاست اجرایی اعمال شده توسط مرورگر
Content-Security-Policy-Report-Onlyسیاست غیرمسدودکننده که تخلفات را گزارش می‌دهد (برای استقرار و تنظیم مفید است)
سایت‌ها ممکن است چندین هدر CSP ارسال کنند. مرورگرها قوانین ترکیب/اولویتی را اعمال می‌کنند که می‌تواند پیچیده باشد—هدرهای خام به تأیید آنچه ارسال می‌شود کمک می‌کنند.

آنچه تحلیل به دنبال آن است

یافته‌ها بر اساس بررسی‌های عملی تقویت CSP و اشتباهات رایج استقرار هستند.

حوزهنمونه‌هایی از یافته‌ها
استحکام سیاست اسکریپتاستفاده از unsafe-inline / unsafe-eval، منابع عمومی، فقدان استراتژی nonce/hash
استحکام سیاست استایلاستایل‌های unsafe-inline، منابع بیش از حد گسترده، فقدان مسیر مهاجرت به nonce/hash در صورت امکان
مقاومت در برابر قاب‌گذاری و کلیک‌دزدیفقدان یا ضعف محدودیت‌های قاب (اغلب از طریق frame-ancestors)
الگوهای قدیمی / منسوخدستورالعمل‌ها یا الگوهای قدیمی که باید مدرن شوند
آمادگی برای استقرارقابلیت مشاهده نقاط پایانی گزارش‌گیری و حضور حالت Report-Only

خط فرمان

از این دستورات برای بررسی سریع هدرهای CSP استفاده کنید. برای تأیید گزارش‌های تحلیلگر مفید هستند.

macOS / Linux

دریافت هدرهای پاسخ (جستجوی CSP)

curl -I https://example.com

بررسی Content-Security-Policy و Content-Security-Policy-Report-Only در هدرهای پاسخ.

پیگیری تغییر مسیرها در حین بررسی هدرها

curl -IL https://example.com

اطمینان از مشاهده هدرهای CSP از مقصد نهایی (HTTPS، www، مسیر پوسته برنامه).

نمایش فقط هدرهای CSP (مطابقت بدون حساسیت به حروف)

curl -I https://example.com | grep -i "content-security-policy"

جداسازی سریع هدرهای CSP و گزارش‌گیری از مجموعه کامل هدرها.

ویندوز (PowerShell)

بررسی هدرهای CSP

$r = Invoke-WebRequest -Uri https://example.com -Method Head; $r.Headers['Content-Security-Policy']; $r.Headers['Content-Security-Policy-Report-Only']

نمایش هدرهای CSP اجرایی و گزارش‌گیری در صورت وجود.

ابتدا سیاست‌های جدید را در حالت Report-Only مستقر کنید، گزارش‌های تخلف را مرور کرده، سپس آن‌ها را سخت‌گیرانه‌تر کرده و اجرا کنید. تنظیم CSP برای برنامه‌های مدرن تکراری است.

موارد استفاده

مقاوم‌سازی سایت در برابر XSS

از CSP برای کاهش تأثیر آسیب‌پذیری‌های تزریق با محدود کردن مکان‌های بارگیری اسکریپت‌ها/استایل‌ها و نحوه مدیریت کد درون‌خطی استفاده کنید.

  • شناسایی unsafe-inline/unsafe-eval و برنامه‌ریزی برای مهاجرت به nonceها/hashها
  • محدود کردن منابع script-src/style-src به مبدأهای مورد اعتماد
  • افزودن دستورالعمل‌های دفاعی مفقوده (base-uri، object-src، frame-ancestors)

استقرار ایمن CSP با Report-Only

CSP را به تدریج و بدون اختلال در تولید، با شروع از Content-Security-Policy-Report-Only و تکرار بر اساس تخلف‌ها معرفی کنید.

  • تشخیص وجود سیاست report-only
  • درک آنچه قبل از اجرا مسدود می‌شود
  • صدور گزارش برای برنامه استقرار و تیکت‌ها

اشکال‌زدایی اسکریپت‌ها، iframeها یا ویجت‌های شخص ثالث خراب

CSP بیش از حد سخت‌گیرانه می‌تواند تحلیلات، جاسازی‌ها یا اتصالات API را مسدود کند. از تحلیلگر برای دیدن مجوزهای سیاست و مکان‌هایی که ممکن است نیاز به منابع صریح داشته باشید استفاده کنید.

  • تأیید منابع مجاز اسکریپت/تصویر/اتصال/فریم
  • تشخیص wildcardهای بیش از حد گسترده اضافه شده به عنوان راه‌حل سریع
  • جایگزینی مجوزهای گسترده با دامنه‌های هدفمند

بررسی امنیتی / شواهد انطباق

ایجاد یک گزارش سازگار از وضعیت فعلی CSP برای بررسی‌های امنیتی، پرسشنامه‌های مشتری یا انطباق داخلی.

  • دانلود JSON برای ردیابی تغییرات در طول زمان
  • دانلود PDF برای مستندات حسابرسی و اشتراک‌گذاری

❓ Frequently Asked Questions

CSP چیست و در برابر چه چیزی محافظت می‌کند؟

Content Security Policy (CSP) یک لایه امنیتی اجراشده توسط مرورگر است که محدود می‌کند منابع از کجا بارگذاری شوند و اسکریپت‌ها/استایل‌ها چگونه اجرا شوند. این سیاست عمدتاً برای کاهش تأثیر حملات تزریق اسکریپت‌های بین‌سایتی (XSS) و تزریق استفاده می‌شود.

تفاوت بین CSP و CSP Report-Only چیست؟

Content-Security-Policy اجرا و اعمال می‌شود (می‌تواند مسدود کند). Content-Security-Policy-Report-Only مسدود نمی‌کند؛ بلکه تخلفات را گزارش می‌دهد تا بتوانید سیاست را قبل از اجرای کامل تنظیم کنید.

چرا unsafe-inline خطرناک در نظر گرفته می‌شود؟

unsafe-inline به اسکریپت‌ها و استایل‌های درون‌خطی اجازه می‌دهد که توانایی CSP را برای متوقف کردن کدهای تزریق‌شده تضعیف می‌کند. رویکردهای امن‌تر از nonceها یا hashها استفاده می‌کنند تا فقط بلوک‌های درون‌خطی شناخته‌شده مجاز باشند و در عین حال تزریق‌های غیرمنتظره مسدود شوند.

آیا به nonce یا hash نیاز دارم؟

اگر برنامه شما از اسکریپت‌ها یا استایل‌های درون‌خطی استفاده می‌کند، nonceها/hashها روش مدرن برای حفظ اثربخشی CSP بدون شکستن عملکرد هستند. آن‌ها اجازه می‌دهند بلوک‌های درون‌خطی خاصی مجاز باشند و در عین حال از تزریق دلخواه جلوگیری می‌کنند.

آیا CDN یا پروکسی می‌توانند هدر CSP من را تغییر دهند؟

بله. لایه‌های لبه می‌توانند هدرها را اضافه، ادغام یا بازنویسی کنند. اگر چیزی ناسازگار به نظر می‌رسد، هدرهای خام را فعال کنید و تغییرمسیرها را دنبال کنید تا هدرهای پاسخ نهایی را تأیید کنید.

آیا CSP جایگزینی برای رفع باگ‌های XSS است؟

خیر. CSP یک کنترل دفاع در عمق است. شما همچنان به رمزگذاری خروجی مناسب، قالب‌بندی امن و اعتبارسنجی ورودی نیاز دارید. CSP در صورت نفوذ چیزی، شعاع انفجار را کاهش می‌دهد.

آیا قرار دادن URLها در اینجا امن است؟

این ابزار درخواست‌های سمت سرور به URL ارائه‌شده انجام می‌دهد و اهداف شبکه خصوصی را مسدود می‌کند. از قرار دادن اسرار در URLها (مانند توکن‌ها در رشته‌های پرس‌وجو) خودداری کنید و URLهای عمومی مورد اعتماد خود را ترجیح دهید.

Pro Tips

Best Practice

با Content-Security-Policy-Report-Only شروع کنید، تخلفات را جمع‌آوری کنید، سپس آن را سفت‌تر کرده و اجرا کنید. CSP برای برنامه‌های واقعی تکراری است.

Best Practice

unsafe-inline را با یک استراتژی nonce یا hash جایگزین کنید. سیاست‌ها را صریح و حداقلی نگه دارید.

Best Practice

frame-ancestors را اضافه کنید تا خطر کلیک‌جکینگ کاهش یابد و از اتکا فقط به هدرهای قدیمی خودداری کنید.

Best Practice

از کاراکترهای عام گسترده به عنوان یک راه‌حل سریع خودداری کنید. دامنه‌های هدفمند برای اسکریپت‌ها/تصاویر/اتصال را ترجیح دهید و نیازهای شخص ثالث را بررسی کنید.

Best Practice

یک گزارش JSON صادر کنید و تغییرات CSP را در CI ردیابی کنید تا زمانی که هدرها توسط به‌روزرسانی‌های CDN/برنامه تغییر می‌کنند، پسرفت‌ها را شناسایی کنید.

Additional Resources

Other Tools

تحلیل‌گر CSP — حسابرسی Content-Security-Policy و هدرهای report-only | Encode64