FutureForgeFutureForge

خدمات FutureForge

  • طراحی و ساخت محصولاز شناخت نیاز تا انتشار محصول، یک مسیر روشن پیش رو دارید.
  • توسعه فول‌استکوب‌اپلیکیشن، API و داده را هماهنگ و یکپارچه توسعه دهید.
  • ممیزی مهندسیپیش از هزینه‌ی بیشتر، از وضعیت واقعی محصول‌تان باخبر شوید.
  • مشاوره معماریپیش از یک تصمیم فنی پرهزینه، گزینه‌ها را درست بسنجید.
  • زیرساخت و استقرارمحصول را با خیال راحت منتشر کنید و پایدار نگه دارید.
  • هوش مصنوعی در محصولهوش مصنوعی را فقط جایی به کار می‌گیریم که مسئله‌ای را حل کند.
نمونه‌کارهایادداشت‌هاقیمت‌گذاریدرباره ما
شروع گفتگو
  1. خانه
  2. /یادداشت‌ها
  3. /یادداشت‌ها
FutureForge

استودیوی مهندسی محصول — طراحی، ساخت و استقرار نرم‌افزار.

خدمات

طراحی سایت با وردپرستوسعه اختصاصیمهندسی محصولزیرساخت و استقرارمشاوره معماریهوش مصنوعی در محصول

راهنمای انتخاب

یادداشت‌هاقیمت‌گذاریتخمین هزینه پروژهمقایسه روش‌هانمونه‌کارهادرباره ماتماس

ارتباط

hello@futureforge.ir

ایده‌ای برای ساخت دارید؟

نیازتان را مطرح کنید تا درباره مسیر توسعه و قدم بعدی صحبت کنیم.

شروع گفتگو

© 2026 FutureForge. همه حقوق محفوظ است.

حریم خصوصیشرایط استفاده
خانهنمونه‌کارشروعتماس
عملیات و استقرار

امنیت فروشگاه اینترنتی: سایت، درگاه و فرایند عملیاتی

سا
سهیل ابراهیم‌پور
·۶ آبان ۱۴۰۵·6 دقیقه مطالعه
امنیت فروشگاهOWASPPCIپرداخت امنفروشگاه اینترنتی
مدیر فنی در حال بازبینی چک‌لیست امنیت فروشگاه کنار سرور

امنیت فروشگاه فقط SSL نیست. مسئولیت سایت، درگاه و عملیات را تفکیک کنید و با نقشهٔ OWASP Top 10:2025 چک‌لیست عملی بسازید؛ بدون ادعای انطباق.

«فروشگاه ما امن است چون SSL دارد.» این جمله در بهترین حالت یک‌دهم ماجراست. امنیت فروشگاه اینترنتی ترکیبی از کار سایت، درگاه پرداخت و فرایندهای عملیاتی است، و بیشتر حادثه‌ها در شکاف بین این سه رخ می‌دهد: سفارشی که با یک درخواست جعلی «پرداخت‌شده» شد، پنل مدیریتی که دسترسی‌اش گشاد بود، وابستگی قدیمی که به‌روز نشد، یا لاگی که هیچ‌کس نخواند. این مقاله مسئولیت‌ها را تفکیک می‌کند و چک‌لیست عملیاتی می‌دهد.

مرز صریح: این مقاله هیچ ادعای انطباق (PCI DSS، الزامات بانک مرکزی، قوانین حریم خصوصی یا الزامات شاپرک) نمی‌کند و نمی‌گوید فروشگاه شما «مطابق» است. این‌ها به منبع رسمی روز و ارزیاب مجاز نیاز دارند. ما آنچه از OWASP، مستند Stripe و مستند زرین‌پال خوانده‌ایم نقل می‌کنیم و بقیه را «توصیهٔ نویسنده» می‌نامیم. فهرست OWASP را از نسخهٔ ۲۰۲۵ آورده‌ایم؛ اگر نسخهٔ جدیدتر منتشر شده باشد باید دوباره بررسی شود.

