Comments
Description
Transcript
講義スライド
情報セキュリティ 第1回 2015年4月10日(金) 1/27 本日学ぶこと 本日の授業を通じて この科目の進め方および成績評価の方法を理解します. 情報セキュリティの三大要素(機密性・完全性・可用性)を学び ます. 安全性を定量的に評価するいくつかの事例を学びます. 2 この科目について 担当者は村川猛彦(むらかわ たけひこ) 授業情報はWebで 質問・相談は [email protected] へ http://www.wakayama-u.ac.jp/~takehiko/secu2015/ 科目区分:専門・選択必修 他学科(自由選択科目として履修希望)の学生は別途相談 3 この科目で何を学ぶか 情報資産の守り方 キーワード(授業はこの順ではありません) 暗号系:古典暗号(単一換字暗号),秘密鍵暗号(DES,AES), 公開鍵暗号(RSA) 認証:ディジタル署名,一方向ハッシュ関数,PKI セキュリティソフトウェア:PGP,SSL,SSH 個人・組織のセキュリティ:パスワード,マルウェア対策,セキュ リティポリシー,個人情報保護法 システムセキュリティ:ファイアウォール,安全なアプリケーショ ン開発 基礎:計算理論,暗号プロトコル 4 情報セキュリティは,なぜ学ぶことが多いのか? システムの安全性は,その中の最も弱い箇所によって決ま るから. 弱い箇所(the weakest link)の例 今となっては安全でない手法を使用 パスワードや鍵の杜撰な管理 社内のセキュリティポリシーを1人で策定 内外をつなぐリンクが複数 電話一本即対応 5 情報セキュリティは何「ではない」か ハッカーの養成ではない 暗号理論ではない パスワード管理など,誰もが注意しないといけない問題もある. 「理論」と「実装」と「運用」の一つでも不十分なシステムは,正し く機能しない. 「破られたらおしまい」という考え方ではない 破られるのにどれだけのコストを必要とするかが安全性の尺度 となる.つまり,情報セキュリティは対象を定量的に取り扱える. 6 情報セキュリティを学ぶのに必要なもの 広く深い知識 (工学的)思いやりの心 情報セキュリティは人の問題 「誰がいて,それぞれ何ができて何をしたいか」の分析が必須 ある種の数学 常にメンテナンス 知識を得るための知識も 離散数学,アルゴリズム理論,計算理論 プログラミングやインターネットの基礎知識 7 授業の進め方 参考書 スライドを中心に進める 結城浩, 『新版 暗号技術入門―秘密の国のアリス』, ソフトバン ククリエイティブ, ISBN9784797350999 授業内容のうち約30%が関連 Webで,原則として授業前日までに公開 当日の配布資料は12スライド限定(両面1枚) インターネット上の情報や,ソフトウェアも活用する 予習・復習 予習しておくと,授業中の理解に役立つ 復習は,しっかりやってほしい 8 成績評価の方法 レポート20点+試験80点=100点 試験は自筆ノートのみ持込可(書籍・配布資料不可)の予定 出席点なし 昨年度の授業・試験も参考に 個別の点数照会には応じない 9 情報セキュリティ,はじめの一歩 「情報セキュリティ」とは 安全性の定量評価 鍵の特定 パスワード解析 10 情報セキュリティの三大要素 機密性(Confidentiality)…漏れない 完全性(Integrity)…書き換えられない 許可されている人だけが情報にアクセスできる状態 主に「暗号技術」によって実現 情報が整合性が取れて保存されている状態 主に「認証技術」によって実現 可用性(Availability)…立入禁止にならない 必要な時に情報にアクセスできる状態 主に「運用」によって実現 11 情報セキュリティの三大要素と安全性 定性的には,機密性・完全性・可用性をすべて満たすものが 「安全(セキュア,Secure)」 定量的に表現することもある 資産価値 = 機密性 + 完全性 コスト < 資産価値×攻撃成功確率 (ならば対策をとる) 12 機密性・完全性・可用性のたとえ話 透明の封筒に入った情報 ホワイトボードにあれこれ書き込む 完全性を満たすが,機密性は満たさない 可用性を満たすが,完全性は満たさない どこかの本に秘密のメモを挟み,忘れてしまう 機密性を満たすが,可用性は満たさない 13 隠せば安全? 暗号アルゴリズムやシステム構築方法を隠すのでは,安全 性は実現できない 隠すことによるセキュリティ(security by obscurity) 歴史的に,簡単に破られてきた 隠すのは,手法ではなく,鍵 鍵が512ビットなら,「当たり」の鍵を見つけるには, 平均2512/2回の値による試行を要する ただし,鍵が512ビットでも,数千回程度の試行で破られるもの ではいけない(見掛け倒しの鍵) 14 鍵の特定 512ビットの鍵を特定することができるか? (参考書p.73, p.75より) 512ビットの鍵…2512 種類の異なる値に正解は一つだけ 鍵発見のための(非現実的な)環境 計算機1台で毎秒1020個の鍵を生成し正誤判定できる 計算機は10100台 1020年以内に発見する 答え:可能性は非常に低い. 探索鍵数:1020×(366×24×60×60)×10100×1020 < 10148 鍵の総数:2512 ≒10154 発見できる確率は, 10148/10154=10-6 15 パスワード管理 パスワードが知られると… 他人が自分の名前(ID)で入って悪さし放題 自分から漏洩しなくても,推測されると乗っ取られる では,どうすればいいか? 良いパスワードを利用する 「today」や「20150410」は良いパスワード? ときどき変更する パスワード情報の管理方法を知っておく パスワードの「暗号化」とは何をすることか? システム管理者は全ユーザのパスワードを知っている? 16 パスワードを用いたユーザ認証 ユーザ認証のモデル Prover (証明者) ①ユーザ情報を入力 ② OK/NG Verifier (認証者) ユーザ情報として「個人識別情報」と「パスワード」の組を用いて, 個人を識別する 個人識別情報は,システムが提供する パスワードは,システムが提供するものもあれば,ユーザが 設定するものもある どのようなパスワードを使用すれば安全か? どのようなパスワー ドを使用すると「見つかってしまう」か? 17 パスワード解析 敵対者の目標:他人の個人識別情報(ユーザ名,口座番号 など)および認証方法を既知として,そこから,認証に必要な パスワードを発見すること Cracker (敵対者) ①Proverの ユーザ情報を入力 ② OK/NG Verifier (認証者) 認証方法 敵対者が同じ認証方法を所有する:UNIXのパスワードクラック いくらでも試せる 敵対者は認証方法を所有しない:Webサーバ,銀行ATM 失敗するとペナルティ 18 パスワード解析の種類 ブルート・フォース・アタック brute-force attack 「総当たり法」「全探索(exhaustive search)」 「虱潰し(しらみつぶし)」ともいう 辞書攻撃 dictionary attack 19 ブルート・フォース・アタック すべてのパスワード候補をVerifierに送り, 「当たり」が出るまで続ける 時間は,1回の判定時間×探索終了までの回数 探索終了までの回数は,パスワードの候補の数に比例 パスワードになり得る値の集合を「パスワード空間」 という 期待値は,パスワード空間のサイズの半分 パスワード空間が大きいほど安全 ある性質を持つ値の 集合を「~空間」という. 例:鍵空間,平文空間, 暗号文空間,メッセー ジ空間,… 20 数字によるパスワード(1) 銀行の暗証番号 4桁の数字:10000通り もし敵対者が認証システムを所有していて,(電子工作など で装置を作って)1秒間に100回の入力ができるなら,最大 100秒でパスワードが割り出せる 8桁の数字なら?:100000000通り 上記の敵対者の行動で,最大106秒…およそ11.5日 誰もが覚えていられる? 21 数字によるパスワード(2) 10文字 4文字で10000通り 8文字で100000000通り(1.00×108通り) 22 英数字によるパスワード 62文字 4文字で14776336通り 8文字で218340105584896通り(2.18×1014通り) 23 英数字と記号によるパスワード 95文字 4文字で81450625通り 8文字で6634204312890625通り(6.63×1015通り) 24 パスワード空間のサイズ:まとめ 文字数 数字のみ 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文字増えるとパスワード空間がうんと大きくなる ⇒ブルート・フォース・アタックに対してより安全 25 辞書攻撃 問題のあるパスワード 個人識別情報そのもの,または一部,または少し付加しただけ takehiko, take, takehiko1, takehi0 プライベートな情報 配偶者や恋人の名前,電話番号や生年月日 辞書に載っている単語 apple, web 辞書に載っている単語を組み合わせただけ appleweb, apple!web 辞書と,選ばれる傾向をもとに,パスワードを発見する方法 を「辞書攻撃」という ツールが存在する ブルート・フォース・アタックと別の方法で見つかってしまう! 26 パスワードの選び方 どのようなパスワードを使用すればよいか? 文字種や字数の制限があれば,それに従う UNIXのパスワードでは,英字(大小)・数字・記号を織り交ぜて 8文字以上にする 辞書攻撃で破られるようなパスワードは使用しない 自分は思い出しやすいものにする 異なる認証システムで同一のパスワードにしない あるところで知られると他にもアタックされる パスワードをメモしない(?) パスワード管理ソフトウェア(KeePass,LastPassなど)に 任せる(?) 27 E