چکیده

آسیب‌پذیری در کلاینت Git به مهاجم از راه دور اجازه می‌دهد با تزریق پروتکل (Protocol Injection) از طریق پارامتر bundle-uri فایل‌هایی را در مسیر دلخواهِ کنترل‌شده توسط مهاجم بنویسد و منجر به اجرای کد دلخواه (ACE) شود. این ضعف هنگام عملیات کلون (clone) رخ می‌دهد؛ سرور ممکن است یک باندل (bundle) تبلیغ‌شده را پیشنهاد کند و کلاینت بدون انجام اعتبارسنجی کافی، آن باندل را از یک URI مخرب دریافت و در مسیر تعیین‌شده ذخیره کند. قابلیت استفاده از bundle-uri به‌صورت پیش‌فرض فعال نیست و با گزینه پیکربندی bundle.heuristic قابل کنترل است.

توضیحات

آسیب‌پذیری CVE-2025-48385 در فرآیند کلون کردن مخزن Git ناشی از خنثی سازی نادرست جداکننده های آرگومان در دستورات مطابق با CWE-88 و کنترل خارجی نام فایل یا مسیر مطابق با CWE-73 است. Git برای بهینه‌سازی، امکان دریافت باندل (فایل فشرده حاوی بخشی از تاریخچه مخزن کد) از سرور یا CDN را دارد که با پارامتر bundle-uri تبلیغ می‌شود.

کلاینت Git روی URIهای تبلیغ‌شده اعتبارسنجی کافی انجام نمی‌دهد و مهاجم می‌تواند با تزریق پروتکل، URI را به مسیر لوکال تغییر دهد. در نتیجه، محتوای باندل تحت کنترل مهاجم (که می‌تواند اسکریپت اجرایی یا فایل تنظیمات مخرب باشد) در مسیر دلخواه نوشته می‌شود.

بهره‌برداری از این ضعف به‌سادگی قابل خودکارسازی است؛ مهاجم می‌تواند سرور Git مخرب راه‌اندازی کند، bundle-uri را به مسیر لوکال تزریق نماید و کاربر را فریب دهد تا کد مخزن را کلون کند (نیاز به تعامل کاربر برای شروع کلون وجود دارد). در سناریوهای پیشرفته‌تر، استفاده از کلون بازگشتی (Recursive Clone) و ساب‌ماژول‌ها (Submodules)، به مهاجم اجازه می دهد حتی بدون مهندسی اجتماعی هم کنترل مسیر کلون را به‌دست ‌آورد.

پیامدهای آسیب‌پذیری شامل محرمانگی با افشای داده‌ها، یکپارچگی با تغییر یا آسیب به سیستم و در دسترس‌پذیری با ایجاد اختلال است. این ضعف تنها در صورتی فعال می شود که bundle.heuristic فعال باشد یا کلون بازگشتی انجام شود.

این آسیب‌پذیری با اصلاح اعتبارسنجی URIها و محدودسازی مسیرهای مجاز در نسخه‌های 2.43.7، 2.44.4، 2.45.4، 2.46.4، 2.47.3، 2.48.2، 2.49.1 و 2.50.1 به‌طور کامل پچ شده است.

CVSS

Score Severity Version Vector String
8.6 HIGH 4.0 CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

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

Versions Product
affected at < 2.43.7

affected at >= 2.44.0-rc0, < 2.44.4

affected at >= 2.45.0-rc0, < 2.45.4

affected at >= 2.46.0-rc0, < 2.46.4

affected at >= 2.47.0-rc0, < 2.47.3

affected at >= 2.48.0-rc0, < 2.48.2

affected at >= 2.49.0-rc0, < 2.49.1

affected at >= 2.50.0-rc0, < 2.50.1

git

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

Versions Product
>= v2.43.7, v2.44.4, v2.45.4, v2.46.4, v2.47.3, v2.48.2, v2.49.1, and v2.50.1 git

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

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

Approx. Usage in .ir Domain via Google

(Total Pages)

Search Query (Dork) Product
121,000 site:.ir “Git” “repository” “Git” “repository”

نتیجه گیری

