چکیده

آسیب‌ پذیری بحرانی CVE-2026-45750 از نوع تزریق دستور سیستم عامل (OS Command Injection) در فایل منیجر (File Manager) نرم‌افزار Termix است که نسخه‌ های پیش از 2.3.2 را تحت تأثیر قرار می‌دهد. این آسیب ‌پذیری در نحوه پردازش پارامتر path در مسیر GET /ssh/file_manager/ssh/resolvePath رخ می ‌دهد؛ به‌ گونه‌ ای که مقدار ورودی کاربر بدون خنثی ‌سازی مناسب، در یک دستور شل (Shell) قرار می ‌گیرد. در نتیجه، یک کاربر احراز هویت ‌شده می ‌تواند با ارسال ورودی دستکاری ‌شده، دستورات دلخواه را روی میزبان راه دور مرتبط با نشست SSH اجرا کند.

توضیحات

آسیب ‌پذیری CVE-2026-45750 از نوع تزریق دستور سیستم‌عامل مطابق با CWE-78 است و در کامپوننت فایل منیجر نرم‌افزار Termix وجود دارد. این ضعف امنیتی زمانی ایجاد می‌ شود که ورودی کنترل‌ شده توسط کاربر بدون خنثی ‌سازی مناسب کاراکترها و ساختارهای ویژه شل (Shell) در یک دستور سیستم‌ عامل قرار گیرد و در نتیجه، بخشی از این ورودی به‌ عنوان دستور تفسیر و اجرا شود. همچنین، یک ضعف جداگانه در کنترل دسترسی وجود دارد که در دسته CWE-639 با عنوان دور زدن مجوزدهی از طریق کلید تحت کنترل کاربر (Authorization Bypass Through User-Controlled Key) طبقه ‌بندی می ‌شود. این ضعف مستقیماً باعث ایجاد تزریق دستور نمی ‌شود، اما می‌ تواند دامنه اثرگذاری آن را افزایش دهد. در صورتی که مهاجم بتواند مقدار sessionId مربوط به نشست فعال کاربر دیگری را جایگزین کند، می ‌تواند از همان مسیر تزریق دستور برای اجرای دستورات دلخواه روی میزبان راه دور متصل به نشست SSH کاربر دیگر استفاده کند.

Termix یک پلتفرم تحت وب و خود میزبان (Self-hosted) برای مدیریت سرورها و اتصال‌ های راه دور است که قابلیت ‌هایی مانند ترمینال SSH، تانلینگ (Tunneling)، مدیریت فایل و ویرایش فایل را در اختیار کاربران قرار می‌ دهد. در معماری این نرم ‌افزار، فایل منیجر برای انجام عملیات مربوط به فایل ‌ها از نشست ‌های فعال SSH استفاده می‌ کند. به همین دلیل، ضعف موجود در پردازش ورودی فایل منیجر می‌تواند از سطح رابط مدیریتی Termix عبور کرده و در نهایت منجر به اجرای دستور روی میزبان راه دور متصل به نشست SSH شود.

مسیر فنی آسیب‌ پذیری در پارامتر path مربوط به درخواست GET /ssh/file_manager/ssh/resolvePath قرار دارد. این مسیر مقدار sessionId و path را از درخواست دریافت می‌ کند و مقدار مسیر را برای پردازش به نشست SSH فعال منتقل می‌ کند. مشکل زمانی ایجاد می ‌شود که مقدار path که توسط کاربر کنترل می ‌شود، پس از پردازش در یک دستور شل قرار گیرد. در نسخه ‌های آسیب ‌پذیر، برنامه برای ایمن‌ سازی این مقدار تنها کاراکتر نقل ‌قول دوتایی (“) را خنثی می ‌کند و سپس مقدار حاصل را در ساختاری مشابه echo “${escapedPath}” قرار می ‌دهد. این روش برای جلوگیری از تزریق دستور کافی نیست، زیرا قرار دادن ورودی داخل نقل ‌قول دوتایی (“) مانع از تفسیر همه ساختارهای ویژه شل نمی‌ شود.

به‌طور مشخص، ساختارهای جایگزینی دستور مانند $(…) همچنان توسط شل تفسیر می‌ شوند. بنابراین مهاجم می ‌تواند مقدار ویژه ‌ای را در پارامتر path قرار دهد تا پیش از آنکه دستور echo مقدار را پردازش کند، محتوای داخل $(…)توسط شل اجرا شود. در نتیجه، ورودی ‌ای که باید صرفاً به‌ عنوان مسیر فایل مورد استفاده قرار گیرد، می‌ تواند به بستری برای اجرای دستور تبدیل شود. برای مثال، در کد اثبات مفهوم (PoC) منتشرشده، مقدار x$(id) در پارامتر path قرار داده شده است. با پردازش این مقدار، دستور id روی میزبان راه دور اجرا می‌شود و خروجی آن شامل uid=0(root) gid=0(root) groups=0(root) در پاسخ بازگردانده می‌شود. این نمونه به‌ طور مستقیم نشان می‌دهد که مهاجم می‌تواند با دستکاری پارامتر path، از پردازش عادی مسیر عبور کرده و دستور دلخواه خود را در محیط شل میزبان از راه دور اجرا کند.

