2003. Fall. Work Shop. Project Breaking TLS/SSL server authentication 環境情報学部2年 堀田 貴之 監修 安藤 類央 Objective ●SSL/TLSのチャレンジレスポンスの脆 弱性をついた秘匿情報の漏洩 ●現状のSSL/TLSよりもセキュアな認証シ ステムの提示 SSL/TLS(暗号・認証) TLS V1.0 SSL V3.0 SSL V2.0 セッション鍵公開用 RSA DH RSA 認証用(公開鍵暗号) RSA DSS/DSA セッションの暗号化(共通鍵暗号) AES(TLS) RC4 DES/3DES メッセージ認証用(ハッシュ関数) SHA1 MD5 MD5 赤:非対称暗号 青:対称暗号 SSL/TLS(通信手順) RSA 暗号化規則 y=xe(mod n) 復号化規則 x=yd(mod n) <特徴> ・剰余を取っているため、この変換は対数を 取って逆算することができない。 ・暗号と復号の処理が対称 ・秘密通信にも、ディジタル署名にも利用可能 チャレンジレスポンス認証 ●乱数と暗号技術を利用して行う相手認証 ●要求者Pと認証者Vが秘密鍵Kを共有する ことにより、Vの相手がPであることを 認証する。 – – – – (1) PはVに認証を要求する。 (2) Vは乱数r を生成してPに送る。 (3) Pは E(r, K) をVに送る。 (4) Vは D(E(r, K), K)=r を得 て正当な相手であることを認証 する。 チャレンジレスポンス認証の問題 問題点 1)PとVが秘密を共有する必要がある。 ⇒後にV(の管理者)がPになりすます危険性を避けることができな い。 2)非対称暗号技術を利用する方式では、Pは自分の秘密鍵をVに知 らせることなしに認証してもらうことが可能だが、理論的にはその 間に秘密鍵に関する知識の一部をVに与えている。 ⇒後にV(の管理者)がPになりすます可能性(確率)は0ではない。 攻撃手段 攻撃者が、Vの立場で乱数r を生成してPに送り認証する処 理を何度も実施し、その記録を蓄積しておき。後にPになり すまし、他のサーバにログインする。その際にサーバから送 られてくる乱数r が蓄積してあった記録の中にあれば、Pに なりすますことに成功することが出来る。 Code Break Code Break Code Break Code Break(demo) ゼロ知識対話証明を応用した認証 平方剰余問題に基づくゼロ知識対話証明 (数値例) ●鍵 – 秘密鍵:素数 p = 101, q =199, 自然数 m =300 – 認証鍵:n =20099, c (=m 2 mod n ) = 9604 ●認証プロトコル – 第1ラウンド • • • • (1) 乱数r =5000、x=r 2 mod n = 16943 (2) b = 0 (3) y =r mod n = 5000 (4) y 2 mod n = 16943, x mod n = 16943 だから、左辺と右辺が一致する。 – 第2ラウンド • • • • (1) 乱数r =12000、x=r 2 mod n = 10764 (2) b = 1 (3) y =r ・m mod n = 2279 (4) y 2 mod n = 8299, x ・c mod n = 8299 だから、左辺と右辺が一致する。 – 以下同様にして、16ラウンド程度繰り返し、合格と判断する。 Feige-flat-shamir authentication 今後の展望 • OpenSSLよりセキュアなもの – ゼロ知識対話証明をRSA ChallengeResponseの代わりにつかう • より包括的な認証システムの開発 – 様々な認証の組み合わせ
© Copyright 2024 ExpyDoc