自Shadow Brokers公布NSA泄露工具后,各路大神陆陆续续发表复现过程,这几天也仔细试了各种套路,一直想弄明白DoublePulsar中的shellcode到底是如何用的,刚好又在模拟环境中偶遇Windows Server 2003,EternalRomance貌似只能用shellcode方式植入利用,于是各种试错以后有了这篇文章。

  有何不妥处请各路大神指教!

  前期准备

  

  友情提示

  Dander Spiritz使用中的一个坑。

  如果想用Dander Spiritz生成回连dll,并控制会话,记得将日志文件夹指向你已经创建的工程文件夹(以test为例),日志文件夹最好放置在磁盘根目录下,否则容易报错。

  错误示例:日志文件夹存放在工具目录中,并指向test工程文件夹:C:NSAlogstest

  

  错误示例:运行Dander Spiritz报错,红框中为错误信息

  

  正确姿势:日志文件夹存放在磁盘根目录中,并指向test工程文件夹:C:logstest

  Smbtouch判断可用漏洞

  命令:use Smbtouch

  命令:execute

  

  执行后回显可用漏洞工具ETERNALROMANCE,ETERNALCHAMPION

  

  Doublepulsar生成可用shellcode

  看到此处客官一定觉得哪里不对了,依照之前的惯例不是该立马上EternalRomance对靶机啪啪啪了吗?

  笔者先开始试错的时候也是这么做的,结果运行到一半,提示需要载入shellcode,于是吭呲吭呲的去kali2用msfvenom生成了个shellcode,结果直接把靶机整蓝屏了,这才注意到载入shellcode的时候提示“DOPU (ensure correct architecture) ONLY! Other shellcode will likely BSOD.”,必须使用DOPU的shellcode,不然BSOD蓝屏等着你。好吧,DOPU是个什么鬼?是不是很像Do(uble)pu(lsar)!答对了,就是这个鬼。

  接上一步直接载入Doublepulsar,命令:use Doublepulsar

  

  由于Smbtouch后自动载入了相关参数,一路回车到此处,又是熟悉的地方,注意选择 *0) OutputInstall,此项功能可生成shellcode

  

  生成文件保存在任意可写入的位置,注意是你目前权限可写入的位置,文件名为shellcode.bin(可命名为任意文件)

  

  Doublepulsar成功执行并生成shellcode文件

  

  EternalRomance

  EternalRomance植入Doublepulsar后门,发飙的时候到了

  命令:use Eternalromance

  

  一路默认,Pipe[] 和Share[] 为可选项,直接回车跳过,Credentials选Anonymous

  

  一路回车来到shellcode载入的位置,就是前文所述蓝屏提示处,输入先前生成的地址,windows环境下反斜杠请写两次

  

  狂摁回车,成功执行

  

  然后呢?什么都没发生?其实已经成功的植入Doublepulsar后门了,可以利用Doublepulsar干坏坏的事了

  传统姿势

  传统姿势,生成dll后门,Doublepulsar注入,回连木马。

  生成回连payload—>test.dll,拷贝到攻击机C:NSAtmptest.dll,并在msfconsole中开启监听

  

  Doublepulsar注入利用,利用方式与之前公开的方法一致,命令:use Doublepulsar,一路默认,注意在Function处选择 2) RunDLL,一直狂摁回车到结束即可成功利用

  

  kali2中即可收到回连信息!

  

  小结

  说到底,Doublepulsar就是个后门,可安装也可卸载(Function中有卸载模块,NSA也贴心提供了检测脚本),安装后可加载dll与shellcode,漏洞利用之前先生成好方便后续操作。

  fb.py不愧是拿firstblood的利器,整个工具与metasploit的搭建方式极其相似,模块化程度很高!Dander Spritz作为远控工具,做的十分细致,信息搜集能力很强,NSA指哪儿打哪儿能力可见一般!

  * 本文作者:feshi7007,转载请注明来自FreeBuf.COM

