やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Amazonアカウントで二段階認証を有効にする(電話番号SMS)

 Amazonに自分の電話番号を教えず、ネット回線のみで。

前回まで

二段階認証

 Amazon公式サイトに手順が書いてある。

 読めばわかるが、以下の2点が必要である。

  • 最低でも1つは電話番号を持っていること
  • 電話番号をAmazonに教えること

電話番号で個人を識別できる根拠

 電話番号は個人が契約しているもの。そのとき身分証明などで個人が特定されているはず。よって電話番号を介してやりとりすれば個人を識別できる。認証に使える。

やりとりする方法

  • 音声通話
  • SMS(ショート・メッセージ・サービス)

 音声は聞き取りづらそうなのでSMS一択。

電話番号を教えることへのリスク

 ちょっと待て。セキュリティを高めたいのに、電話番号という個人情報を新たに教えてしまうって……本末転倒じゃないか?

 Amazonから流出する可能性もある以上、教えないほうがいいのでは? (実際はとっくに掌握されているのかもしれないが)

 個人情報の流出や売買など、今や当然のごとく行われているというのに……。

二段階認証は個人情報を脅し取るしくみ

 もはや「二段階認証は『セキュリティ・リスクがあるぞ』と脅して電話番号(個人情報)を脅し取るしくみ」にしか見えない。

 なぜお宅らに電話番号を預けることへの危険性については語られないのか。疑いをもたせることなく個人情報を自ら献上させるためでは? そう考えると筋が通る。

 すると、「電話番号を教えない」ことこそがセキュリティ対策だという当然の結論に行き着く。

 二段階認証よ、お前がリスクになってどうする。

「電話番号が必要」に違和感

 大体、「二段階認証するのに電話番号が必要」ということ自体に違和感がある。

 SSHみたく鍵を生成してやりとりすればいいのでは? なぜリアルの個人情報と結びつけようとする? その必要性はどこにある? しかもログインするたびに毎回?

 ログイン時でなく、支払い(購入)、配達などリアルな個人情報が必要な場面になってからはじめて、個人情報と結びつければいいだけだと思うのだが。

 でも、きっと頭のいい人たちが考えた仕組みだろうし、多分私が何か間違っているのだろう。信じないけど。

二段階認証を有効にする

 というわけで、自分の電話番号は使わず、ネットで見つかる電話番号を使って登録する。

  1. Amazon公式サイトにアクセスする
  2. アカウントサービスをクリックする
  3. ログインとセキュリティをクリックする
  4. 高度なセキュリティ設定にある編集をクリックする
  5. 高度なセキュリティ設定2段階認証設定を開始をクリックする

1. 第一手段

 前回ネットから拝借した公開電話番号を入力する。+から始まる何桁かは国を表すコード。これをプルダウンで選択する。それを省いた残りの数字をテキストフィールドに入力する。

f:id:ytyaru:20181009170541p:plain

 コードを受信するボタンをクリックする。

 電話サイトを見てみると、画面最上位に最新メッセージとしてアマゾンから来ている。画像はマスクをかけたが、6桁の数字だった。それがコードである。こいつをコピペする。

f:id:ytyaru:20181009170624p:plain

2. バックアップ手段

 「認証アプリ」を選択する。

 むしろ今回の場合、こちらの手段だけを使うべき。なにせ第一手段は公開された電話番号だから、コード送信を要求したらOTPが入手できてしまう。それはネットに公開されており、誰でも閲覧できる。

 もしログインした画面で、この電話番号を盗み見されて暗記されたら二段階認証を入手されてしまう。電話番号だけなら大丈夫。ユーザ名とパスワードと電話番号が揃ったらアカウント・ハックされる。

f:id:ytyaru:20181009170704p:plain

 以前入手したOTP算出用アドオンを使う。

 再びAuthenticatorのアイコンをクリックすると、OTPが生成される。クリックするとコピーされるので、Amazonサイトに戻ってテキストフィールドに入力する。次に進むをクリックする。

