دموی رایگان

آموزش گام‌به‌گام امنیت درگاه پرداخت

دلوین خیری مقدم خواندن ~۸ دقیقه امنیت و پشتیبان‌گیری
آموزش گام‌به‌گام امنیت درگاه پرداخت
امنیت درگاه پرداخت حاصل سه لایه است: کانال رمزنگاری‌شدهٔ HTTPS، بهداشت خودِ سایت وردپرسی و انضباط عملیاتی روی دسترسی‌ها و پایش. به تجربهٔ ما بیشترین رخنه‌ها نه از خودِ درگاه، بلکه از افزونهٔ به‌روزنشده، حساب مدیر و اسکریپت جاگذاری‌شده می‌آید. جمعِ این پنج گام، سه تا پنج ساعت کار اولیه و یک روتین ماهانهٔ نیم‌ساعته است.

درگاه پرداخت فقط یک دکمه نیست؛ نقطه‌ای است که اعتماد، پول و داده هم‌زمان در آن حاضرند. خریدار کارت را وارد می‌کند، درگاه با بانک صحبت می‌کند و سایت شما میزبان صحنه است. هر ضعفی در همین میزبان — از افزونهٔ فراموش‌شده تا رمز سادهٔ مدیر — اعتماد ماه‌ها را در یک هفته می‌سوزاند.

پیش از شروع، مرز انتخاب را روشن کنیم: اینکه کدام افزونهٔ درگاه مناسب‌تر است، بحث مقایسه است و در مقایسهٔ کامل افزونه درگاه پرداخت ووکامرس باز شده. این‌جا فرض ما افزونهٔ انتخاب‌شده است؛ سؤال، سخت‌گیرانه نگه‌داشتن کل جریان پرداخت است.

امنیت درگاه پرداخت کدام لایه‌ها را دربر می‌گیرد؟

امنیت درگاه پرداخت سه لایهٔ جدا دارد و هر لایه صاحب خودش را. لایهٔ اول سمت درگاه و بانک است: رمزنگاری تراکنش، استانداردهای PCI و تشخیص تقلب بانکی؛ این بخش را شما بازتولید نمی‌کنید. لایهٔ دوم خودِ سایت وردپرسی است: افزونه، قالب، دسترسی‌ها و اسکریپت‌هایی که کنار دکمهٔ پرداخت زندگی می‌کنند. لایهٔ سوم انضباط عملیاتی است: چه کسی وارد می‌شود، چه چیزی پایش می‌شود، بعد از رخداد چه می‌شود.

مسئولیت لایهٔ دوم و سوم کاملاً با شماست. وردپرس در حال حاضر حدود ۴۳٪ از کل وب‌سایت‌های جهان را اجرا می‌کند (W3Techs، تاریخ گردآوری: آبان ۱۴۰۵) و همین محبوبیت آن را به هدف اول اسکنرهای خودکار تبدیل کرده است؛ حتی فروشگاه کوچک از دید ربات‌ها پنهان نیست.

خبر خوب این است که سهم امنیتیِ شما در برابر درگاه، بیشتر بهداشت است تا فناوری پیچیده: هیچ‌کدام به کدنویسی نیاز ندارد و جمع‌شان سه تا پنج ساعت کار اولیه و نیم ساعت در ماه است. برای نقشهٔ کامل خانوادهٔ امنیتی — از بکاپ تا ریستور و اسکن — هاب امنیت و پشتیبان‌گیری را کنار دست داشته باشید.

گام اول؛ HTTPS را کامل و یکدست کنید

چک‌لیست یکدست‌سازی HTTPS
پنج دقیقه بازبینی با ابزار توسعه‌دهندهٔ مرورگر، قفل کامل را نگه می‌دارد.

اگر هنوز گواهی SSL نصب نکرده‌اید، این گام غیرقابل مذاکره است؛ مراحل نصب را در آموزش گام‌به‌گام SSL وردپرس قدم‌به‌قدم نوشته‌ایم. سه نکتهٔ بعد از نصب، معمولاً همان‌هایی‌اند که نیمه‌کاره می‌مانند.

اول، یکدست‌سازی: ریدایرکت دائمی HTTP به HTTPS روی کل دامنه، نه فقط صفحهٔ پرداخت. دوم، ست‌کردن پرچم Secure برای کوکی‌ها تا نشست کاربر روی کانال ناامن بازنشر نشود. سوم، پاک‌کردن محتوای ترکیبی: تصاویر و اسکریپت‌هایی که هنوز با HTTP لود می‌شوند و باعث هشدار «Not Secure» روی حساس‌ترین صفحهٔ سایت می‌شوند.

بازبینی‌اش پنج دقیقه است: صفحهٔ تسویه را با ابزار توسعه‌دهندهٔ مرورگر باز کنید، تب کنسول را ببینید و هر هشدار محتوای ترکیبی را ببندید. همین چک را بعد از هر تغییر قالب یا افزونه تکرار کنید؛ قالب‌های تازه، رایج‌ترین عامل بازگشت آدرس‌های HTTP قدیمی‌اند. اگر فروشگاه چند دامنه یا زیردامنه دارد، گواهی و ریدایرکت را برای همه یک‌جا تنظیم کنید؛ جا‌ماندن یک زیردامنهٔ قدیمی کافی است تا زنجیرهٔ اعتماد بشکند.

