您现在的位置是:首页 >其他 >24年某企网络安全大赛wp网站首页其他

24年某企网络安全大赛wp

须臾7992 2025-08-03 12:01:03
简介24年某企网络安全大赛wp

EZ_AD

题目描述:

安全研究员小张在集团办公内网捕获到一份异常流量,请你帮助小张分析,找到其中的可疑内容。

参考自:https://1cepeak.cn/posts/yqds2024-writeup/

首先我看到有三个流量包,先合并了它们,命名为all.pcap

一共要解密三种协议的流量

  • SharpADWS 的流量(包裹在 NMF 中的 GSS-API 流量)
  • SMB2(通过 Kerberos 申请 cifs 的票据)
  • DCERPC

第一步先提取NTLM v2数据爆破用户密码,有一个很好用的一键提取工具NTLMRawUnHide

python3 NTLMRawUnHide.py -i xxx.pcapng

sk::sk.com:77534d575de5f632:83889cdf4d1336bd3cc92f23c94f1f6d:010100000000000080a6da2b0464db012ad8e6c2d43a869c000000000200040053004b00010004004400430004000c0073006b002e0063006f006d0003001200440043002e0073006b002e0063006f006d0005000c0073006b002e0063006f006d00070008009dafb62b0464db01090036006c006400610070002f003100390032002e003100360038002e003100370039002e00310033003100400073006b002e0063006f006d000000000000000000

爆出来密码是!@#123QWEqwe

hashcat -m 5600 -a 0 "sk::sk.com:77534d575de5f632:83889cdf4d1336bd3cc92f23c94f1f6d:010100000000000080a6da2b0464db012ad8e6c2d43a869c000000000200040053004b00010004004400430004000c0073006b002e0063006f006d0003001200440043002e0073006b002e0063006f006d0005000c0073006b002e0063006f006d00070008009dafb62b0464db01090036006c006400610070002f003100390032002e003100360038002e003100370039002e00310033003100400073006b002e0063006f006d000000000000000000" rockyou.txt

SK::sk.com:77534d575de5f632:83889cdf4d1336bd3cc92f23c94f1f6d:010100000000000080a6da2b0464db012ad8e6c2d43a869c000000000200040053004b00010004004400430004000c0073006b002e0063006f006d0003001200440043002e0073006b002e0063006f006d0005000c0073006b002e0063006f006d00070008009dafb62b0464db01090036006c006400610070002f003100390032002e003100360038002e003100370039002e00310033003100400073006b002e0063006f006d000000000000000000:!@#123QWEqwe

请添加图片描述

手动提取过程:

  1. 筛选数据包

    • 通过“ntlmssp”这一字符串进行数据包筛选,以获得身份验证的握手包。
  2. 查找NTLMSSP_AUTH包

    • 在筛选后的数据包中,查找NTLMSSP_AUTH包。这通常是包含NTLM v2响应的数据包。
  3. 深入查找NTLM响应部分

    • 在NTLMSSP_AUTH包中,深入查找NTLM响应部分。找到NTProofStr字段和NTLMv2的响应。
  4. 复制字段值

    • 将以下信息复制到文本文档中:

      • 用户名(User Name)

        SK

      • 域名(Domain Name)

        sk.com

      • NTLM Server Challenge字段(通常位于NTLM_Auth数据包之前,可以通过搜索过滤器“ntlmssp.ntlmserverchallenge”找到)

        NTLM Server Challenge: 77534d575de5f632

      • NTProofStr字段值(作为十六进制字符串)

        83889cdf4d1336bd3cc92f23c94f1f6d

      • 修改后的NTLMv2响应(从NTLMv2的响应中删除ntlmProofStr后的部分)

        010100000000000080a6da2b0464db012ad8e6c2d43a869c000000000200040053004b00010004004400430004000c0073006b002e0063006f006d0003001200440043002e0073006b002e0063006f006d0005000c0073006b002e0063006f006d00070008009dafb62b0464db01090036006c006400610070002f003100390032002e003100360038002e003100370039002e00310033003100400073006b002e0063006f006d000000000000000000
        请添加图片描述
        请添加图片描述
        请添加图片描述

将密码导入NTLMSSP

请添加图片描述

请添加图片描述

在最后一个GSS-API的Payload中可以看到是在修改Administrator的密码。结合编码规则:https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/6e803168-f140-4d23-b2d3-c3a8ab5917d2

得到账户的密码是02)78M5CcE=+

0df]&CN=Administrator,CN=Users,DC=sk,DC=com0301
0,
unicodePwd1"02)78M5CcE=+"

这样就拿到了用户Administrator的密码,之后都是使用Administrator用户进行Kerberos认证的。那我们制作Administrator用户的keytab就可以解密DCERPC流量了。 这里使用Create-KeyTab工具制作。
在这里插入图片描述

将制作完的keytab导入krb5即可解密DCERPC流量
请添加图片描述

找到TGS-REP里面的SessionKey和SMB2 Response里面的SessionID

这里需要对Kerberos协议认证过程非常之熟悉。

在这里插入图片描述

在这里插入图片描述

上边这一步有些坑,要复制16进制流,不能复制它显示出来的值

找到的sessionkey和sessionid如下

Session IDSession Key
510000080018000038da7bd9fdba2dd52ce2d670e59d498465
550000080018000078e3e3f1559813f7286374a816b99862219
5900000800180000438eb94d0c8dc85f658edefd2470197f263
6500000800180000b97c4cc93e3a424aacccd4dafba3ceca310
6900000800180000b40ccbe618c34a3c54716ac5ba14408d375
1100000c001800003c4276a33a529832163bb2b7d7e3db87565

导入Wireshark解密SMB2协议流量
在这里插入图片描述

再导出SMB协议传输的文件
在这里插入图片描述

看到了心仪的对象“flag.zip”

导出来 发现有密码

继续往下看流量

发现了TaskSchedulerService 协议

在这里插入图片描述

在这里插入图片描述

导出这个xml

NGNhFjsY<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <Triggers>
    <CalendarTrigger>
      <StartBoundary>2015-07-15T20:35:13.2757294</StartBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
  </Triggers>
  <Principals>
    <Principal id="LocalSystem">
      <UserId>S-1-5-18</UserId>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>true</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="LocalSystem">
    <Exec>
      <Command>cmd.exe</Command>
      <Arguments>/C C:Windows7z.exe x -pwvnNDOLkjyXZ925aJ32x822dEe C:Windowsflag.zip -y &gt; %windir%TempNGNhFjsY.tmp 2&gt;&amp;1</Arguments>
    </Exec>
  </Actions>
</Task>
        

发现其中存在一行命令

cmd.exe /C C:Windows7z.exe x -pwvnNDOLkjyXZ925aJ32x822dEe C:Windowsflag.zip -y &gt; %windir%TempNGNhFjsY.tmp 2&gt;&amp;1

看到了压缩包密码wvnNDOLkjyXZ925aJ32x822dEe

在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。