156-160.网络安全渗透测试—[Cobalt strike系列]—[域内渗透/信息收集/本地管理员/远程命令执行文件操作/Mimikatz/登录认证/自动化横向渗透/socks代理/中转监听器]

我认为,无论是学习安全还是从事安全的人多多少少都有些许的情怀和使命感!!!

文章目录

一、Cobalt Strike域内渗透

1 实验环境

1.1 实验拓扑
  • 模拟WebServer服务器的win7具有双网卡,与攻击者在同一网段(192.168.97.0),因此可以直接被攻击者访问,在现实中就是公网发布的一个网站服务器。
  • 模拟WebServer服务器的win7、模拟Database服务器的Win2008R2-2、域控制器Win2008R-1在同一网段(10.0.0.0),模拟的是一个内网环境,同时也在同一个域内,因此可以相互访问。

在这里插入图片描述

1.2 环境搭建
1.2.1 关闭各自域内防火墙

//否则不能探测到除了自己之外的域内主机
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

1.2.2 配置DC组策略:自动化让域用户加入到各自客户端的本地管理员组

    在企业管理中,因为普通域用户在做一些高级别操作的时候(比如网络配置),需要用到域管理员的账号和密码。有时候管理员为了方便就会把DC分配的普通的域用户增加到相应的目标主机的本地管理员组,那么使用域用户登录这些目标主机的再去做配置的时候就不需要域的超级管理员账号和密码。
//这里把准备把DC之前分配的 database1 和 web9527 域用户分别添加至 Database-2009-1主机 与 WebServer-Win主机 的本地管理员组

【 通过DC设置组策略,自动把登陆到客户端的域用户加入到各自本地管理员组】
第一步:使用DC账户登录到域控主机后,键入Windows+r—>输入gpmc.msc—>键入回车—>从而调出组策略管理
在这里插入图片描述
//如下图所示:组测路管理视图
在这里插入图片描述
第二步:在组策略管理的视图下,双击打开林—>双击打开域—>双击打开demo1.com—>右键Default Domain Policy—>点击编辑,从而调出组策略编辑器
在这里插入图片描述
//如下图所示:组策略编辑器视图
在这里插入图片描述

第三步:在组策略编辑器的视图下,进入用户配置—>首选项—>控制面板设置→本地用户和组—>在右侧空白处,新建本地组,由于是要修改客户端计算机上的本地组信息,因此选择新建本地组
//注意要在用户配置下设置,若是在计算机配置下配置,则需要重启DC虚拟机
在这里插入图片描述
第四步:操做中的“更新”表明更新域客户端Administrators组中的成员,而不是新建组—>“添加当前用户”表示添加登陆时的域账号到客户端系统的本地Administrators组,只要域账号一登陆,就把它加入本地管理员组,也能够同时选中右边的“删除全部成员用户”或者是“删除全部成员组”,意思是将当前登陆的用户加入到本地管理员组的时候,删除其余成员用户或者是组,以起到动态加入管理员组的效果,也就是始终保持最近登陆的用户是在管理员组中。

在这里插入图片描述

第五步:域控计算机cmd中运行输入gpupdate /force刷新服务器组策略
在这里插入图片描述
第六步:使用database1和web9527域用户分别登录到各自的database-2008-1和webserver-win7计算机客户端,若已经登录了需要注销后重新登录,打开各自cmd,输入net localgroup administrators查看各自的本地管理员组是否存在当前登录到客户端的域用户

在这里插入图片描述

在这里插入图片描述

1.2.3 DC组策略配置不当导致的权限问题:其他域用户获取本地管理员权限

    假如,我们用本该是分配给WebServer-Win7成员服务器的域用户web9527登录到了Database-2008-1主机上,那么由于DC上对组策略的配置不当(客户端自动记录登录的域用户到本地管理员组),就会导致web9527域用户成为Database-2008-1主机上的本地管理员组用户。

环境设置: 使用分配给WebServer-Win的web9527域用户登录到Database-2008-1主机
//如下图所示:发现Database-2008-1主机把域用户web9527加入到了本地管理员组,也就获得了其本地管理员身份。
在这里插入图片描述

1.2.4 WinRM 服务的配置不当导致的问题:在权限允许下可远程执行脚本命令

    WinRM(Windows Remote Management)是Windows对WS-Management的实现,运行在 5985 端口上,WinRM服务允许远程用户使用工具和脚本对Windows服务器进行管理并获取数据。Server2008 R2中默认没有开启该服务,从Server2012开始,该服务便集成在系统中默认开启,Win7默认安装此服务,但是默认为禁用状态,这种远程连接不会被客户端察觉到,也不会占用远程连接数。

环境设置: 使用Database-2008-1的本地管理员Database-2008-1\Administrator用户登录到本地计算机,然后在cmd下输入命令快速开启winrm服务:winrm quickconfig
//如下图所示:成功开启
在这里插入图片描述