گام دوم؛ دادهٔ کارت هرگز روی سایت شما ذخیره نشود

قاعدهٔ آگاهانه از PCI برای کسب‌وکار کوچک ساده است: شمارهٔ کامل کارت نباید به سرور شما برسد — نه در دیتابیس، نه در فایل لاگ، نه در ایمیل. برای این، روش اتصال درگاه را روی ریدایرکت یا آی‌فریم بگذارید تا کارت‌پذیری در محیط امن درگاه انجام شود و سایت شما فقط نتیجهٔ تراکنش را بگیرد.

دو نشت رایج را ببندید: برخی افزونه‌ها شمارهٔ کارتِ واردشده در فرم محلی را در یادداشت سفارش یا ایمیل مدیر کپی می‌کنند — این قابلیت را خاموش کنید — و فایل لاگ خطای درگاه را جایی عمومی نگه ندارید. اگر افزونه‌ای فرم محلی پیشنهاد می‌دهد، بدانید بار ریسک از درگاه به شما منتقل می‌شود؛ این تصمیم را آگاهانه بگیرید.

در انتخاب یا ارزیابی افزونهٔ درگاه هم معیارهای امنیتی — سابقهٔ سازنده، نظم به‌روزرسانی، کیفیت پشتیبانی — را بالاتر از ظاهر فرم تسویه بگذارید؛ همان سنجه‌هایی که در مقایسهٔ افزونه‌ها به تفصیل آمده است. افزونه‌ای که شش ماه بی‌پچ مانده، هر چقدر هم خوش‌ظاهر، نامزد جایگزینی است.

گام سوم؛ به‌روزرسانی هسته، افزونه و خود درگاه را زمان‌بندی کنید

بخش بزرگی از به‌روزرسانی‌های افزونهٔ درگاه، پچ امنیتی یا تازه‌سازی قواعد تقلب است، نه قابلیت تازه؛ پس عقب‌ماندن مستقیم روی حلقهٔ پولی اثر می‌گذارد. روتین: بازبینی هفتگی صفحهٔ به‌روزرسانی‌ها، اعمال پچ‌های امنیتی در بازهٔ ۲۴ تا ۴۸ ساعت، و بقیه در پنجرهٔ کم‌ترافیک هفته.

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

در همین روتین، افزونه‌های غیرفعال و قالب‌های فراموش‌شده را حذف کنید؛ کدِ غیرفعال، امن نیست — اگر فایل روی سرور باشد، قابل اجرا و قابل سوءاستفاده است. فهرست را کوتاه نگه دارید: هر افزونه‌ای که نمی‌توانید در یک جمله بگویید چرا هست، نامزد حذف است؛ حذف را هم مرحله‌ای کنید — اول غیرفعال، یک هفته مشاهده، بعد حذف کامل.

گام چهارم؛ بهداشت دسترسی مدیر و صفحهٔ ورود

دکمهٔ پرداخت را نمی‌شود مستقیم هک کرد، اما حساب مدیر را می‌شود. روزمره‌ترین روش ورود غیرمجاز، حملهٔ بروت‌فورس روی صفحهٔ ورود است که راهکارهایش را در جلوگیری از حملهٔ بروت‌فورس کامل باز کرده‌ایم. حداقل‌های غیرقابل چشم‌پوشی: رمز یکتا و بلند، محدودسازی تلاش ورود و تأیید دومرحله‌ای برای همهٔ کاربرانی که نقش مدیریتی دارند.

اصل کمترین دسترسی را اجرا کنید: هر نقش فقط آنچه واقعاً نیاز دارد. همکار تولید محتوا به مدیر کل فروشگاه نیاز ندارد؛ نقش نویسنده یا مدیر فروشگاه کافی است. حساب‌های افراد رفته از تیم را همان روز حذف یا تعلیق کنید — حساب بی‌صاحب، درِ فراموش‌شدهٔ سایت است و هیچ لاگی برایش هشدار نمی‌دهد.

یک عادت ماهانه هم بگذارید: مرور فهرست کاربران با سه پرسش — این حساب چه کسی است؟ به چه نقشی نیاز دارد؟ آخرین ورودش کی بوده؟ اگر پاسخ یکی مبهم بود، دسترسی را ببندید تا روشن شود. بستن و بازگرداندن یک دسترسی پنج دقیقه است؛ پیامد باز ماندنش هفته‌هاست.

گام پنجم؛ سیگنال‌های تقلب را پایش کنید

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

