《2024针对域证书服务的攻击分析.docx》由会员分享,可在线阅读,更多相关《2024针对域证书服务的攻击分析.docx(28页珍藏版)》请在优知文库上搜索。
1、针对域证书服务的攻击分析(1)OxOO前言关于域证书服务攻击的白皮书出来大半个月了https:WWW.sDecterws.ioassetsresourcesCertifiedPeOWned.Ddf,下文以白皮书代指。作者也在BH21后放出了利用工具。在前期大家的主要关注点都集中在NT1.MrelayadCSHTTP来获取域控权限的ESC8上。其实白皮书中关于攻击项的技术有19个,我计划边学边写。这个过程中难免出错,望指正。昨天我把域环境搭建好,同时也在其中一台服务器上开启了ADCS服务,打算试试Certify和FOrgeeert工具。在测试Certify工具的时候,看到github的issue
2、的几个讨论,就有不好的预感,果不其然,在编译的时候就报错了。蜻出显示出来源:生成三1已启动全部重新生成:项目:Certify,酉2蛋:ReIeaSeAnyCPU1CSC:errorCS1617:laIgYerSiOn的选项9.0”无效O使用Z1.angversion:?列出支持的值O全部重新生成:成功。个,失败1个,跳过0个我的编译环境是:WinlO2004、VS2019.NET4,解决比较简单,修改Certify.csproj文件中多处:0.9改为default然后在非域用户登录的域内机器上执行1.:UsersredteamDesktopCertify,exefind/vulnerable/
3、domainI*Action:Findcertificatetemplates*Usingthesearchbase,CN=Configuration,DC=redteamlab,DC=com,!UnhandledCertifyexception:System.Runtime.InteropServices.COMException(0x8007054B):指定的域不存在,或无法联系。在System.DirectoryServices.DirectoryEntry.Bind(BooleanthrowIfFail)在System.DirectoryServices.DirectoryEntry.
4、Bind()在System.DirectoryServices.DirectoryEntry.get_AdsObject()在System.DirectoryServices.DirectorySearcher.FindAlKBooleanfindMoreThanOne)在Certify.1.ib.1.dapOperations.GetEnterpriseCAs(StringcaName)在Certify.Commands.Find.FindTemplates(BooleanoutputJSON)在Certify.CommandCollection.ExecuteConimand(String
5、CommandName,Dictionary2arguments)在Certify.Program.MainExecute(StringCommandName,Dictionary2parsedArgs)Certifycompletedin00:00:00.2235080因此判定这个工具基本无法在域夕横用,但从我对原理的粗浅理解来看,是可以实现在域外利用的工具的。这儿暂时跳过,我使用域用户登录域内机器,成功执行。:Wserswinl01709DesktopCertify.exefind/vulnerableAction:FindcertificatetemplatesUsingthesearc
6、hbase,CN=Configuration,DC=redtamlab,DC=com*1.istinginfoabouttheEnterpriseCA,redteaffllab-I,IN2019-mCA,EnterpriseCANameDNSHostnameFullNaaeFlagsCertSubjectNaioeCertThximbprintCertSerialCertStartDateCertEndDateCertChainUserSpecifiedSANCAPermissions:redteamlab-WIN2019-CA:win2019.redteamlab.co:win2019.re
7、dteamlab.coredteaalab-IIN2019-CA:SUPpORTS_KT_AUTHEKneATlON,CA_SERVERTYPE_ADVANCED:CN=redteamlab-WIN2019-CA,DC=redteamlab,DC=com:8132819A0B3586600BA3B8F6AC5B62A68B5651D0:35E1RA11.65ABA85438534F16FEO4O3D:2021/8/417:22:27:2026/8/417:32:27:CN=redteamlab-WIN2019-CA,DCredteaalabaDC=comOwner:BUI1.TINYAdmin
8、istratorsS-l-5-32-544AccessRightsAllow&irollAllowManageCAtManageCertificatesAllowManageCA,ManageCertificatesAllowManageCA,ManageCertificatesEnrollnentAgentRestrictions:NoneNoVulnerableCertificatesTemplatesfound!:DisabledPrincipalXTAUTHORinfKAuthenticatedCsersSTTTlBui1.TINXAdministratorsSTT32-544REDT
9、ElAM1.ABXDomainAdminsS-l-5-21-1582299834-3486534629-3132463485-512REDTE1AM1.ABXEnterpriseAdminsS-l-5-21-1582299834-3486534629-3132463485-519tifycompletedin00:00:01.1935482瞬间就尴尬了,没有危害。还没开始就结束了。好吧,测试之前我们先来配置危害环境。(PS:文中该用漏洞一词的地方我全部以危害代替,原因大家都清楚)0x02危害环境配置我们对白皮书中攻击项的利用进行分类: 窃取类 个体权限维持类(类似银票,后文以银证称呼) 权限提
10、升类 域权限维持类(类似金票,后文以金证称呼)我们先测试里面的权限提升类,这也是大家比较关注的,其他类需要提升权限以后再利用。今天我们主要是测试ESCl,DomainescalationviaNoIssuanceRequirements+EnrollableClientAuthentication/SmartCard1.ogonOIDtemplates+CT_F1.AG_ENRO1.1.EE_SUPP1.IES_SUBJECT”,这句话表达了3个点: 我们需要有权限去获取证书 能够登记为客户端身份验证或智能卡登录等 CT_F1.AG_ENRO1.1.EE_SUPP1.IES_SUBJECT开启
11、我们首先创建T具有以上3个点的证书模板,使用CerttmPI.ms响建。我们复制工作站身份认证模板,在常规中修改模板显示名称为ESCI,扩展中的应用程序策略中加入客户端身份认证。使用者名称发布要求取代模板扩展安全编甯应用程序策略扩展应用程序策略定义如何使用证书.要更改扩展,请选择它,然后单击“编辑”这个模板中包括的扩展(X):日颁发策略基本约束W:密钥用法口应用程序策略证书模板信息应用程序策略的描述(D):客户端身份验证应用程序策略(0):客户端身份验证在安全中加入DomainUserS具有注册权限:密钥证明服务器常规兼容性请求处理加密使用者名称发布要求取代模板扩展安全DomainUsers的
12、权限(P)允许拒绝完全控制:W读取:1写入、:J硼m:自动的:在使用者名称中,选择在请求中提供,也就是开启CT_F1.AG_ENRO1.1.EE_SUPP1.IES_SUBJECT。ESC1JI性常规兼容性请求处理加密密钥证明使用者名称发布要求取代模板扩展安全服务器.在请求中提施义使用现有证书中的使用者信息完成自动注册续订请求(W)()用ActiveDirectory中的信息生成(B)要加强使用者名称之间的一致性并简化证书管理,请选择这个选项。使用者名称格式四:在使用者名称中包括电子邮件名(!)将这个信息包括在另一个使用者名称中:电子邮件名但DNS名()用户主体名称(UPN)(U)服务的主体名
13、称(SPN)Q)然后使用CertSrV.msc,发布我们创建的危害模板信用证书模板啬1CertSfV证书演发机构(本地)redteamlabW!N2019CA证翎文件(F)撰作(八)M(V)电助(三),B力证书颁发机均(本地).媪redteamlab-WIN2019-CA,吊精的证书I一颁发的证书,挂起的申清失败的申调证书模板“I名称司通QJHHisUE的iS国目录电子疆件复制W域控制器身份嫉证51Kerberost0iiE3EFstta国“本EFS厘域控制器工IWeb服务器R计Il机司用户习从属证书颁发机构3ea在it证书激发机沟上选撵启用一个证书模板.注意:如果I1.近创建的证书模板没有出
14、现在此列表上,则在有关此模板的信息餐制端有脸制SB之前可帔IaiR中的所有证M板可修都不适用于你的CA.有关洋蝴K息.atg.名梆网用途回CEPfll密/1.证书中31代理ESC1客户Sm伤验证FExchangeiimPf(IIftywai)证书申调代理GExchangefflPSlPSec3IPSec(RtfWJflI)电OCSP晌应签名目RASKJiAS服务813交叉证书SS发机内7仅Exchange卷名1BIe国ae安全电子邮件IP安全IKE中吸IP安全IKE中圾OCSP签名警户送身份验证.服务81身份睑证(全部安全电子Ie件-A!t)u:r.;f122:H然后刷新刷新,稍等下,使用Certify,检测危害。Certify.exefind/vulnerable危害出现了。!VulnerableCertificatesTemplates:CANameTemplateNameSchemaVersionValidityPeriodRenewalPeriodmsPKI-Certificates-Name-F1agmspki-enrollment-flagAuthorizedSignaturesRequire