Apakah fitur Versi dan Lanjutkan OS X Lion menyimpan data dalam cache untuk gambar .sparsebundle terenkripsi dengan cara yang aman?

10

Saya menyimpan informasi sensitif di laptop saya dalam gambar .sparsebundle terenkripsi yang dibuat dengan aplikasi seperti Disk Utility, Knox dan Espionage. Pertanyaannya adalah, jika saya memutakhirkan ke Lion, ketika saya sedang mengerjakan file yang terletak di salah satu gambar disk yang terpasang ini dan Lion menyimpan versi file yang lebih lama, apakah ini versi yang lebih lama disimpan dalam gambar yang dienkripsi (sebagaimana seharusnya ) atau di tempat lain? Jika versi disimpan di tempat lain, apakah dienkripsi atau tidak?

Phil M
sumber

Jawaban:

10

Saya telah melakukan beberapa pengujian, dan dapat menawarkan (mudah-mudahan) jawaban resmi.

Jawaban singkat: versi disimpan di disk yang sama (atau gambar disk) seperti file yang sebenarnya, jadi versi tidak boleh membocorkan informasi di luar gambar terenkripsi Anda. Tapi mungkin ada kebocoran lain, lihat di bawah.

Jawaban panjang: Versi membuat folder tak terlihat di bagian atas setiap volume, bernama ".DocumentRevisions-V100" dengan struktur internal seperti ini:

