powershell脚本执行绕过powershell下脚本执行限制(cmd下执行)

powershell脚本运行方式有两种,一种是powshell中运行,另一种是在cmd中(在某些情况下相当有用)

powershell一般默认是禁止脚本运行,想要修改允许脚本运行,需要以管理员权限运行powershell,但有时候我们没有管理员权限,只有普通用户权限,这样就没有办法设置允许脚本运行,这时,cmd中运行脚本的优势就体现出来了。在cmd中运行脚本可以绕过powershell的限制。

(cmd)本地权限绕过执行:PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1

powershell:Get-ExecutionPolicy(查看当前脚本执行权限)    Set-ExecutionPolicy(设置脚本执行权限)

一、使用自动化命令查看并统计在powershell有别名的cmd下的命令(cmd的命令可以在powershell下运行并且在powershell下有别名)

 1.代码如下: 

<#
使用自动化命令查看并统计在powershell有别名的cmd下的命令(cmd的命令可以在powershell下运行并且在powershell下有别名)
#>
$cname=cmd /c help #$cmd /c help 获得的结果是一个数组对象
$len=$cname.count-3 #观察cmd /c help获得数据,去掉前两行和最后一行无用数据
$n=0
#遍历数组
foreach ($i in $cname[1..$len])
{
$sn=$i.split()[0] #对每行的数据进行处理,并得到第一个值(命令名称)
if ($sn -ne "") #-ne 不等于
{
$pcom=get-alias $sn -erroraction silentlycontinue #获得每个命令的别名,当出现错误不显示,继续执行
if ($?) #返回上一条指令执行的结果,成功返回True,失败返回False
{
$pcom.displayname #$pcom是一个对象
$n+=1 #计数
}
}
}
write-host "$n Done" #write-host是写到控制台
pause #暂停

2.运行方式有两种,一种是powershell中运行,另一种在cmd中

  2.1(cmd)本地权限绕过执行:PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1

 可以看到直接在cmd下执行powershell脚本,绕过了powershell对ps1脚本执行的限制(在某些情况下相当有用) 

2.2在powshell下执行

  可以看到当前脚本的执行权限是限制,当想修改脚本的执行权限时,只能以管理员打开powershell,在某些情况下无法实现管理员修改,这时候只能通过cmd运行脚本了

  以管理员运行powerrshell之后,设置脚本的运行策略 

3.设置完脚本的运行策略之后,就可以运行脚本了

  

4.隐藏脚本到后台

 powershell  -WindowStyle hidden -ExecutionPolicy Bypass -file xxx.ps1 

 运行完隐藏的命令之后,脚本窗口便消失了,只有后台能看到脚本正在运行

  

5.想要退出隐藏,可以在任务管理器结束powershell进程

