23 Juli 2025
CVE-2025-53770: Kerentanan Kritis SharePoint, Cara Kerja, dan Contoh Eksploitasi
Apa Itu CVE-2025-53770?
CVE-2025-53770 adalah celah keamanan kritis pada Microsoft SharePoint Server (versi on-premises), yang memungkinkan penyerang menjalankan kode berbahaya di server hanya dengan mengirimkan data tertentu. Celah ini sudah dieksploitasi secara aktif dan belum ada patch resmi dari Microsoft. SharePoint Online (Microsoft 365) tidak terdampak.
Bagaimana Cara Kerjanya ?
Kerentanan ini terjadi di endpoint ToolPane.aspx. Penyerang yang sudah memiliki akses (authenticated user) bisa mengirimkan permintaan POST ke endpoint tersebut dengan menyisipkan parameter khusus (MSOTlPn_DWP) yang berisi WebPart XML berbahaya.
Di dalam WebPart, penyerang menaruh tag Scorecard:ExcelDataSet ↗ dengan properti CompressedDataTable yang berisi payload berbahaya. Payload ini adalah objek .NET yang telah diserialisasi, dikompresi dengan GZIP, lalu dikodekan dalam Base64.
Ketika SharePoint menerima data ini, server akan mendekompresi dan mendeserialisasi objek tersebut tanpa validasi yang cukup, sehingga kode berbahaya bisa langsung dijalankan di server.
Contoh Struktur Payload
Payload yang digunakan biasanya berbentuk seperti:
<asp:UpdateProgress ID=“UpdateProgress1” runat=“server” AssociatedUpdatePanelID=“upTest”>
<ProgressTemplate>
<div class="divWaiting">
<Scorecard:ExcelDataSet CompressedDataTable=”{PAYLOAD}” DataTable-CaseSensitive=“false” runat=“server” />
</div>
</ProgressTemplate>
</asp:UpdateProgress>
Langkah Membuat Payload
Buat objek .NET berbahaya (serialized object) menggunakan LosFormatter atau BinaryFormatter.
Encode objek tersebut ke Base64.
Kompres hasil Base64 dengan GZIP.
Masukkan hasil akhirnya ke dalam struktur payload di atas.
Contoh Skrip Python untuk Kompresi
import gzip, base64
with open(“payload.b64”, “rb”) as f:
decoded = base64.b64decode(f.read())
compressed = gzip.compress(decoded)
print(base64.b64encode(compressed).decode())
Simpan hasilnya ke file payload.txt untuk digunakan pada langkah berikutnya.
Contoh Penggunaan Exploit
python3 exploit.py -t targets.txt –file payload.txt –proxy http://127.0.0.1:8080
Penjelasan argumen:
-t / –targets: File berisi daftar URL target SharePoint (satu per baris)
–file: File payload hasil kompresi dan encoding
–proxy: (Opsional) Proxy untuk debugging/intersepsi
Catatan Penting
Eksploitasi ini tidak menampilkan output perintah secara langsung di web. Jika ingin mendapatkan output, gunakan reverse shell.
Hanya gunakan informasi ini untuk tujuan edukasi dan pengujian yang sah. Eksploitasi tanpa izin adalah tindakan ilegal.
Mitigasi Sementara
Aktifkan AMSI (Antimalware Scan Interface) dan Microsoft Defender di semua server SharePoint.
Pantau log dan endpoint ToolPane.aspx untuk aktivitas mencurigakan.
Ikuti perkembangan update patch dari Microsoft.
CVE-2025-53770 adalah ancaman serius bagi pengguna SharePoint Server on-premises. Segera lakukan mitigasi dan pantau informasi terbaru untuk melindungi sistem Anda.
Referensi : https://github.com/soltanali0/CVE-2025-53770-Exploit