این آسیب‌پذیری با شدت بالا در Git می‌تواند منجر به نوشتن فایل های دلخواه شود. با توجه به انتشار پچ‌های رسمی، اجرای اقدامات زیر برای جلوگیری از بهره‌برداری مفید است است:

  • به‌روزرسانی فوری: تمام نصب‌های Git را به نسخه‌های 2.50.1، 2.49.1، 2.48.2، 2.47.3، 2.46.4، 2.45.4، 2.44.4 یا 2.43.7 به روزرسانی کنید. در صورت عدم بروزرسانی به هر دلیل موارد زیر میتوانند مناسب باشند.
  • غیرفعال‌سازی ویژگی bundle-uri: دستور git config –global bundle.heuristic false را اجرا کنید تا این ویژگی کاملاً غیرفعال شود.
  • اجتناب از کلون بازگشتی (Recursive Clone): از گزینه –no-recurse-submodules یا دستور git config –global submodule.recurse false استفاده کنید.
  • اعتبارسنجی منبع: فقط از مخزن‌های معتبر کلون دریافت کنید و برای جلوگیری از دریافت باندل‌های بزرگ از کلون سطحی (shallow clone) با گزینه depth=1 استفاده کنید.
  • محدودسازی مسیر کلون: عملیات کلون خودکار را در دایرکتوری‌های ایزوله (مثل /tmp/random) انجام دهید و از محیط‌های امن مانند chroot یا sandbox استفاده کنید.
  • مانیتورینگ فایل‌سیستم: با ابزارهایی مانند auditd یا OSSEC تغییرات در دایرکتوری git/hooks را مانیتور کنید.
  • استفاده از Git امن: در محیط‌های سازمانی، Git را پشت پروکسی با فیلتر URI (مانند git-proxy) اجرا کنید و فایروال اپلیکیشن های وب مانند GitHub Enterprise با قوانین اختصاصی فعال کنید.
  • آموزش کاربران: توسعه‌دهندگان را درباره ریسک کلون از منابع ناشناس و مهندسی اجتماعی آگاه سازید.

اجرای این اقدامات، به‌ویژه به‌روزرسانی سریع و غیرفعال‌سازی bundle.heuristic، ریسک بهره‌برداری از این آسیب‌پذیری را کاهش داده و امنیت عملیات کلون در Git را به سطح بالایی می‌رساند.

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

Initial Access (TA0001)
مهاجم از طریق نشر یا ارائه یک مخزن یا بسته مخرب (supply-chain / protocol injection) کاربر را فریب می‌دهد تا عملیات git clone را اجرا کند؛ پارامتر bundle-uri آلوده باعث دانلود و نوشتن باندل/فایل‌هایی در مسیرهای تعیین‌شده توسط مهاجم می‌گردد.

Execution (TA0002)
نوشتن فایل دلخواه روی سیستم قربانی می‌تواند به اجرای کد منجر شود. این کار با نوشتن اسکریپت اجرایی در مسیر PATH، نوشتن native binaries در دایرکتوری‌های build، یا قرار دادن hook که در فرآیند git محلی ممکن است.

Persistence (TA0003)
مهاجم با مواردی مانند نوشتن git/hooks یا فایل‌های پیکربندی مخرب می‌تواند مکانیزم پایداری در جریان توسعه یا CI/CD ایجاد کند.

Defense Evasion (TA0005)
با ایجاد trustable-looking فایل‌ها یا جایگزینی منابع محلی، مهاجم می‌تواند مکانیزم‌های تشخیص مبتنی بر مسیر یا نام را دور بزند.

Lateral Movement (TA0008)
اگر باندل مخرب به سیستم‌های build یا سرورهای اشتراکی منتقل شود، مهاجم می‌تواند به محیط‌های بعدی (build agents, artifact repos) حرکت کند.

Impact (TA0040)
پیامد مستقیم، اجرای کد دلخواه (Arbitrary Code Execution) و امکان تغییر/افشای داده‌ها یا اختلال در فرآیندهای ساخت و تولید است.

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2025-48385
  2. https://www.cvedetails.com/cve/CVE-2025-48385/
  3. https://github.com/git/git/security/advisories/GHSA-m98c-vgpc-9655
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-48385
  5. https://vuldb.com/?id.315463
  6. http://www.openwall.com/lists/oss-security/2025/07/08/4
  7. https://nvd.nist.gov/vuln/detail/cve-2025-48385
  8. https://cwe.mitre.org/data/definitions/88.html
  9. https://cwe.mitre.org/data/definitions/73.html

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *