ホーム » スタッフ » 斉藤徹 » 講義録 » 情報ネットワーク基礎 » 2段階認証の設定とセキュリティ

2018年1月
« 12月   2月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

最近の投稿(電子情報)

アーカイブ

カテゴリー

2段階認証の設定とセキュリティ

2段階認証

前回授業の暗号化の説明でも解説したように、パスワードはブルートフォース攻撃をうければ、いつかはパスワードが破られる危険性がある。こういった対策で最も重要な方法が、2段階認証(多要素認証)である。

この方式では、通常のパスワード入力の後に、以下の様な方式でワンタイムパスワードを入力することでログインが可能となる。

  • 携帯電話にテキストメッセージ(SMS)でワンタイムパスワードを送る。
  • 音声を用いると、電話がかかってくると機械音声でワンタイムパスワードを読み上げてくれる。
  • 認証システムアプリは、時間で変化するワンタイムパスワードが表示される。
  • バックアップコード(非常時用のパスワード)

以下の資料では、Google と Twitter で2段階認証を設定するための例を示す。

情報ネットワーク基礎後半のレポート課題

各自が利用しているインターネットサービスの中から1つを選び、2段階認証の設定を行うこと。
もし、インターネットサービスを一切利用していない人は、暫定で入会し課題終了後解約すればいい。

設定の資料として、Google, Twitter の例を上記に示す。他にも、Facebook , Amazon , Microsoft ID などがあるので、自分にとってセキュリティ上重要なサービスについて設定を行うこと。もし、2段階認証で問題がある場合は、このレポート課題終了後、2段階認証の設定を外せばよい。

レポートでは、2段階認証の設定中の画面、ログイン時の2段階認証が行われている画面、受信したワンタイムパスワードの例などを画面のキャプチャなどで取得し、その手順の流れを解説し、考察として2段階認証の利点と欠点について記載すること。

ただし、キャプチャ画面をレポートに貼り付ける際は、自分の個人情報が記載されないように注意をすること。

既に全てのサービスで2段階認証の設定を終えている人は、いくつかのサービスで2段階認証を用いてログインする手順を説明せよ。

学校の Office365 にて、2段階認証を使いたいと思うかもしれないけど、慣れない学生さんがログインできなくなる可能性があり、一部の教職員しか使えない。

セキュリティ

インターネットをクラッカーからの攻撃をうけないように守る場合、以下の3点の対策が重要となる。

  1. インターネットの経路での対策
  2. サーバ側での対策
  3. パソコン側での対策

バッファオーバーフロー

クラッカーがサーバを攻撃する場合、サーバ上のプログラムの脆弱性を利用する。
サーバプログラムの脆弱性で最も典型的な攻撃方法は、「バッファオーバーフロー」がある。

void foo() {              // foo 実行時のstackの内容
    char str[ 10 ] ;      //   str                  fooからの戻り番地
    scanf( "%s" , str ) ; //   [ | | | | | | | | | ][ret_label]
}                         //  入力時に、abcdefghijklmn\r と入力したら
                          //  [a|b|c|d|e|f|g|h|i|j][k|l|m|n|\n]
void main() {             //                          戻り番地が破壊される
    foo() ;               //  入力時に、abcdefghij][ウィルス番地][ウィルスプログラム]
ret_label:                //  といったデータを与えると、foo() の処理が終わると
    return 0 ;            //  ウィルスのプログラムを実行してしまう
}

こういったプログラムは危険なので、こういうミスが見つかったらプログラムの更新が重要。

ファイアウォール

サーバで動かしているプログラムにバッファオーバーフローのような不備が残っていて、全世界のどこからでもこういった不備があるプログラムに簡単に接続できたとしたら、極めて危険である。

サーバで動くプログラムは、接続するためのポート番号が決まっているので、相手のコンピュータのIPアドレスが分かったら攻撃を仕掛けてくるかもしれない。

FireWall は、これらの接続をできなくするための方法で、例えば学内のWebサーバへの攻撃を防ぎたいのなら、ルータで「宛先ポート番号が80のパケットは廃棄」といった設定をすればよい。また、危険な攻撃を加えてくるコンピュータのIPアドレスがわかっている場合は、「送信元IPアドレスXX.XX.XX.XXのパケットは廃棄」という設定をすればよい。こういった、ポート番号やIPアドレスを見てパケットを遮断するルータは、FireWall(防火壁)と呼ばれる。

よくある設定であれば、ポート番号23(telnet)、137,139(Windows ファイル共有)を禁止など(ブラックリスト型)、基本は全面禁止だけどポート番号22(ssh)は許可(ホワイトリスト型)など。