Gemini_Generated_Image_mofkvbmofkvbmofk.png

App 频繁读取相册?删照片?读取文件?你的位置??==达咩!熟练使用 iPhone/Android/iPad/Mac 上的 隐私与安全性 设置(任何更改相应权限都需要手动输入密码或按指纹解锁显示确认),将 隐私与安全 牢牢掌握在自己手里!

博主希望通过本文激发大家对系统OS的安全机制的进一步探索以及学会利用可靠的第三方安全分析平台如 virusTotal 分析可疑可执行性文件等。

应用程序

Gemini_Generated_Image_d9wnbod9wnbod9wn.jpg

应用程序(英语:application program),简称应用(application或app),是软件的主要分类,指为针对用户的某种特殊应用目的所撰写的程序,例如文字处理器、表格、会计应用、浏览器、媒体播放器、航空飞行模拟器、命令行游戏、图像编辑器等。其本质是在特定操作系统之上,通过调用硬件资源来解决特定问题的代码集合。见维基百科

安全机制的标准化实现

Gemini_Generated_Image_x0cpkmx0cpkmx0cp.jpg

1. 硬件级隔离:特权级(Ring Levels)

这是现代 OS 安全的基石。通过 CPU 硬件支持的特权等级(如 x86 的 Ring 0-3),将内核态与用户态分离。

Ring 0(内核态):拥有最高权限,可直接操作硬件。

Ring 3(用户态):受限权限,必须通过“系统调用(System Call)”向内核申请资源。

2. 内存保护机制

地址空间布局随机化 (ASLR):每次运行程序时,其加载到内存的地址都是随机的,防止攻击者通过固定地址进行缓冲区溢出攻击。

数据执行保护 (DEP/NX bit):标记某些内存区域(如堆、栈)为“不可执行”,即使攻击者注入了恶意代码,也无法被执行。

3. 访问控制模型 (ACM)

自主访问控制 (DAC):资源所有者决定谁有权访问(如 Linux 的 chmod)。

强制访问控制 (MAC):由系统管理员定义的全局策略限制(如 SELinux 或 AppArmor)。即使是 root 用户,也必须符合预设的安全上下文。

4. 现代安全增强:沙盒与容器化

沙盒(Sandboxing):将应用程序限制在极小的权限范围内。

微内核架构(Microkernel):如 seL4,将尽可能多的内核服务(驱动、文件系统)移出内核态,即使某个服务崩溃,也不会导致整个系统沦陷。

沙盒机制(Sandboxing)

Gemini_Generated_Image_jw1r3cjw1r3cjw1r.jpg

沙盒机制(Sandboxing)是一种安全隔离技术,通过创建一个受限、独立的运行环境,将不可信或可疑的程序限制在特定空间内执行。在该空间中,程序对文件系统、网络或系统资源的访问被严格限制,从而避免对宿主机系统造成永久破坏或感染,保障网络与系统安全。

根据系统的设计理念不同,沙盒的实现粒度也有所区别:

 1. 移动端操作系统(默认全沙盒化)

Gemini_Generated_Image_jexwlujexwlujexw.jpg

移动端系统从设计之初就采用了“默认沙盒”策略,即所有第三方 App 必须在沙盒中运行。

  • iOS / iPadOS / visionOS:苹果的沙盒机制最为严格。每个 App 拥有独立的目录,无法访问系统文件或其他 App 的数据。访问摄像头、通讯录等敏感资源必须经过显式的用户授权(Entitlements)。

  • Android:基于 Linux UID (User ID) 隔离。每个 App 运行在独立的 Linux 用户环境下。

    • SELinux:提供强制访问控制(MAC),防止 App 提权。

    • seccomp:限制 App 可以调用的内核系统调用(System Calls),减少内核攻击面。

 2. 桌面端操作系统(可选/部分沙盒化)

桌面系统历史包袱较重,采取的是“平滑过渡”到沙盒的策略。

  • macOS

    • App Sandbox:所有通过 Mac App Store 分发的应用必须启用沙盒。

    • SIP (System Integrity Protection):即使是 Root 用户也无法修改核心系统文件。

    • TCC 隐私控制层(透明度、同意与控制):这是你最常感知到的层级。即使程序没有运行在沙盒里,macOS 的内核也会拦截敏感操作。程序请求读取你的“桌面”或“下载”文件夹时,系统会弹出对话框询问你。这不是沙盒,而是一种基于权限的拦截机制。

  • Windows

    • Windows Sandbox (Windows 沙盒):内置的轻量级虚拟机(基于 Hyper-V),用于运行不信任的可执行文件,关闭即销毁。

    • AppContainer:UWP (Universal Windows Platform) 应用运行在受限的容器中。

    • Microsoft Defender Application Guard:将 Edge 浏览器或 Office 文档放在隔离的硬件容器中运行。

 3. 服务端与云原生(容器化沙盒)

