格式化(美化)PowerShell脚本

admin 2023年8月5日12:28:46评论62 views字数 1096阅读3分39秒阅读模式

1


前言



如果是一个正常的IT人员需要对服务器或者个人PC进行管理,采用了PowerShell脚本进行辅助,那这篇文章其实没有多大意义,因为不太可能会遇到混淆过的脚本,并且格式混乱且阅读体验非常差,因为这是阻碍安全分析人员分析的一种小手段。



2


探索



对于PowerShell脚本,如果从网上搜索会发现暂没有在线进行脚本内容格式美化的站点。





格式化(美化)PowerShell脚本




但是这种需求在全球来说其实很强烈,所以仔细搜索的话会发现存在一个项目。





格式化(美化)PowerShell脚本




项目地址:https://github.com/DTW-DanWard/PowerShell-Beautifier



3


实践



大致阅读完说明后,就准备开始配置该工具。首先采用微软自带的ISE进行调试恶意脚本会发现格式混乱,在一定程度上会影响阅读相关代码而影响调试效果。





格式化(美化)PowerShell脚本




格式化(美化)PowerShell脚本




需要包管理器安装对应的PowerShell包,而在Win7系统环境下,对于包管理器是不支持的,所以需要额外进行安装,如下。

Using Package Management in Windows PowerShell v3

https://powershell.org/2015/10/using-package-management-in-windows-powershell-v3/


所以这里采用Win10环境,版本如下。





格式化(美化)PowerShell脚本




由于Win10有自带的BuGet包,所以只需等待安装即可,Win7下暂时不行,需要对应安装相应的包管理器。右键管理员权限打开PowerShell,使用安装命令:

Install-Module -Name PowerShell-Beautifier





格式化(美化)PowerShell脚本




上述包安装完成后,对其进行导入:

Import-Module PowerShell-Beautifier


如果不允许执行脚本则执行该命令:

Set-ExecutionPolicy RemoteSigned


最后对需要格式化的脚本文件进行代码美化:

Edit-DTWBeautifyScript C:UsersonionDesktop123.ps1_2020_5_7123.ps1 -IndentType Tabs


-IndentType Tabs是采用Tab键进行缩进。代码格式化前,需要自行备份好文件,因为结果会直接写入原文件。





格式化(美化)PowerShell脚本




实际测试格式化效果还可以,不过需要自行删除多余的空行。





格式化(美化)PowerShell脚本




使用神器Notepad++删除空行(不包括有空格类符号的空行),只需进行rn转义符替换,按ctrl+h,跳出搜索替换框,把查找模式定义为扩展(n,r...)查找目标:rnrn替换为:rn。





格式化(美化)PowerShell脚本




格式化(美化)PowerShell脚本




接着对其进行调试的时候就不会过多影响阅读效果了,如下。





格式化(美化)PowerShell脚本




格式化(美化)PowerShell脚本



原文始发于微信公众号(OnionSec):格式化(美化)PowerShell脚本

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月5日12:28:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   格式化(美化)PowerShell脚本http://cn-sec.com/archives/699963.html

发表评论

匿名网友 填写信息