获取一台主机的本地管理员组成员账号的口令NTLM后,无法破解密码,使用PTH方法将管理员账号及NTLM注入当前会话作为凭据,利用该凭据可以渗透获取周围的主机的管理权限,如果对方存在相同账号及密码,进行密码碰撞是可以获取到这些主机权限的 黄金票据生成,是生成有效的TGT Kerberos票据,并且不受TGT生命周期的影响(TGT默认10小时,最多续订7天),这里可以为任意用户生成黄金票据,然后为域管理员生成TGT,这样普通用户就可以变成域管理员 因此黄金票据攻击测试本身就是个无解的死循环,所以他并不是一种普通的攻击方式,该攻击方式其实是一种后门的形式,属于第二次进行攻击的方法,第一次拿到域管权限之后,需要将krbtgt hash进行保存,当第二次再来进行渗透攻击时 写入证书,从而提升为域管理员 mimikatz.exe "kerberos::ptc TGT_hh@safe-duck.com.ccache" exit 7.再次列出域控制器的C盘目录,成功访问域控的 实验环境及实验条件: 1.已得到域管理员账号密码 2.win7 充当被拿了shell的域内普通机器 ---- 实验步骤 1.和域控建立空链接 #与域控建立空连接net use \\192.168.1.11
工具: SetSPN查询: windows系统自带的setspn可以查询域内的SPN #查看当前域内所有的SPN: setspn -Q */* #查看指定域xie.com注册的SPN: setspn (DC)主机定位 利用DNS记录 原理:域控服务器会向DNS服务器注册DNS记录,以便当客户端需要加入域或者和域有其他交互的时候,可以找到它。 引擎来获取远程机器的登录session,并且不需要管理员权限 smb-enum-domains.nse对域控制器进行信息收集扫描,可以获取主机信息,用户,密码策略可以用的用户等 smb-enum-users.nse在进行域渗透的时候 7列; 3.将任务列表与域管理员列表交叉引用,查看你是否进入域管理进程中; 2、查询活跃的域名控制器 据我所知,这个技巧是由一个NetSPI造成的。 ,ntdsutil.exe是域控制器自带的域数据库管理工具,从windows 2008就默认自带了,因此我们可以通过域数据库,提取出域中所有的域用户信息,在域控上依次执行如下命令,导出域数据库: 创建快照
域渗透之导出域Hash 前言 网上采集了一些域内导出NTDS.dit文件的方式 Hash 值存储在域控制器中(C:\Windows\NTDS\NTDS.DIT) Mimikatz Mimikatz有一个功能 渗透测试中可以用它来拍摄 ntds.dit 文件的快照 # 创建快照 ntdsutil snapshot "activate instance ntds" create quit quit GUID 为 {aa488f5b-40c7-4044-b24f-16fd041a6de2} # 挂载快照 ntdsutil snapshot "mount GUID" quit quit # 复制 ntds.dit \GLOBALROOT\Device\HarddiskVolumeShadowCopy1 "Shadow Copy ID" 为 {aa488f5b-40c7-4044-b24f-16fd041a6de2 home/workspace/hash/hash.txt 使用 Ntdsutil、Vssadmin 等卷影拷贝工具时,需要先开启 Volume Shadow Copy Service 服务 参考 [域渗透
我们可以使用Bloodhound等工具对目标主机的域环境进行分析,发现r.thompson用户属于IT组,但不在远程登录组中。 最后,我们根据用户名称TempAdmin推测可能是之前域管的密码,使用密码重用攻击成功登录到administrator域管账号,并使用wmiexec登录域控拿到system权限。 该对象(去除了其大部分属性)将在域的tombstoneLifetime中指定的时间段内保留在分区的“已删除对象”容器中 。在此期间,该对象在技术上是可以恢复的,但其丢失的属性一般可以认为是不可恢复的。 tombstoneLifetime的值 基于创建域林时涉及的 Windows Server 版本。
域渗透实战之Monteverde信息收集:端口扫描使用nmap去探测端口,发现开放了53,88,139等多个端口。接着去识别其端口对应的版本。SMB未授权使用smbclient 去尝试未授权访问。 -C0pSlRp6yZp-4JYyvoeTjxqtXkpMR7VnmJ5qIqJvecNcutXPu-SJDWRvvmW_V2se4V1u1ecuJDe02oAmouL7yp8HrcOBNgn9Jg_f27tHJSbONR-rFWFmeYr-Zi84EJbubYBb7DdzZaoCArbYrgglrAOmz85N9 -7OCwfSJHG9Dja4r8B_iS0-VvcwzRUT_-2t1eNN8vgRgTlgAdotG330U9SshDgVjg27VHIw-e-57ID7FTEjnVfc4loRNjoNJlSAA" 总结:Azure AD Connect 数据库漏洞 (Priv Esc)简介Azure AD Connect 服务本质上负责同步本地 AD 域和基于 Azure 的域之间的事物。 AD 中分配了全局管理员角色的 Azure 帐户Azure AD 连接首先,您需要在 Azure AD 中设置一个具有全局管理员权限的帐户,这可以通过管理门户轻松完成:创建帐户后,我们需要在有权访问域的服务器上安装
域环境搭建 环境 VMware虚拟机:Windows 2012 R2,Windows 7 设置静态ip 这步确实只需要对域控设置静态ip,但我选择设置所有主机为静态ip以固定网络环境。 DC Windows 7 WIN7 控制面板-系统和安全-系统-更改设置-更改 ? 将主机(win7)注册到域 首先测试能否解析域名以及ping通域控,如不能则检查是否DNS设置为域控,防火墙是否禁ping ? 在修改主机名的地方修改所属域 ? 输入域控服务器的登录账号密码 ? 创建成功后即可在win7中用域用户账号登录到域 Windows认证 Kerberos Kerberos认证简介 Windows认证协议有两种NTLM(NT LAN Manager)和Kerberos,前者主要应用于用于 如何关闭取消删除Windows默认共享 net use命令详解 在对方电脑建立IPC连接, 利用IPC$入侵 执行木马 域渗透前置知识
域渗透实战之Resolute 信息收集 端口扫描 使用nmap去扫描端口,发现存在53、125、139、445等端口开放。 接着去收集它的版本。 值得注意的是,从攻击者的角度来看,如果我们是除 DnsAdmins 之外的每个组的成员,那么我们就已经拥有该域。那么,让我们看看如果我们拥有一个 DnsAdmin 可以做什么。 ,对 DNS 服务器对象没有特殊权限(通用读取除外,该权限授予 Windows 2000 之前的兼容访问组的所有成员,默认情况下包含域用户组),该命令失败并显示拒绝访问消息。 虽然这表明如果您是 DnsAdmins 的成员,则可以接管域,但它不仅限于此 — 成功实现此技巧所需的只是一个对 DNS 服务器对象具有写入权限的帐户。 根据我的经验,这些对象的 ACL 通常不像域管理员(或受 AdminSDHolder 保护的类似组)的 ACL 那样保持干净或受监控,因此为小范围的域特权提升提供了很好的机会。
我们可以使用Bloodhound等工具对目标主机的域环境进行分析,发现r.thompson用户属于IT组,但不在远程登录组中。 最后,我们根据用户名称TempAdmin推测可能是之前域管的密码,使用密码重用攻击成功登录到administrator域管账号,并使用wmiexec登录域控拿到system权限。 该对象(去除了其大部分属性)将在域的tombstoneLifetime中指定的时间段内保留在分区的“已删除对象”容器中 。在此期间,该对象在技术上是可以恢复的,但其丢失的属性一般可以认为是不可恢复的。 tombstoneLifetime的值 基于创建域林时涉及的 Windows Server 版本。
前言 域内权限维持的方法总结如下: DSRM 利用基于资源的约束委派进行域权限维持 Delegation Golden Ticket 利用域用户登陆脚本 万能密码(Skeleton-Key) 黄金票据 --DSRM账户是域控的本地管理员账户,并非域的管理员帐户,存储在SAM文件中,所以DSRM密码同步之后并不会影响域的管理员帐户,另外,在下一次进行DSRM密码同步之前,NTLM的值一直有效,且更改域内的 1:只有当本地AD、DS服务停止时,才可以使用DSRM管理员账号登录域控。 2:在任何情况下,都可以使用DSRM管理员账号登录域控。 2.定期修改域中所有域控的DSRM账号。 : 值得注意的是,基于资源的委派,必须是委派双方需资源,例如机器帐户,服务帐户什么的,不能是域用户,下面尝试使用设置域用户帐户设置基于资源的委派,发现能设置,但是实际上是用不了 获取test1域用户的sid
本次多层网络域渗透项目旨在模拟红队攻击人员在授权情况下对目标进行渗透,从外网打点到内网横向穿透,最终获得整个内网权限的过程,包含Laravel Debug mode RCE(CVE-2021-3129 请注意: 本文仅用于技术讨论与研究,对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。 多层隧道代理、内网信息收集、NTLM与SMB Relay攻击、Psexec远控、哈希传递(PTH)、黄金票据、白银票据 攻击过程 信息收集 我们现在开始对目标的攻击,我们首先对入口机web服务器进行渗透测试 目标很有可能存在第三层网络,并且机器是win7 从ipconfig /all中得知两个重要的信息点 1、DNS指向了一个域名,很有可能该机器存在域中 2、192.168.93.20这张网卡大概率是通向域控的 ) 上去之后把mimikatz先给到第三层网络的windows7中,然后再拖入dc机器中,远程连接DC机器 然后再192.168.93.40机器上远程控制域控机器 权限维持---白银票据 我们上了域控之后
以下文章来源于安全加 ,作者谢公子 作者:谢公子 CSDN安全博客专家,擅长渗透测试、Web安全攻防、红蓝对抗。 Kerberoast攻击 kerberoast攻击发生在kerberos协议的TGS_REP阶段,关于kerberos协议详情,传送门:内网渗透 | 域内认证之Kerberos协议详解 Kerberoast SPN服务主体名称的发现 传送门:域渗透之SPN服务主体名称 请求服务票据 使用Rubeus请求 Rubeus里面的kerberoast支持对所有用户或者特定用户执行kerberoasting操作,其原理在于先用 这将允许在服务被访问时模拟任何域用户或伪造账户。此外,提权也是可能的,因为用户可以被添加到诸如域管理员的高权限组中。 攻击者很可能通过破解票据的密码,从域用户权限提升到域管理员权限。因此,应该对服务账户的权限进行适当的配置,并提高密码的强度。
域渗透之Zerologon域提权漏洞 组件概述 Netlogon远程协议是一个远程过程调用(RPC)接口,用于基于域的网络上的用户和计算机身份验证。 Netlogon远程协议用于维护从域成员到域控制器(DC),域的DC之间以及跨域的DC之间的域关系。此RPC接口用于发现和管理这些关系。 成功的利用可以实现以管理员权限登录域控设备,并进一步控制整个域。 -t指定域控ip 运行exp,确定把域控机器账户密码置换成空 完成后使用 python secretsdump.py 域名/ADD-DC$@192.168.11.15 -no-pass 拖hash,获取域管 的值,然后使用reinstall_original_pw.py进行还原凭据 python3 reinstall_original_pw.py Motoo-DCSRV 192.168.159.149 ce7b34c0f2c72d6cb03123ef5ff741ca
密码更改方式一:SYSVOL SYSVOL是AD(活动目录)里面一个存储域公共文件服务器副本的共享文件夹,所有的认证用户都可以读取。SYSVOL包括登录脚本,组策略数据,以及其他域控所需要的域数据。 然后之前的人,常常使用vbs来更改密码,而vbs又是明文密码存储,加上路径域内可随意访问,也就导致了信息漏洞的存在。 Printers.xml) 创建/更新服务(Services.xml) 计划任务(ScheduledTasks.xml) 更改本地Administrator密码 在Group Policy Preferences,选中你的域。 除了这个之外呢,我们也可以使用powersploit套件里面的Get-GPPPassword.ps1进行域内尝试。 ? 果有密码就会直接显示出来。
搭建域环境 目录 部署域架构 如何加入域 域中主机的登录 SRV出错及解决办法 SRV记录注册不成功的可能原因 禁用域中的账户 将计算机退出域 添加域用户 部署域结构 在域架构中 成为域控之后新建的用户,必须满足密码规则。如果成为域控后新建的用户不属于administrators组,则这些用户可以登录除域控外的其他域内主机。 域控只允许administrators组内的用户以域身份登录,域控不能以本地身份登录。 域控中administrator组内的用户都是域管理员! 退出时需要输入域管理员账号和密码。 添加域用户 在域控上添加的用户都是域用户。 如果想在其他域成员主机上添加域用户,需要在域成员主机上以域管理员权限登录,然后执行以下命令添加域用户 net user xie 123456 /add /domain #添加域用户
域内环境搭建 安装域控 这里要选带有GUI的服务器,不然就只有CMD命令行,没有图形化界面 之后持续下一步和同意即可至开机界面。 接下来在Win7上配置IP 本身IP需要与域控在同一C段下,这样才能访问到域控,DNS为域控IP。 此时来到系统下,点击更改设置,选择域而非工作组,域赋值为test.lab 这里输入我们刚刚设置好的用户名和密码 此时点击确定 此时提示需要重新启动,重启后发现还是本机用户,我们这里可以选择域内用户登录 ,可以是普通用户,也可以是域控 我们这里选择切换用户,然后登录域普通用户 此时登录成功后可以尝试ping下域控和DNS 可以发现是Ping通的 此时看下域控处能不能管理Win7 发现此时报错了, 这个其实是由于防火墙导致的,我们关闭Win7防火墙即可,而后再次来到域控右键Win7点击管理 此时可以远程对Win7进行管理
本文只是域渗透基础,用的都是常规手段,所以没有涉及绕过防火墙以及杀软。 梳理思路 这是参照拓扑图 ? 域服务 ? 一路下一步到安装完毕,开始配置 ? 切换域管理账号添加子域 ? 一路安装到重启 子域成员 win7配置IP ? 改名并加入segregation子域,注意域名的填写 ? 搞定 渗透实验 这次实验用主要用metasploit解决,当然Empire也是可以的。 WIN-2003 首先,我们的起点是一台win2003,把它作为内网渗透的突破口 ? 从meterpreter转为普通shell,查看域名和域成员 ? 发现新成员WIN-7,因为一台计算机不能加多个域,所以segregation为子域,查询域控 ? WIN-2012为域控,完整域名为segregation.chuanxiao.com,反查win7的IP ? 由于这台win7没打过补丁,永恒之蓝搞一波,退回meterpreter,添加下路由 ?
在ad2012上配置网段信息为10段 配置域控ad12为10.10.10.137 web打点 信息收集 访问192.168.10.174.发现该cms为ShirneCMS 端口扫描 发现其开放了80端口和 >' into outfile '/tmp/view.tpl' 内网渗透 权限提升 发现 是ubuntu16.04 版本 , 提权exp :https://github.com/luijait/PwnKit-Exploit 判断其存在域环境。 域渗透 使用fscan进行扫描,发现其存在域控。 域控ip为:10.10.10.133 获取域控权限 ZeroLogon(CVE-2020-1472) 提权域控 发现该主机存在ZeroLogon置空漏洞。 使用脚本进行域控密码置空。 获取管理员hahsh wmiexec横向移动 使用wmiexec进行横向移动到域控。 接着使用wmiexec进行横向移动到exchange主机。
svc-alfresco@HTB.LOCAL:93fbd77d6d4b54d331e1a665047d4dfb$8a3d3a98956b1c0a9cf886b8e073db94b6f9be12e2703f641a7d067c9525d45822f2c69308b46c169be00137b1837c894d9df7a2fc4a9c738a115eb8c8cbed813f4ca10ef1163260e0b3c324f55ece2377d8695e914f330e2224caadefe4953435a4f0b26138aab58b45bfdd46c5c62e38dfef85776d3323e2a5abc4179ebd2b57149c7e71042d76846e41668f2b8fe34448e6e3ee75bf4d5716f47997f279af20a1d415e9e1bf1517befef8722dcda7b055065685630bebf2119c04582b81f86d3f42466cfb0c419074b889cb9a8653e6ec74b137746034ceed687c6baeb01e2ae47906f5b7 总结:DCSync与DCshadow是域渗透中经常会用到的技术。 DCSync 之前,获取域的账号口令信息,需要登录域服务器,在域服务器上运行代码才可以获取。DCSync 的最大特点,在于不用登录域服务器,即可远程通过域数据同步复制的方式获得想要的用户口令信息。 DCShadow在具备域管理员权限条件下,攻击者可以创建伪造的域控制器,将预先设定的对象或对象属性复制到正在运行域服务器中。 DC 认可,能够参与域复制 ;3、强制触发域复制,将指定的新对象或修改后的对象属性同步复制到其他 DC 中;1.注册伪造的DC一台机器要想注册成为域中的一台 DC 服务器,需要在域的活动目录中注册一个
MSF 下域内渗透实战 先获取域内机器session ? 3.收集域环境信息+找到域控 利用msf 的端口转发功能来转发一下,然后登入对方的远程桌面看看。 收集域的信息: 3.1.ipconfig /all 找到域控地址192.168.88.130 ? 为了能够获取到域管理员的凭证我们需要用域管理员登录一下远程桌面。 ? 6.嗅探 用 cain.exe 吧 这个嗅探神器 = =,或者msf下的嗅探也可以 7. ipc$ net use \\192.168.88.130\c$ admin@123 /user:payload
,且选项名即为域名; net time /domain 执行该命令,有三种情况:第一种如果存在域会从域控返回时间,并在第一行返回域控及域名;第二种如果当前当前服务器在域内但当前用户非域用户,则会返回 为域控,但如果Domain显示为WORKGROUP则当前服务器不在域内; net config workstation 其中工作域显示域名,同样若为WORKGROUP则非域环境,登录域表明当前用户是域用户登录还是本地用户登录 在内网渗透过程中,说白了就是不断进行信息收集,扩大攻击面,除了以上收集的信息外,我们最关注的也是当前服务器上的所有系统账号密码,这一般有三种情况,首先是服务器本地账户,其次是域用户,当然如果有狗屎运的话抓到域管的账号密码也不是没有可能的 这里简单说一下抓取密码的姿势,第一种就是上传工具在服务器上抓hash,常用的工具有pwdump7、gethashes、QuarksPwDump、mimikaze等,上传这种工具可能会被服务器上的防护软件干掉 sam.hive & reg save hklm\system system.hive & reg save hklm\security security.hive,将生成文件拖回本地使用creddump7从注册表提取