بنابراین، سوء استفاده از این آسیب‌ پذیری به یک حساب کاربری احراز هویت‌ شده با سطح دسترسی پایین و دسترسی به فایل منیجر نیاز دارد، اما مهاجم برای اجرای حمله نیازی به دسترسی مدیریتی ندارد. در ارزیابی CVSS، بردار AV:N نشان می‌ دهد که مهاجم می ‌تواند از طریق شبکه به مسیر آسیب ‌پذیر دسترسی پیدا کند و پس از احراز هویت، درخواست دستکاری ‌شده ‌ای را برای اجرای دستور در نشست SSH فعال ارسال کند. همچنین، مقدار UI:R بیانگر آن است که موفقیت حمله در این سناریو به تعامل کاربر نیاز دارد.

این ضعف امنیتی هر سه اصل اصلی امنیت اطلاعات را تهدید می‌ کند. از نظر محرمانگی (Confidentiality)، اجرای دستورات دلخواه می ‌تواند به مهاجم اجازه دهد به فایل‌ ها، اطلاعات و منابعی که حساب کاربری مورد استفاده در نشست SSH به آن‌ ها دسترسی دارد، دسترسی پیدا کند و داده‌ های حساس را افشا کند. از نظر یکپارچگی (Integrity)، مهاجم می ‌تواند با اجرای دستورات غیرمجاز، فایل‌ ها، داده‌ ها و تنظیمات سیستم را تغییر داده یا حذف کند. از نظر دسترس ‌پذیری (Availability) نیز امکان اجرای دستورات مخرب می‌ تواند برای متوقف کردن سرویس‌ ها، حذف منابع یا ایجاد اختلال در عملکرد میزبان راه دور مورد استفاده قرار گیرد. شدت واقعی این پیامدها به سطح دسترسی حساب SSH و مجوزهای آن روی میزبان راه دور بستگی دارد، اما در صورت استفاده از حسابی با مجوزهای بالا، دامنه خسارت می ‌تواند به‌ مراتب گسترده ‌تر شود. این آسیب ‌پذیری در نسخه 2.3.2 پچ شده است.

CVSS

Score Severity Version Vector String
9.0 CRITICAL 3.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
هشدار سایبری CVE-2026-45750
شکل 1: تفسیر جدول CVSS

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

Versions Product
affectedat < 2.3.2 Termix

لیست محصولات بروز شده

Versions Product
2.3.2 and later Termix

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

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

Approx. Usage in .ir Domain via Google (Total Pages) Search Query (Dork) Product
7 site:.ir “Termix-SSH” Termix-SSH

نتیجه گیری

این آسیب ‌پذیری با شدت بحرانی (Critical) در فایل منیجر نرم‌ افزار Termix، امکان تزریق دستور سیستم ‌عامل را برای کاربران احراز هویت ‌شده فراهم می‌کند و در صورت سوءاستفاده موفق می‌تواند منجر به اجرای دستورات دلخواه روی میزبان راه دور متصل به نشست SSH شود. با توجه به انتشار PoC و امکان گسترش پیامد حمله از طریق سوء استفاده از sessionId، اجرای اقدامات زیر برای کاهش ریسک این آسیب‌ پذیری ضروری است:

  • بروزرسانی Termix: نرم ‌افزار را به نسخه 3.2 یا نسخه‌ های جدیدتر بروزرسانی کنید. این اقدام مهم‌ ترین و مؤثرترین راهکار برای رفع آسیب ‌پذیری است، در حالی که سایر اقدامات به ‌عنوان لایه ‌های حفاظتی مکمل، ریسک سوءاستفاده از این ضعف و آسیب‌ پذیری ‌های مشابه را کاهش می ‌دهند.
  • محدودسازی دسترسی به فایل منیجر: دسترسی به قابلیت فایل منیجر را فقط برای کاربرانی فعال کنید که واقعاً به این قابلیت نیاز دارند تا سطح دسترسی ‌های غیرضروری کاهش یابد.
  • تقویت کنترل دسترسی نشست‌ های SSH: اعتبارسنجی مالکیت sessionId را برای هر درخواست اعمال کنید تا کاربران نتوانند با تغییر شناسه نشست به نشست SSH کاربران دیگر دسترسی پیدا کنند.
  • اعمال اصل حداقل سطح دسترسی (Least Privilege): حساب‌ های SSH را فقط با دسترسی‌ های مورد نیاز پیکربندی کنید تا در صورت اجرای دستور دلخواه، مهاجم نتواند فراتر از سطح دسترسی حساب به فایل‌ ها، سرویس ‌ها و سایر منابع سیستم دسترسی پیدا کند.
  • نظارت بر نشست‌ ها و اجرای دستورات: لاگ‌ های Termix، نشست ‌های SSH و فعالیت ‌های مرتبط با فایل منیجر را برای شناسایی درخواست‌ های غیرعادی، تغییرات مشکوک در sessionId و اجرای دستورات غیرمنتظره بررسی کنید.

