Comments
Description
Transcript
講義スライド
情報セキュリティ 第2回 2011年4月15日(金) 1/27 本日学ぶこと ユーザ認証 ユーザから見たパスワード管理 管理者から見たパスワード管理 パスワード以外の認証 2 認証(Authentication)とは ユーザ認証とは メッセージ認証とは ユーザ名とパスワードなどの組み合わせを使って,コンピュータ を利用しようとしている人にその権利があるかどうかや,その人 が名乗っている本人かどうかなどを確認すること 「メッセージが正しい送信者からのものである」という性質 情報セキュリティの三大要素のうち,完全性に関わる要素 3 ユーザ認証とパスワード ユーザ認証のモデル Prover (証明者) ①ユーザ情報を入力 ② OK/NG Verifier (認証者) ユーザ情報として「個人識別情報」と「パスワード」の組を用いて, 個人を識別する 個人識別情報は,システムが提供する パスワードは,システムが提供するものもあれば,利用者が設 定するものもある どのようなパスワードを使用すれば安全か? 4 パスワード解析の前提 敵対者の目標:他人の個人識別情報(ユーザ名,口座番号 など)および認証方法を既知として,そこから,認証に必要な パスワードを発見すること Cracker (敵対者) ①Proverの ユーザ情報を入力 ② OK/NG Verifier (認証者) 認証方法 敵対者が同じ認証方法を所有する:UNIXのパスワードクラック いくらでも試せる 敵対者は認証方法を所有しない:Webサーバ,銀行ATM 失敗するとペナルティ 5 パスワード解析の種類 ブルート・フォース・アタック(brute-force attack) 辞書攻撃 6 ブルート・フォース・アタック すべてのパスワード候補をVerifierに送り, 「当たり」が出るまで続ける 時間は,1回の判定時間×探索終了までの回数 探索終了までの回数は,パスワードの候補の数に比例 「総当たり法」「全探索」 「虱潰し(しらみつぶし)」 ともいう パスワードになり得る値の集合を「パスワード空間」 という 期待値は,パスワード空間のサイズの半分 パスワード空間が大きいほど安全 ある性質を持つ値の 集合を「~空間」という. 例:鍵空間,平文空間, 暗号文空間,メッセー ジ空間,… 7 数字によるパスワード(1) 銀行の暗証番号 4桁の数字:10000通り もし敵対者が認証システムを所有していて,(電子工作など で装置を作って)1秒間に100回の入力ができるなら,最大 100秒でパスワードが割り出せる 8桁の数字なら?:100000000通り 上記の敵対者の行動で,最大106秒…およそ11.5日 誰もが覚えていられる? 8 数字によるパスワード(2) 10文字 4文字で10000通り 8文字で100000000通り(1.00×108通り) 9 英数字によるパスワード 62文字 4文字で14776336通り 8文字で218340105584896通り(2.18×1014通り) 10 英数字と記号によるパスワード 95文字 4文字で81450625通り 8文字で6634204312890625通り(6.63×1015通り) 11 パスワード空間のサイズ:まとめ 文字数 数字のみ 4 1.00×104 5 1.00×105 6 1.00×106 7 1.00×107 8 1.00×108 1.11×104 1.11×105 1.11×106 1.11×107 1.11×108 英数字 1.48×107 9.16×108 1.50×107 9.31×108 英数字と記号 8.14×107 7.73×109 8.23×107 7.82×109 5.68×1010 7.35×1011 5.77×1010 7.43×1011 3.52×1012 6.98×1013 3.58×1012 7.06×1013 2.18×1014 6.63×1015 2.21×1014 6.70×1015 ちょうど 以内 数字のみ<英数字<英数字と記号 1文字増えるとパスワード空間がうんと大きくなる 12 辞書攻撃 問題のあるパスワード 個人識別情報そのもの,または一部,または少し付加しただけ takehiko, take, takehiko1, takehi0 プライベートな情報 配偶者や恋人の名前,電話番号や生年月日 辞書に載っている単語 apple, web 辞書に載っている単語を組み合わせただけ appleweb, apple!web 辞書と,選ばれる傾向をもとに,パスワードを発見する方法 を「辞書攻撃」という ツールが存在する ブルート・フォース・アタックと別の方法で見つかってしまう! 13 パスワードの選び方 どのようなパスワードを使用すればよいか? 文字種や字数の制限があれば,それに従う UNIXのパスワードでは,英数字と記号を織り交ぜて, 6文字以上8文字以内にする 自分は思い出しやすいものにする 長ければいい,というものではない 辞書攻撃で破られるようなパスワードは使用しない パスワードをメモしない(?) あちこちの認証システムで同一のパスワードにしない(?) 14 管理する側から,パスワード認証を考える Linuxでは,パスワードはどのように管理されている? 自分がネットワーク管理者になったら,パスワードは どのように管理する? 15 UNIXのパスワード(1) ユーザまたは 管理者が入力 登録 パスワード: "wakayama" ランダム ソルト:"cc" 暗号化 (crypt関数) 暗号化されたパスワード: "ccwp5gV6wOumk" パスワード ファイル /etc/passwd "wakayama"を推測 するのは極めて困難 16 「暗号化」は行うが 元に戻すこと (「復号」)はしない UNIXのパスワード(2) ユーザが 入力 認証 パスワード: "wakayama" ソルト:"cc" 暗号化されたパスワード: "ccwp5gV6wOumk" 暗号化 (crypt関数) パスワード ファイル /etc/passwd "ccwp5gV6wOumk" 等しい? 17 ソルト(salt)の役割 ソルトがないと… ユーザ名 パスワード 暗号化パスワード takehiko wakayama nNAvIrX23n2 murakawa wakayama nNAvIrX23n2 ソルトがあると… ユーザ名 パスワード ソルト 暗号化パスワード takehiko wakayama cc ccwp5gV6wOumk murakawa wakayama se seL7HUUbt2qmA ソルトが異なれば,同じパスワードでも 異なる暗号化パスワードが生成される 18 UNIXのパスワード(3) 最近は /etc/passwdには暗号化したパスワードを書かない /etc/shadowに記載し(シャドウパスワード), rootしか読めない DESではなくMD5をもとに暗号化する パスワード長,ソルト長ともに大きくなった 認証の一元化,ネットワーク化を支援するソフトウェアやシステ ムも広く使われている NIS (Network Information Service), NIS+ Kerberos LDAP (Lightweight Directory Access Protocol) PAM (Pluggable Authentication Modules) 19 管理者の立場で(1) パスワードはどう設定するか? システムが生成,提供する よいパスワード生成プログラムを選べば安全にできる ユーザは覚えられず,紙などに記録するかも ユーザに自由に決めてもらう 安全性をユーザに委ねる 現状の最善解は? 管理者が,個人識別情報と初期パスワードを提供する ユーザは,認証に成功すれば,(今後使用する)パスワードを 設定し,初期パスワードを破棄する 20 管理者の立場で(2) パスワードの心得 再発行の注意点 パスワードを忘れた=システムに入れない パスワードを忘れる人がいない組織はない 「暗号化されたパスワード」から,「パスワード」を求めることは 不可能 すぐには再発行しない 悪用(ソーシャルエンジニアリング)対策 ユーザ教育として これまで発行したパスワードは使わない ユーザが変更できるようにする場合 現在のパスワードを1回,新しいパスワードを2回入力させる いずれも画面に出さない 新しいのが1回だと,打ち間違いを見抜けない 21 パスワード以外のユーザ認証法 ユーザ認証とは? ユーザの持つ情報とは? ユーザの持つ情報を使用して,そのユーザであることを確認・ 証明すること 知っていること(something you know, SYK):パスワードなど 持っているもの(something you have, SYH):IDカードなど 身体的特徴(something you are, SYA):バイオメトリクス バイオメトリクス認証…身体的特徴に基づくユーザ認証 長期間にわたって変化しにくく,類似する特徴・特性を 持つ第三者が皆無かきわめて少ないようなものを用いる 身体的特徴:指紋,虹彩,顔,血管パターン,音声など 身体的な特性:筆跡,打鍵など 22 バイオメトリクス認証方式とその精度 指紋認証,虹彩認証,顔認証,指静脈認証,掌静脈認証な ど http://www.hochiki.co.jp/business/security/security03.php 誤認識について (例)他人受入率:0.0001%,本人拒否率:0.01%以下 他人受入率を0にしようとすると,「疑わしいものを拒否する」こ とになり,本人拒否率が上がる. 本人拒否率を0にしようとすると,「疑わしいものを通す」ことに なり,他人受入率が上がる. トレードオフの関係にあり,ともに0にすることはできないため, 基本的には他人受入率をより低くする. 23 バイオメトリクス認証の注意点 高価な認証機器 使用者の心理的抵抗 安価な攻撃方法(グミの指など) 本人拒否率と他人受入率のバランス(ともに0にはできない) 24 ネットワークを介した認証 リモートログイン(Prover-Verifier間に距離がある)で,盗聴 されることを前提としたユーザ認証方式は? パスワードを暗号化しなければ…盗聴して,リプレイ攻撃 パスワードを暗号化すれば…暗号文を盗聴して,リプレイ攻撃 ①ユーザ情報を入力 Prover Verifier ② 盗聴 ③盗聴内容を送る Cracker ④ (Proverとして)OK 通信されるユーザ情報を毎回違うものにすればいい! ワンタイムパスワード 25 ワンタイムパスワードの例:LM認証 ② 接続要求 ③チャレンジ ① パスワード Client Prover ④レスポンス Server (Verifier) ⑤ OK/NG LMハッシュ = e(パスワード,"KGS!@#$%") チャレンジは毎回異なる文字列(Serverが生成する) レスポンス = e(LMハッシュ,チャレンジ) eはDES暗号化アルゴリズム 26 本日のまとめアンケート 本日の授業の中で,印象に残った言葉を3つ選び,メモに記 入して提出しなさい. 27 E