خانه » CVE-2025-12415

CVE-2025-12415

MapMap - Cross-Site Request Forgery To Settings Update And Stored Cross-Site Scripting

توسط Vulnerbyte Alerts
301 بازدید
هشدار سایبری CVE-2025-12415

چکیده

آسیب‌پذیری جعل درخواست میان سایتی (CSRF) در پلاگین MapMap برای وردپرس تا نسخه‌ 1.1 شناسایی شده است که به دلیل عدم اعتبار سنجی صحیح nonce (توکن امنیتی) در توابع admin_shortcode_submit، admin_configuration_submit و admin_shortcode_delete رخ می‌دهد. این ضعف امنیتی به مهاجمان بدون نیاز به احراز هویت اجازه می‌دهد تنظیمات پلاگین را به‌روزرسانی کرده و مشروط بر فریب مدیر سایت برای کلیک روی لینک مخرب، اسکریپت‌های وب مخرب را به صورت XSS ذخیره شده تزریق نمایند.

توضیحات

آسیب‌پذیری CVE-2025-12415 در پلاگین MapMap وردپرس، ناشی عدم اعتبار سنجی صحیح nonce (توکن یک‌بارمصرف برای جلوگیری از CSRF) در توابع کلیدی admin_shortcode_submit (برای ارسال شورت‌کدهای مدیریتی)، admin_configuration_submit (برای به‌روزرسانی پیکربندی) و admin_shortcode_delete (برای حذف شورت‌کدها) است. این آسیب پذیری از نوع جعل درخواست میان سایتی (CSRF) است و مطابق با CWE-352 طبقه بندی می شود. مهاجم بدون نیاز به احراز هویت می‌تواند درخواست‌های POST شخصی سازی شده ایجاد کرده و تنظیمات پلاگین را تغییر دهد یا اسکریپت‌های مخرب را در شورت‌کدها ذخیره کند.

بهره‌برداری از این ضعف به‌سادگی قابل خودکارسازی است؛ مهاجم می‌تواند با اسکریپت‌ها یا ابزارهای خودکار، از راه دور و با فریب مدیر سایت، یک صفحه وب مخرب (مانند ایمیل حاوی لینک آلوده یا سایت فیشینگ) ایجاد کند. هنگامی که مدیر سایت (با دسترسی ادمین) روی لینک کلیک کند یا صفحه را باز کند، درخواست CSRF به‌طور خودکار ارسال شده و منجر به به روزرسانی تنظیمات یا تزریق کدهای XSS ذخیره شده می‌گردد.

پیامدهای آسیب‌پذیری شامل تأثیر محدود بر محرمانگی با افشای کوکی‌ها یا نشست های مدیریتی از طریق XSS و یکپارچگی با تغییر تنظیمات پلاگین (مانند نقشه‌ها یا شورت‌کدها) است. کد منبع پلاگین در Trac وردپرس (هرچند به دلیل حذف احتمالی در حال حاضر در دسترس نیست) نشان‌دهنده نقاط آسیب‌پذیر است. در حال حاضر برای این آسیب پذیری پچ یا به روزرسانی رسمی منتشر نشده است.

CVSS

Score Severity Version Vector String
6.1 MEDIUM 3.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

لیست محصولات آسیب پذیر

Versions Product
affected through 1.1 MapMap

استفاده محصول در ایران

در این جدول، تعداد صفحات ایندکس‌شده در گوگل با دامنه .ir که WordPress Plugin را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.

Approx. Usage in .ir Domain via Google

(Total Pages)

Search Query (Dork) Product
48,300 site:.ir “WordPress Plugin” WordPress Plugin

نتیجه گیری

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

  • حذف پلاگین: از داشبورد وردپرس، پلاگین MapMap را غیرفعال و سپس حذف کنید. پس از آن، پایگاه داده را برای شناسایی و پاک‌سازی شورت‌کدهای باقی‌مانده (مانند [mapmap]) اسکن نمایید تا هرگونه کد تزریق‌شده حذف شود.
  • فعال‌سازی Nonceها (Nonce Validation): در پلاگین ها یا قالب های سفارشی، همواره از تابع wp_nonce_field برای تولید توکن‌های امنیتی در فرم‌های مدیریتی و از wp_verify_nonce برای اعتبارسنجی آن‌ها استفاده کنید تا حملات جعل درخواست میان‌سایتی (CSRF) مسدود شوند.
  • تقویت امنیت وردپرس: از پلاگین‌های امنیتی مانند Wordfence یا Sucuri برای اسکن خودکار CSRF و XSS استفاده کنید؛ همچنین، سیاست امنیتی محتوا (CSP) برای محدود کردن اجرای اسکریپت‌های خارجی را در .htaccess یا php فعال سازید.
  • نظارت و لاگ: لاگ‌های وردپرس در wp-content/debug.log را برای درخواست‌های مشکوک به php?page=mapmap-admin بررسی کنید و از ابزارهایی مانند Fail2Ban برای مسدود کردن IPهای مشکوک استفاده نمایید.
  • ایزوله‌سازی و احراز هویت چندمرحله‌ای (Access Isolation & 2FA): دسترسی بخش مدیریت (Admin Access) را تنها به IPهای معتبر محدود کرده و برای حساب‌های مدیریتی، احراز هویت دومرحله‌ای را فعال نمایید تا احتمال نفوذ کاهش یابد.
  • تست امنیتی: وب‌سایت را به‌صورت دوره‌ای با ابزارهای تست نفوذ مانند OWASP ZAP یا Burp Suite از نظر وجود آسیب‌پذیری‌های CSRF و XSS اسکن کنید. همچنین، با آموزش مدیران و کاربران درباره‌ی مهندسی اجتماعی (Social Engineering)، آن‌ها را نسبت به ریسک کلیک روی لینک‌های مشکوک آگاه سازید.