چه کسی مسئول چیست؟

پیش از هر چک‌لیست، سه ناحیه را از هم جدا کنید:

ناحیهمسئولیت معمولنمونه
سایت و کد شماشماکنترل دسترسی، اعتبارسنجی ورودی، وابستگی‌ها، پیکربندی، لاگ
درگاه پرداختدرگاه (طبق قرارداد)دریافت و پردازش داده کارت در صفحهٔ درگاه
فرایند عملیاتیتیم شمابک‌آپ، دسترسی کارکنان، پاسخ به حادثه

این تفکیک را مستند Stripe هم تأیید می‌کند: انطباق PCI «مسئولیت مشترک» است. این‌که در قرارداد شما با درگاه ایرانی دقیقاً چه کسی مسئول چیست، باید از خود قرارداد و منبع رسمی روشن شود؛ این مقاله آن را بررسی نکرده است.

داده کارت: بهترین راه این است که از سرور شما رد نشود

Stripe می‌گوید PCI DSS برای هر نهادی است که داده کارت را ذخیره، پردازش یا منتقل می‌کند، و اگر کسب‌وکاری مستقیم داده کارت را دریافت کند ممکن است مشمول بیش از ۳۰۰ کنترل شود. توصیهٔ Stripe استفاده از «یکپارچه‌سازی کم‌ریسک» است که اطلاعات را بدون عبور از سرورهای شما جمع می‌کند و تعهدات را کم می‌کند. جریان مستند زرین‌پال هم همین الگو را دارد: خریدار با ریدایرکت به صفحهٔ درگاه می‌رود و اطلاعات کارت را آن‌جا وارد می‌کند، نه در فروشگاه. قاعدهٔ ساده برای شما (توصیهٔ نویسنده): فیلد شمارهٔ کارت، CVV2 و رمز دوم را هرگز در فرم‌ها، لاگ‌ها، آنالیتیکس و پیام‌های خطای فروشگاه نگیرید و ذخیره نکنید. زرین‌پال در پاسخ verify فقط شمارهٔ کارت ماسک‌شده و هش کارت می‌دهد؛ همان را ذخیره کنید، نه چیزی بیشتر.

نقشهٔ ریسک: OWASP Top 10:2025 برای فروشگاه

فهرست ۲۰۲۵ شامل A01 کنترل دسترسی شکسته، A02 پیکربندی نادرست، A03 شکست زنجیرهٔ تأمین نرم‌افزار، A04 شکست رمزنگاری، A05 تزریق، A06 طراحی ناامن، A07 شکست احراز هویت، A08 شکست یکپارچگی نرم‌افزار یا داده، A09 شکست ثبت و هشدار و A10 مدیریت نادرست شرایط استثنایی است. معنای عملی هر کدام برای فروشگاه (تفسیر نویسنده):

ریسکنمونهٔ فروشگاهیاقدام
A01 کنترل دسترسیتغییر شناسهٔ سفارش در URL و دیدن سفارش دیگران؛ پنل مدیریت بدون سطح‌بندیبررسی مالکیت در سرور برای هر سفارش و آدرس؛ نقش‌های محدود برای کارکنان
A02 پیکربندیحالت debug فعال، فایل‌های پشتیبان در وب‌روت، دسترسی عمومی به پنلپیکربندی جدا برای تولید؛ حذف فایل‌های اضافی؛ محدودیت دسترسی پنل
A03 زنجیرهٔ تأمینافزونه یا قالب قدیمی و رهاشدهفهرست وابستگی‌ها و به‌روزرسانی منظم؛ حذف افزونهٔ بلااستفاده
A04 رمزنگاریرمز عبور ساده‌ذخیره، HTTP بدون TLSهش مناسب رمز؛ HTTPS در همه‌جا
A05 تزریقجست‌وجوی محصول یا فیلتر با کوئری الحاقیکوئری پارامتری؛ اعتبارسنجی ورودی
A06 طراحی ناامنکد تخفیف بدون محدودیت تلاش؛ تأیید پرداخت فقط با بازگشت مرورگرمدل تهدید ساده برای جریان‌های پول؛ تأیید سمت سرور
A07 احراز هویتبدون محدودیت تلاش ورود؛ بازیابی رمز ضعیفمحدودیت تلاش، تأیید دومرحله‌ای برای مدیران
A08 یکپارچگیفراخوانی جعلی callback پرداخت؛ به‌روزرسانی بدون امضاتأیید امضا یا verify سمت سرور؛ منبع معتبر برای ساخت
A09 ثبت و هشدارتلاش‌های ورود مشکوک هیچ‌وقت دیده نمی‌شودلاگ رویدادهای امنیتی و هشدار
A10 شرایط استثناییخطای پرداخت پیام داخلی یا stack trace نشان می‌دهد؛ حالت نامشخص سفارش «موفق» فرض می‌شودپیام عمومی برای کاربر، خطای دقیق فقط در لاگ؛ پیش‌فرض امن
سه ناحیهٔ مسئولیت: سایت، درگاه، عملیات
نمودار مفهومی.