在服务器领域,沙盒主要用于隔离不同的服务或不信任的代码。

  • Linux (内核级)

    • Namespaces & Cgroups:Docker 和 Kubernetes 的底层基础,提供进程、网络和挂载点的隔离。

    • AppArmor / SELinux:内核安全模块,通过配置文件定义 App 能做什么。

  • 微虚拟机 (MicroVMs)

    • AWS Firecracker / Google gVisor:专门为云函数(Serverless)设计的超轻量级沙盒,兼具虚拟机的安全性和容器的速度。

 4. 浏览器(应用级沙盒)

浏览器是接触外界最频繁的入口,其沙盒机制最为复杂。

  • Chrome / Edge / Firefox:每个标签页(Tab)和扩展程序都在独立的低权限进程中运行。即使某个网页利用漏洞控制了渲染引擎,沙盒也会阻止它修改电脑系统文件或读取其他标签页的密码。

系统沙盒能力对比表

系统类别 主要技术 隔离强度 用户感知
iOS 强沙盒 (Containerization) 极高 自动开启,无感
Android UID 隔离 + SELinux 自动开启,权限弹窗
Windows Windows Sandbox / Hyper-V 极高 需手动开启(虚拟机模式)
macOS App Sandbox + SIP 针对 Store 应用自动开启
Linux Namespaces / seccomp 中/高 需配置(如 Docker/Snap)

沙盒的本质是最小权限原则(Principle of Least Privilege)

善用 TCC 权限管理: 程序安装后,在“系统设置 -> 隐私与安全性”中,定期审查哪些应用拥有“完全磁盘访问权限”或“辅助功能”(允许应用模拟用户点击、监控键盘输入)等权限(注意:任何app,默认是没有这些权限的,获取和修改权限均需要用户输入密码或指纹确认;)。

iPhone/Mac 隐私与安全

iPhone safe.png

Tips:iPhone/Mac/iPad/Android,可在系统设置里搜 App 的名字即可单独为其设置某类精细权限,如搜微信,可设置其是否能联网,是否能读取照片==,以及读取哪些图片;

在 Mac 上更改隐私与安全性设置

Mac-系统设置-隐私与安全性.jpg

在 Mac 上更改隐私与安全性设置:在 Mac 上,使用“隐私与安全性”设置管理 Mac 上可供互联网或网络中其他用户访问的信息,以及保护你的加密数据。

若要更改这些设置,请选取苹果 菜单 >“系统设置”,然后点按边栏中的“隐私与安全性” 。(你可能需要向下滚动。) 详情参阅:https://support.apple.com/zh-cn/guide/mac-help/mchl211c911f/mac

其他你应该知道的

Apple无法验证“xx.app”是否包含可能危害Mac安全或泄漏隐私的恶意软件。

Apple 无法确认该软件的代码签名是否来自已注册的开发者。这种提示是 macOS Gatekeeper(门禁) 机制的体现,是一种“默认拒绝”策略,旨在防止用户无意中运行未受信任的二进制文件。如果你不确定该应用的来源,建议先将其上传至 VirusTotal 进行安全扫描(见本文后文 VirusTotal 部分),确认无误后再手动放行

选择“仍要打开”是否会直接导致隐私泄露或安全问题?

应用运行的瞬间,它并非处于真空,而是处于 macOS 的 Sandbox(沙箱)TCC(透明度、意愿与控制) 机制的监控下。即使你手动放行了 Gatekeeper,macOS 的 TCC (Transparency, Consent, and Control) 机制依然在生效。应用可以运行,但当它尝试访问受保护的隐私数据(如摄像头、麦克风、地理位置、通讯录、磁盘上的照片/文档)时,系统会强制弹窗请求你的许可

除 macOS,Android(Android 6.0 及以上)均有该机制;iPhone 不越狱的情况下稳如老狗;

macOS 安全机制扩展

 1. TCC (Transparency, Consent, and Control) —— 权限卫士