3. 最終確認

f:id:ytyaru:20181009172600p:plain

  1. ニ段階認証を設定をクリックする

 なお、このブラウザではコードは必要ありませんのチェックはしない。ここはお好みで。

f:id:ytyaru:20181009172756p:plain

さらにバックアップ

 二段階認証アプリからデータをバックアップする。

 手順2でやったQRコードの内容は秘密鍵。これがキモ。こいつを忘れぬよう紙などにバックアップしておく。(ファイル自体をオフラインの持ち出されにくい記憶デバイスに保存してもいい)

 秘密鍵をみるにはエクスポートさせる。

  1. chromiumブラウザを起動する
  2. Authenticatorのアイコンをクリックする
  3. 歯車アイコン(設定)、QRコードをスキャンと順にクリックしていく
  4. エクスポート/インポートをクリックする
  5. バックアップファイルのダウンロードをクリックする
    f:id:ytyaru:20181005122055p:plain
  6. authenticator.jsonファイルがダウンロードされる
  7. テキストファイルで開く
  8. secretキーの値が秘密鍵である

 これでもしPCのデータが消えてもOTPを生成できる。SMSでやりとりする必要なく。

心配

 公開された電話番号に認証コードが表示されているのが心配。セキュリティ的に大丈夫か?

わかりにくい説明

 Amazon公式サイトにある手順をよく見てみると、電話番号でなく認証アプリを第一手段にできるらしい。

 アマゾン公式サイトの説明、なんか違和感。

設定に必要な環境

以下いずれかの環境が必要です。...

 とある。最初のPCまたは……からもうわかりにくい。以下のうちどれ?

  • (PC or タブレット) and スマホ
  • PC or (タブレット and スマホ)
  • PC or (タブレット or スマホ)
  • PC or タブレット or スマホ

 二段階認証の意味から考えて「コンピュータ2台」って意味だろう。2台にしないと二要素じゃないし。そして前の文章から、「いずれの組合せでも電話番号が1つは必要」らしい。つまり(PC or タブレット) and スマホのパターンか? でもその場合、スマホは電話が使える前提。もしキャリアと契約せず電話番号が使えないスマホの場合はNG。  ようするに「電話番号1つ+コンピュータ2台」の方法が「推奨」という意味だろう。

 コンピュータの形状がPCだろうがタブレットだろうがスマホだろうがノートだろうかモニタ一体型だろうが何でもいいはず。(「認証アプリが動作する環境」という意味のはず)

 ケータイ(ガラケー)はSMS受信できる携帯電話だろうか。ケータイは認証アプリが動作させられないと思うのでコンピュータとしては含まれないはず。

  • 電話番号1つ+コンピュータ2台(推奨)
  • 電話番号1つ+コンピュータ1台
  • 電話番号2つ+ケータイ1台

 ちょっとケータイ使う場合がわからんけど、まあいいや。ケータイの場合は別途、アマゾンサイトにアクセスできるコンピュータも必要になる。(ケータイの機種にはブラウザが起動するものもあるが、通信料が高くなる契約プランかもしれない)

今回の場合、推奨の方法は推奨できない

 Amazonサイトで手順へのリンクが貼ってある部分がある。電話番号を第一手段とする手順が一番上にある。私はふつうに上から見たので、そのまま一番上をクリックして進めた。それが今回やったものである。

  • 電話番号を1つお持ちの場合、以下いずれかの組み合わせを選択できます。
    • 第一手段に電話番号(SMS)、バックアップ手段に認証アプリを使用
    • 第一手段に認証アプリ、バックアップ手段に電話番号(SMSか音声電話)を使用
    • 第一手段に音声電話、バックアップ手段に認証アプリを使用

 電話番号を第一手段に使っている。これは本当にセキュリティ的に問題ないのか? 今回みたいに公開電話番号を使う場合はむしろ危険だろう。

 そこで次回は第一手段に認証アプリ、バックアップ手段に電話番号を使うようにする。