1
前言
如果是一个正常的IT人员需要对服务器或者个人PC进行管理,采用了PowerShell脚本进行辅助,那这篇文章其实没有多大意义,因为不太可能会遇到混淆过的脚本,并且格式混乱且阅读体验非常差,因为这是阻碍安全分析人员分析的一种小手段。
2
探索
对于PowerShell脚本,如果从网上搜索会发现暂没有在线进行脚本内容格式美化的站点。
但是这种需求在全球来说其实很强烈,所以仔细搜索的话会发现存在一个项目。
项目地址:https://github.com/DTW-DanWard/PowerShell-Beautifier
3
实践
大致阅读完说明后,就准备开始配置该工具。首先采用微软自带的ISE进行调试恶意脚本会发现格式混乱,在一定程度上会影响阅读相关代码而影响调试效果。
需要包管理器安装对应的PowerShell包,而在Win7系统环境下,对于包管理器是不支持的,所以需要额外进行安装,如下。
Using Package Management in Windows PowerShell v3
https://powershell.org/2015/10/using-package-management-in-windows-powershell-v3/
所以这里采用Win10环境,版本如下。
由于Win10有自带的BuGet包,所以只需等待安装即可,Win7下暂时不行,需要对应安装相应的包管理器。右键管理员权限打开PowerShell,使用安装命令:
Install-Module -Name PowerShell-Beautifier
上述包安装完成后,对其进行导入:
Import-Module PowerShell-Beautifier
如果不允许执行脚本则执行该命令:
Set-ExecutionPolicy RemoteSigned
最后对需要格式化的脚本文件进行代码美化:
Edit-DTWBeautifyScript C:UsersonionDesktop123.ps1_2020_5_7123.ps1 -IndentType Tabs
-IndentType Tabs是采用Tab键进行缩进。代码格式化前,需要自行备份好文件,因为结果会直接写入原文件。
实际测试格式化效果还可以,不过需要自行删除多余的空行。
使用神器Notepad++删除空行(不包括有空格类符号的空行),只需进行rn转义符替换,按ctrl+h,跳出搜索替换框,把查找模式定义为扩展(n,r...)查找目标:rnrn替换为:rn。
接着对其进行调试的时候就不会过多影响阅读效果了,如下。
原文始发于微信公众号(OnionSec):格式化(美化)PowerShell脚本
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论