TCC 是 macOS 安全框架的核心数据库。即使是一个拥有 root 权限的应用,也无法通过常规路径读取你的相册。

  • 物理隔离存储:相册、定位、日历、麦克风等数据被标记为“敏感类别”。

  • 强校验逻辑:每当应用尝试调用 Photos.framework(相册框架)或 CoreLocation(定位框架)时,操作系统内核会先去查询 TCC 数据库。

  • 用户意图确认:如果数据库中没有你的手动“允许”记录,内核会挂起该进程,并由系统进程(而不是应用本身)弹出一个无法被应用干扰的透明窗口询问你。

  • 结论应用无法绕过系统弹窗直接读取这些 API 接口。

 2. 磁盘全访问权限 (Full Disk Access) 的限制

你可能担心应用扫描整个硬盘。在 macOS Mojave 之后,即便应用拥有“读写权限”,它也默认无法访问以下目录:

  • ~/Library/Messages (短信)
  • ~/Library/Mail (邮件)
  • ~/Library/Safari (浏览器记录)
  • 结论除非你在“系统设置”中手动把该应用拖进“完全磁盘访问权限”列表,否则这些核心隐私目录对它来说是不可见的。
 3. 数据层面的加密隔离

即使攻击者通过底层手段拿到了磁盘原始镜像,如果没有你的登录密码,存储在加密分区(APFS Encrypted)中的数据也是一堆乱码。

4. 普通文件夹

普通文件:如果你下载的是非沙箱应用(如大部分工具类软件,通过dmg文件安装...),它理论上可以读取你“下载”文件夹或“桌面”上未被系统锁定的文件。

如果你依然担心,可以在 “系统设置 -> 隐私与安全性 -> 文件与文件夹” 中,查看哪些应用有权限访问你的“下载”或“桌面”文件夹,并手动关掉它们。

iPhone 隐私与安全

iPhone 隐私与安全性.jpg

iPhone 隐私权限的本质是资源访问控制(Access Control)。其核心逻辑在于:隔离(Isolation)授权(Authorization)。系统默认对所有第三方应用关闭核心数据访问权,通过“沙盒机制”强制应用在获取数据前必须经过用户的显式许可。

iPhone 隐私与安全设置操作路径: 设置 - 隐私与安全性 (你可能需要向下滑动。),

iPad 隐私与安全

iPad 隐私与安全设置.jpg

iPad 隐私与安全设置操作路径: 设置 - 隐私与安全性 (你可能需要向下滑动。),

Android 隐私与安全

Gemini_Generated_Image_b74d1vb74d1vb74d.jpg

现代 Android 系统 (Android 6.0 及以上) ,默认状态:安装后,绝大多数敏感权限处于“关闭”状态。
触发机制:当 App 第一次需要读取你的照片或定位时,系统会弹出对话框询问:“是否允许该应用访问...?”。

例外情况:一些低风险权限(如 INTERNET(联网)、ACCESS_NETWORK_STATE(查看网络状态)、WAKE_LOCK(防止手机休眠))在安装时由系统静默授予,用户无法在常规设置中拒绝。

您可以允许某些应用使用设备的各种功能,例如摄像头或联系人列表。应用会发送通知,请求您授予使用设备功能的权限,您可以选择允许或拒绝。您还可以在设备的“设置”中,更改单个应用的权限或者按权限类型更改权限。

 更改应用权限

  1. 打开设备上的“设置”应用。
  2. 点按应用
  3. 点按要更改的应用。如果您找不到目标应用,请点按查看所有应用。然后,选择目标应用。
  4. 点按权限
  • 如果您曾允许或拒绝授予该应用任何权限,可以在这里看到。
  1. 如需更改某项权限设置,请点按相应设置,然后选择允许不允许

对于位置信息、摄像头和麦克风使用权限,您可以选择:

  • 始终:仅限位置信息。该应用可以随时使用这项权限,即使您未使用该应用时也可以。
  • 仅在使用该应用时允许:仅当您使用该应用时,它才能使用这项权限。
  • 每次都询问:每次您打开该应用时,它都会询问是否可以使用这项权限。在您关闭该应用之前,它可以一直使用这项权限。
  • 不允许:该应用无法使用此权限,即使在您使用该应用时也不行。

根据权限类型更改权限