امنیت جریان پرداخت

سه قاعده از مستندات:

  • ارتباط ایمن: Stripe استفاده از TLS/HTTPS را توصیه می‌کند؛ برای مبانی، SSL و HTTPS چیست؟ را ببینید.
  • تأیید سمت سرور: مستند زرین‌پال می‌گوید verify فقط وقتی Status=OK است صدا زده می‌شود و مبلغ آن را از دیتابیس خودتان بگیرید. Stripe هم می‌گوید بدون تأیید امضا، مهاجم می‌تواند رویداد جعلی بفرستد تا سفارش فعال شود؛ پس امضا را با بدنهٔ خام و secret تأیید کنید و برای رد replay به timestamp توجه کنید.
  • ارزش پایین‌دستی: فقط وقتی سفارش را «پرداخت‌شده» می‌کنید که تأیید سرور موفق باشد.

فرایندهای عملیاتی

  1. دسترسی کارکنان: هر نفر حساب خودش، حداقل دسترسی، تأیید دومرحله‌ای برای مدیر، و حذف فوری دسترسی هنگام خروج. (توصیهٔ نویسنده.)
  2. بک‌آپ: بک‌آپ منظم، رمزگذاری‌شده و بازیابی آزمایش‌شده؛ بک‌آپی که هرگز بازیابی نشده، فرضیه است نه بک‌آپ.
  3. به‌روزرسانی: فهرست وابستگی‌ها و افزونه‌ها و زمان‌بندی به‌روزرسانی.
  4. لاگ و هشدار: ورودهای ناموفق، تغییر مبلغ یا آدرس سفارش، خطاهای verify. مبانی پایش را در Monitoring چیست؟ ببینید.
  5. پاسخ به حادثه: سند یک‌صفحه‌ای: چه کسی تصمیم می‌گیرد، چطور سایت را محدود کنیم، با درگاه و مشتریان چگونه ارتباط بگیریم. اینکه چه اعلامی قانوناً لازم است را از مشاور حقوقی بپرسید؛ این مقاله بررسی نکرده است.

چطور سنجیده شود؟

OWASP ASVS چارچوبی برای تعیین و سنجش الزامات امنیتی برنامه‌های وب است. برای فروشگاه کوچک نیاز نیست همهٔ آن را اجرا کنید؛ از چک‌لیست بالا شروع و بعد بخش‌های ASVS مربوط به جریان‌های پرخطر را (احراز هویت، کنترل دسترسی، پرداخت) انتخاب کنید. برای آزمون مستقل از متخصص امنیت استفاده کنید؛ ما نتیجهٔ هیچ آزمون نفوذی را ادعا نمی‌کنیم.

اشتباهات رایج

  • «SSL دارد پس امن است».
  • باور اینکه امنیت وظیفهٔ درگاه است و داده کارت در لاگ‌ها می‌ماند.
  • تأیید سفارش فقط با بازگشت مرورگر.
  • یک حساب مدیریتی مشترک.
  • افزونه‌های قدیمی و رهاشده.
  • بک‌آپ بدون آزمون بازیابی.
  • پیام خطای فنی در صفحهٔ عمومی.

