OS X Lionのバージョンと再開機能は、暗号化された.sparsebundleイメージのキャッシュデータを安全な方法で保存しますか?


10

私はラップトップの機密情報を、Disk Utility、Knox、Espionageなどのアプリで作成された暗号化された.sparsebundleイメージに保存します。問題は、Lionにアップグレードする場合、これらのマウントされたディスクイメージの1つにあるファイルで作業していて、Lionが古いバージョンのファイルを保存している場合、これらの古いバージョンは暗号化されたイメージ内に保存されているかどうかです。 )または他のどこか?バージョンが別の場所に保存されている場合、それらは暗号化されているかどうか。

回答:


10

私はいくつかのテストを行ったので、(うまくいけば)信頼できる答えを出すことができます。

短い答え:バージョンは実際のファイルと同じディスク(またはディスクイメージ)に保存されるため、バージョンが暗号化されたイメージの外部に情報を漏らしてはなりません。ただし、別のリークがある可能性があります。以下を参照してください。

長い答え:バージョンでは、各ボリュームの上部に ".DocumentRevisions-V100"という名前の非表示フォルダーが作成され、次のような内部構造が作成されます。

.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            (???)

SQLiteのインデックスとを仲介がそれにアクセスすることを背景デーモンの情報については、読んでARSのテクニカジョンシラクーサの優れたレビューを

