PowerShell / Announcements

PowerShell Team Announcements
16 stars 10 forks source link

Microsoft Security Advisory CVE-2021-43896: Spoofing issue in PowerShell 7.2 #28

Open TravisEz13 opened 2 years ago

TravisEz13 commented 2 years ago

Microsoft Security Advisory CVE-2021-43896: Spoofing issue in PowerShell 7.2

Executive Summary

This advisory addressed a potential issue in PowerShell 7.2 where specially crafted ANSI control sequences are used through the pipeline to create executable code. An attacker could potentially craft code so that it behaves differently before and after sending the code through the pipeline. The fix changes the default mode of $PSStyle.OutputRendering to Ansi and makes fixes to that mode so strings through the pipeline are not altered.

System administrators are advised to update PowerShell 7 to an unaffected version (see affected software).

Discussion

Please open a support question to discussion the PowerShell aspects of this advisory.

Affected Software

The vulnerability affects PowerShell 7 prior to the following versions:

PowerShell 7 Version Fixed in
7.0 Not Applicable
7.1 Not Applicable
7.2 7.2.1

Advisory FAQ

How do I know if I am affected?

If all of the following are true:

  1. Run pwsh -v, then, check the version in the table in Affected Software to see if your version of PowerShell 7 is affected.

How do I update to an unaffected version?

Follow the instructions at Installing PowerShell 7 to install the latest version of PowerShell 7.

Updating PowerShell 7.2 and newer using Microsoft Update

Updating PowerShell 7.2 and newer using Microsoft Update

Other Information

Reporting Security Issues

If you have found a potential security issue in PowerShell 7, please email details to secure@microsoft.com.

Support

You can ask questions about this issue on GitHub in the PowerShell organization. This is located at https://github.com/PowerShell/. The Announcements repo (https://github.com/PowerShell/Announcements) will contain this bulletin as an issue and will include a link to a discussion issue where you can ask questions.

Disclaimer

The information provided in this advisory is provided "as is" without warranty of any kind. Microsoft disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. In no event shall Microsoft Corporation or its suppliers be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages, even if Microsoft Corporation or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability for consequential or incidental damages so the foregoing limitation may not apply.

What if the update breaks my script or module?

You can uninstall the newer version of PowerShell 7 and install the previous version of PowerShell 7. This should be treated as a temporary measure. Therefore, the script or module should be updated to work with the patched version of PowerShell 7.

Acknowledgments

Microsoft recognizes the efforts of those in the security community who help us protect customers through coordinated vulnerability disclosure.

See acknowledgments for more information.

External Links

CVE-2021-43896

Revisions

V1.0 (December 14, 2021): Advisory published.

Version 1.0 Last Updated 2021-12-14