چک‌لیست

  1. داده کارت از سرور شما رد نمی‌شود و در لاگ‌ها و فرم‌ها نیست.
  2. بررسی مالکیت سفارش و آدرس در سرور برای همهٔ مسیرها انجام می‌شود.
  3. HTTPS در کل سایت و پنل فعال است.
  4. ورود مدیر با حداقل دسترسی و تأیید دومرحله‌ای است.
  5. وابستگی‌ها و افزونه‌ها فهرست و به‌روز می‌شوند.
  6. تأیید پرداخت سمت سرور است و مبلغ از دیتابیس می‌آید.
  7. لاگ امنیتی و هشدار وجود دارد.
  8. بک‌آپ و بازیابی آزمایش شده است.
  9. الزامات انطباق و حقوقی از منبع رسمی روز و متخصص بررسی شده، نه از این مقاله.

برای تصمیم‌های معماری بزرگ‌تر، انتخاب معماری اپلیکیشن وب را ببینید.

منابع و مراجع

  • OWASP Top 10:2025 — OWASP Foundation، 2025.
  • Integration security guide — Stripe.
  • Receive Stripe events in your webhook endpoint — Stripe.
  • راهنمای اتصال به درگاه اینترنتی زرین‌پال — ZarinPal (مستندات رسمی).
  • OWASP Application Security Verification Standard (ASVS) — OWASP Foundation.

نویسنده

سا

سهیل ابراهیم‌پور بنیان‌گذار FutureForge است. روی طراحی محصول، معماری و استقرار نرم‌افزار سفارشی کار می‌کند.

یادداشت‌های مرتبط

یادداشت‌های مرتبط

دسته‌بندی‌ها

خدمات مرتبط

از یادداشت تا پروژه

اگر با مسئله‌ای شبیه این روبه‌رو هستید، درباره‌ی شرایط پروژه‌تان با هم صحبت کنیم.

برای انتخاب مسیر فنی پروژه‌تان کمک می‌خواهید؟

از مسئله و محدودیت‌هایتان بگویید؛ اگر بتوانیم همراهی‌تان کنیم، برای گفت‌وگو هماهنگ می‌کنیم.

سهیل ابراهیم‌پور
یادداشت‌ها
بازیابی سرور لینوکس بعد از خرابی دیسک یا استقرار اشتباه
استقرار بدون قطعی سایت: blue-green و rolling
مهاجرت اطلاعات CRM: نگاشت، تکرارزدایی و تطبیق
سئو فیلتر و مرتب‌سازی فروشگاه: کدام URLها ایندکس شوند؟
طراحی صفحهٔ محصول فروشگاه: پرسش‌های خرید را کامل جواب دهید

عملیات و استقرار

بازیابی سرور لینوکس بعد از خرابی دیسک یا استقرار اشتباه

۲ آبان ۱۴۰۵

عملیات و استقرار

استقرار بدون قطعی سایت: blue-green و rolling

۲ آبان ۱۴۰۵

عملیات و استقرار

مهاجرت اطلاعات CRM: نگاشت، تکرارزدایی و تطبیق

۲ آبان ۱۴۰۵

راهنمای وب

سئو فیلتر و مرتب‌سازی فروشگاه: کدام URLها ایندکس شوند؟

۵ آبان ۱۴۰۵

مهندسی محصول

طراحی صفحهٔ محصول فروشگاه: پرسش‌های خرید را کامل جواب دهید

۴ آبان ۱۴۰۵
همه یادداشت‌ها301
معماری نرم‌افزار25
واژه‌نامه37
عملیات و استقرار91
مهندسی محصول118
راهنمای وب30
طراحی و ساخت محصول
توسعه فول‌استک
ممیزی مهندسی
مشاوره معماری
زیرساخت و استقرار
شروع گفتگو
ابزارهای رایگان
شروع گفتگو