اجرای این اقدامات، به ویژه حذف پلاگین و اعتبار سنجی صحیح nonceها، ریسک بهره‌برداری از این ضعف را به طور چشمگیری کاهش داده و امنیت سایت‌های وردپرس را در برابر حملات CSRF/XSS افزایش می‌دهد.

TA0001امکان استفاده در تاکتیک های Mitre Attack

Initial Access ()
مهاجم با استفاده از یک درخواست جعل‌شده (CSRF) می‌تواند مدیر سایت را فریب دهد تا با کلیک یا باز کردن صفحه مخرب، عملیات تنظیماتی را روی پلاگین MapMap اجرا کند و بدین‌صورت بدون نیاز به احراز هویت به سطح اثرگذاری روی تنظیمات پلاگین دست یابد.

Execution (TA0002)
اجرای کد در این وضعیت به صورت اجرای اسکریپت در مرورگر قربانی (Stored XSS) تایید شده است؛ یعنی مهاجم قادر است کد جاوااسکریپتِ مخرب را به‌شکل ذخیره‌شده در شورت‌کدها یا تنظیمات قرار دهد و هنگام بارگذاری پنل مدیریتی، آن کد در کانتکستِ جلسه مدیر اجرا شود.

Credential Access (TA0006)
از طریق XSS ذخیره‌شده احتمال سرقت کوکی‌های جلسه، توکن‌های احراز هویت یا اطلاعات فرم مدیریتی وجود دارد؛ در عمل مهاجم می‌تواند با تزریق اسکریپت، داده‌های حساس نشست را به دامنه کنترل‌شده خود ارسال کند و بدین‌وسیله به دسترسی معادل مدیریتی یا hijack جلسه برسد.

Privilege Escalation (TA0004)
اگرچه آسیب‌پذیری ذاتاً به‌خودی‌خود ارتقای سطح دسترسی سیستم‌عاملی ایجاد نمی‌کند، اما با سرقت نشست مدیریتی یا تغییر تنظیمات می‌توان به‌طور عملی دسترسی بالاتری در وب‌سایت کسب کرد (مثلاً ایجاد شورت‌کدهای مخرب یا قراردادن درگاه‌های پنهان) که عملاً معادل escalation در سطح برنامه‌ای است.

Collection (TA0009)
با بهره‌برداری از XSS ذخیره‌شده، مهاجم قادر است اطلاعات هدفمند (مثل فیلدهای فرم، خروجی‌های صفحه مدیریت و داده‌های کاربران) را جمع‌آوری و به‌صورت خودکار به سرور کنترل‌شده خود ارسال کند؛ این جمع‌آوری می‌تواند به‌صورت مستمر و پس از هر بار بازدید پنل مدیریت اتفاق بیفتد.

Exfiltration (TA0010)
مهاجم می‌تواند داده‌های جمع‌آوری‌شده را از طریق درخواست‌های شبکه (XHR/Fetch) یا بارگذاری تصاویر/فرم‌ها به دامنه خارجی منتقل کند؛ بنابراین افشای کوکی‌ها یا انتفال پیکربندی‌های داخلی سایت از انتظارهای واقعی در حملات موفق است.

Defense Evasion (TA0005)
تغییر تنظیمات پلاگین یا قرار دادن شورت‌کدهای مخرب می‌تواند برای پنهان‌سازی حضور مهاجم یا جلوگیری از شناسایی توسط اسکنرها مورد استفاده قرار گیرد.

Lateral Movement (TA0008)
اگر مهاجم بتواند نشست مدیریتی را سرقت کند یا کد ماندگار در پنل قرار دهد، امکان استفاده از همان حساب برای نفوذ به سایت‌های متصل، سرویس‌های داخلی یا اجرای تغییرات افزایشی روی سایر پلاگین‌ها/تم‌ها وجود دارد؛ به عبارت دیگر، این ضعف می‌تواند زنجیره‌ای برای حرکت افقی داخل محیط وردپرس فراهم کند.

Impact
این آسیب‌پذیری منجر به افشای نشست‌ها/کوکی‌ها، تغییر یکپارچگی تنظیمات پلاگین (مثلاً درج شورت‌کدهای مخرب) و اجرای اسکریپت در کانتکست مرورگر مدیر می‌شود که می‌تواند به سرقت اطلاعات مدیریتی، ایجاد درِ پشتی وب و گسترش نفوذ در اکوسیستم سایت منجر گردد.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2025-12415
  2. https://www.cvedetails.com/cve/CVE-2025-12415/
  3. https://www.wordfence.com/threat-intel/vulnerabilities/id/7c0ed22d-6102-47d6-9afb-fed8515ea74c?source=cve
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-12415
  5. https://vuldb.com/?id.330975
  6. https://plugins.trac.wordpress.org/browser/mapmap/tags/1.1/mapmap.php#L418
  7. https://plugins.trac.wordpress.org/browser/mapmap/tags/1.1/mapmap.php#L397
  8. https://plugins.trac.wordpress.org/browser/mapmap/tags/1.1/mapmap.php#L447
  9. https://nvd.nist.gov/vuln/detail/CVE-2025-12415
  10. https://cwe.mitre.org/data/definitions/352.html

همچنین ممکن است دوست داشته باشید

پیام بگذارید