ドキュメントのバージョン自体は、AllUIDsまたはPerUID / youruseridのいずれかのサブディレクトリに保存されます。その下で、バージョン管理された各ドキュメントは、1から始まる番号の付いた独自のサブディレクトリを取得します。その下に「com.apple.documentVersions」という名前の単一のフォルダーがあり、その下に、各リビジョンが個別のドキュメントとして保存されます(チャンクに分割されていない限り- -私は、UUIDとタイプ拡張子で名前が付けられた大きなドキュメントで実験していません。たとえば、私(ユーザー#501)がブートボリュームのrtfドキュメントを編集していくつかのリビジョンを保存すると、次のように保存されます。

/.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

次に別のrtfファイルを開いて、そのバージョンを保存すると、次の名前が付けられます。

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

(所有権を無視してマウントした)SecretDocsイメージに保存した場合、バージョンは次のように保存されます。

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

ところで、バージョンファイルの権限は、元のファイルから複製されているようです。含まれているフォルダのアクセス許可は、実行のみを許可する傾向があります(つまり、ファイル名を表示することはできませんが、ファイルの名前がわかっている場合はアクセスできます)。たとえば、PerUID / 501は、ユーザー501のみが実行できるように設定されており、他のユーザーはアクセスできません。db-v1フォルダーはrootアクセスのみを許可します。詳細に調査しないと、かなり拘束されているようです。

さて、私が脅迫した他のリークについて:ライオンアプリは終了時に状態を保存する傾向があるため、終了時に機密文書を開いている場合、その情報の一部(スクリーンショットと思う)が〜に保存される可能性があります/ライブラリ/ Saved Application State / someappid.savedState。保存する前に閉じる限り、あなたはここで安全だと思います。


sparsebundleが外部ディスク(HFS、FAT、NTFSのいずれか)、またはネットワーク上のSnow Leopardマシンにある場合はどうなりますか?バージョンはまだメインファイルと同じディスクに保存されていますか?
Phil M

この回答を承認済みの回答に設定したいのですが、ボタンが表示されず、理由がわかりません。
Phil M

「保存されたアプリケーションの状態」のリークはマウンテンライオンに存在しますか?
オロメ2013

@raxacoricofallapatorius:私はこれを完全には確認していません(.savedStateフォルダー内の情報の形式は明らかではありません)が、10.8でもリークが残っていると強く思います。
ゴードンデイヴィッソン2013

2

Phil Mからのすばらしい質問です。

Appleバージョンに関連するデータは、/。DocumentRevisions-V100に限定されない場合があります。

これはできるだけ簡潔にします。重要な概念:

  • 透過的なアプリのライフサイクル(TAL)—自動保存、バージョンの再開
  • 永久バージョンのストレージに対するファイルシステムのサポート。

状況によっては、

…10.7(ビルド11A511):のサブディレクトリ~/Libraryが使用され、アクセスはrootユーザーに限定されません。…

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

また、https://discussions.apple.com/message/15741724#15741724から若干変更


同じAFPサーバーを使用した最新のテストでは、リモート.pngスクリーンショットのバージョン:

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

ローカルにあるかもしれないいくつかの関連するデータ/.DocumentRevisions-V100が、この場合では、リモートファイルのバージョンは、ローカル、およびrootユーザーに限定されません。たとえば、http: //www.wuala.com/grahamperrin/public/2011/07/25/e/ mode = galleryにあるスクリーンショット001を参照してください。ファイルサーバーから切断した後に開かれたリモートファイルのローカルバージョンを示しています。


ここの質問の最初の質問に戻ります…暗号化された.sparsebundle画像、セキュリティ。このことを考慮:

暗号化されたスパースバンドルディスクイメージ、MS-DOS

暗号化されたスパースバンドルディスクイメージのコンテキストでは、ユーザーはMS-DOS(サポートなし)よりもJHFS +(永久バージョンのストレージをサポート)を使用する可能性が高くなります

ただし、誰かがそのようなボリュームがマウント解除された後、暗号化されていないバージョンがユーザーのホームディレクトリ(暗号化されていない可能性がある)内に残っているかどうかをテストする必要があります。

個人的に、私はfseventerがこのようなテスト状況で最も役立つと思います。YMMV。

分離

この回答の一部は、暗号化に固有ではない、スパースバンドルディスクイメージに固有ではない、セキュリティに固有ではない質問を引き起こす可能性があります。これらは潜在的に複雑なテーマなので、この回答の下にあるコメントで質問するのではなく、各質問を個別に質問することをお勧めします。


あなたは、なぜ「...リモートファイルのバージョンがローカルである...」不思議場合は、参照AFP、Appleのバージョンおよびセキュリティ/プライバシーのapple.stackexchange.com/questions/19299/...
グラハム・ペラン

1

バージョン機能についてAppleのDeveloperドキュメントを確認したところ、以前のバージョンのドキュメントが現在のバージョンのドキュメントと同じ「場所」(つまり、同じファイルまたは同じフォルダー)に保存されていることがわかります。しかし、ドキュメントは詳細に乏しいです。

「Inside Mac OS X 10.7 Lion:Auto Save、File Versions and Time Machine」というタイトルのAppleInsiderの記事もあります。

Time Machineとは異なり、Versionsはすべての変更スナップショットをローカルドキュメントファイル内に追加するため、ファイルシステムの混乱を回避し、過去数時間で作成された以前のバージョンに戻すためにTime Capsuleまたは他の外部ディスクからバックアップにアクセスする必要がなくなります。

バージョン機能がどのように機能するかについての詳細な説明はまだ見つけていません。


私はそれらが.DocumentRevisions-V100(ドキュメントと同じファイルではなく)に保存されているという印象を受けました
Thilo

1
@チロ:はい、あなたは正しいです。開発者用ドキュメントがバージョン機能と「自動保存」機能をどのように結び付けているかについて、私は惑わされました。他のユーザーからの詳細な回答で指摘されているように、古いバージョンのドキュメントは、現在のバージョンと同じファイルまたはフォルダーに保存されていません。AppleInsiderの記事はその点で間違っています。
Rinzwind '26 / 07/26

0

ゴードン、これは皆にとって良いニュースであり、KnoxとEspionageのソフトウェア開発者にとっても良いニュースです(私は両方のアプリを使用しています)。

ただし、ユーザーが注意すべきシナリオは次のとおりです。外部ドライブのマウントされた暗号化されたディスクイメージ内のファイルにアクセスしている場合、バージョンファイルはおそらく暗号化されていない形式でユーザーのシステムドライブに存在します。これを回避するには、マウントする前に.sparsebundleをシステムドライブにコピーします。

もう1つのシナリオは、.sparsebundleが同じネットワーク上の別のSnow Leopard Macにあり、イメージがネットワーク上で共有されており、Finderを介して参照することによってLion Macにマウントできるようにする場合です。(私はこれをときどき行います。)これにより、バージョンファイルがユーザーのシステムディスクに暗号化されていない形式で配置されることになります。これに対する1つの回避策は、画面共有を使用してSnow Leopard Macを制御し、そのMacのイメージにマウントして作業することです。

つまり、Lionでは、暗号化されたディスクイメージを使用する場合、イメージがシステムドライブにない場合、人々はこれまで以上に理解し、注意する必要があります。KnoxとEspionageの開発者がこれらの問題について顧客に警告することを望みます。

編集:グラハムの答えは私の仮定のほとんどをサポートするようです。


「外部ドライブ上のマウントされた暗号化されたディスクイメージ内のファイルにアクセスしている場合、バージョンファイルはおそらく暗号化されていない形式でユーザーのシステムドライブに存在します。」その情報はどこから入手しますか?.DocumentRevisions 暗号化されたボリュームに配置されると思います。@Gordonの答えもそれを確認しているようです。
ティロ

@Gordon I DK私は、ファイルがシステムディスクにない場合、バージョンファイルはシステムディスクに保存されると考えました(外部ディスクは別のファイルシステムである可能性があります。これが重要かどうかはわかりません)。私はどこかでこれを読んだと思ったが、ソースはもう見つからなかった。私はゴードンが私の特定のケースのみに言及していると思いました。ゴードン、ディスクのフォーマットなどに関係なく、バージョンが実際のファイルと同じディスクに保存されていることを確認できますか?Gordonが「ディスク(またはディスクイメージ)」と言っているのは知っていますが、彼はこの種のテストについては触れませんでした。
Phil M

@Gordonたぶん、言及された2つの特定のシナリオ(USBディスクとSL Mac上のネットワーク)をテストできます。正しくないことが証明されるのが大好きです。
Phil M

Mac以外のファイル形式の外部ディスクについての良い点。多分彼らはまったくバージョンを取得しませんか?OTOH、これが通常のファイルシステムの上に「ハッキング」される方法は、たとえばFAT32でも機能することを意味します。
ティロ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.