GitPython 3.1.50 Authentication Bypass via Joined Short Options
GitPython 3.1.50 fails to recognize joined short-option forms such as -u<value> (the short form of --upload-pack=<value>) when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clone_from(..., multi_options=..., allow_unsafe_options=False), an attacker can supply -u<helper> to bypass the gate that blocks --upload-pack/-u, causing Git to execute the specified helper command during clone. Fixed in 3.1.51.
- Yayın
- 1 Ağu 2026
- Güncelleme
- 3 Eyl 2026
- EPSS
- %0,6 · 49. yüzdelik
- CWE
- CWE-78
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
37
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 37 / 40 · 9.3 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,6
CISA SSVC kararı
- Sömürü
- yok
- Otomatikleştirilebilir
- evet
- Teknik etki
- tam
Vulnrichment: CISA'nın karar ağacı girdileri.
CNA ile NVD puanı
- NVD
- —
- CNA · VulnCheck
- 9,3
- NVD henüz kendi puanını vermedi; gösterilen puan CNA’nın.
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| gitpython project | gitpython | cpe:2.3:a:gitpython_project:gitpython |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- gitpython project gitpython3.1.50 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (VulnCheck) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
gitpython-developers GitPython
- 3.1.51etkilenmez
- 3.1.50 ve sonrası · 3.1.51 öncesietkilenir · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | python-git | tüm sürümler | — |
| Debian:14 | python-git | 3.1.61-1 öncesi | 3.1.61-1 |
| PyPI | gitpython | 3.1.50 itibarıyla · 3.1.51 öncesi | 3.1.51 |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | automation-controller-cli | 0:4.6.32-1.el8ap öncesi | 0:4.6.32-1.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el8 | python3.12-django | 0:5.2.17-1.el8ap öncesi | 0:5.2.17-1.el8ap |
| Red Hat:ansible_automation_platform_developer:2.5::el9 | automation-controller-cli | 0:4.6.32-1.el9ap öncesi | 0:4.6.32-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.5::el9 | python3.12-django | 0:5.2.17-1.el9ap öncesi | 0:5.2.17-1.el9ap |
| Red Hat:ansible_automation_platform_developer:2.6::el10 | python-django | 0:5.2.17-1.el10ap öncesi | 0:5.2.17-1.el10ap |
| Red Hat:ansible_automation_platform_developer:2.6::el10 | python3-django | 0:5.2.17-1.el10ap öncesi | 0:5.2.17-1.el10ap |
| Red Hat:ansible_automation_platform_developer:2.6::el9 | automation-controller-cli | 0:4.7.16-1.el9ap öncesi | 0:4.7.16-1.el9ap |
| Red Hat:ansible_automation_platform:2.5::el8 | automation-controller-venv-tower | 0:4.6.32-1.el8ap öncesi | 0:4.6.32-1.el8ap |
| Red Hat:ansible_automation_platform:2.5::el8 | automation-gateway-server | 0:2.5.20260824-1.el8ap öncesi | 0:2.5.20260824-1.el8ap |
| Red Hat:ansible_automation_platform:2.5::el8 | python3.12-aiohttp | 0:3.14.3-1.el8ap öncesi | 0:3.14.3-1.el8ap |
| Red Hat:ansible_automation_platform:2.5::el8 | python3.12-gitpython | 0:3.1.59-1.el8ap öncesi | 0:3.1.59-1.el8ap |
| Red Hat:ansible_automation_platform:2.5::el9 | automation-controller-venv-tower | 0:4.6.32-1.el9ap öncesi | 0:4.6.32-1.el9ap |
| Red Hat:ansible_automation_platform:2.5::el9 | automation-gateway-server | 0:2.5.20260824-1.el9ap öncesi | 0:2.5.20260824-1.el9ap |
| Red Hat:ansible_automation_platform:2.5::el9 | python3.12-aiohttp | 0:3.14.3-1.el9ap öncesi | 0:3.14.3-1.el9ap |
| Red Hat:ansible_automation_platform:2.5::el9 | python3.12-gitpython | 0:3.1.59-1.el9ap öncesi | 0:3.1.59-1.el9ap |
| Red Hat:ansible_automation_platform:2.6::el9 | automation-controller-venv-tower | 0:4.7.16-1.el9ap öncesi | 0:4.7.16-1.el9ap |
| Red Hat:ansible_automation_platform:2.6::el9 | automation-platform-ui | 0:2.6.13-1.el9ap öncesi | 0:2.6.13-1.el9ap |
| Red Hat:ansible_automation_platform:2.6::el9 | python3.12-aiohttp-debuginfo | 0:3.14.3-1.el9ap öncesi | 0:3.14.3-1.el9ap |
| Red Hat:ansible_automation_platform:2.6::el9 | python3.12-aiohttp-debugsource | 0:3.14.3-1.el9ap öncesi | 0:3.14.3-1.el9ap |
Aynı üründe
gitpython project: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2022-24439Remote Code Execution (RCE)41Planlayın
- CVE-2026-42284GitPython: Unsafe option check validates multi_options before shlex.split transforms it39İzleyin
- CVE-2023-40267GitPython before 3.1.32 does not block insecure non-multi options in clone and clone_from.39İzleyin
- CVE-2026-78676GitPython before 3.1.59 Remote Code Execution via Config Injection37İzleyin
- CVE-2026-67325GitPython before 3.1.51 Command Injection via option prefix abbreviation35İzleyin
- CVE-2026-42215GitPython: Command injection via Git options bypass35İzleyin
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| gitpython-developers GitPython | 3.1.51 | Üretici (CNA) |
| debian:python-git | 3.1.61-1 · Debian:14 | Paket deposu (OSV) |
| PyPI:gitpython | 3.1.51 | Paket deposu (OSV) |
| red hat:automation-controller-cli | 0:4.6.32-1.el8ap · Red Hat:ansible_automation_platform_developer:2.5::el8 | Paket deposu (OSV) |
| red hat:automation-controller-venv-tower | 0:4.6.32-1.el8ap · Red Hat:ansible_automation_platform:2.5::el8 | Paket deposu (OSV) |
| red hat:automation-gateway-server | 0:2.5.20260824-1.el8ap · Red Hat:ansible_automation_platform:2.5::el8 | Paket deposu (OSV) |
| red hat:automation-platform-ui | 0:2.6.13-1.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python-django | 0:5.2.17-1.el10ap · Red Hat:ansible_automation_platform_developer:2.6::el10 | Paket deposu (OSV) |
| red hat:python3-django | 0:5.2.17-1.el10ap · Red Hat:ansible_automation_platform_developer:2.6::el10 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp | 0:3.14.3-1.el8ap · Red Hat:ansible_automation_platform:2.5::el8 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp-debuginfo | 0:3.14.3-1.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-aiohttp-debugsource | 0:3.14.3-1.el9ap · Red Hat:ansible_automation_platform:2.6::el9 | Paket deposu (OSV) |
| red hat:python3.12-django | 0:5.2.17-1.el8ap · Red Hat:ansible_automation_platform_developer:2.5::el8 | Paket deposu (OSV) |
| red hat:python3.12-gitpython | 0:3.1.59-1.el8ap · Red Hat:ansible_automation_platform:2.5::el8 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
- Faze-upbildiren
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
- CVE-2026-673250 gün araylaGitPython before 3.1.51 Command Injection via option prefix abbreviation35İzleyin
- CVE-2026-4221586 gün araylaGitPython: Command injection via Git options bypass35İzleyin
- CVE-2026-7362512 gün araylaGitPython before 3.1.54 Remote Code Execution via kwarg value smuggling34İzleyin
- CVE-2026-7362312 gün araylaGitPython before 3.1.54 Remote Code Execution via --template30İzleyin
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
- CVE-2026-673250 gün araylaGitPython before 3.1.51 Command Injection via option prefix abbreviation35İzleyin
- CVE-2026-7362512 gün araylaGitPython before 3.1.54 Remote Code Execution via kwarg value smuggling34İzleyin
- CVE-2026-7362312 gün araylaGitPython before 3.1.54 Remote Code Execution via --template30İzleyin
- CVE-2026-7362012 gün araylaGitPython before 3.1.57 Arbitrary File Overwrite and Read28İzleyin
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- İnternetten erişebilen herkes tetikleyebilir.
- Hesap ya da parola gerekmez.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- Bütünlük
- Erişilebilirlik
- Saldırı vektörü
- Ağ
- Karmaşıklık
- Düşük
- Gereken yetki
- Yok
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- X
Zayıflık sınıfı (CWE)
CWE-78 · Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')CVSS vektörü
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
nvd-secondary
Kök neden
Kullanıcı girdisi, bir kabuk komutunun içine metin olarak yerleştiriliyor. Kabuk, girdideki özel karakterleri komutun parçası olarak yorumlayabilir.
Hatanın kod karşılığı
CWE-78 sınıfının tamamıBu zafiyet sınıfının temsili örneği. Üreticinin kaynak kodu değildir; hatalı kalıbı ve düzeltmesini gösterir.
Hatalı
const host = req.body.host;exec("ping -c 1 " + host, onResult);Düzeltilmiş
const host = req.body.host;if (!/^[a-z0-9.-]{1,253}$/i.test(host)) return res.sendStatus(400);execFile("ping", ["-c", "1", host], onResult);Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
—
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
385 binden fazla zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyinDeğişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.