PCはもちろんiPhoneやAndroidなどスマートフォンでも手軽に強固なパスワードを作りだし、使い回しなど煩雑になりがちなログイン情報の管理もラクになる大人気のパスワード管理アプリ「1Password」ですが、旧形式のAgile Keychainを利用していると問題があるとのことでセキュリティ界隈が賑わっているようです。
というわけで、1Passwordの保管庫を旧形式のAgile Keychainから新形式のOPVaultに変更する方法を書いておきます。
旧形式のAgile Keychainでは平文で一部の情報を閲覧できてしまうとの指摘
「Agile Keychain」と「OPVault」とは?
1Passwordではパスワード以外にもキャッシュカードや自宅の住所、Wi-FiのSSIDやパスワードなど様々な個人情報を「保管庫」に保存しています。
この保管庫には2種類の形式があって、「Agile Keychain」と「OPVault」が存在します。今回、脆弱性があると指摘されたのは旧形式のAgile Keychainの方。メタデータが暗号化されておらず、名前や住所など一部の情報が平文で閲覧できてしまうそうな。
So what’s the problem? Well, it turns out that your metadata isn’t encrypted. I discovered this after having a sync issue with Dropbox (I use Dropbox to host my keychain). The file that had issues was 1Password.agilekeychain/data/default/contents.js. Being a curious kind of guy I opened the file to see what was in there. The answer is the name and address of every item that I have in 1Password. Every single one. In plain text.
引用元:1Password Leaks Your Data
実際にAgile Keychain形式の保管庫を確認してみます。Dropboxに保存されている保管庫を右クリックしてパッケージの内容を表示を選択。
問題とされているのはdata→defaultフォルダにあるcontents.js
このファイルを開くと、パスワードは暗号化されているものの、ログイン情報のタイトルやURLは平文で保存されています。
脆弱性の影響を受けるのは誰なのか
開発元のAgileBitsは3年前の2012年に新形式のOPVaultを導入しているため、影響があるのは2013年よりも前から1Passwordを使っている人ということになります。
また、1Passwordには、PCやスマートフォン、タブレットなどのデバイス間でログイン情報を同期するためにiCloudやDropboxなどを利用しますが、iCloudはOPVaultのみを採用しているため問題はなし。問題があるのはAgile Keychain形式の保管庫をDropboxやフォルダ同期を利用している場合のみとなります。
なお、AndroidにおいてはDropboxで同期する場合、Agile Keychainの保管庫しか選択することができません。AgileBitsはWi-Fi同期を使用することを推奨しています。
つまり、1Passwordを2013年以前に利用していて、Dropboxやフォルダ同期を利用している人に影響アリ、対策として旧形式のAgile Keychainから新形式のOPVaultに変更しましょうということです。
ただ、指摘されているのはログイン情報の一部が平文で保存されているというだけで第三者が容易に確認できるわけではありません。
第三者が平文の情報にアクセスするにはAgile Keychain形式の保管庫をDropboxのパブリックフォルダに入れて同期するか、Dropboxに不正アクセスされるか、1Passwordを利用しているPCが第3者に不正利用されるぐらいのオマヌケをかまさないと外部には流失しないはずですが、OPVaultへ移行しておいて損はないのでササッと以降することをオススメします。
Agile KeychainとOPVaultどちらを使っているか確認する方法
Agile KeychainとOPVaultのどちらを使っているか確認するには、メニューバーの1Passwordのアイコン→設定アイコンをクリックして「1Passwordを開く」を選択します。
さらに、メニューバーから「1Password」→「環境設定」と進みます
同期タブを選択すると、同期している保管庫が表示されますが拡張子が「.agilekeychain」になっている場合は旧形式のAgile Keychainが利用されています。
保管庫のバックアップを取る
「移行」とは言っていますが、既存の保管庫は削除せず新たに保管庫を作成することになるため、データが消えることはありません。が、念のためバックアップを取っておきましょう。
メニューバーから「1Passwordを開く」をクリックします。
さらに、メニューバーから「1Password」→「環境設定」と進みます
「バックアップ」タブを選択して「今すぐバックアップ」をクリックします。これでバックアップは完了です。
1PasswordにてAgile Keychainから「OPVault」に変更する方法
1Password for Mac編
「OPVault」に変更するには、メニューバーから1Passwordを終了させます。
次にターミナルを起動してコマンドを実行します。
1PasswordをMac App Storeからインストールしている場合は以下のコマンドを、
defaults write 2BUA8C4S2C.com.agilebits.onepassword-osx-helper useOPVaultFormatByDefault true
AgileBitsのサイトからインストールしている場合は以下のコマンドを実行します。
defaults write 2BUA8C4S2C.com.agilebits.onepassword4-helper useOPVaultFormatByDefault true
コマンドの実行は、上記のコマンドをターミナルにコピペしてエンターキーを押すだけです。
どちらからインストールしたか忘れたという場合はMac App Storeを起動して1Passwordを検索して、インストールボタンが「開く」になっていればMac App Storeからのインストールになります。
コマンドを実行したら1Passwordを再起動して、メニューバーから「1Passwordを開く」クリック。
メニューバーから「1Password」→「環境設定」と進みます
同期タブを選択して一度「なし」を選択して、
「同期を無効にする」をクリックします。
再度、同期タブを選択して今度は「Dropbox」または「フォルダー」を選択しましょう。
OPVault形式の保管庫を作成するフォルダを選択して「新規作成」をクリックすればOKです。
1Password for Windows編
Windows版でOPVaultに変更するには1Passewordを起動してツールバーの「File」→「Export」をクリックします。
エクスポートするフォーマットは「1PIF」を選択します。
次にツールバーの「File」→「New 1Password Vault」をクリックして、
OPVault形式の保管庫を作成します。
保管庫が作成できたら、「File」→「Import」をクリックします。
先ほどエクスポートした1PIFファイルを選択します。
これでAgile Keychainで保存していたログイン情報などをOPVaultの保管庫に移行することが可能です。
OPVault形式の保管庫をスマホアプリに同期させる
OPVault形式の保管庫を作成したら、1Passwordのスマホアプリを起動して設定タブを選択。「同期」→「同期サービス」→「Dropboxと同期」と進みます。
OPVault形式の保管庫「.opvault」をタップするとOPVaultへの変更は完了です。
旧形式Agile Keychainの保管庫の退避・削除、保管庫が保存されているフォルダがプライベートになっているか確認、Dropboxの2段階認証の導入なども忘れずにやっておきましょう。
コメントを残す