iOS 17.5 暴露的 iPhone 相册 App 的问题,终于在 17.5.1 被声称修复了。苹果没有给出详尽的解释,也没有通过大众媒体要求用户尽快升级。
相册中的隐私——意味着如果用户不选择使用 iCloud 、照片流/共享相册,那么拍摄的视频和照片就应该只停留在设备上,并被 FaceID 和解锁密码保护起来。
相册中比普通照片更重要的隐私存在于被删除照片中,苹果也顺应用户呼声,加了再次生物识别的步骤。
相册中最最重要的隐私是那些已经彻底删除的照片。
比如,和医生或者伴侣现场分享的暴露照片,拍摄的涉及商业秘密、个人隐私内容的文件照片,这些照片分享结束后,或者储存到更安全的储存介质中后,往往需要彻底删除。用户相信这样经过两步至少是彻底删除了。由于 iOS 的封闭性,用户也没有办法更进一步,用第三方工具“粉碎文件”(windows) or 调用 shred 命令(linux/unix)。
然而 iOS 17.5 更新恢复出来的完整照片(注意不是缩略图!),完全粉碎了这种隐私假象。一个系统升级就能恢复几个月甚至几年之前彻底删除的照片,说明原始照片文件根本没有在文件系统里(标注)删除 rm ,更别提用 shred 覆盖写入了。
非常不理解苹果的删除逻辑设计。不知道 iOS 上还有多少类似的隐私假象。
另外,我通过 v 站上的前集回顾 v2ex.com/t/1041183 和 多个 telegram 群的群友反馈,发现苹果在 17.5.1 的 release note 上又一次撒了谎。
This update provides important bug fixes and addresses a rare issue where photos that experienced database corruption could reappear in the Photos library even if they were deleted.
回帖的 V2EX 用户中至少 10 位明确发现了被恢复的彻底删除照片——绝非罕见问题 rare issue——体现了苹果目前只重视公司形象、对真正隐私保护置若罔闻的状态。
1
Free3 220 天前 via iPhone
同很好奇这个事情 到底是什么原因造成的
|
2
drymonfidelia 220 天前
@Free3 或许和我 4 个月前遇到的问题原因一样 /t/1013867
|
3
country 220 天前 2
如果觉得苹果隐私保护做的好,那是你的认知有问题,你被苹果的宣传骗了。
|
4
shinsekai 220 天前
现在众说纷云,有说图片是从 iCloud 恢复的,有说从本地也能恢复,有说恢复出厂重置后能恢复上个 AppleID 的,能不能给个准确的说法?
|
5
dilidilid 220 天前
一个闭源封闭的系统指望有完全可控的安全性并不现实,只不过目前移动端实在没啥更好的选项而已
|
6
disorientatefree 220 天前 2
苹果给用户的安全感很大程度上在于苹果的主营业务,比较容易让人相信它不需要通过用户的隐私来牟利。
另外一个反面例子是 Google ,Google 其实在隐私和安全保护上做了相当多的努力,这方面的事故也很少,但毕竟和 Google 的主营的业务是有利益冲突的,所以很难让用户相信。 |
7
ohiu 220 天前
你这是 Photos app 特有的饕餮行为。
@drymonfidelia 这次发现旧照片都是出现在 recently imports 的最新导入里所以应该是 reddit 上说的 Files app 的问题 |
8
DIMOJANG 220 天前 1
@shinsekai #4 看楼主链接帖子的 #77 楼,结合其他人的情况基本可以验证我的猜想,应该是发生冲突的修改会导致照片没办法被正确索引而归类到系统数据里面去,而这次的更新可能添加了某种自动处理冲突的算法。这个猜想唯一没办法解释的是 Reddit 上有一位抹掉 iPad 后依然恢复了照片的帖子,但那个帖子在被多家媒体报道之后突然删除,具体情况就不得而知了。
|
9
crz 220 天前
|
10
liprais 220 天前 9
apple 出个 bug 你们可算是过年了
|
11
zaizaizai2333 OP @shinsekai iPhone 升级 17.5 后,可能会恢复出来早就被删除的照片/视频,恢复的是原始文件,非缩略图。
和 iCloud 关系不大。从未打开 iCloud 照片的手机和打开 iCloud 照片的手机都会。 打开 iCloud 的用户可能会因为 iCloud 会主动上传“新出现”的照片,而发现这个 bug 。 |
12
sentinelK 220 天前 7
苹果的隐私安全一直是只防第三方,特赦自己的。
从之前的通过 hash 模型 local 抓取儿童色情,最后一步人工审核就可见一斑。 |
13
Chad0000 220 天前
@zaizaizai2333 #11
既然你明白这个 BUG 是怎么回事,那么你帖子里说的“release note 撒谎”就不成立了。 我不用 iCloud ,我更新后也发现了一些照片好像是删除过的但又出现了。我是通过本地复制的方式迁移的手机,那个 Release 的解释的就是图片库的 DB 有问题:这个说得通,应该就是这个问题。 |
14
zaizaizai2333 OP @Chad0000 就是苹果相册删除照片,根本没有 rm xxx.heic 。
所以 release note 100%在撒谎。 至少 Mac 上的 .photoslibrary 你可以进去看看,里面有个 originals 的文件夹。originals 里面的原始分辨率的照片/视频文件没有被 rm ,被重新扫描到了。 苹果居然不会 rm 。 |
15
byicer 220 天前 1
根据个人体验猜测:是苹果所说的问题,即数据库错误,更准确点说,是标记为删除的照片,在数据库里重新被标记为未删除。
在升级 iOS17.5 之前,参加了一个录播节目,在演播厅用 iPhone 拍照片后,通过微信发了几张,但是发现一直也发不出去,我本来以为是演播厅信号不好,后来 iPhone 自动重启了,我发现十几张照片根本就没拍上。 升级完 iOS17.5 后,我去相册里看了一下,已经有那几张照片了,还提示“载入此照片更高格式时出现错误”,然后就载入成功了。 https://imgur.com/a/2zT87BR |
16
byicer 220 天前
|
17
Chad0000 220 天前 1
@zaizaizai2333 #14
关 Mac 什么事?如果不是 Bug ,那么请问你手机的删除过的照片全部出现了么?你手机彻底删除照片后,存储里可用空间有增长么? 目前这个现象就像是删除不是一步到位的过程,有些图片卡在中间最终没被彻底删除。17.5 版觉得这些图片应该让用户再次处理,而用户不买账:用户觉得这些照片就应该被删除。17.5.1 版就是干脆让这些处于中间状态的图片直接被认为删除了事。 真有这种事情也瞒不住,毕竟肯定有人能搞定逆向工程。云端的事情说不清楚,但本地的还是能给你抓出来的。迟迟不见新闻,很大可能就是没这回事儿。 |
18
Jirajine 220 天前
你可能理解错了,rm 命令(unlink)其实也是标记删除,如果原始 block 没有被覆写多年以后仍然可以被再次扫描出来。
iOS 作为一个从开始就极力淡化 FS 的操作系统,自己实现一套存储抽象是可以理解的。 假设你用 zfs 出了同样的 bug ,unlink 后的文件元数据的引用没有被正确回收,而原始 block 恰好还没有被覆写,导致你的某一个 snapshot 里出现了你多年以前删除的文件,你觉得这属于隐私问题吗? |
19
Jirajine 220 天前
另外你提到的粉碎文件(也就是覆盖写入 block )其实才是虚假的安全,文件系统/块设备/虚拟磁盘/硬盘主控等多个层面都可能把你的写入请求重定向到其他的 block,导致文件并没有被物理覆盖。
要想可靠的删除,应该使用全盘加密,然后通过专用硬件擦除 key. |
20
DIMOJANG 220 天前
@zaizaizai2333 #14 我之前处理 iCloud 同步问题的时候稍微研究了一下 iCloud ,它即使是看起来最像网盘的 iCloud Drive 都是基于数据库而非文件系统工作的,所以编辑文件*肯定不是直接操作磁盘上的文件。
*:为什么我说的是“编辑”而不是“删除”,因为 Reddit 上也有一部分帖子表示自己的照片在编辑后因为系统卡死强制重启丢失照片,这部分照片也在更新后恢复了。 |
21
DIMOJANG 220 天前
@zaizaizai2333 #14 本贴 #17 楼也有类似的遭遇。
|
22
nuomi196500 220 天前
@zaizaizai2333 我遇到的情况是删除视频的时候用 14PM ,这次发现恢复视频的时候用的是 15PM ,我从不用机器转移数据,都是 iCloud 恢复激活新机器的
|
23
zaizaizai2333 OP |
24
DIMOJANG 220 天前
@zaizaizai2333 #23 优势就是检索,你可以了解一下 Photos 自带的搜索功能。
|
25
felixcode 220 天前 via Android
真能洗
|
26
SkywalkerJi 220 天前
感觉不止照片吧,可能其他文件也有留。
系统不能删除的文件,一直在慢慢变多。不知道越狱机有没有这个问题,是不是 root 之后就能看到塞了什么。 |
27
Senorsen 220 天前
歪个题,苹果的相册和 iCloud 是不是一直有很多问题…
之前一台 iPad 本来登录了 A (对象)的 ID ,想切换成 B (自己)的,退出 ID 时有选项,选择了删除本地照片、备忘录等数据(因为早就上传到 iCloud 了),结果等半天了看 iPad 相册,照片也还是在那里,大概几秒钟几张的在慢慢删除。后来等不及了,登录了 B 的 ID ,结果它把相册里原本 A 的照片也上传到 B 的 iCloud 里。 之后这台 iPad 又经历了两次 ID 的切换(登录 A ,再登录回 B ),现在两个账号 iCloud 里充斥了大量重复的、对方的照片、通讯录、备忘录等… |
28
BEza5k2j7yew0VN9 220 天前 via iPhone
@nuomi196500 一个问题:icloud 恢复激活是“设置为新设备”还是“从 icloud 云备份恢复”,后者会恢复照片数据库。不同于 icloud 照片同步
|
29
vate32 220 天前 1
i2ex 也是只有输出情绪,没有分析和查证吗。
it 之家有网友查证分析了一下原因: “照片小组件会缓存照片,这个存储独立于相册,删除后复现的照片来自于此。 该问题与 iCloud 无关,关闭同步也会出现。 该问题与设备抹除无关,唯一一例说自己抹了设备还出现旧照片的 Reddit 用户,已经自行删帖。 那我们在相册里的照片到底删没删掉?确实删掉了。” https://www.ithome.com/0/769/417.htm |
30
ShadowPower 220 天前
苹果过去的隐私丑闻有不少,不考虑黑客攻击或者漏洞导致的那些,也有一个苹果将 Siri 收集到的个人隐私信息泄露给第三方,这肯定是苹果主动干的。
为什么会相信苹果对隐私的承诺呢? |
31
Donaldo 220 天前
@Jirajine #18 rm 当然删不干净了,所以他后面提了 shred 。而且 unlink 的实现也是如果引用数等于 0 了就把这个 inode 标记成 free 并可能直接 destroy 了。即使所有的 inode 都没被覆写,难道你觉得一个用户空间的相册 app 应该有重新把一个 inode 重新 link 到某个 filename 并展示出来的能耐?
|
32
wysnxzm 220 天前 12
|
33
nuomi196500 220 天前
@gsy20050126 从 icloud 云备份恢复
|
34
littiefish 220 天前 via iPhone
比国内安卓安全就行
|
35
Jirajine 220 天前
@zaizaizai2333 iOS 是“被删除的文件经常被恢复”吗?,软件有 bug 是很正常的,bug 影响到相当一部分群体(且在所有 iPhone 用户里仍然是 rare 的比例)也不是很难理解的事情。
@Donaldo 文件系统也是数据库,unlink 和数据库的标记删除是一回事。比如一个应用实现“在数据库里标记删除的文件为 deleted, 30 天后再真正删除”,和“文件系统保留 30 天的 snapshot ,unlink 的文件 30 天后才会真正引用计数为 0”本质上没有区别,数据库出 bug 或者文件系统出 bug 导致文件意外的又出现了所产生的结果也一样。 |
37
rzbb 220 天前
隐私 环保 都是为了营销搞出来的
要是真的有隐私也就不会有棱镜门了 还有昨天看到一篇文章说苹果的 vpn 的漏洞 不过比国内的环境确实是安全的 只是要那种极致的隐私找苹果实在是错了 还有就是环保概念也是非常好笑 一边说是自己很环保 但是计划报废降速门的脚步停不下来 又准备搞 2030 的 sdgs 炒作碳概念 这就是已经和空气税一样离谱的东西还被苹果天天说 一家为了钱的公司而已 |
38
fatigue 220 天前 1
别卖给或泄给第三方就行,对于用户和苹果这双方而言,隐私就是个伪命题,举个例子就像你和医生,你和律师的关系一样,对方肯定知道你的情况,只要别泄给第三方就行
|
39
phrack 220 天前 via iPhone
都是商业公司,苹果投入的比其他家多,相对来说好多了。
都是做软件的还能不明白这个么,开发投入占多少,测试投入占多少,安全投入占多少,都是基于收益和成本考量。 |
40
ShuWei 220 天前
我可能更愿意相信这是因为手机上某个环节的 bug 引起的,至于具体情况,没有官方解释,很难完全还原
op 所谓的粉碎文件,并不是一个建立在现代文件系统上的行为,毕竟现代的文件系统都存在多层抽象,很难真正去精准复写 另外还有一个点,数据是在你手机上的,无论如何都是需要你的密码才能访问,就算没有被马上复写掉,其实也都还好,毕竟还有密码的保护,是符合苹果的宣传的。至于 op 要求的删除即立马被复写,苹果没有这么宣传过,如果你有强需求,建议选择符合你需求的设备即可 |
41
icyalala 220 天前
数据库里存的只是图片文件路径和其他一些元数据,怎么会把图片真的存到数据库里呢。。
举个例子 if db.delete(photo.id) { fileManager.delete(photo.path) } 数据库操作过程中出错,那条元数据没了,但照片仍然留在磁盘。 |
42
icyalala 220 天前
iOS 里面这类需要查询的数据,基本都是用 sqlite 来搞的,掉电崩溃磁盘满了之类的,总会出各种问题。
看看同样是 sqlite 的微信,甚至还搞个数据库修复工具。。。 |
45
quantum00549 219 天前 1
选择苹果只是因为 fbi 不会找我喝茶,隐私也就那样
|
46
nt0p 219 天前 1
Apple Releases tvOS 17.5.1 to Fix Photos Corruption Bug Causing Deleted Images to Reappear!
|
47
zaizaizai2333 OP @icyalala LoL 你这个顺序明显搞错了。应该先在文件系统中删除原始照片,然后再在 db 里完全删除。
首先文件系统的删除要可靠多了。 其次 db 里的操作即使失败了,也可以有很多办法可以再修复。db 里面没了,该删没删的文件还在文件系统里,就是重大安全问题。 |
48
icyalala 218 天前
@zaizaizai2333 首先从你的标题和文章中,就能看到你对 iOS 的实现细节根本不了解,我正在通过示例代码给你解释。
其次,照片删除显然是应该先操作 db 再操作文件,你要不理解去问问 GPT ,我也没必要跟你这种外行解释。 |