.DocumentRevisions-V100
    .cs
        ChunkStorage    (this is presumably used to store chunks of large files that didn't entirely change between versions)
    AllUIDs             (this is only created on disks that have permissions ignored)
    ChunkTemp
    db-v1
        db.sqlite      (this is the primary index of document IDs, etc)
    PerUID             (this is only created on disks that have ownership respected)
        501            (documents created/owned by user #501)
        502            (etc...)
    staging            (???)

Untuk info tentang indeks sqlite dan daemon latar belakang yang memediasi aksesnya, baca ulasan John Siracusa yang sangat baik di ars technica .

Versi dokumen itu sendiri disimpan dalam subdirektori dalam AllUIDs atau PerUID / youruserid. Di bawah itu, setiap dokumen versi mendapat subdirektori sendiri, diberi nomor mulai dari 1. Di bawahnya ada satu folder bernama "com.apple.documentVersions", dan di bawah itu, setiap revisi disimpan sebagai dokumen terpisah (kecuali jika dipecah menjadi beberapa bagian - - Saya belum bereksperimen dengan dokumen besar) bernama dengan UUID dan ketik ekstensi. Sebagai contoh, jika saya (pengguna # 501) mengedit dokumen rtf pada volume boot saya dan menyimpan beberapa revisi, mereka mungkin disimpan sebagai:

/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/0787B7C3-DE11-4065-9FD9-61870212011D.rtf
/.DocumentRevisions-V100/PerUID/501/1/com.apple.documentVersions/D533CF36-0D49-4910-B0EB-C92395C05726.rtf

Jika saya kemudian membuka file rtf lain dan menyimpan versi file itu, mungkin namanya:

/.DocumentRevisions-V100/PerUID/501/2/com.apple.documentVersions/74A6EF6E-A22A-4196-B560-40ABDBF46DF4.rtf

Jika saya menyimpannya di gambar SecretDocs saya (dipasang dengan kepemilikan diabaikan), versi akan disimpan seperti:

/Volumes/SecretDocs/.DocumentRevisions-V100/AllUIDs/1/com.apple.documentVersions/2ED4DAFD-9BCF-4158-BFDB-F9EEC631E44A.rtf

BTW, izin pada file versi tampaknya dikloning dari file asli. Izin pada folder terlampir cenderung hanya memungkinkan dieksekusi (yaitu Anda tidak dapat melihat nama file, tetapi jika Anda tahu nama file Anda dapat mengaksesnya). Misalnya PerUID / 501 diatur untuk memungkinkan eksekusi hanya untuk pengguna 501, tidak ada akses untuk orang lain. Folder db-v1 hanya memungkinkan akses root. Tanpa menyelidiki secara detail, tampaknya cukup terkunci.

Sekarang, tentang kebocoran lain yang saya mengancam Anda dengan: Aplikasi Lion cenderung menyimpan keadaan mereka ketika Anda berhenti, jadi jika Anda memiliki dokumen rahasia terbuka ketika Anda berhenti, beberapa informasinya (seperti saya pikir tangkapan layar) dapat disimpan di ~ / Perpustakaan / Status Aplikasi Tersimpan / someappid.savedState. Selama Anda tutup sebelum menabung, saya pikir Anda aman di sini.

Gordon Davisson
sumber
Bagaimana jika sparsebundle terletak pada disk eksternal (bisa HFS, FAT atau NTFS), atau pada mesin Snow Leopard di jaringan? Apakah versi masih disimpan pada disk yang sama dengan file utama?
Phil M
Saya ingin menetapkan jawaban ini sebagai jawaban yang diterima tetapi saya tidak melihat tombolnya, saya tidak tahu mengapa.
Phil M
Apakah "Status Aplikasi yang Disimpan" bocor di Mountain Lion?
orome
@raxacoricofallapatorius: Saya belum sepenuhnya mengkonfirmasi ini (format info di folder .savedState tidak jelas), tapi saya sangat curiga kebocoran masih ada di 10.8.
Gordon Davisson
2

Pertanyaan yang sangat bagus dari Phil M!

Data yang terkait dengan versi Apple terkadang tidak terbatas pada /.DocumentRevisions-V100

Saya akan menyimpan ini sesingkat mungkin. Konsep kunci:

  • Transparent App Lifecycle (TAL) - simpan otomatis, versi dilanjutkan
  • dukungan sistem file untuk penyimpanan versi permanen.

Dalam beberapa keadaan,

... Di 10.7 (Build 11A511): subdirektori dari ~/Librarydigunakan, dengan akses tidak terbatas pada pengguna root. ...

https://discussions.apple.com/message/15739595#15739595 (2011-07-25)

Juga, sedikit diadaptasi dari https://discussions.apple.com/message/15741724#15741724


Dalam pengujian terbaru saya dengan server AFP yang sama, versi untuk tangkapan layar .png jarak jauh:

...

reunion:~ centrimadmin$ ls -ld  /.DocumentRevisions-V100
ls: /.DocumentRevisions-V100: No such file or directory

Secara lokal mungkin ada beberapa data terkait /.DocumentRevisions-V100tetapi dalam kasus ini, versi file jarak jauh bersifat lokal, dan tidak terbatas pada pengguna root. Lihat misalnya tangkapan layar 001 di http://www.wuala.com/grahamperrin/public/2011/07/25/e/?mode=gallery yang mendemonstrasikan versi lokal file jarak jauh, dibuka setelah diputuskan dari server file.


Kembali ke pertanyaan pembuka di sini di Ask Different ... gambar .sparsebundle terenkripsi, keamanan. Pertimbangkan ini:

Gambar disk bundel jarang terenkripsi, MS-DOS

Dalam konteks gambar disk bundel jarang terenkripsi, pengguna mungkin lebih cenderung menggunakan JHFS + (mendukung penyimpanan versi permanen) daripada MS-DOS (kurang dukungan)

Namun: seseorang harus menguji untuk melihat apakah versi yang tidak dienkripsi tetap berada di dalam direktori home pengguna - yang mungkin tidak dienkripsi - setelah volume seperti itu tidak di-mount.

Secara pribadi, saya menemukan fseventer paling berguna dalam situasi pengujian seperti ini. YMMV.

Pemisahan

Beberapa jawaban ini dapat menimbulkan pertanyaan yang tidak spesifik untuk enkripsi, tidak spesifik untuk gambar bundle disk yang jarang, tidak spesifik untuk keamanan. Ini adalah subjek yang berpotensi kompleks, jadi tolong: daripada mengajukan pertanyaan dalam komentar di bawah jawaban ini, saya mungkin harus mendorong setiap pertanyaan untuk ditanyakan secara terpisah.

Graham Perrin
sumber
Jika Anda bertanya-tanya mengapa "... versi file jarak jauh bersifat lokal ...", lihat AFP, versi Apple, dan keamanan / privasi di apple.stackexchange.com/questions/19299/…
Graham Perrin
1

Saya memeriksa dokumentasi Pengembang Apple pada fitur versi dan sepertinya mengindikasikan bahwa versi dokumen sebelumnya disimpan di “tempat” yang sama (artinya file yang sama, atau folder yang sama) dengan versi dokumen saat ini; tetapi dokumentasinya kurang detail.

Ada juga artikel dari AppleInsider berjudul "Inside Mac OS X 10.7 Lion: Simpan Otomatis, Versi File dan Time Machine" , yang mengatakan:

Tidak seperti Time Machine, Versi menambahkan semua snapshot perubahan dalam file dokumen lokal, menghindari kekacauan sistem file dan kebutuhan untuk mengakses cadangan dari Time Capsule atau disk eksternal lainnya hanya untuk kembali ke Versi sebelumnya yang dibuat dalam beberapa jam terakhir.

Saya belum menemukan deskripsi yang lebih rinci tentang cara kerja fitur Versi.

Rinzwind
sumber
Saya mendapat kesan bahwa mereka disimpan dalam .DocumentRevisions-V100(dan tidak dalam file yang sama dengan dokumen)
Thilo
1
@Thilo: ya, Anda benar. Saya disesatkan oleh bagaimana dokumentasi pengembang mengikat fitur versi ke fitur “auto saving in place”. Sebagaimana ditunjukkan dalam jawaban yang lebih terperinci yang diberikan oleh orang lain, versi dokumen yang lebih lama tidak disimpan dalam file atau folder yang sama dengan versi saat ini. Artikel AppleInsider salah dalam hal itu.
Rinzwind
0

Gordon, ini adalah berita baik untuk semua orang, juga pengembang perangkat lunak untuk Knox dan Espionage (saya menggunakan kedua aplikasi ini).

Berikut adalah skenario yang harus diperhatikan pengguna. Jika Anda mengakses file dalam citra disk terenkripsi yang terpasang pada drive eksternal, file versi mungkin akan ada pada drive sistem pengguna dalam bentuk yang tidak dienkripsi. Satu solusi untuk ini adalah menyalin .sparsebundle ke drive sistem sebelum memasangnya.

Skenario lain adalah jika .sparsebundle ada di Mac Macan Tutul Salju lainnya di jaringan yang sama dan gambar dibagikan di jaringan, memungkinkan pemasangan pada Lion Mac dengan menelusuri melalui Mac Finder. (Kadang-kadang saya melakukan ini.) Ini pasti akan menghasilkan file versi apa pun yang diletakkan di disk Sistem pengguna dalam bentuk yang tidak dienkripsi. Salah satu solusi untuk ini adalah menggunakan berbagi layar untuk mengontrol Mac Macan Tutul Salju, kemudian pasang dan bekerja pada gambar di Mac itu.

Intinya adalah bahwa di Lion, orang perlu memahami lebih banyak dan lebih berhati-hati daripada sebelumnya ketika menggunakan gambar disk terenkripsi jika gambar tidak terletak pada drive Sistem. Saya harap pengembang Knox dan Espionage akan memperingatkan pelanggan mereka tentang masalah ini.

EDIT: Jawaban Graham tampaknya mendukung sebagian besar asumsi saya.

Phil M
sumber
"Jika Anda mengakses file dalam citra disk terenkripsi yang terpasang pada drive eksternal, file versi mungkin akan ada pada drive sistem pengguna dalam bentuk yang tidak dienkripsi". Dari mana Anda mendapatkan informasi itu? Saya berasumsi itu akan ditempatkan .DocumentRevisions pada volume terenkripsi . @ Gordon menjawab juga sepertinya mengkonfirmasi itu.
Thilo
@ Gordon I DK di mana saya mendapat gagasan bahwa jika file tidak berada di disk sistem, file versi disimpan di disk sistem (disk eksternal dapat memiliki sistem file yang berbeda, tidak tahu apakah ini penting). Saya pikir saya membaca ini di suatu tempat, meskipun saya tidak lagi dapat menemukan sumbernya. Saya berasumsi bahwa Gordon hanya merujuk pada kasus spesifik saya. Gordon, dapatkah Anda mengonfirmasi bahwa versi disimpan pada disk yang sama dengan file yang sebenarnya, terlepas dari format dll dari disk? Saya tahu Gordon berkata, "disk (atau disk image)," tetapi dia tidak menyebutkan pengujian semacam ini.
Phil M
@Gordon Mungkin 2 skenario spesifik yang disebutkan (disk USB & jaringan over pada SL Mac) dapat diuji, saya SANGAT ingin terbukti salah, saya benar-benar ingin ini berfungsi.
Phil M
Poin bagus tentang disk eksternal dalam format file non-Mac. Mungkin mereka tidak mendapatkan versi sama sekali? OTOH, cara ini "diretas" di atas sistem file biasa bisa berarti itu juga berfungsi, katakanlah, FAT32.
Thilo