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

آسیب پذیری احراز هویت شکسته چیست؟
آسیب پذیری احراز هویت شکسته (Broken Authentication) یکی از رایج ترین و خطرناک ترین آسیب پذیری های امنیتی وب است. این آسیب پذیری زمانی رخ می دهد که یک سیستم احراز هویت به درستی پیاده سازی نشده باشد و به مهاجمان اجازه دهد تا با دور زدن مکانیزم های امنیتی ، به حساب های کاربری دیگر دسترسی پیدا کنند. این نوع آسیب پذیری می تواند به روش های مختلفی رخ دهد ، از جمله استفاده از رمزهای عبور ضعیف، عدم اعتبارسنجی صحیح ورودی ها، و استفاده از روش های احراز هویت ناامن.
درباره قالب Jobmonster، آسیب پذیری احراز هویت شکسته به دلیل یک نقص در نحوه مدیریت جلسات کاربری (session) رخ می دهد. مهاجمان می توانند با دستکاری پارامترهای موجود در درخواست های AJAX، اطلاعات مربوط به جلسات کاربری دیگر را به دست آورده و به حساب آن ها وارد شوند. این امر به آن ها اجازه می دهد تا بدون نیاز به دانستن رمز عبور کاربر، به تمامی امکانات و اطلاعات حساب کاربری دسترسی پیدا کنند.
- آسیب پذیری احراز هویت شکسته یکی از خطرناک ترین آسیب پذیری های امنیتی وب است.
- این آسیب پذیری می تواند به مهاجمان اجازه دهد تا به حساب های کاربری دیگر دسترسی پیدا کنند.
- برای جلوگیری از این آسیب پذیری، از رمزهای عبور قوی استفاده کنین و ورودی های کاربران را به دقت اعتبارسنجی کنید.
جزئیات فنی آسیب پذیری در قالب Jobmonster
آسیب پذیری احراز هویت شکسته در قالب Jobmonster در نسخه ۴.۷.۹ و نسخه های قبل از آن وجود دارد. این آسیب پذیری در تابع `check_login` در فایل `integrations/wc-fields-factory.php` قرار دارد. این تابع برای احراز هویت کاربران با شبکه های اجتماعی مانند فیسبوک و گوگل استفاده می شود. با این حال ، یک نقص در منطق این تابع به مهاجمان اجازه می دهد تا با ارسال یک درخواست POST به `admin-ajax.php` و دستکاری پارامتر `id` ، اطلاعات مربوط به جلسات کاربری دیگر را به دست آورند.
به طور خاص، مهاجم می تواند با ارسال یک ایمیل قربانی در پارامتر `id`، اطلاعات کاربری مربوط به آن ایمیل را دریافت کند. سپس، با استفاده از این اطلاعات، می تواند به حساب کاربری قربانی وارد شده و تمامی فعالیت های او را انجام دهد. این آسیب پذیری به دلیل عدم اعتبارسنجی صحیح ورودی ها و عدم بررسی سطح دسترسی کاربران رخ می دهد.
- آسیب پذیری در تابع `check_login` در فایل `integrations/wc-fields-factory.php` قرار دارد.
- مهاجم می تواند با دستکاری پارامتر `id`، اطلاعات مربوط به جلسات کاربری دیگر را به دست آورد.
- این آسیب پذیری به دلیل عدم اعتبارسنجی صحیح ورودی ها و عدم بررسی سطح دسترسی کاربران رخ می دهد.
نحوه رفع آسیب پذیری
تیم توسعه دهنده قالب Jobmonster با انتشار نسخه ۴.۸.۰ این قالب ، آسیب پذیری احراز هویت شکسته را حل کرده است. بنابراین ، اولین و مهم ترین قدم برای رفع این آسیب پذیری ، به روزرسانی قالب به آخرین نسخه است. برای این کار، می توانید با پیشخوان وردپرس به بخش ‘پوسته ها’ رفته و قالب Jobmonster را به روزرسانی کنید. همچنین، می توانید آخرین نسخه قالب را از وب سایت رسمی آن دانلود و به شکل دستی نصب کنید.
علاوه بر به روزرسانی قالب، توصیه می شود که اقدامات امنیتی دیگری نیز برای محافظت از وب سایت خود انجام دهید. از جمله این اقدامات می توان به استفاده از رمزهای عبور قوی، فعال سازی احراز هویت دو مرحله ای، و نصب افزونه های امنیتی اشاره کرد. همچنین ، مراقب ایمیل ها و پیام های مشکوک باشید و از کلیک کردن بر روی لینک های ناشناس خودداری کنید.
- قالب Jobmonster را به آخرین نسخه (۴.۸.۰ یا بالاتر) به روزرسانی کنید.
- از رمزهای عبور قوی و منحصر به فرد استفاده کنین.
- احراز هویت دو مرحله ای را فعال کنید.
- افزونه های امنیتی را نصب کنید.
توصیه های امنیتی تکمیلی
علاوه بر موارد ذکر شده ، رعایت نکات امنیتی زیر نیز می تواند به شما در محافظت از وب سایت وردپرسی خود کمک کند:
- همیشه از آخرین نسخه وردپرس و افزونه های خود استفاده کنین.
- از یک فایروال وب سایت (WAF) برای محافظت از وب سایت خود در برابر حملات استفاده کنین.
- به طور منظم از وب سایت خود پشتیبان گیری کنید.
- لاگ های وب سایت خود را به طور منظم بررسی کنید.
- از یک اسکنر امنیتی برای شناسایی آسیب پذیری های احتمالی در وب سایت خود استفاده کنین.
با رعایت این نکات ساده ، می توانید امنیت وب سایت خود را به طور قابل توجهی افزایش دهید و از حملات سایبری جلوگیری کنید. به یاد داشته باشید که امنیت یک فرآیند مداوم است و نیاز به توجه و مراقبت دائمی دارد.
برای اطلاعات بیشتر درباره امنیت وردپرس، می توانید به وب سایت WordPress.org مراجعه کنید. همچنین، می توانید از افزونه های امنیتی مانند Wordfence برای محافظت از وب سایت خود استفاده کنین.
این مقاله در مورد آسیب پذیری احراز هویت شکسته غیرمجاز در قالب Jobmonster است. اگر از این قالب استفاده می کنید، لطفاً آن را به نسخه ۴.۸.۰ یا بالاتر به روزرسانی کنید.
✌️ کاربران ما در برابر این آسیب پذیری محافظت می شوند. آیا کاربران شما هم محافظت می شوند؟
آسیب پذیری ها را در افزونه های خود شناسایی کنید و توصیه هایی برای رفع آن ها دریافت کنید.
از کاربران خود محافظت کنید ، سلامت سرور را بهبود بخشید و درآمد بیشتری کسب کنید.
درباره قالب 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; }از آنجا که حالت پیش فرض به سادگی اجازه می دهد تا اجرا ادامه یابد (بدون خطا یا بازگشت زودهنگام) ، یک مهاجم می تواند:
- هر $_POST[‘using’] را ارسال کند (از جمله یک مقدار تصادفی یا پشتیبانی نشده) تا سوئیچ به حالت پیش فرض برسد.
- $_POST[‘id’] حاوی ایمیل قربانی را ارائه دهد.
وصله
صاحبان سایت باید قالب Jobmonster را بلافاصله به نسخه ۴.۸.۰ یا بالاتر به روزرسانی کنند. فروشنده در ۴.۸.۰ رفع ارائه شده، منطق احراز هویت شکسته را برطرف می کند و از دور زدن غیرمجاز جلوگیری می کند:
file: framework/add-ons/social-login/class-social-login.php