NSA Fuzzbunch中EternalRomance工具复现过程的更多相关文章

  1. ShadowBroker释放的NSA工具中Esteemaudit漏洞复现过程

    没有时间测试呢,朋友们都成功复现,放上网盘地址:https://github.com/x0rz/EQGRP 近日臭名昭著的方程式组织工具包再次被公开,TheShadowBrokers在steemit. ...

  2. NSA Fuzzbunch分析与利用案例

    Shadow Brokers泄露出一份震惊世界的机密文档,其中包含了多个 Windows 远程漏洞利用工具.本文主要介绍了其中一款工具Fuzzbunch的分析与利用案例 1 整体目录介绍 解压EQGR ...

  3. Eclipse与Android源码中ProGuard工具的使用

    由于工作需要,这两天和同事在研究android下面的ProGuard工具的使用,通过查看android官网对该工具的介绍以及网络上其它相关资料,再加上自己的亲手实践,算是有了一个基本了解.下面将自己的 ...

  4. OpenCV成长之路(3):模仿PhotoShop中魔术棒工具

    本文的主题实际上是图像的颜色空间的转换,借助一个颜色选取程序来说明OpenCV中颜色转换函数的用法以及一些注意事项. 一.几种常见的颜色空间: RGB颜色空间:RGB采用加法混色法,因为它是描述各种“ ...

  5. Redis数据导入工具优化过程总结

    Redis数据导入工具优化过程总结 背景 使用C++开发了一个Redis数据导入工具 从oracle中将所有表数据导入到redis中: 不是单纯的数据导入,每条oracle中的原有记录,需要经过业务逻 ...

  6. Struts2 REST 插件 XStream 远程代码执行漏洞 S2-052 复现过程

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  7. 有谁知道Delphi中"窗口"的创建过程?

      求助:有谁知道Delphi中窗口的创建过程,此“窗口”不仅仅指 TForm 类型, 还包括一般的窗口控件,如TButton,TEdit等等,希望有能够十分详细的运作 过程,比如说CreatPara ...

  8. 逆向中静态分析工具——IDA初学者笔记

    逆向中静态分析工具——IDA初学者笔记 //****************************************************************************** ...

  9. .NET领域驱动设计—初尝(一:疑问、模式、原则、工具、过程、框架、实践)

     .NET领域驱动设计—初尝(一:疑问.模式.原则.工具.过程.框架.实践) 2013-04-07 17:35:27 标签:.NET DDD 驱动设计 原创作品,允许转载,转载时请务必以超链接形式标明 ...

随机推荐

  1. np.unravel_index

      >>> np.unravel_index([22, 41, 37], (7,6)) (array([3, 6, 6]), array([4, 5, 1]))>>> ...

  2. c语言笔记 数组2

    15. c99以前一直使用 gets 和 puts来输入输出字符串,但是gets因为无法获知内存大小,容易出现内存溢出(对此c99对gets,采取保留态势,c11直接废除,但是某些编译器仍然默认可以使 ...

  3. Kubernetes中的nodePort,targetPort,port的区别和意义(转)

    原文https://blog.csdn.net/u013760355/article/details/70162242 https://blog.csdn.net/xinghun_4/article/ ...

  4. OpenGL开发学习指南二(glfw+glad)

    版权声明:本文为博主原创文章,未经博主允许不得转载.blog.liujunliang.com.cn https://blog.csdn.net/qq_33747722/article/details/ ...

  5. Chap2:什么是shell[The Linux Command Line]

    shell - a program that takes keyboard commands and passes them to the operating system to carry out ...

  6. day 0308 编码的进阶 文件操作

    一.编码的进阶: 在python3以后,字符串和bytes类型彻底分开,字符串以字符为单位进行处理的,bytes类型是以字节为单位处理的. bytes数据类型在所有的操作和使用与字符串方法基本一样,也 ...

  7. (未完成)在block内如何修改block外部变量

    变量必须用__block修饰,否则编译不通过 block内部会把变量拷贝到堆区 变量从栈区copy->堆区 通过对对象取地址,打印出对象在内存中的地址 &a block不允许修改外部变量 ...

  8. vue router拦截器的简单使用

    之前,为了实现router跳转的每个页面的url上都带上addressCode,然后用了一下router拦截器,很好用,当然也可以专门封装一个方法来实现(跳转的页面上带有addressCode),不过 ...

  9. 洛谷P3250 网络 [HNOI2016] 整体二分

    正解:整体二分+树状数组 解题报告: 传送门! 亲这里的建议是用整体二分呢 dbq最近看sd淘宝说话体看多了有点脑抽,,, 首先考虑如果是单组询问怎么做昂QAQ 考虑二分答案 对于所有比mid小的操作 ...

  10. Sublime_text编辑器插件安装

    Sublime_text 3下载与安装详细教程 参考: https://blog.csdn.net/weixin_40682842/article/details/78727266 http://ww ...