مقدمه

قالب Jobmonster یکی از قالب های محبوب وردپرس برای ایجاد وب سایت های کاریابی و استخدام است. متاسفانه، یک آسیب پذیری امنیتی جدی در این قالب شناسایی شده است که به مهاجمان اجازه می دهد بدون نیاز به نام کاربری و رمز عبور معتبر ، به حساب های کاربری دیگر دسترسی پیدا کنند. این آسیب پذیری به عنوان ‘آسیب پذیری احراز هویت شکسته غیرمجاز’ شناخته می شود و می تواند عواقب جبران ناپذیری برای وب سایت های آسیب پذیر داشته باشه.

این آسیب پذیری به مهاجمان اجازه می دهد تا با دستکاری درخواست های AJAX، اطلاعات کاربری کاربران دیگر را به دست آورده و به حساب آن ها وارد شوند. این امر می تواند منجر به سرقت اطلاعات حساس ، تغییر تنظیمات وب سایت، و حتی تخریب کامل آن شود. به همین دلیل، لازمه که کاربران قالب Jobmonster هرچه زودتر نسبت به رفع این آسیب پذیری اقدام کنند.

آسیب پذیری احراز هویت شکسته چیست؟

آسیب پذیری احراز هویت شکسته (Broken Authentication) یکی از رایج ترین و خطرناک ترین آسیب پذیری های امنیتی وب است. این آسیب پذیری زمانی رخ می دهد که یک سیستم احراز هویت به درستی پیاده سازی نشده باشد و به مهاجمان اجازه دهد تا با دور زدن مکانیزم های امنیتی ، به حساب های کاربری دیگر دسترسی پیدا کنند. این نوع آسیب پذیری می تواند به روش های مختلفی رخ دهد ، از جمله استفاده از رمزهای عبور ضعیف، عدم اعتبارسنجی صحیح ورودی ها، و استفاده از روش های احراز هویت ناامن.

درباره قالب Jobmonster، آسیب پذیری احراز هویت شکسته به دلیل یک نقص در نحوه مدیریت جلسات کاربری (session) رخ می دهد. مهاجمان می توانند با دستکاری پارامترهای موجود در درخواست های AJAX، اطلاعات مربوط به جلسات کاربری دیگر را به دست آورده و به حساب آن ها وارد شوند. این امر به آن ها اجازه می دهد تا بدون نیاز به دانستن رمز عبور کاربر، به تمامی امکانات و اطلاعات حساب کاربری دسترسی پیدا کنند.

جزئیات فنی آسیب پذیری در قالب Jobmonster

آسیب پذیری احراز هویت شکسته در قالب Jobmonster در نسخه ۴.۷.۹ و نسخه های قبل از آن وجود دارد. این آسیب پذیری در تابع `check_login` در فایل `integrations/wc-fields-factory.php` قرار دارد. این تابع برای احراز هویت کاربران با شبکه های اجتماعی مانند فیسبوک و گوگل استفاده می شود. با این حال ، یک نقص در منطق این تابع به مهاجمان اجازه می دهد تا با ارسال یک درخواست POST به `admin-ajax.php` و دستکاری پارامتر `id` ، اطلاعات مربوط به جلسات کاربری دیگر را به دست آورند.

به طور خاص، مهاجم می تواند با ارسال یک ایمیل قربانی در پارامتر `id`، اطلاعات کاربری مربوط به آن ایمیل را دریافت کند. سپس، با استفاده از این اطلاعات، می تواند به حساب کاربری قربانی وارد شده و تمامی فعالیت های او را انجام دهد. این آسیب پذیری به دلیل عدم اعتبارسنجی صحیح ورودی ها و عدم بررسی سطح دسترسی کاربران رخ می دهد.

نحوه رفع آسیب پذیری

تیم توسعه دهنده قالب Jobmonster با انتشار نسخه ۴.۸.۰ این قالب ، آسیب پذیری احراز هویت شکسته را حل کرده است. بنابراین ، اولین و مهم ترین قدم برای رفع این آسیب پذیری ، به روزرسانی قالب به آخرین نسخه است. برای این کار، می توانید با پیشخوان وردپرس به بخش ‘پوسته ها’ رفته و قالب Jobmonster را به روزرسانی کنید. همچنین، می توانید آخرین نسخه قالب را از وب سایت رسمی آن دانلود و به شکل دستی نصب کنید.

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

توصیه های امنیتی تکمیلی

علاوه بر موارد ذکر شده ، رعایت نکات امنیتی زیر نیز می تواند به شما در محافظت از وب سایت وردپرسی خود کمک کند:

  1. همیشه از آخرین نسخه وردپرس و افزونه های خود استفاده کنین.
  2. از یک فایروال وب سایت (WAF) برای محافظت از وب سایت خود در برابر حملات استفاده کنین.
  3. به طور منظم از وب سایت خود پشتیبان گیری کنید.
  4. لاگ های وب سایت خود را به طور منظم بررسی کنید.
  5. از یک اسکنر امنیتی برای شناسایی آسیب پذیری های احتمالی در وب سایت خود استفاده کنین.

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

برای اطلاعات بیشتر درباره امنیت وردپرس، می توانید به وب سایت WordPress.org مراجعه کنید. همچنین، می توانید از افزونه های امنیتی مانند Wordfence برای محافظت از وب سایت خود استفاده کنین.