- این قالب دیگر ایمیل کاربر را از $_POST[‘id’] نمی پذیرد. $user_email اکنون فقط از پاسخ های ارائه دهنده اجتماعی معتبر تنظیم شده است (مسیر کد داخل switch($_POST[‘using’]))، بنابراین یک مهاجم نمی تواند مستقیماً یک ایمیل دلخواه را با POST ارائه دهد.
- سقوط ناامن که اجازه می داد $_POST[‘id’] دلخواه به عنوان $user_email استفاده شود، حذف شد.
در مجموع، این تغییرات آسیب پذیری احراز هویت شکسته گزارش شده را می بندد.
آیا می خواهید درباره یافتن و رفع آسیب پذیری ها بیشتر بدانید؟
برای تسلط بر هنر یافتن و وصله آسیب پذیری ها در اکوسیستم وردپرس ، آکادمی ما را کاوش کنید. به راهنماهای دقیق در مورد انواع مختلف آسیب پذیری، از تاکتیک های کشف برای محققان تا رفع های قوی برای توسعه دهندگان، عمیقاً بپردازید. به ما بپیوندید و به پایگاه دانش رو به رشد ما کمک کنید.
Timeline
🤝 You can help us make the Internet a safer place
Streamline your disclosure process to fix vulnerabilities faster and comply with CRA.
Protect your users too! Improve server health and earn added revenue with proactive security.
Report vulnerabilities to our gamified bug bounty program to earn monthly cash rewards.