1.2.5 Win7虚拟机设置不休眠不关闭显示器:防止自动挂起导致的会话关闭

//否则在实验过程中,会出现长期不使用而导致自动挂起虚拟机的现象
在这里插入图片描述

2 实验1:获取webserver跳板机会话+通过webserver的smb会话域内信息收集、测试database成员服务器

2.1 获取webserver跳板机的会话,派生smb会话

    在开始域内渗透之前,先说明下现在的情况,假设我们的WebServer-Win7虚拟机开启了Web服务且存在漏洞,首先我们利用漏洞获取到了一定的会话,然后我们通过CS的脚本Web传递拿到了该主机的的Beacon会话,并且为了尽可能不被内网态势感知防火墙发现,派生SMB Beacon,SMB Beacon 就是为了内网横向扩展渗透而设计的。(以下的测试都是在SMB Beacon下进行的)
在这里插入图片描述
在这里插入图片描述

2.2 通过webserver的smb会话,进行域内信息收集
2.2.1 查询当前用户权限
【Windows命令在beacon下执行】

(1)获取当前用户信息:shell whoami
//如下图所示:发现当前用户是demo1域内的web9527域用户
在这里插入图片描述

(2)获取当前域用户名与域用户SID:shell whoami /all
//SID是安全标识符,标识着用户的唯一性
//SID = 系统ID(此处是域ID) + 用户ID
//对于同一个系统的不同用户,系统ID相同,用户ID不同且有一定的顺序
//管理员用户的用户ID是500
//普通用户的用户ID是从1000开始
//如下图所示:当前shell的用户是demo1域内的web9527用户,且根据SID判断它是普通用户,但是通过别名发现他存在于本地的Users和Administrators组
在这里插入图片描述

(3)查询当前域用户详细信息:shell net user web9527 /domain
//查询本地用户详细信息:net user web9527,这里判断域用户是否也存在于本地
//如下图所示:发现web9527并不是本地用户,只是域用户且是Domain Users域组内的用户,同时通过注释可以发现该域用户也在当前机器的本地管理员组。
在这里插入图片描述

2.2.2 判断是否存在域并查询域名
【Windows命令在beacon下执行】

(1)查询当前IP和判断是否存在域姿势1:shell ipconfig /all
//如下图所示:发现当前域是demo1.com
在这里插入图片描述
//如下图所示:当前webserver机器有两张网卡,一张模拟外网的192.168.97.130网段,一张模拟内网的10.0.0.0网段
在这里插入图片描述

(2)查询系统信息和判断是否存在域姿势2:shell systeminfo
//如下图所示:域为demo1.com
在这里插入图片描述

(3)查询当前域名姿势1:shell net view /domain
//前提:靶机的域防火墙需要关闭,否则会返回“发生系统错误 6118。”
//若是显示 WORKGROUP,则不存在域;
//如下图所示:发现当前域名是DEMO1
在这里插入图片描述

(4)查询当前域姿势2:shell net config workstation
//如下图所示:当前域名为DEMO1
在这里插入图片描述

2.2.3 查询当前域内主机并查询域控信息
【Windows命令在beacon下执行】

(1)查询当前域内主机列表姿势1:shell net view /domain:demo1
//如下图所示:发现了三台域内主机
//若所有的成员服务器都关闭了域防火墙,则只能探测到域控
//如下图所示:因为没有关闭各个成员服务器的域防火墙,因此只能探测到域控而探测不当域成员服务器
在这里插入图片描述
//如下图所示:关闭了各个成员服务器的域防火墙,因此可以探测到所有的域成员服务器
在这里插入图片描述

(2)通过查询域主机组来查询当前域内主机列表姿势2:shell net group "domain computers" /domain
//domain computers是域内主机组,存储着所有的加入到该域内的主机
//如下图所示:发现了两台主机主机加入到了该域,不显示域控,是因为域控并不存储在这个组内
//该探测不需要关闭成员服务器的域防火墙就可以探测到,因为这个组是在DC上的,我们跟DC是互通的。
在这里插入图片描述

(3)通过ping当前网段来查询域内主机姿势3:shell for /L %I in (1,1,254) do @ping -w 1 -n 1 10.0.0.%I | findstr "TTL="
//若各个成员服务器没有关闭域防火墙,则不会收到来自其他成员服务器的响应
//如下图所示:因为成员服务器没有关闭域内防火墙,因此只能探测到自己和域控
在这里插入图片描述
//如下图所示:成员服务器关闭了各自的防火墙,因此可以探测到所有的主机
在这里插入图片描述

(4)查询当前域的域控姿势1:shell C:\windows\sysnative\nltest /dclist:demo1
//注意:nltest命令要先转到 64位的位置下再执行,因为默认

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qwsn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值