این مقاله در مورد آسیب پذیری احراز هویت شکسته غیرمجاز در قالب Jobmonster است. اگر از این قالب استفاده می کنید، لطفاً آن را به نسخه ۴.۸.۰ یا بالاتر به روزرسانی کنید.

✌️ کاربران ما در برابر این آسیب پذیری محافظت می شوند. آیا کاربران شما هم محافظت می شوند؟

توسعه دهندگان وب

آسیب پذیری ها را در زمان واقعی و بدون تغییر کد کاهش دهید.

مشاهده قیمت

توسعه دهندگان افزونه

آسیب پذیری ها را در افزونه های خود شناسایی کنید و توصیه هایی برای رفع آن ها دریافت کنید.

درخواست ممیزی

شرکت های میزبانی

از کاربران خود محافظت کنید ، سلامت سرور را بهبود بخشید و درآمد بیشتری کسب کنید.

Patchstack برای میزبان ها

درباره قالب Jobmonster

قالب Jobmonster، با بیش از ۵۰۰۰ فروش ، یک قالب وردپرس ممتاز است که برای ساخت تابلوهای شغلی ، استخدام و وب سایت های پورتال رزومه طراحی شده است. هدف آن یک راه حل همه کاره برای ارتباط کارفرمایان و نامزدها ، با ارسال فرانت اند، مدیریت پروفایل ، کسب درآمد و قابلیت های جستجو/فیلتر است.

آسیب پذیری امنیتی

یک آسیب پذیری احراز هویت شکسته در قالب Jobmonster شناسایی شده است. یک مهاجم غیرمجاز می تواند از این مشکل برای دور زدن کنترل های احراز هویت، به دست آوردن دسترسی بالاتر به عملکرد یا حساب های محافظت شده بدون نیاز به اعتبارنامه های معتبر استفاده کند. این مشکل به CVE-2025-54738 اختصاص داده شده است.

این قالب یک اقدام AJAX را نشان می دهد که داده های جلسه را برای یک شناسه کاربری دلخواه ارائه شده توسط مهاجم برمی گرداند. این کنترل کننده بررسی های قابلیت تأیید nonce را اعمال نمی کند یا نیازی ندارد که درخواست کننده احراز هویت شود. در نتیجه، یک POST غیرمجاز به admin-ajax.php می تواند اطلاعات جلسه مربوط به ایمیل مدیر ارائه شده را برگرداند و امکان جعل هویت حساب را فراهم کند:

ریشه مشکل در تابع check_login است:

public function check_login() { 	   [...]             // simplified vulnerable logic              switch ( $_POST['using'] ) {                   case 'fb':                     // set $user_email from Facebook response                     break;                   case 'google':                    // set $user_email from Google response                     break;                  // ... other providers ...                  default:              // do nothing (no provider data)              break;              }  [...] 		$user_email = !empty($user_email) ? $user_email : (!empty($_POST['id']) ? esc_attr($_POST['id']) : ''); 		if( empty( $user_email ) ) : 			$response['status']  = 'not_user'; 			$response['message'] = esc_html__('User not being registered.', 'noo'); 			wp_send_json( $response ); 		endif; 		$user = get_user_by( 'email', $user_email ); 		if( $user ) : 			$user_id             = $user->ID; 			wp_set_auth_cookie( $user_id, true ); 			 			$response['status']  = 'success'; 			$response['message'] = esc_html__('Login successfully.', 'noo'); 			wp_send_json( $response ); 		else : 			$response['status']  = 'not_user'; 			$response['message'] = esc_html__('User not being registered.', 'noo'); 			wp_send_json( $response ); 		endif; 	}

از آنجا که حالت پیش فرض به سادگی اجازه می دهد تا اجرا ادامه یابد (بدون خطا یا بازگشت زودهنگام) ، یک مهاجم می تواند:

وصله

صاحبان سایت باید قالب Jobmonster را بلافاصله به نسخه ۴.۸.۰ یا بالاتر به روزرسانی کنند. فروشنده در ۴.۸.۰ رفع ارائه شده، منطق احراز هویت شکسته را برطرف می کند و از دور زدن غیرمجاز جلوگیری می کند:

file: framework/add-ons/social-login/class-social-login.php

در مجموع، این تغییرات آسیب پذیری احراز هویت شکسته گزارش شده را می بندد.

آیا می خواهید درباره یافتن و رفع آسیب پذیری ها بیشتر بدانید؟

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

Timeline

۲۵ May, ۲۰۲۵We processed the vulnerability and notified the vendor.

۰۸ August, ۲۰۲۵Jobmonster theme version ۴.۸.۰ has been released to patch the reported issue.

۲۱ August, ۲۰۲۵We published the vulnerability entry to the Pachstack database.

۱۸ September, ۲۰۲۵Security advisory article published.

🤝 You can help us make the Internet a safer place

Plugin developer?

Streamline your disclosure process to fix vulnerabilities faster and comply with CRA.

Get started for free

Hosting company?

Protect your users too! Improve server health and earn added revenue with proactive security.

Patchstack for hosts

Security researcher?

Report vulnerabilities to our gamified bug bounty program to earn monthly cash rewards.

Learn more