powershell脚本执行绕过powershell下脚本执行限制(cmd下执行)以及在cmd下隐藏脚本窗口的更多相关文章

  1. CTF中的命令执行绕过

    本位原创作者:Smity 在介绍命令注入之前,有一点需要注意:命令注入与远程代码执行不同.他们的区别在于,远程代码执行实际上是调用服务器网站代码进行执行,而命令注入则是调用操作系统命令进行执行. 作为 ...

  2. CTF练习三 —— 命令注入&命令执行绕过

    这个题是第四届强网杯也就是2020.8.22号开始的那场一道简单的命令注入题,再这之前我并没有学习过命令注之类的知识,,,看到题之后先搜在学,,误打误撞解了出来,过段时间wp就会放出来,所以这里就不对 ...

  3. 绕过PowerShell执行策略方法总结

    默认情况下,PowerShell配置为阻止Windows系统上执行PowerShell脚本.对于渗透测试人员,系统管理员和开发人员而言,这可能是一个障碍,但并非必须如此. 什么是PowerShell执 ...

  4. 微软宣布全新命令行+脚本工具:PowerShell 7

    DOS 逐渐退出历史舞台后,Windows 一直内置着 CMD 命令行工具,并在 Windows 7 时代升级为更强悍的 PowerShell,不仅可以执行命令行,更可以执行各种高级脚本,还能跨平台. ...

  5. nsi脚本中执行.bat文件要隐藏dos窗口问题

    问题原因:工作中,在一个nsi的安装脚本文件中需要安装虚拟摄像头驱动,安装驱动脚本是.bat文件.使用nsi的execwait函数执行.bat文件时会显示dos窗口.但是领导要求不能显示dos窗口. ...

  6. Unity 脚本中update,fixedupdate,lateupdate等函数的执行顺序

    结论 通过一个例子得出的结论是:从先到后被执行的函数是 Awake->Start->FixedUpdate->Update->LateUpdate->OnGUI. 示例 ...

  7. 用cmd命令执行SQL脚本

    1.简单说明 osql 为SQL Server的命令 2.要在cmd中执行该命令,一般安装SQL Server后该命令对应的路径会自动添加到系统环境变量中. 3.-S 表示要连接的数据库 -U表示登录 ...

  8. [转]使用C#调用cmd来执行sql脚本

    本文转自:https://blog.csdn.net/tvmerp/article/details/1822669 下面是使用C#调用cmd来执行osql实现脚本的执行. using System; ...

  9. powershell代码混淆绕过

    目前大多数攻击者已经将PowerShell 利用在了各种攻击场景中,如内网渗透,APT攻击甚至包括现在流行的勒索软件中.powershell的功能强大且调用方式十分灵活,灵活使用powershell可 ...

随机推荐

  1. Deep learning with Python 学习笔记(11)

    总结 机器学习(machine learning)是人工智能的一个特殊子领域,其目标是仅靠观察训练数据来自动开发程序[即模型(model)].将数据转换为程序的这个过程叫作学习(learning) 深 ...

  2. js中对象和对象创建方法

    这一次我们来说一说在JavaScript中经常会用到的一个复杂基本类型,对象,先从对象的属性讲起,再讲对象的创建方法,基本涵盖了创建对象的各种方法,大家一起学习呀~ 一.对象 要掌握对象的使用及继承, ...

  3. 翻译:TRUNCATE TABLE(已提交到MariaDB官方手册)

    本文为mariadb官方手册:TRUNCATE TABLE的译文. 原文:https://mariadb.com/kb/en/truncate-table/我提交到MariaDB官方手册的译文:htt ...

  4. DLCI 简介

    数据链路连接标识(Data Link Connection Identifier) 帧中继协议是一种统计复用的协议,它在单一物理传输线路上能够提供多条虚电路.每条虚电路都是用DLCI(Data Lin ...

  5. iconfont图标应用

    一.什么是iconfont? 我们现在通常所指的iconfont,是用字体文件取代图片文件,来展示图标.特殊字体等元素的方法.iconfont是阿里巴巴矢量图标库是由阿里巴巴体验团队倾力打造的中国第一 ...

  6. WPF TreeView SelectedItemChanged called twice

    How to avoid WPF TreeView SelectedItemChanged being called twice Very often, we need to execute some ...

  7. PHP中获取当前页面的URL信息

    <? //获取当前的域名: echo $_SERVER['SERVER_NAME']; //获取来源网址,即点击来到本页的上页网址 echo $_SERVER["HTTP_REFERE ...

  8. Java高并发 -- J.U.C.组件扩展

    Java高并发 -- J.U.C.组件扩展 主要是学习慕课网实战视频<Java并发编程入门与高并发面试>的笔记 FutureTask Future模式,核心思想是异步调用.和同步调用的区别 ...

  9. Mac超快速搭建Nginx、PHP、PHPStorm、XDebug环境

    一.安装自己需要的版本php 以php7.1为例,执行:curl -s https://php-osx.liip.ch/install.sh | bash -s 7.1 (去这个链接下找自己想要下载的 ...

  10. 汇编语言--微机CPU的指令系统(五)(算术运算指令)

    (3)算术运算指令 算术运算指令是反映CPU计算能力的一组指令,也是编程时经常使用的一组指令.它包括:加.减.乘.除及其相关的辅助指令. 该组指令的操作数可以是8位.16位和32位(80386+).当 ...