Kerberos是一种支持票证身份验证的安全协议。如果客户端计算机身份验证请求包含有效的用户凭据和服务主体名称 (SPN),则 Kerberos 身份验证服务器将授予一个票证以响应该请求。然后,客户端计算机使用该票证来访问网络资源。在内部网络中,SPN扫描通过查询向域控制器执行服务发现。可以帮助我们识别正在运行重要服务的主机,如终端、交换机、微软SQL等,并隐藏他们。此外,SPN的识别也是kerberoasting攻击的第一步。
在使用Kerberos身份验证的网络中,必须在内置计算机帐户(如NetworkService或LocalSystem)或用户帐户下为服务器注册SPN。对于内置帐户,SPN将自动进行注册。但是,如果在域用户帐户下运行服务,则必须为要使用的帐户手动注册SPN。因为域环境中每台服务器都需要在Kerberos身份验证服务注册SPN,所以我们可以直接向域控制器进行查询我们需要的服务的SPN,就可以找到我们需要使用的服务资源在哪台机器上。Kerberos身份验证使用SPN将服务实例与服务登录帐户相关联。如果在整个域中的计算机上安装多个服务实例,则每个实例都必须具有自己的SPN。如果客户端可能使用多个名称进行身份验证,则给定的服务实例可以具有多个SPN。例如,SPN总是包含运行服务实例的主机名称,所以服务实例可以为其主机的每个名称或别名注册一个SPN。
SPN(ServicePrincipal Names,服务主体名称)是服务实例的唯一标识符,当域内存在大量的服务器,管理员为了方便管理会对服务器进行标识,那么管理员标识所使用的方法就是SPN。
内网渗透 | Kerberos 协议与 Kerberos 认证原理 内网渗透 | Kerberos 协议相关安全问题分析与利用
SPN(ServicePrincipal Names)服务主体名称,是服务实例(如:HTTP、SMB、Exchange等服务)的唯一标识符。Kerberos身份验证使用SPN将服务实例与服务登录帐户相关联。如果在整个林或域中的计算机上安装多个服务实例,则每个实例都必须具有自己的 SPN。如果客户端使用多个名称进行身份验证,则给定服务实例可以具有多个SPN。SPN 始终包含运行服务实例的主机名,因此服务实例可以为其主机的每个名称或别名注册SPN。一个用户账户下可以有多个SPN,但一个SPN只能注册到一个账户。如果想使用 Kerberos 协议来认证服务,那么必须正确配置SPN。
由于每台服务器都需要注册用于Kerberos身份验证服务的SPN,因此这为在不进行大规模端口扫描的情况下收集有关内网域环境的信息提供了一个更加隐蔽的方法。
SPN(ServicePrincipal Names)服务主体名称,是服务实例(比如:HTTP、SMB、MySQL等服务)的唯一标识符。
Kerberos是一种支持票证身份验证的安全协议。如果客户端计算机身份验证请求包含有效的用户凭据和服务主体名称 (SPN),则 Kerberos 身份验证服务器将授予一个票证以响应该请求。然后,客户端计算机使用该票证来访问网络资源。在内部网络中,SPN扫描通过 查询向域控制器执行服务发现。这对于红队而言,可以帮助他们识别正在运行重要服务的主机,如终端、交换机、微软SQL等,并隐藏他们。此外,SPN的识别也是kerberoasting攻击的第一步。
假设攻击者破坏了为约束委派设置的帐户,但没有 SeEnableDelegation 权限。攻击者将无法更改约束 (msDS-AllowedToDelegateTo)。但是,如果攻击者对与目标 SPN 关联的帐户以及另一台计算机/服务帐户拥有 WriteSPN 权限,则攻击者可以临时劫持 SPN(一种称为 SPN 劫持的技术),将其分配给另一台计算机/服务器,并执行完整的 S4U 攻击以破坏它。
描述:Nltest是内置于 Windows Server 2008 和 Windows Server 2008 R2 的命令行工具。 如果您有 AD DS 或 AD LDS 服务器角色安装,则可用,如果安装活动目录域服务工具的一部分的远程服务器管理工具 (RSAT)则也可以用。 若要使用nltest您必须从提升的命令提示符下运行nltest命令。 注意:要打开提升的命令提示符,请单击开始用鼠标右键单击命令提示符下,然后单击以管理员身份运行。
本篇继续阅读学习《内网安全攻防:渗透测试实战指南》,本章系统的介绍了域内横向移动的主要方法,复现并剖析了内网域方面最重要、最经典的漏洞,同时给出了相应的防范方法
本地帐户Local Accounts存储在本地的服务器上。这些帐户可以在本地服务器上分配权限,但只能在该服务器上分配。默认的本地帐户是内置帐户(如administrator、guest等),在安装Windows时自动创建。Windows安装后,无法删除默认的本地帐户。此外,默认的本地帐户不提供对网络资源的访问。默认的本地帐户用于根据分配给该帐户的权限来管理对本地服务器资源的访问。默认的本地帐户和后期创建的本地帐户都位于“用户”文件夹中。
当发布Windows 2000和Active Directory时,微软打算在 Windows NT 和Windows 95 上也支持Active Directory,这意味着不仅会产生各种各样的安全问题也会导致更多不安全的配置方式。同时,也意味着,微软要保证在多个不同版本的 Windows 客户端上均支持Kerberos协议。要实现这个想法的一个简单的办法就是在Kerberos协议中使用RC4加密算法,并将NTLM密码哈希作为该加密算法的私钥,该私钥可用于加密或签名Kerberos票证。因此,对于攻击者来说,一旦发现了 NTLM 密码哈希,就可以随意使用,包括重新拿回Active Directory域权限(比如:黄金票证和白银票证攻击)。
在Windows 2000之后微软引入了一个选项,用户可以通过Kerberos在一个系统上进行身份验证,并在另一个系统上工作,这种技术主要通过委派机制来实现,无约束委派通过TGT转发技术实现,而这也是我们将本文中讨论的内容
Kerberos是一种由MIT(麻省理工学院)提出的一种网络身份验证协议,可通过密钥系统为客户端/服务端提供认证服务。它能够为网络中通信的双方提供严格的身份验证服务,确保通信双方身份的真实性和安全性。该认证过程的实现不依赖于主机操作系统的认证,无需基于主机地址的信任,不要求网络上所有主机的物理安全。
Kerberos是一种认证机制。目的是通过密钥系统为客户端/服务器应用程序提供强大的可信任的第三方认证服务:保护服务器防止错误的用户使用,同时保护它的用户使用正确的服务器,即支持双向验证。kerberos最初由MIT麻省理工开发,微软从Windows 2000开始支持Kerberos认证机制,将kerberos作为域环境下的主要身份认证机制,理解kerberos是域渗透的基础。
哈希传递(pth)攻击是指攻击者可以通过捕获密码的hash值(对应着密码的值),然后简单地将其传递来进行身份验证,以此来横向访问其他网络系统,攻击者无须通过解密hash值来获取明文密码,因为对于每个Session hash值都是固定的,除非密码被修改了(需要刷新缓存才能生效),所以pth可以利用身份验证协议来进行攻击,攻击者通常通过抓取系统的活动内存和其他技术来获取哈希。
通过外部资产中获取的JBoss的shell马,拿下了一个冰蝎的webshell。拿到shell之后我一开始是打算上线CS的,但是这里一直都上线不了,不用看了大概率就说杀软的问题。首先来看一下对方系统的基本信息,这里可以看到是存在域环境的。
在渗透测试过程,如果我们获取了一个普通域用户权限,或者针对域环境执行假定入侵渗透测试,我们通常需要枚举域环境是否集成了MS SQL数据库,并测试是否存在漏洞或者误配置可以利用进行权限提升。
微软MS-ADTS(MicroSoft Active Directory Technical Specification)中指出,活动目录是一个依赖于专用服务器架构。域控便是承载此服务的服务器,它托管活动目录对象的数据存储,并与其他的域控互相同步数据,以确保活动目录对象的本地更改在所有域控之间正确的复制。域控间的数据的复制由运行在NTDS服务上一个名为KCC(Knowledge Consistency Checker)的组件所执行。
2018年1月24日,在BlueHat安全会议上,安全研究员Benjamin Delpy 和 Vincent Le Toux 公布了针对微软活动目录域的一种新型攻击技术------DCShaow。利用该攻击技术,具有域管理员权限或企业管理员权限的恶意攻击者可以创建恶意域控,然后利用域控间正常同步数据的功能将恶意域控上的恶意对象同步到正在运行的正常域控上。由于执行该攻击操作需要域管理员权限或企业管理员权限,因此该攻击技术通常用于域权限维持。
在渗透测试中,当进行信息收集与环境侦察时,发现与识别 Exchange 及其相关服务,可以有多种方法与途径。
前言 这次渗透测试是从一个CVE开始的,从阿三外网的Jboss打点到内网然后到域控,手法很简单常规,主要还是要扩展一下思路吧哈哈哈!
IPC,WMI,SMB,PTH,PTK,PTT,SPN,WinRM,WinRS,RDP,Plink,DCOM,SSH;Exchange,LLMNR投毒,Kerberos_TGS,GPO&DACL,域控提权漏洞,约束委派,数据库攻防,系统补丁下发执行,EDR定向下发执行等。
下文仅限于域内的信息收集,均不会涉及域内认证原理等概念,后面会对windows认证方式单独写一篇总结。
我们需要具有 ACL 写入权限才能为目标用户设置 UserAccountControl 标志,请参阅上文以识别有趣的 ACL。使用 PowerView:
一般想知道哪一台是域控知道自己内网的DNS就可以了,一般域控安装都有安装DNS有些不止一台,其次是通过扫描获取开放端口为389机器或者使用NLTEST命令查看。最后就是各种网络查看查看域控是哪台主机
第三方通用组件漏洞: struts、thinkphp、jboss、ganglia、zabbix等
2.AS检查客户端是否在其数据库中,在就会拿出相应用户id对应的hash来当作加密密钥。
5G网络建设已经全面开展,同步网作为基础支撑网络,对于网络质量的保障、业务的发展起到十分重要的作用。相对于4G系统,5G对于同步的精度需求更高,可靠性要求更为严格,应用场景也更复杂,除了TDD系统基本的同步需求之外,5G的站间协同需求、CA/CoMP/MIMO等技术对时间同步提出100 ns级精度要求,高精度定位、车联网、智能制造等行业应用,对于时间同步的精度更是达到10ns以内。现有的同步网络无法完全满足5G时代的同步需求,本文通过分析5G时间同步的需求和5G高精度时间同步的关键技术,提出5G承载高精度时间同步的组网方案。
服务主题名称( SPN: Service Principal Names) 是服务实例, 可以将其理解为一个服务(比如HTTTP、MSSQL)的唯一标识符,服务在加入域中时是自动注册的。
在渗透测试中,往往会遇到企业内网环境中使用的一些常用组件,这些组件对内或对外提供了服务与接口,也给渗透测试人员与黑客提供了新的可尝试的攻击面,合理的利用组件服务提供的功能和接口,可以帮助渗透测试人员完成信息收集、环境侦测,甚至通过其漏洞弱点、配置缺陷、功能滥用直接拿下权限,在渗透测试与后渗透阶段达到事半功倍的效果。 Windows Exchange Server,应该是国内外应用都非常广泛的邮件服务器了,本文将围绕Exchange展开,介绍在渗透测试中对Exchange服务器的攻击利用。
krbtgt 用户,该用户是在创建域时系统自动创建的一个账号,其作用是密钥发行中心的服务账号,其密码是系统随机生成的,无法正常登陆主机。
很多新入门的同学在在拿下一台服务器权限后经常会出现不知道做什么的问题,往往就会不管三七二十一提权 exp 一顿砸,在宕机的边缘疯狂试探。
本文介绍如何创建用作蜜罐(或蜜令牌)的帐户,这些帐户看起来像是提供了攻击者想要的东西(访问),但最终提供了防御者想要的东西(检测)。重点是使蜜罐帐户在 Active Directory 中看起来正常且“真实”,并且此前提应该在某种程度上可以移植到其他系统。
kerberoast攻击发生在kerberos协议的TGS_REP阶段,关于kerberos协议详情,传送门:内网渗透 | 域内认证之Kerberos协议详解
作者 Rabbit_Run 微软的活动目录默认使用Kerberos处理认证请求。在BlackHat 2014上神器Mimikatz的作者剖析了微软实现的Kerberos协议中存在的安全缺陷,并通过神器Mimikatz新添功能“Golden Ticket”展示了如何利用这些安全缺陷,让Kerberos把守的地狱之门为大家敞开。 一、快速介绍 Kerberos 是Windows活动目录中使用的客户/服务器认证协议,为通信双方提供双向身份认证。相互认证或请求服务的实体被称为委托人(principal)。参与的中央
是将域用户的权限委派给服务账号,委派之后,服务账号就可以以域用户的身份去做域用户能够做的事
为了进行相关安全方面的认证,需要对公司域环境内员工账号的密码进行审计,作为一名刚从事信息安全的人员,尝试在本身拥有的权限以内,在不影响其他员工日常工作、不影响服务器正常运行的情况下,审计出使用弱密码作为登录口令的员工。
给机器添加RBCD的前提:1.自己能给自己添加 2.ACL→Account Restriction/msDS-AllowedToActOnBehalfOfOtherIdentity属性→creator-sid/backdoor/high level user。如果对计算机对象/域用户具Account Restriction和msDS-AllowedToActOnBehalfOfOtherIdentity属性的WriteProperty,就能进行基于 资源约束委派的利用。
对于任何计算环境来讲,身份验证是最基本的安全要求。简单来说,用户和服务必须先向系统证明其身份(身份验证),然后才能在授权范围内使用系统功能。身份验证和授权携手并进,以保护系统资源。授权有多种方式处理,从访问控制列表(ACL)到HDFS扩展的ACL,再到使用Ranger的基于角色的访问控制(RBAC)。
说明:梦里项目,相关信息如ip,域名,账户等信息都是后期编的,可能会出现文不对题,不要纠结细节。
大家好,这里是 渗透攻击红队 的第 62 篇文章,本公众号会记录一些红队攻击的案例,不定时更新
在多道程序设计系统里,内存有多个进程,且或者在处理器上运行,或者在等待某种事件的发生(如I/O完成)。当处理器(或组)通过执行某个进程而保持忙状态,则其他的进程处于等待状态。
服务主体名称 (SPN) 是 Active Directory (AD) 数据库中的记录,显示哪些服务注册到哪些帐户:
早在2013年9月,蜘蛛实验室( Spider Labs)就发表过一篇题为“SpiderLabs在你内网中获取域管的五大方式”的文章。这篇文章是我继该文的,应该说是非官方的“Part 2”部分。
身份验证是任何计算环境的基本安全要求。简单来说,用户和服务必须先向系统证明其身份(身份验证),然后才能在授权范围内使用系统功能。身份验证和授权携手并进,以保护系统资源。授权使用多种方式处理,从访问控制列表(ACL)到HDFS扩展ACL,再到使用Ranger的基于角色的访问控制(RBAC)。
领取专属 10元无门槛券
手把手带您无忧上云