强制完整性级别(MIL)和用户账户控制(UAC)的联系与区别
强制完整性级别(MIL) 和 用户账户控制(UAC) 都是 Windows 操作系统中的安全机制,旨在增强系统的安全性并防止恶意软件和攻击者在系统中获得更高的权限。尽管它们有共同的目标,但它们的工作原理、应用范围和作用对象有所不同。以下是对这两者的详细对比。
1. 强制完整性级别(MIL)
强制完整性级别(Mandatory Integrity Level, MIL)是 Windows 安全模型的一部分,用于标识对象(如进程、文件、注册表等)的安全级别。每个对象都有一个完整性级别,决定它与其他对象的交互方式,特别是限制较低完整性级别的进程对较高完整性级别对象的操作。
完整性级别的类型:
- Low:低完整性级别,常用于不可信的进程(例如浏览器)。
- Medium:中等完整性级别,通常用于普通用户进程。
- High:高完整性级别,通常用于管理员进程。
- System:系统级完整性,适用于操作系统核心组件。
工作原理:
- 强制完整性级别通过 Windows 安全模型来控制对象之间的访问权限。一个低完整性级别的进程不能修改或访问高完整性级别的进程或文件,这样可以有效防止恶意软件通过用户进程进行攻击。
- 它在 访问控制列表(ACL)中使用 Mandatory Label 来定义每个进程、文件或其他对象的完整性级别。
2. 用户账户控制(UAC)
用户账户控制(User Account Control,UAC)是 Windows 中的安全功能,旨在限制程序在系统中执行时所能获得的权限。UAC 通过弹出提示来询问用户是否授予管理员权限,目的是减少恶意软件在不知情的情况下获取管理员权限。
工作原理:
- UAC 主要控制程序是否能够在管理员权限下运行。当用户尝试运行需要管理员权限的应用程序时,UAC 会弹出一个确认对话框,询问用户是否允许该程序获得提升权限。
- 它通过 进程令牌 来控制进程的权限。当一个程序请求管理员权限时,UAC 会创建一个提升后的令牌,允许该程序以管理员身份运行。
- UAC 机制不依赖于进程的完整性级别,而是基于用户权限和应用程序是否需要提升权限。
3. 强制完整性级别(MIL)与 UAC 的联系
尽管 强制完整性级别 和 UAC 是不同的安全机制,它们有一些共同的目标——防止恶意程序和用户操作破坏系统的完整性。它们之间的联系可以体现在以下几个方面:
- UAC 和 MIL 都可以限制进程的权限。在 UAC 启用的情况下,系统会要求提升权限,而 MIL 通过强制不同完整性级别之间的访问控制,防止低完整性进程对高完整性进程进行不当操作。
- 如果 UAC 被启用并且进程以管理员权限运行,该进程将拥有高完整性级别(例如 High)。如果该进程是低权限的用户启动的,它将具有 Medium 完整性级别。这样,UAC 提供的是一个权限提升机制,而 MIL 则是对已经存在的进程或对象设置的访问控制。
4. 强制完整性级别(MIL)与 UAC 的区别
虽然 MIL 和 UAC 都与进程的权限相关,但它们的实现方式和作用范围不同:
实现方式的不同:
- UAC 通过用户提示来控制程序是否能够获得管理员权限。如果程序需要以管理员身份运行,UAC 会弹出对话框请求用户确认。即使是一个低权限的用户,若执行特定操作(例如安装软件),也可以通过 UAC 获得管理员权限。
- MIL 则是通过操作系统内部的完整性级别来控制进程之间的交互和资源访问。它基于强制性访问控制,不依赖于用户的输入。低完整性级别的进程不能对高完整性级别的进程进行修改。
作用范围的不同:
- UAC 主要用于限制进程的权限提升,防止恶意程序在用户不知情的情况下获取管理员权限。它影响的是进程的 令牌,即控制程序是否能够执行高权限操作。
- MIL 控制的是进程与文件、注册表等资源之间的交互。例如,低完整性进程不能写入高完整性文件或修改高完整性进程的状态。
是否依赖用户输入:
- UAC 需要用户的干预(确认或拒绝),因此 UAC 的行为是用户驱动的。
- MIL 是系统自动控制的,用户没有直接干预的机会,除非管理员手动配置对象的完整性级别。
总结:MIL 与 UAC 的联系与区别
- 联系:它们都旨在提高 Windows 操作系统的安全性,防止恶意程序或用户破坏系统的完整性。二者都通过限制进程的权限来防止低权限进程对高权限进程进行不当操作。
- 区别:UAC 主要关注通过用户授权提升程序权限,而 MIL 是通过强制的安全策略限制不同完整性级别的进程和对象之间的交互。UAC 基于用户输入控制权限,而 MIL 是系统自动实施的。
这些机制是互补的,结合使用时能够增强系统的防御能力,确保恶意程序即使成功执行也无法轻易获取系统级权限。
相关文章:
强制完整性级别(MIL)和用户账户控制(UAC)的联系与区别
强制完整性级别(MIL) 和 用户账户控制(UAC) 都是 Windows 操作系统中的安全机制,旨在增强系统的安全性并防止恶意软件和攻击者在系统中获得更高的权限。尽管它们有共同的目标,但它们的工作原理、应用范围和…...
性能附录:如何计算并发用户数(摘自高楼老师《性能30讲》)
高楼老师《性能30讲》: 性能测试实战30讲-极客时间 感兴趣的同学可以去读一下,个人感觉写的非常好 目录 什么是并发? 在线用户数、并发用户数怎么计算 总结 什么是并发? 我们假设上图中的这些小人是严格按照这个逻辑到达系统的,那显然,…...
视频推拉流EasyDSS点播平台云端录像播放异常问题的排查与解决
EasyDSS视频直播点播平台是一个功能全面的系统,提供视频转码、点播、直播、视频推拉流以及H.265视频播放等一站式服务。该平台与RTMP高清摄像头配合使用,能够接收无人机设备的实时视频流,实现无人机视频推流直播和巡检等多种应用。 最近&…...
【Python系列】Python 连接 PostgreSQL 数据库并查询数据
???欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老…...
辛格迪客户案例 | 甫康(上海)健康科技有限责任公司药物警戒管理系统(PVS)项目
01 案例企业 甫康(上海)健康科技有限责任公司(简称“甫康”)该公司成立于2015年11月3日。公司的核心团队由来自中国和国外顶级制药公司的专业人士组成,与中国科学院上海药物研究所等知名研究机构保持紧密合作。此外,甫康药业还与…...
重新审视 ChatGPT 和 Elasticsearch:第 2 部分 - UI 保持不变
作者:来自 Elastic Jeff Vestal 本博客在第 1 部分的基础上进行了扩展,介绍了基于 RAG 的搜索系统的功能齐全的 Web UI。最后,你将拥有一个将检索、搜索和生成过程结合在一起的工作界面,同时使事情易于调整和探索。 不想读完整个内…...
坐标变换及视图变换和透视变换(相机透视模型)
文章目录 2D transformationScaleReflectionShear(切变)Rotation around originTranslationReverse变换顺序复杂变换的分解 齐次坐标(Homogenous Coordinates)3D transformationScale&TranslationRotation Viewing / Camera t…...
基于反激电路的电池充放电均衡控制
基于反激电路的电池充放电均衡控制是一种高效的能量转移型主动均衡方法,适用于锂离子电池组等串联电池组的管理。以下从原理、拓扑结构、控制策略和设计要点进行详细分析: 一、基本原理 反激电路(Flyback Converter)是一种隔离型…...
Windows版FFmpeg使用及B站视频下载示例python源码
Windows版FFmpeg使用及B站视频下载示例python源码 FFmpeg介绍和下载 FFmpeg 是一个功能强大、灵活且广泛使用的多媒体处理工具,无论是在专业领域还是日常使用中,都能满足各种多媒体处理需求。FFmpeg 是一个开源项目,遵循 LGPL 或 GPL 许可。…...
leetcode_动态规划/递归 509. 斐波那契数
509. 斐波那契数 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1F(n) F(n - 1) F(n - 2),其中 n …...
对泰坦尼克号沉没事件幸存者数据分析和预测
一、分析目的 探究决定泰坦尼克号沉没事件中什么因素决定着船上人的生死,并对实例进行判别和预测。 二、数据介绍 Titanic.csv数据中包含了891个样本,记录了泰坦尼克号遇难时的891个乘客的基本信息,其中包括以下信息: Passenger…...
算法之排序算法
排序算法 ♥常见排序算法知识体系详解♥ | Java 全栈知识体系 算法 - 排序 | CS-Notes 面试笔记 十大经典排序算法总结 | JavaGuide...
DMA发送全部历史记录数据到串口
背景 博主参与的项目中,有个读取全部历史记录的功能,如果下位机在主程序中将全部历史记录单纯地通过串口传输会比较占用cpu资源,影响主程序中别的功能。最后商量得出以下实现方案: 定义两个发送缓冲区DMATxbuf1和DMATxbuf2&…...
蓝桥杯好题推荐-----高精度减法
🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 题目链接 记录详情 - 洛谷 | 计算机科学教育新生态https://www.luogu.com.cn/record/205122671 思路讲解 这个题目的解题思路,其实是和高精度加法是非常像的。怎么说…...
SpringMVC (3)
目录 1. 传递对象 2. 后端参数重命名(后端参数映射) 3. 传递数组 4. 传递集合 5. 传递JSON数据 5.1 JSON概念 5.2 JSON语法 5.3 JSON字符串和Java对象互转 5.4 JSON优点 5.5 传递JSON对象 6. 获取URL中参数PathVariable 7. 上传文件RequestP…...
vscode使用豆包MARSCode----集成doubao1.5 DeepSeekR1 DeepseekV3模型的ai编程插件
引入扩展 打开VSCode扩展窗口,在搜索窗口搜索MarsCode,找到MarsCode 插件单击「install」,完成安装,登录即可使用MarsCode 编程助手。 主要功能 主要快捷键 / explain 解释项目代码,AI 返回的内容有结构分类&#…...
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_buf_t
ngx_buf_t 定义在 src/core/ngx_buf.h typedef struct ngx_buf_s ngx_buf_t;struct ngx_buf_s {u_char *pos;u_char *last;off_t file_pos;off_t file_last;u_char *start; /* start of buffer */u_char …...
分布式开源协调服务之zookeeper
Zookeeper简介 Zookeeper是什么? Zookeeper官网中对Zookeeper的定义还是比较明确的: ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services…...
ubuntu系统安装playhouse三方库
ubuntu系统python3.10安装playhouse三方库 问题描述 问题描述 虚拟环境中使用pip install playhouse,返回安装成功 用pip list查看,能看到playhouse及版本号 导包时提示没有找到playhouse我那件目录,能发现 检查site-package发现问题&#x…...
【星云 Orbit-F4 开发板】04.一触即发:GPIO 外部中断
【星云 Orbit-F4 开发板】04. 一触即发:外部中断控制 摘要 本文详细介绍了如何使用STM32F407微控制器的HAL库实现外部中断功能。通过配置GPIO引脚作为外部中断源,并在中断回调函数中处理按键事件,实现了按键控制LED状态翻转的功能。本文旨在…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...
七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
Unity VR/MR开发-VR开发与传统3D开发的差异
视频讲解链接:【XR马斯维】VR/MR开发与传统3D开发的差异【UnityVR/MR开发教程--入门】_哔哩哔哩_bilibili...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
SQL注入篇-sqlmap的配置和使用
在之前的皮卡丘靶场第五期SQL注入的内容中我们谈到了sqlmap,但是由于很多朋友看不了解命令行格式,所以是纯手动获取数据库信息的 接下来我们就用sqlmap来进行皮卡丘靶场的sql注入学习,链接:https://wwhc.lanzoue.com/ifJY32ybh6vc…...
【阅读笔记】MemOS: 大语言模型内存增强生成操作系统
核心速览 研究背景 研究问题:这篇文章要解决的问题是当前大型语言模型(LLMs)在处理内存方面的局限性。LLMs虽然在语言感知和生成方面表现出色,但缺乏统一的、结构化的内存架构。现有的方法如检索增强生成(RA…...
Java中栈的多种实现类详解
Java中栈的多种实现类详解:Stack、LinkedList与ArrayDeque全方位对比 前言一、Stack类——Java最早的栈实现1.1 Stack类简介1.2 常用方法1.3 优缺点分析 二、LinkedList类——灵活的双端链表2.1 LinkedList类简介2.2 常用方法2.3 优缺点分析 三、ArrayDeque类——高…...
虚拟机网络不通的问题(这里以win10的问题为主,模式NAT)
当我们网关配置好了,DNS也配置好了,最后在虚拟机里还是无法访问百度的网址。 第一种情况: 我们先考虑一下,网关的IP是否和虚拟机编辑器里的IP一样不,如果不一样需要更改一下,因为我们访问百度需要从物理机…...
