- Lab
-
Libraries: If you want this lab, consider one of these libraries.
- Security

ASP.NET ViewState Deserialization Attack Chain
In this lab, you’ll practice deserialization attacks against ASP.Net ViewState. When you’re finished, you’ll be able to remotely execute code against a vulnerable ASP.NET web service, retrieving information from the server.

Lab Info
Table of Contents
-
Challenge
Getting Keys from web.config
You'll verify a website uses ViewState and use a Local File Inclusion vulnerability to retrieve the contents of the web.config file. This contains configuration information that will allow you to create your own valid ViewState.
-
Challenge
Generating and Sending ViewState
You'll use the configuration you've found to create your own ViewState. That will contain a PowerShell command to call back to your lab computer. Sending a web request with your ViewState will run that command, demonstrating remote code execution
-
Challenge
The Last Challenge
Welcome to the final challenge! This is your last chance to experiment in the environment. Clicking Finish Lab will end this little world that flittered into existence just for you.
About the author
Real skill practice before real-world application
Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.
Learn by doing
Engage hands-on with the tools and technologies you’re learning. You pick the skill, we provide the credentials and environment.
Follow your guide
All labs have detailed instructions and objectives, guiding you through the learning process and ensuring you understand every step.
Turn time into mastery
On average, you retain 75% more of your learning if you take time to practice. Hands-on labs set you up for success to make those skills stick.