
Back in 2004, when it was still referred to as Monad, and PowerShell was still in early beta stages, Symantec determined that the command line shell could be used as an attack vector by
a variety of malware including viruses, worms and Trojan horses.
With the recent release of PowerShell 1.0 for Windows XP Service Pack 2 and Windows Server 2003, and with upcoming support for Windows Vista due in January 2007 and for Windows Server code-name "Longhorn" later next year, the command-line and scripting language rises inherent security issues.
"Fortunately, since that presentation PowerShell has added a variety of features that mitigate any huge outbreaks of malicious code written in PowerShell. The first and foremost (and simple) feature is the file association for PowerShell files. When double-clicked, PowerShell files aren't executed, but instead are loaded into Notepad. This will prevent the most common vector of infection where a user receives such a file and double-clicks it. Also, by default, even if you execute PowerShell you can't load and run script files without changing the execution policy to allow non-signed scripts to be executed," explained Eric Chien, Symantec Security Response Engineer.
Moreover, although initially it was rumored that PowerShell will be integrated by default into Windows Vista, that will not be the case, further decreasing the attack surface on the operating system. "Final PowerShell testing on Vista could not start until the PowerShell team had Vista RTM code. Our team needs some time for testing to make sure Windows PowerShell 1.0 works correctly on Windows Vista before releasing the final package as we've done for shipping products like Windows Server 2003 and Windows XP. We do expect to have a final Vista package available by Jan. 31, 2007, at the latest, but we are working very hard to deliver it sooner," revealed Microsoft.