پیشگیری نیمی از کار است؛ نیمهٔ دیگر، دیدنِ رفتار غیرعادی است. الگوی کلاسیک کارت‌تستی: موج سفارش‌های ریز و تکراری در بازهٔ کوتاه، چند پرداخت موفق ریز، و بعد سفارش‌های بزرگ — چون صاحبِ کارتِ دزدیده با خرید کوچک، زنده‌بودن شماره را آزمایش می‌کند. گزارش سفارش‌ها را روزانه یک نگاه ببینید و به جهش پرداخت‌های ناموفق حساس باشید.

سه سیگنال کم‌هزینه و مؤثر: عدم تطابق کشور آی‌پی با آدرس صورتحساب، چند پرداخت ناموفق پشت‌سرهم از یک حساب، و سفارش‌هایی که بلافاصله درخواست تغییر آدرس ارسال می‌دهند. هیچ‌کدام به‌تنهایی حکم تقلب نیست؛ مجموعشان اولویت بازبینی دستی پیش از ارسال را می‌سازد.

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

واکنش به رخداد؛ از قرنطینه تا بازگشت به کار

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

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

پس از بسته‌شدن پرونده، یک برگهٔ یک‌صفحه‌ای بنویسید: چه شد، از کجا، و چه چیزی در روتین تغییر می‌کند. همین برگه کوتاه، نسخهٔ بعدی حمله را به‌مراتب سخت‌تر می‌کند.

جمع‌بندی؛ روتین نیم‌ساعتهٔ ماهانه

پنج گام را جمع کنید: HTTPS یکدست، عدم ذخیرهٔ دادهٔ کارت، به‌روزرسانی زمان‌بندی‌شده، بهداشت دسترسی و پایش تقلب. هیچ‌کدام یک‌باره تمام نمی‌شود؛ امنیت درگاه پرداخت، نگهداشت است نه نصبِ یک‌باره. روتین ما نیم ساعت در ماه است: به‌روزرسانی‌ها، مرور کاربران، بازبینی سفارش‌های ناموفق و یک تست بکاپ. این نیم ساعت را مثل جلسهٔ ثابت در تقویم بگذارید و نتیجهٔ هر دور را در فایل پایش ثبت کنید تا ماه بعد تکرارپذیر باشد.

اگر می‌خواهید این روتین روی زیرساخت پلتفرمی بنشیند — انتشار خودکار، اپراتور پایش و گزارش منظم — قابلیت‌های پلتفرم را ببینید؛ پلن پیشرو دقیقاً همین ترکیب است. و در هاب امنیت و پشتیبان‌گیری، بقیهٔ حلقه‌های این زنجیره — بکاپ، ریستور، اسکن — یک‌جا مرتب‌اند.

و اگر نمی‌دانید از کدام گام شروع کنید، ممیزی رایگان دامنه پیش از هر تغییر، وضعیت فعلی دامنه را نشان می‌دهد؛ بعد بر پایهٔ همان گزارش، پنج گام این راهنما را به ترتیب اجرا کنید. ترتیب مهم است: کانال و دسترسی اول، پایش بعد.

دموی رایگان پلتفرم

پلن پیشرو — ۷٫۹ میلیون تومان/ماه (انتشار خودکار + اپراتور)

دموی رایگان پلتفرم

رصد ما، رشد شما.

سؤالات پرتکرار

آیا خود درگاه پرداخت دادهٔ کارت را نگه می‌دارد؟

بله؛ سمت درگاه و بانک، رمزنگاری و استانداردهای PCI برقرار است و کارت روی سرور شما ذخیره نمی‌شود. کار شما این است که با روش ریدایرکت یا آی‌فریم، مسیر دادهٔ کارت را از سرور خودتان دور نگه دارید.

آیا نصب SSL به‌تنهایی کافی است؟

نه؛ SSL فقط لایهٔ اول است. به تجربهٔ ما بیشترین رخنه از افزونهٔ به‌روزنشده و حساب مدیر می‌آید؛ به‌روزرسانی زمان‌بندی‌شده، تأیید دومرحله‌ای و پایش سفارش‌ها را باید کنارش بگذارید.

نشانهٔ اصلی کارت‌تستی چیست؟

موج سفارش‌های ریز و تکراری در بازهٔ کوتاه، سپس سفارش‌های بزرگ؛ معمولاً همراه با چند پرداخت ناموفق از یک حساب. این الگو را دیدید، مرسوله را نگه دارید و سفارش را دستی بازبینی کنید.

چند وقت یک‌بار به‌روزرسانی امنیتی را اعمال کنم؟

بازبینی هفتگی صفحهٔ به‌روزرسانی‌ها؛ پچ‌های امنیتی را در ۲۴ تا ۴۸ ساعت اعمال کنید و بقیه را در پنجرهٔ کم‌ترافیک هفته، همیشه بعد از بکاپ کامل.

اگر سایت هک شد، اولین قدم چیست؟

جداسازی: حالت نگهداری، تعلیق دسترسی‌ها و پیدا کردن مسیر ورود. سپس پاک‌سازی از نسخهٔ سالم و چرخاندن همهٔ رمزها و کلیدها؛ جزئیات کامل در راهنمای بازیابی سایت هک‌شده آمده است.