شما اینجایید
خانه > برنامه نویسی > ریست پسورد سیستم پرستا شاپ

ریست پسورد سیستم پرستا شاپ

ریست پسورد سیستم پرستا شاپ

با سلام به دوستان عزیز

امروز در طی کار به یک مشکل برخوردم که باعث شد این مطلب را برای اطلاع رسانی منتشر کنم. یکی از دوستان عزیز که در وب سایت خودشان از سیستم فروشگاه اینترنتی پرستا شاپ (Presta Shop) استفاده کرده اند با مشکل فراموش کردن رمز قسمت مدیریت این سیستم روبرو شده بودند و امکان بازیابی آن بدلیل مشکلات فنی از طریق خود سیستم امکان پذیر نبود.

در چنین مواقعی تنها راه حل تغییر رمز عبور از طریق phpmyadmin کنترل پنل هاست می باشد. بنابراین وارد کنترل پنل هاست شدم و phpmyadmin را باز کردم اولین نکته در این مرحله این است که بدانید کدام پایگاه داده مربوط به سیستم پرستا است. وقتی پایگاه داده پرستا رو پیدا کنید و آن را باز کنید با ۱۴۶ جدول (شاید در نسخه های مختلف کمی این تعداد فرق کند) روبرو می شوید.

در درون پایگاه داده به دنبال جدول ps_employee بگردید و آن را باز کنید.

جدول کارمند
جدول کارمند

در این قسمت کافی است کاربری که مایل هستید رمز آن را عوض کنید را پیدا کنید و یک دستور SQL ویرایش را برای آن آماده کنید.

در سیستم هایی مثل پرستا، وردپرس و … از مکانیزمی بنام هش (Hash) برای رمز نگاری رمزهای عبور استفاده می شود که عمل هش خود دارای چندین استاندارد مشخص می باشد که یکی از معروفترین آنها که در پرستا نیز مورد استفاده قرار می گیرد سیستم رمزنگاری MD5 می باشد. اما در سیستم پرستا برای امنیت بیشتر یک الگوی خاص تصادفی به MD5 اضافه می شود که اگر از آن هنگام رمز نگاری استفاده نشود رمز ایجاد شده کاربردی نخواهد داشت.

یعنی اگر شما رمز عبور یک کارمند را به تنهایی با استاندارد MD5 هش کنید آن رمز درست نخواهد بود و کاربر نمی تواند با آن وارد سیستم شود. باید حتماً الگوی رمزنگاری اختصاصی سیستم نیز به md5 اضافه شود. این الگو با نام COOKIE_KEY در یک فایل با نام  settings.inc.php در پوشه config مسیر نصب پرستا قرار دارد که آن را از این مسیر می توانید بدست بیاورید. به طور مثال مسیری مثل زیر:

/public_html/shop/config/settings.inc.php

این الگو یک رشته بلند نامفهوم است مثلا بصورت زیر


define(‘
_COOKIE_KEY_’, ‘rppiseMqWyZFThPg1drh65jvxhgfj6qOvTIdMigdwgkeDW5cEmwv7d56
‘);

حالا باید این الگو را با رمز جدیدی که می خواهید برای کاربر قرار دهید، ترکیب کرده و رشته حاصل را با استفاده از استاندارد هش md5 رمزنگاری کرده و در جدول کارمند در فیلد passwd دخیره کنید. برای این کار باید یک کوئری بصورت زیر آماده و آن را اجرا کنید.

مثلا من می خواهم رمز عبور کاربری که شناسه آن ۱ است را به عبارت ۹۸۷۶۵۴ تغییر دهم باید از الگوی زیر استفاده کنم:

md5(“_COOKIE_KEY_+new password“);

در ادامه کوئری اصلی من بصورت زیر خواهد شد:

UPDATE ps_employee SET passwd = MD5(“rppiseMqWyZFThPg1drh65jvxhgfj6qOvTIdMigdwgkeDW5cEmwv7d56987654“) WHERE ps_employee.id_employee = 1;

دستور بالا رمز عبور کاربری که شناسه آن ۱ است را به عبارت ۹۸۷۶۵۴ تغییر می دهد. قسمت قرمز رنگ کد Cookie_Key می باشد و قسمت آبی رمز جدید.

باید کارهای زیر مرحله به مرحله انجام شوند:

  1. باز کردن جدول در phpmyadmin
  2. انتخاب گزینه sql یا گزینه query (متفاوت در بعضی سیستم ها)
  3. آماده کردن کوئری مورد نظر به صورت توضیح داده شده
  4. اجرای کوئری
  5. شما یک رمزعبور جدید دارید.

موفق باشید.

نوتیف
امیدوارم مطالب نوتیف برایتان مفید واقع شده باشد. با عضویت در خبرنامه نوتیف مطالب تازه ما را در اینباکس خود داشته باشید. کانال ما در تلگرام هم راه سریع و مطمئنی برای آگاهی از مطالب ماست. *** من رضا حیدری مدیر وب سایت نوتیف هستم. همکنون مشغول به تحصیل در رشته کارشناسی ارشد نرم افزار بوده و به دنیای فناوری علاقه مندم به همین دلیل در نوتیف به دنبال نشر و ترویج موضوعات روز دنیای فناوری بخصوص موضوعات مرتبط با دنیای موبایل، اینترنت، کامپیوتر هستم. در کنار اینها گاهی هم گریزی به دیگر موضوعات مهم خواهیم زد که خالی از لطف نخواهد بود. با نوتیف همراه باشید بودن با شما افتخار بزرگی برای ماست.

پاسخ دهید

نوزده + 1 =

Top