您可以查看哪些应用开启了相同的权限设置。例如,您可以看看哪些应用有权查看您的日历。

  1. 打开设备上的“设置”应用。
  2. 依次点按安全和隐私 > 隐私 > 权限管理器
  3. 点按相应的权限类型。
  • 如果您曾允许或拒绝将该权限授予任何应用,可以在这里看到。
  1. 如需更改某个应用的权限,请点按该应用,然后选择权限设置。

参阅:在 Android 手机上更改应用权限

Windows 隐私与安全

谨慎安装原则

1.谨慎安装需要管理员权限的应用;2.利用 virusTotal 等安全平台分析安装包(见后文);

Windows 的本质(兼容优先): 历史包袱沉重,为了兼容大量旧软件,其管理员权限(Admin)往往意味着对内核、注册表和系统进程的“深度读写”。一旦点击“允许”,程序就获得了修改系统根基的钥匙。

macOS 的本质(沙盒优先): 基于 Unix 底层,采用强化的 TCC(透明度、同意与控制)机制。即使程序获得了 Root 权限,它依然受到系统完整性保护(SIP)的限制,无法轻易修改系统关键文件或注入其他进程。虽然也有木马,但 macOS 的“公证机制”(Notarization)会强制扫描开发者代码。即使绕过公证,恶意程序想修改系统设置通常需要弹窗请求特定的“完全磁盘访问权限”或“辅助功能权限”,用户的感知度更高。攻击面较窄,且苹果对硬件和软件生态拥有绝对控制权。除非攻击者利用昂贵的 0-day 漏洞,否则很难在后台静默完成全套攻击动作(抓包、记录击键、修改代理)。

隐私设置

在 Windows 11 中管理隐私设置

1.选择“开始 ”,然后选择 “设置> 隐私 & 安全性”。
2.选择要允许应用使用的功能,例如 “日历” 或 “联系人”。
3.打开或关闭允许使用设备的任何人访问该功能的设置。
4.通过打开或关闭单个应用和服务,选择哪些应用可以访问该功能。

参阅:应用使用的 Windows 隐私设置

默认可读取的信息

应用程序(指任何程序)默认可获取的设备信息;

iOS

这些信息无需弹窗授权,App 只要运行就能直接通过系统 API 读取

设备基本硬件参数: 机型(如 iPhone 15 Pro)、屏幕分辨率、操作系统版本(如 iOS 17.4)、系统语言、国家/地区设置、时区。
网络状态: 当前是通过 Wi-Fi 还是 蜂窝移动网络连接、运营商名称(如中国移动)、信号强度。
硬件运行状态: 电池电量、是否在充电、当前内存剩余空间、磁盘总容量与剩余空间。
设备性能数据: 处理器核心数、GPU 型号、系统启动时间(Uptime)。
IP 地址: 只要联网,服务器端就能记录你的公共出口 IP(除非使用全局代理或 iCloud 专用代理)。

Android

虽然权限管控已趋于严格,但以下信息通常是“默认开放”的:

详细硬件规格: 处理器型号(SoC)、CPU 核心频率分布、GPU 型号、内存大小、屏幕刷新率、传感器列表(甚至包括传感器的供应商名称)。
存储元数据: 虽然无法读取你的照片文件,但可以读取外部存储的总容量、剩余空间(见微信 - 我 - 设置 - 存储空间)。
电池与充电细节: 电池健康度、电压、电流、电池技术类型(Li-ion 等)。
系统与属性: 编译版本号(Build Number)、内核版本、系统补丁日期、开机运行时间(精确到毫秒)、当前音量设置。
网络基础信息: 虽无法获取 SSID(Wi-Fi 名),但可以得知当前的连接类型(5G/Wi-Fi/4G)、本地 IP 地址、DNS 服务器地址。

...

以上均为系统默许的,任何应用都可以获取,没有特别需要深入了解的必要。

以上。

virustotal 可疑程序扫描

Gemini_Generated_Image_e3r8h2e3r8h2e3r8.jpg

使用 https://www.virustotal.com/ 上传安装包进行安全扫描分析;

virustotal 介绍

VirusTotal (VT) 是目前全球安全行业最专业、公认度最高的威胁情报分析平台。目前隶属于 Google (Google Cloud/Google Threat Intelligence)。

多引擎聚合(Aggregation):它同时运行超过 70 种 全球顶尖的杀毒引擎(如 Kaspersky, Bitdefender, CrowdStrike 等)。单一杀毒软件会有“漏报”或“误报”,但 70 个引擎同时出错的概率极低。参阅官方说明:

