This document discusses using PowerShell for penetration testing when standard tools and frameworks may not be usable due to network restrictions or lack of privileges. It provides an introduction to PowerShell and examples of how port scanning, downloading files, and other tasks could be accomplished using PowerShell scripts even in restricted environments. It also covers some of the security mechanisms in PowerShell like execution policies and how they can be bypassed to run unsigned scripts without prompts.