rezzcode
rezzcode
خواندن ۲ دقیقه·۹ ماه پیش

نانس (nonce) در وردپرس چیه و چیکار میکنه ؟

سلام ،امروز میخوام باهاتون راجب آیتم امنیتی نانس (nonce) در وردپرس صحبت کنم .
نانس به زبان ساده، مثل یه کد امنیتی فوق‌العاده است که وردپرس استفاده می‌کنه تا سایتتون رو از حملاتمخرب محافظت کنه.

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

به زبون ساده‌تر بگم، فرض کنید وردپرس یه لباسه، این نانس‌ها مثل یک بند کمر اضافیه که وقتی لباس رو می‌بندید، از اون بند کمر برای بهتر نگه‌داشتن و حفظ لباس استفاده می‌کنید، ولی وقتی که نیاز بهش ندارید، می‌تونید ازش جدا بشید.



هدف و عملکرد نانس‌ها:

* نانس‌ها مثل نانس‌های سنتی هستن که در برابر حملات مختلف امنیتی، مثل CSRF، محافظت میکنن.

* اما توجه کنید که نانس‌ها در مقابل حملات تکراری مقاومت ندارن، به این معنی که اگه یکبار استفاده شن، بعد دیگه برای استفاده دیگه‌ای معتبر نیستن.

* هرگز فقط از نانس‌ها برای احراز هویت یا کنترل دسترسی استفاده نکنید. برای این کار، از توابع دیگه‌ای مثل `current_user_can()` استفاده کنید.

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


مثال استفاده:

1. فرض کنید یه صفحه‌ای برای حذف یه پست خاص در وردپرس داریم (مثل `http://example.com/wp-admin/post.php?post=123&action=trash`).

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

3. اضافه کردن نانس به URL (مثل `http://example.com/wp-admin/post.php?post=123&action=trash&_wpnonce=b192fc4204`) از انجام عملیات غیرمجاز جلوگیری میکنه.

4. اگه کسی سعی کنه پست ۱۲۳ رو بدون نانس صحیح حذف کنه، پیام "403 ممنوع" رو دریافت می‌کنه.

خلاصه اینه که نانس‌ها به امنیت سایتتون کمک می‌کنن.

من خودم به شخصه از این سیستم در jet form builder برای قسمتی که کاربر ما نیازه که فرمی رو برای ورود اطلاعات کامل کنه ، استفاده کردم . امیدوارم برای شما هم مفید باشه.

مرسی از اینکه این نوشته رو خوندید ❤️

وبسایت من : Team Lifo


احراز هویتوردپرسامنیتطراحی سایتنانس nonce وردپرس
| python developer | WordPress expert | computer engineering student | founder of TeamLifo | interested in virtual arts | Z generation https://teamlifo.ir
شاید از این پست‌ها خوشتان بیاید