ssl入門
TRANSCRIPT
SSLv3 とはなんだったのか〜 SSL/TLS 入門〜uji52
作成日 2016/07/17 21:00-25:00 with アルコール 2016/07/18 14:00-17-00 with アルコール ( 少量 )
uji52
自己紹介• uji52• 好きな AWS サービス
• Lambda• STS
• 今興味のある脆弱性• httproxy
uji52
SSL/TLS とは• 自分の書いた通りの内容を• 意図した相手に対して• 他の人に見られずに
??
Mr.A Mr.B
C
Dうっすうっす、俺の証明書やで
公開鍵で暗号化した共通鍵やで共通鍵で暗号化した会話!!
uji52
SSL/TLS とはこんな感じの暗号化アルゴリズムで暗号化通信しませんか?
じゃあコレでいきましょう追加でクライアントの情報ください ( 任意 )
それに決定ですね、了解ですあと追加情報です ( 要求された場合 )
じゃあそれで
参考 : https://www.jp.websecurity.symantec.com/welcome/pdf/wp_ssl_negotiation.pdf
uji52
SSL/TLS とはClient Hello使用する暗号化アルゴリズム・圧縮アルゴリズムのリスト
uji52
SSL/TLS とはServer Hello暗号化アルゴリズム・圧縮アルゴリズムを選択
Server Certificateサーバ証明書Server Key Exchange一時的な鍵を生成 ( サーバ証明書がない場合等 )
Certificate Requestクライアント証明書の要求 ( 任意 )
Server Hello Done以上!
uji52
SSL/TLS とはClient Certificate
Certificate Request への応答 ( クライアント証明書 )
Client Key Exchange共通鍵の元となる乱数を生成 ( 重要語句 : プリマスタシークレット )
Certificate Verifyクライアント証明書の署名 (Certificate Request が存在する場合 )
Change Cipher Specマスターシークレットを生成して共通鍵生成して、これを使うという決定通知Finished以上!
uji52
SSL/TLS とはChanger Cipher Specプリマスタシークレット→マスターシークレット→共通鍵生成→完了通知
Finished以上!
uji52
実際のパケット
uji52
SSL/TLS の歴史
uji52
SSL/TSL の歴史バージョン 大丈夫? 概要
SSL1.0 あかん 初めての SSL設計レビュー段階で脆弱性発覚して破棄
SSL2.0 あかん 1994 〜 脆弱性の確認により SSL3 へ移行ダウングレード攻撃が話題に
SSL3.0 あかん ほぼ TLS1.0ただし、話題性あふれる脆弱性がたっぷりなので使っちゃだめ!
TLS1.0 脆弱性対応とアルゴリズム次第
ここからはある程度の安心感があるBEAST 等の脆弱性について考慮すべし
TLS1.1 脆弱性対応とアルゴリズム次第
TLS1.0 の弱点対策系バージョンAES 暗号を採用
TLS1.2 脆弱性対応とアルゴリズム次第
ハッシュアルゴリズムに SHA-256 追加され、ブロック暗号にもCBC(Cipher Block Chaining) に加え GCM(Galois/Counter Mode) や CCM(Counter with CBC-MAC) が採用
TLS1.3 えぇ感じのハズ 2016 中に公開予定
uji52
SSLv3 とはなんだったのかというスライドなのでPOODLE について
uji52
POODLE(Padding Oracle On Downgraded Legacy Encryption)
• SSL の通信の中身が見えちゃう• ブロック暗号長のパディング検証の脆弱• パディングの値が正しいかどうか正誤が返却• その正誤を1バイトずつ復元できちゃうらしい
( 詳細理解には至れなかった )
• 明示的に SSLv3 の通信 Off にしなきゃ• サーバサイドの設定でも• ブラウザサイドの設定でも
uji52
まとめ• セキュリティはビビってなんぼ
• 自分が送ってる通信に対して常に危機感を!• 自分が送らせることになる通信に対しても常に危機感を!
• 自身の勉強が足りん• 脆弱性の発生しうる原因に対しての理解が追いついていない• 暗号化のアルゴリズムについても理解を深めたい
uji52
おまけ
uji52
パケット
uji52
uji52
uji52
uji52
uji52
参考資料資料完成してから見つけたとっても分かりやすい資料
uji52
http://www.jnsa.org/seminar/pki-day/2015/data/2-1_urushima.pdf
uji52
http://www.jnsa.org/seminar/pki-day/2015/data/2-1_urushima.pdf