Google 背景(Infrastructure)VT 目前隶属于 Google (Google Cloud/Google Threat Intelligence)。这意味着它拥有近乎无限的算力支持和庞大的全球样本库。

动态沙箱(Sandboxing):你看到的权限列表(Permissions)只是静态分析的一部分。VT 还会将文件放入虚拟环境实际运行,监测它是否联网、修改了哪些系统文件,这种动态分析行为是普通用户无法手工完成的。

情报生态(Ecosystem):它是全球安全研究员的“情报交换枢纽”。美国网络司令部 (CNMF) 甚至会将捕获到的新型木马样本上传到 VT 供全球研究。

如何解读 VT 的结果

如何解读 VT 的结果

扫描结果 结论 操作建议
0 / 70 安全 (高) 基本可放心,但仍需警惕社会工程学诈骗
1~2 / 70 疑似误报 (中) 常见于汉化补丁或破解补丁。查看是哪些引擎报毒,如果是小众引擎,误报概率大。
5+ / 70 危险 (高) 极大概率是恶意软件。无论它看起来多么诱人,立刻删除

更多分析工具

VirusTotal 是目前全球民用/商用领域公认度最高、情报整合能力最强的威胁分析平台。 但它不是万能的“真理机”。如果涉及极高价值的资产(个人电脑),可结合 Any.Run (交互式) 或 Hybrid Analysis (混合分析) 来进行二次确认。

Any.Run, Hybrid Analysis, CrowdStrike, Mandiant;

额外的行动建议

为了充分发挥 iPhone 的隐私与安全机制,我们建议您采取以下行动:

设置复杂的锁屏密码: 不要使用简单的“1234”或出生日期,建议使用 6 位数字或字母数字组合的复杂密码。

启用 Touch ID/Face ID: 这是最高效、安全的身份验证方式,可以极大地提高设备安全性。

定期更新 iOS 系统: 不要忽视软件更新提示,及时安装最新的安全补丁。

仔细阅读权限请求: 当 App 请求访问通讯录、位置、照片等敏感数据时,思考其合理性,遵循“最小权限原则”进行授权。

开启 App 跟踪透明度 (ATT): 在“设置” > “隐私与安全性” > “跟踪”中,关闭“允许 App 请求跟踪”。

开启 iCloud 端到端加密: 如果您使用 iCloud 备份,建议在“设置” > [您的名字] > “iCloud” > “高级数据保护”中开启该功能,以提供最高级别的云端数据保护。

启用“两步验证”: 为您的 Apple ID 启用两步验证,即使密码泄露,黑客也无法在未知设备上登录您的账户。

在连接公共 Wi-Fi 时使用 VPN: 虽然 iPhone 具有网络加密功能,但在公共网络环境下,使用 VPN 可以提供额外的保护。

这是针对 iPhone 的行动建议,Android 亦如是。

关于两步验证可参阅:

后话

P.S. Google Gemini 好用!让它总结沙盒机制,然后根据我们聊到的内容再生成海报图示,妙不可言~


隐私与安全不是空话,Apple / Google 分别在 iPhone/Mac/iPad/ Android 系统更新了一系列趁手的权限管理工具,知道它们的存在及其工作原理并合理运用起来会很好的提升你的安全感。一个app在你未授权的情况下读取你的文件/照片几乎是不可能的,极大的可能是你在不小心授权给了它相应的权限(一扫而过,点击允许...,老年人常常会上当。)。

在这里额外补充一次行动建议:仔细阅读权限请求: 当 App 请求访问通讯录、位置、照片等敏感数据时,思考其合理性,遵循“最小权限原则”进行授权。

btw,现在早已不是熊猫烧香(2006)的年代了,Apple/Google/Microsoft 不比国内的“小厂商”(你懂的),从App安装/运行都会唤起一系列授权,需要用户输入密码或按指纹确认,访问磁盘?通讯录?照片?通话记录,而不是说双击之后系统直接黑屏?中病毒?偷偷在后台趁你不注意偷袭你的文件,上传你的扣脚照?哪还有那么玄乎...人类进入21世纪很久了...一步步确认,不要授予不必要的权限即可。P.S. 在使用微信或是别的App时,博主个人是授权仅可访问部分照片的,需要时再添加,以及在需要时才会授权定位,但想必大家大都是全部授权访问的,因为懒==嘿嘿😁。

以上,内容可能会不定期补充。

最后修改:2026 年 04 月 12 日 12 : 34 PM