اجرای این اقدامات، به ‌ویژه بروزرسانی فوری Termix به نسخه 2.3.2 یا جدیدتر، در کنار اعمال کنترل‌ های امنیتی مکمل می ‌تواند احتمال سوءاستفاده موفق از این آسیب ‌پذیری را به میزان قابل توجهی کاهش دهد.

امکان استفاده در تاکتیک‌های MITRE ATT&CK (در زمان اجرای حمله)

Initial Access (TA0001)

مهاجم از طریق ارسال درخواست‌ های دستکاری ‌شده به نقطه پایانی مدیریت فایل (/ssh/file_manager/ssh/resolvePath)، از آسیب‌ پذیری تزریق دستور برای نفوذ به سیستم میزبان استفاده می‌کند. این حمله علیه سرویس در معرض اینترنت (Public-Facing) انجام می ‌شود.

Privilege Escalation (TA0004)

اگرچه مهاجم از پیش در پلتفرم وب احراز هویت شده است، اما با تزریق دستور، دسترسی خود را از سطح کاربر برنامه وب به سطح دسترسی پردازه میزبان (که ممکن است دارای مجوزهای بالاتری مانند root یا Administrator باشد) ارتقا می‌دهد (Scope Changed).

Lateral Movement (TA0008)

این تاکتیک در سناریویی قابل اعمال است که Termix برای مدیریت چندین VPS یا سیستم راه دور استفاده شود. مهاجم پس از ربایش File Manager session یک کاربر دیگر، می‌تواند از اتصال SSH موجود در آن session برای تعامل با VPS مربوطه استفاده کند. بنابراین آسیب ‌پذیری می‌تواند مسیر حرکت مهاجم از حساب Termix به یک سیستم راه دور مدیریت ‌شده از طریق SSH را فراهم کند.

Execution (TA0002)

هسته اصلی آسیب ‌پذیری در این مرحله فعال می ‌شود. برنامه آسیب ‌پذیر دستورات تزریق ‌شده توسط مهاجم را در پوسته سیستم ‌عامل (OS Command Shell) بدون اعتبارسنجی کافی اجرا می‌کند.

Collection (TA0009)

پس از ربایش session، مهاجم می ‌تواند از قابلیت خواندن فایل در File Manager برای دسترسی به فایل‌ های موجود روی VPS استفاده کند. بنابراین در صورت وجود اطلاعات حساس، کلیدهای SSH، فایل‌ های پیکربندی، credential ها یا سایر داده ‌های ارزشمند، مهاجم می ‌تواند از دسترسی ایجاد شده برای جمع ‌آوری آن ‌ها استفاده کند. این قابلیت مستقیماً در سطح File Manager وجود دارد و در توضیح رسمی CVE نیز امکان file reading ذکر شده است.

Impact (TA0040)

پس از اجرای کد، مهاجم می ‌تواند به فایل‌ های حساس سیستم میزبان دسترسی پیدا کرده، آن ‌ها را تغییر دهد (تخریب یکپارچگی) یا با آپلود بدافزار، کنترل کامل و پایدار سرور میزبان را به دست گیرد.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2026-45750
  2. https://www.cvedetails.com/cve/CVE-2026-45750/
  3. https://github.com/Termix-SSH/Termix/security/advisories/GHSA-v26q-rpv5-9m72
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2026-45750
  5. https://vuldb.com/vuln/368959
  6. https://github.com/Termix-SSH/Termix/releases/tag/release-2.3.2-tag
  7. https://github.com/GabrielHA12/Termix-research
  8. https://nvd.nist.gov/vuln/detail/CVE-2026-45750
  9. https://cwe.mitre.org/data/definitions/78.html
  10. https://cwe.mitre.org/data/definitions/639.html