SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
© 2015 Kenji Urushima All rights reserved.
一歩先を行くインフラエンジニアに
知ってほしい  SSL/TLS設定
   
qpstudy 2015.11:キューピー3分インフラクッキング勉強会 
セキュリティに万全を求めるのは間違っているだろうか
於:東銀座  ドワンゴ株式会社
2015年11月14日(土) 14:00〜17:00
@kjur
  
(15:15-16:30 75分)
© 2015 Kenji Urushima All rights reserved.
・経歴
 ・富士ゼロックス(2010~)
 ・エントラストジャパン(2005~2010)
 ・セコム(1988~2005)
・興味:
  PKI,  TLS,  電子署名,  SSO,  認証,  暗号,  
  CSIRT,  脆弱性検査,  フォレンジック,
            スマホ,  プログラミング,  ビットコイン
・別名
 ・証明書ハンター
 ・(TLS)暗号スイートウォッチャー
・委員、標準化、認定基準、実証実験、普及啓蒙
 ・JNSA,  CRYPTREC,  日本データ通信協会
  IPAセキュキャン講師
 ・旧ECOM,  PKI-J,  欧州ETSI
 ・PKI,  TLS,  長期署名,  タイムスタンプ
自己紹介:  漆嶌  賢二(うるしま),  CISSP
jsrsasign  –
JavaScript  実装暗号ライブラリ
ブログ:自堕落な技術者の日記
@kjur
ちょっと、その前に
質問コーナー
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
•  今日は、インフラエンジニアとしてSSL/TLS、
HTTPS、特にサーバー設定について抑えておくとい
いかなっていうポイントをお話します。
•  SSL/TLSとは何か
•  今サーバー証明書をゲットする際の注意点
•  最近のSSL/TLS関連の脆弱性と設定の重要性
•  暗号スイートの設定
•  他に必要な設定
•  ポカ〜〜〜ン      とする暗号の話のおまけ
今日のアジェンダ
SSL/TLSとは
   
© 2015 Kenji Urushima All rights reserved.
アマゾンの購入確認画面
© 2015 Kenji Urushima All rights reserved.
出典:アマゾン(www.amazon.co.jp)
暗号化されているか
氏名、住所、電話番号
何を買ったか?
カード番号
購入個数
HTTPS暗号通信ってなんでいるの?
© 2015 Kenji Urushima All rights reserved.
例えばアマゾンでお買いもの
クレジットカード番号
住所・氏名
秘密にしたい買い物
「カード番号、住所、
氏名、買い物の内
容」を途中で見られ
たくない
ニセのアマゾンサイ
トに「カード番号、住
所」なんかを送りた
くない。
途中で「届け先住
所」を書き換えて商
品を騙し取られた
くない。
SSL/TLSが守る 今のネットに必須の機能
SSL/TLSの3つの機能
© 2015 Kenji Urushima All rights reserved.
「カード番号、住所、氏
名、買い物の内容」を途
中で見られたくない
ニセのアマゾンサイトに
「カード番号、住所」な
んかを送りたくない。
途中で「届け先住所」を
書き換えて商品を騙しと
られたくない。
機密性 相手認証 完全性
暗号通信により通信
相手以外に通信内容
を盗み見(盗聴)され
ないようにする
証明書(PKI)などを使
い通信相手が正しい
相手であるか認証す
る
通信の途中でデータ
が書き換え(改ざん)
されないよう、改ざ
ん検知できる
共通鍵暗号を使う
PKI(公開鍵暗号)、
パスワード、
Kerberos認証を使う
MAC(メッセージ
認証コード)を使う
覗き見(盗聴)防止 なりすまし防止 改ざん防止
SSL/TLSの特徴(HTTPでも何でも乗る)
© 2015 Kenji Urushima All rights reserved.
物理層
データリンク層
ネットワーク層
トランスポート層
セッション層
プレゼンテーション層
アプリケーション層
OSI参照モデル 従来通信の例
10baseT,RS232,DSL
Ethernet
IP
TCP
Socket
HTTP
UDP
POP3
IMAP
SMTP
‥
10baseT,RS232,DSL
Ethernet
IP
TCP
HTTPS
UDP
POP3S
IMAPS
SMTPS
‥
Socket
SSL/TLS
SSL化(※1)
従来のアプ
リケーショ
ンプロトコ
ルを全て安
全な通信に
(SSL化)で
きてしまう。
※1:  他にLDAPS,  FTPS,  TELNETSとか
追加
HTTPS=HTTP  over  SSL
イマドキの
証明書を購入する際の注意点
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
  
✔︎簡単
✔︎安全
✔︎早い
✔︎無料
✔オープン
© 2015 Kenji Urushima All rights reserved.
DV(ドメイン認証)証明書であることの注意点  /  OV,EVとの違い
DV(ドメイン認証) OV(組織認証) EV(拡張認証)
値段 無料、1千〜1.5万円/年 9千〜11万円/年 2万〜11万円/年
用途 個人,  API利用,  開発用 企業/一般利用,  問合せ カード番号,  個人情報
ア
ド
レ
ス
バ
ー
OVと同じ DVと同じ 緑アドレスバーに
組織名が表示される
ペ
ー
ジ
情
報
組織名は表示されない 組織名は表示されない 組織名が表示される
証
明
書
ビ
ー
ア
組織名は表示されない 組織名が表示される 組織名が表示される
企業のホームページでDV証明書を使うと、会社組織名が表示されないために、
本当にその会社が運営しているサーバーか?フィッシングサイトでないか?  利
用者を不安にさせてしまう。
© 2015 Kenji Urushima All rights reserved.
1) 必ず証明書発行の都度、鍵ペアを再生成する
2) RSA  2048bit以上の鍵を使う
3)   SHA256への移行をなるべく早く(Chromeでは警告表示される)
4)   EV証明書を利用する場合、Certificate  Transparency(CT)に対応した証
明書を購入する(CT非対応の場合Chromeだと緑バー表示されない)
5) OCSPに対応している所がよい
6) フィーチャーフォン、ゲーム機、VoIPの対応が必要ならベンダーによく確
認を(鍵長,  SHA2,  パス長,  搭載ルート認証局で問題になることも)
7) ワイルドカード証明書、マルチドメイン証明書は鍵の運用も考えて導入
イマドキのSSLサーバー証明書に関するポイント
© 2015 Kenji Urushima All rights reserved.
• Windowsルート証明書プログラムのルートCA配下は2016年1月1日以降、
SHA1証明書を発行できない。
• Windows製品では有効期限が2017年1月1日以降の証明書を受理しないた
めエラーとなる。
• Google  ChromeはSHA1証明書の有効期限により、2015年1月以降のリ
リース版より下表の警告表示を開始し、2017年1月以降は受理しない。
• MSはWindows製品のSHA1停止を2016年6月に早めると発表
Microsoft製品、Google  ChromeのSHA1証明書からの移行
Google  Chrome SHA1証明書の有効期限
Chrome
バージョン
安定版
リリース日
2015.12.31
まで
2016.05.31
まで
2016.12.31
まで
2017.01
以降
38 2014.10.08
39 2014.11.18
40 2015.01.21
42 2015.04中旬
2017.01直後 2017.01中旬
記号:☆:Googleのポリシにより、★:証明書期限切れにより
☆
☆ ☆ ☆
☆
☆
★★★
SHA1からSHA2証明書への移行
RSA3072bit鍵の証明書の率
SHA256withRSA証明書の率
SHA1withRSA証明書の率
RSA2048bit鍵の証明書の率
RSA4096bit鍵の証明書の率 SHA256withECDSA証明書の率
%	
データ出典:SSL	
  Pulse(h,ps://www.trustworthyinternet.org/ssl-­‐pulse/)	
各ブラウザの2017年1月SHA1停止を受け
2015年5月にSHA256とSHA1証明書の比率が逆転
© 2015 Kenji Urushima All rights reserved.
CT対応のサイト(=GlobalSign  or  DigiCert)
例の出典
  https://www.digicert.com/鍵を右クリック
「公開監査が可能」
=
Certificate  Transparency
対応のサイト
© 2015 Kenji Urushima All rights reserved.
なぜ、HTTPS(SSL/TLS)の
設定は大切か?
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
時期 問題・事件 対策
2005.11 OpenSSL  SSLv2バージョンロールバック アップデート
2009.01 RapidSSL  MD5衝突偽造中間CA アップデートやPinning
2009.07 NULL終端による証明書ホスト名一致不備 アップデートやPinning
2009.11 再ネゴシエーション脆弱性 アップデート
2011.03 Comodo不正証明書発行(RA攻撃) アップデートやPinning
2011.08 DigiNotar不正証明書発行(RA攻撃) アップデートやPinning
2011.09 BEAST攻撃 暗号スイート/プロトコル設定(非CBC)
2011.11 Digicert  Sdn不正証明書発行(RSA512) アップデートやPinning
2012.05 FLAMEマルウェア用Windows  Terminal  Serverに
よるMD5衝突偽造中間CA,  Windows  Update攻撃
アップデートやPinning
2012.09 CRIME攻撃 圧縮解除設定(SSL)
2013.01 Lucky13攻撃 暗号スイート/プロトコル設定(GCM利用)
2013.01 TURKTRUST不正証明書発行(オペミス) アップデートやPinning
2013.03 SSLにおけるRC4暗号危殆化 暗号スイート(非RC4)
2013.03 TIME攻撃 圧縮解除設定(SSL)
2013.06 BREACH攻撃 圧縮解除設定(HTTP  gzip)
2013.06 スノーデン氏暴露(NSAの全SSL通信保管) 暗号スイート/プロトコル設定(ECDHE,DHE使用)
2014.04 HeartBleed攻撃 アップデート
2014.06 CSSInjection攻撃 アップデート
2014.10 POODLE攻撃 暗号スイート/プロトコル設定(非SSLv3,CBC)
2015.03 FREAK攻撃 暗号スイート(非EXPORT)
2015.03 live.fi、CNNIC/MCS不正証明書発行(運用不備) アップデートやPinning(CABF  BR要件に課題も)
2015.03 パスワード盗聴可能なRC4暗号スイート攻撃 暗号スイート設定(非RC4)
2015.05 Logjam脆弱性 暗号スイート設定,  DH設定(DHE_EXPORT512bit無効化)
2015.07 RC4NOMORE攻撃 暗号スイート設定(非RC4)
2015.07 Alt証明書チェーン検証不備 アップデート
2015.10 Free-Start  SHA1  Collision攻撃 現時点では早急な対策は不要(SHA2証明書移行
SSL/TLSの過去の問題と対応方法 サーバー設定で回避し
続けならないものも多数
古い脆弱性であっても、
アップデートだけでは
解決しない問題が
多数残っている
© 2015 Kenji Urushima All rights reserved.
サーバー管理上のこれまでのSSL/TLSの問題と対策の整理
暗号危殆化の問題
MD2,  MD5,  RC4,  SHA1,  
RSA1024bit,  DH1024bit
SSL/HTTP  プロトコル設計の問題
SSLv2,  SSLv3,  CBCモード,
TLS圧縮,  HTTP圧縮,
再ネゴシエーション
個別の実装の問題
OpenSSL(HeartBleed,  
CCSInjection等)
MS  (識別名NULL終端,  ASN.1)
CAの運用の問題
CA攻撃により不正証明書発行
CAオペミスで不正証明書発行
暗号危殆化で偽造証明書発行(MD5)
管
理
上
S
S
L
/
T
L
S
問
題
対
策 証明書ブラックリストの更新
Cert  Pinning,  CT,  DNSSEC設定による検知
各種パッチ、アップデートの適用
暗号スイート、プロトコル、圧縮の設定
各種パッチ、アップデートの適用
アップデートの適用
暗号スイート、プロトコル、圧縮の設定
側
設
定
対
策
古い脆弱性であっても、アップデートだけでは解決しない問題が多数残っている
デフォルト設定でなく、きめ細かい設定で問題に対処する必要がある
暗号スイート
(CipherSuite)の設定
   
© 2015 Kenji Urushima All rights reserved.
暗号スイート(CipherSuite)とは
ClientHello,  ServerHelloでウェブブラウザとウェブ
サーバーが合意する暗号アルゴリズムのセット
ClientHello
TLS_RSA_WITH_RC4_128_MD5
TLS_RSA_WITH_DES_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
をサポートしてますけど、どうしましょうか?
ServerHello
では、これでお願いします
TLS_ECDHE_RSA_WITH_AES_128_ADES_GCM_SHASHA
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256  値  c02f
(例)
鍵交換と
(公開鍵暗号を使った)
認証のアルゴリズム
データの
共通鍵暗号の
アルゴリズム
メッセージ認証
(MAC)のアルゴリズム
相手認証 データ暗号化 改ざん防止
標準(RFC)では
300種以上規定されている
通信暗号強度が決まる
のでサーバー側では
注意が必要
TLS_RSA_WITH_AES128_CBC_SHA  値  0010
※ハッシュ関数SHA1でなく
MAC関数  HmacSHA1
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
鍵交換 認証 暗号化 MAC
使
て
よ
い
ECDHE
ECDH
RSA
DHE
DH
RSA
ECDSA
AES_128_GCM
AES_256_GCM
AES_128_CBC
AES_256_CBC
3DES_EDE_CBC
SHA384
SHA256
SHA
使
ち
ダ
メ
RSA_EXPORT
DSS_EXPORT
RC4_128
DES_CBC
MD5
現在使われている主要な暗号、ダメな暗号
強
い
弱
い
残りの3つの
大切なHTTPS設定
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
① POODLE対策として使用プロトコルバージョン
v  SSLProtocol  all  –SSLv2  –SSLv3
v  POODLE対策としてSSLv3を無効化できるか?
v  レガシーな環境ではSSLv3を残す必要があるかも
② CRIME対策としての圧縮設定の解除
v  SSLCompression  Off
v  CRIME攻撃、TIME攻撃対策としてSSL圧縮を無効化する
残りの大切な設定1、2
© 2015 Kenji Urushima All rights reserved.
大切な設定3:SSLHonorCipherOrder  On
暗号スイートのサーバー側優先
デフォルト設定の
クライアント側
暗号スイートを
優先するサイト
クライアントから送る暗号スイート一覧の順序を優先
して接続すると弱い暗号が使われることがある
Android  や  JRE  1.4-1.6  の  Java  
API  (URLConnection,  Apache  
HTTP  Components/HTTPClient)を
使用した場合、RC4-MD5が最優先さ
れてしまう。(WebViewは問題無し)
Windows  XP上のIE7では
RC4-MD5のような弱い暗
号が優先されてしまってい
た。
SSLHonorCipherOrder  On等設定してサーバー側を優先する設定を
RC4-MD5
RC4-SHA
AES128-SHA
AES256-SHA
以下略
ClientHello
RC4-MD5
ServerHello
参考 PKIDay  2011  NTT武藤氏:SSLにおける暗号危殆化サンプル調査の報告 http://www.jnsa.org/seminar/pki-day/2011/data/03_mutoh.pdf
   自堕落な技術者の日記  JRE  1.4-1.6やAndroidのAPIを使ったHTTPS接続のCipherSuitesのRC4-MD5優先 http://blog.livedoor.jp/k_urushima/archives/1727793.html
さらに知りたいとき
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
CRYPTREC/IPAのSSL/TLS暗号設定ガイド
SSL暗号設定ガイドライン
平成27年5月
独立行政法人 情報処理推進機構
国立研究開発法人 情報通信研究機構
IPA版 CRYPTREC版
http://www.ipa.go.jp/security/vuln/
ssl_crypt_config.html
http://www.cryptrec.go.jp/topics/
cryptrec_20150522_oper_guideline_fy2014.html
2015年5月に公開
IPA  SSL  ガイド 検索
(非公式)設定ファイル自動生成ツールをご利用ください
https://kjur.github.io/jsrsasign/tool_httpscfg.html
•  基本、「お好みのガイド」と
「サーバーの種類」を選ぶだけ。
•  CRYPTREC/IPAガイドを含む、
様々なガイドラインに準拠した
HTTPS設定ファイルを自動生成
します。
•  今は、Apache  HTTP  2.2/2.4、
nginx、lighttpdに対応していま
す。
•  証明書(PEM)を貼れば、
Certificate  Pinningの鍵ハッ
シュ計算も自動で行います。
•  ガイド種類はCRYPTREC,  
NIST,  Mozilla,  Bulletproof他、
OSデフォルトもサポート© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
Microsoft  IISの暗号スイート/プロトコル設定
オススメIISの暗号スイート/プロトコルの設定ツール(参考)
NARTAC  IIS  Crypto
https://www.nartac.com/Products/IISCrypto/
グループポリシーエディタでも設定可能だが、
簡単に暗号スイート/プロトコルを設定できるフリーウェア
© 2015 Kenji Urushima All rights reserved.
Apache  Tomcatの暗号スイート設定  (参考)
Tomcatで使用するJavaがどのバージョンかで、設定できる暗号スイートやその
名称が決まるため、サポートする暗号スイート一覧が簡単に得られると有り難い。
このような時、SSLInfoというツールを使用している。
https://gist.github.com/MikeN123/8810553
コンパイルしてTomcatで使うJavaで実行すれば暗号スイート一覧が得られる。
※  J2SE  1.6.0_65のサポートするCipherSuites一覧
Default  Cipher
*   SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA
*   SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA
*   SSL_DHE_DSS_WITH_DES_CBC_SHA
*   SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA
*   SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA
*   SSL_DHE_RSA_WITH_DES_CBC_SHA
     SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA
     SSL_DH_anon_EXPORT_WITH_RC4_40_MD5
     SSL_DH_anon_WITH_3DES_EDE_CBC_SHA
     SSL_DH_anon_WITH_DES_CBC_SHA
     SSL_DH_anon_WITH_RC4_128_MD5
*   SSL_RSA_EXPORT_WITH_DES40_CBC_SHA
*   SSL_RSA_EXPORT_WITH_RC4_40_MD5
*   SSL_RSA_WITH_3DES_EDE_CBC_SHA
*   SSL_RSA_WITH_DES_CBC_SHA
     SSL_RSA_WITH_NULL_MD5
     SSL_RSA_WITH_NULL_SHA
*   SSL_RSA_WITH_RC4_128_MD5
*   SSL_RSA_WITH_RC4_128_SHA
*   TLS_DHE_DSS_WITH_AES_128_CBC_SHA
*   TLS_DHE_DSS_WITH_AES_256_CBC_SHA
*   TLS_DHE_RSA_WITH_AES_128_CBC_SHA
*   TLS_DHE_RSA_WITH_AES_256_CBC_SHA
     TLS_DH_anon_WITH_AES_128_CBC_SHA
     TLS_DH_anon_WITH_AES_256_CBC_SHA
*   TLS_EMPTY_RENEGOTIATION_INFO_SCSV
     TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5
     TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA
     TLS_KRB5_EXPORT_WITH_RC4_40_MD5
     TLS_KRB5_EXPORT_WITH_RC4_40_SHA
     TLS_KRB5_WITH_3DES_EDE_CBC_MD5
     TLS_KRB5_WITH_3DES_EDE_CBC_SHA
     TLS_KRB5_WITH_DES_CBC_MD5
     TLS_KRB5_WITH_DES_CBC_SHA
     TLS_KRB5_WITH_RC4_128_MD5
     TLS_KRB5_WITH_RC4_128_SHA
*   TLS_RSA_WITH_AES_128_CBC_SHA
*   TLS_RSA_WITH_AES_256_CBC_SHA
※  ‘*’印はデフォルトで提供されるCipherSuites
© 2015 Kenji Urushima All rights reserved.
最後にQualys  SSLLabsで設定を確認しましょう
https://www.ssllabs.com/ssltest/  を開きあなたのサイトのドメインを入力し
「Do  not  show  the  results  on  the  boards」をチェックしボタンを押します。
•  あなたのサイトのSSL設定を様々な観点から
チェックしてくれます。
•  対応している暗号スイート、プロトコルの確認
•  主要クライアントで選択される暗号スイート
•  証明書チェーン、OCSP、HSTS、Stapling
•  最近の脆弱性や設定項目の対応状況
•  POODLE
•  BEAST
•  ダウングレード攻撃
•  TLS圧縮の設定
•  RC4
•  CSSInjection
•  Forward  Secrecy
•  HeartBleed
•  LogJam
•  セキュアな再ネゴシエーション
•  Public  Key  Pinning
•  ブラウザのどのバージョンからアクセス可能か
ポカ〜〜〜ンネタ
「楕円曲線暗号について」
   
© 2015 Kenji Urushima All rights reserved.
© 2015 Kenji Urushima All rights reserved.
•  暗号スイート(CipherSuite)の所で出てくる
公開鍵暗号の一つ
•  EC  (Elliptic  Curve)
•  ECDH(E)鍵交換、ECDSA署名/証明書
•  コンパクト
•  鍵のデータサイズはRSAの10分の1以下
•  処理に必要なメモリが小さく組込みやICカードに適
今日のSSL/TLSの話で出てくる楕円曲線暗号
© 2015 Kenji Urushima All rights reserved.
•  ある計算は簡単だけど、逆演算は難しいという性質
•  大きな2つの数の掛け算は簡単だけど
その結果を2つの因数に分解するのは難しい
→  RSA暗号
•  じゃぁ、楕円曲線暗号(ECC)は?
公開鍵暗号はどんな性質を使うか
© 2015 Kenji Urushima All rights reserved.
楕円曲線公開鍵暗号(1)
楕円曲線は楕円ではない
y2 = x3 + ax + b
を満たす曲線を
「楕円曲線」という
注:楕円じゃない
(性質)
直線を引くと多くの場合
3つの点A,  B,  Cで交わる
X軸で線対称
A
B
C
D
© 2015 Kenji Urushima All rights reserved.
楕円曲線公開鍵暗号(2)
点の足し算=2つの点から3つ目を見つけること
2つの点A,Bから3つめの
交点Cを見つけ
そのX軸対称の点をDとする
これを
と足し算で表す
A
B
C
D
A=B
C
D
接点A=Bの場合
A+B=D
A+A=D
すると
A+A+…=nA
整数と点の掛け算
を定義できる
© 2015 Kenji Urushima All rights reserved.
楕円曲線公開鍵暗号(3)
実数ではなく整数Iを素数pで割った余りでやる
曲線上の点のx、y座標が
「整数Iを素数pで割った余り」
で行う
G
2G
3G
4G
素数p
p
p
G
nG
n
ある点nGが与えられ
た時、nが大きければ
nGからnを求めるの
は非常に難しい
素数p
基準点
© 2015 Kenji Urushima All rights reserved.
(参考)  例えば素数p=263の場合
点をプロットするとこんな感じ
出典:  http://www.johannes-bauer.com/compsci/ecc/
y=p/2で点が線対称になるとい
う特徴がある
n=1,  2,  3  …  と軌跡を追うと
もうぐちゃぐちゃ
これをp=256bitの巨大な整数で
やるから、もっとスゴイ事に!
© 2015 Kenji Urushima All rights reserved.
楕円曲線公開鍵暗号(4)
楕円曲線を使った公開鍵暗号
n nG
G(x,y)
p
基準点
剰余の素数
曲線定数  a
曲線定数  b
秘密鍵 公開鍵
曲線パラメータ
公開鍵nGとパラメータG,  p,  a,  bから秘密鍵nを見つけるのは困難
→  公開鍵暗号として使える!!
(特徴)データが小さい(256bなら公開65,  秘密32,  パラ数byte以下  
© 2015 Kenji Urushima All rights reserved.
•  曲線パラメータの値によって
•  暗号強度や計算の効率性が違う
•  標準化団体、業界団体が良いパラメータを選んだ
→  名前つき曲線  (Named  Curve)
•  以下が代表的
•  NIST  P-256、P-384、P-521
•  secp256r1、secp256k1、secp384r1、
secp521r1
曲線パラメータは何でもよくない→Named  Curve
ご清聴ありがとうございました

Mais conteúdo relacionado

Mais procurados

安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014
Hiroshi Tokumaru
 
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
Masahiro NISHIGUCHI
 
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいかWebアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
Hiroshi Tokumaru
 
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript APIHTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
Yosuke HASEGAWA
 
【Brocade OpenStack ソリューション】LBaaS プラグイン
【Brocade OpenStack ソリューション】LBaaS プラグイン【Brocade OpenStack ソリューション】LBaaS プラグイン
【Brocade OpenStack ソリューション】LBaaS プラグイン
Brocade
 

Mais procurados (20)

【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」
【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」
【19-C-L】Web開発者ならおさえておきたい「常時SSL/TLS化の実装ポイント」
 
他人事ではないWebセキュリティ
他人事ではないWebセキュリティ他人事ではないWebセキュリティ
他人事ではないWebセキュリティ
 
SSLの最新トレンド
SSLの最新トレンドSSLの最新トレンド
SSLの最新トレンド
 
SCUGJ第19回勉強会:RASGWとなにかでつないでみた
SCUGJ第19回勉強会:RASGWとなにかでつないでみたSCUGJ第19回勉強会:RASGWとなにかでつないでみた
SCUGJ第19回勉強会:RASGWとなにかでつないでみた
 
安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014
 
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
さくらの夕べ 大阪 20140306 ファーストサーバセッション資料
 
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいかWebアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
 
BrocadeのOpenStack連携ソリューション
BrocadeのOpenStack連携ソリューションBrocadeのOpenStack連携ソリューション
BrocadeのOpenStack連携ソリューション
 
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript APIHTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
HTML5のセキュリティ もうちょい詳しく- HTML5セキュリティその3 : JavaScript API
 
Azure PaaS とのよりセキュアな接続 - 初級編
Azure PaaS とのよりセキュアな接続 - 初級編Azure PaaS とのよりセキュアな接続 - 初級編
Azure PaaS とのよりセキュアな接続 - 初級編
 
三大WebサーバーのSSL設定ベストプラクティス
三大WebサーバーのSSL設定ベストプラクティス三大WebサーバーのSSL設定ベストプラクティス
三大WebサーバーのSSL設定ベストプラクティス
 
いまさら聞けないパスワードの取り扱い方
いまさら聞けないパスワードの取り扱い方いまさら聞けないパスワードの取り扱い方
いまさら聞けないパスワードの取り扱い方
 
OpenStackネットワークの多種多様なプラグインとその対応方法 - OpenStack最新情報セミナー2014年4月
OpenStackネットワークの多種多様なプラグインとその対応方法 - OpenStack最新情報セミナー2014年4月OpenStackネットワークの多種多様なプラグインとその対応方法 - OpenStack最新情報セミナー2014年4月
OpenStackネットワークの多種多様なプラグインとその対応方法 - OpenStack最新情報セミナー2014年4月
 
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
ここが変だよ、グローバルスタンダードの脆弱性対策~入力値の考え方~
 
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
 
企業システムにSELinuxを適用するときの検討事項
企業システムにSELinuxを適用するときの検討事項企業システムにSELinuxを適用するときの検討事項
企業システムにSELinuxを適用するときの検討事項
 
XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門
 
シスコ製品カタログ 2015 春夏号
シスコ製品カタログ 2015 春夏号シスコ製品カタログ 2015 春夏号
シスコ製品カタログ 2015 春夏号
 
【SSS】クラウド型セキュリティ・サービス
【SSS】クラウド型セキュリティ・サービス【SSS】クラウド型セキュリティ・サービス
【SSS】クラウド型セキュリティ・サービス
 
【Brocade OpenStack ソリューション】LBaaS プラグイン
【Brocade OpenStack ソリューション】LBaaS プラグイン【Brocade OpenStack ソリューション】LBaaS プラグイン
【Brocade OpenStack ソリューション】LBaaS プラグイン
 

Destaque

Destaque (8)

セキュリティ勉強会 暗号技術入門 1章
セキュリティ勉強会 暗号技術入門 1章セキュリティ勉強会 暗号技術入門 1章
セキュリティ勉強会 暗号技術入門 1章
 
第5回web技術勉強会 暗号技術編その3
第5回web技術勉強会 暗号技術編その3第5回web技術勉強会 暗号技術編その3
第5回web技術勉強会 暗号技術編その3
 
Analytics CloudとEmbulkを使った社会的データの分析
Analytics CloudとEmbulkを使った社会的データの分析Analytics CloudとEmbulkを使った社会的データの分析
Analytics CloudとEmbulkを使った社会的データの分析
 
第4回web技術勉強会 暗号技術編その2
第4回web技術勉強会 暗号技術編その2第4回web技術勉強会 暗号技術編その2
第4回web技術勉強会 暗号技術編その2
 
第3回web技術勉強会 暗号技術編その1
第3回web技術勉強会 暗号技術編その1第3回web技術勉強会 暗号技術編その1
第3回web技術勉強会 暗号技術編その1
 
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
 
第2回Web技術勉強会 webパフォーマンス改善編
第2回Web技術勉強会 webパフォーマンス改善編第2回Web技術勉強会 webパフォーマンス改善編
第2回Web技術勉強会 webパフォーマンス改善編
 
introduction to jsrsasign
introduction to jsrsasignintroduction to jsrsasign
introduction to jsrsasign
 

Semelhante a qpstudy 2015.11.14 一歩先を行くインフラエンジニアに知ってほしいSSL/TLS

【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
シスコシステムズ合同会社
 

Semelhante a qpstudy 2015.11.14 一歩先を行くインフラエンジニアに知ってほしいSSL/TLS (20)

脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
脆弱性事例に学ぶセキュアコーディング「SSL/TLS証明書検証」編 (KOF2014)
 
【さくらインターネット】簡単解説 SSLサーバ証明書とは?
【さくらインターネット】簡単解説 SSLサーバ証明書とは?【さくらインターネット】簡単解説 SSLサーバ証明書とは?
【さくらインターネット】簡単解説 SSLサーバ証明書とは?
 
OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17OAuth Security Workshop 2017 #osw17
OAuth Security Workshop 2017 #osw17
 
【くららカフェ#4】最新SSL動向
 【くららカフェ#4】最新SSL動向 【くららカフェ#4】最新SSL動向
【くららカフェ#4】最新SSL動向
 
Cocoa勉強会#60-Common Cryptoを使った共通鍵の暗号と復号
Cocoa勉強会#60-Common Cryptoを使った共通鍵の暗号と復号Cocoa勉強会#60-Common Cryptoを使った共通鍵の暗号と復号
Cocoa勉強会#60-Common Cryptoを使った共通鍵の暗号と復号
 
認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤認証/認可が実現する安全で高速分析可能な分析処理基盤
認証/認可が実現する安全で高速分析可能な分析処理基盤
 
Tokbind-fido
Tokbind-fidoTokbind-fido
Tokbind-fido
 
Ietf95 http2
Ietf95 http2Ietf95 http2
Ietf95 http2
 
WebRTC/ORTCの最新動向まるわかり!
WebRTC/ORTCの最新動向まるわかり!WebRTC/ORTCの最新動向まるわかり!
WebRTC/ORTCの最新動向まるわかり!
 
【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
【Interop tokyo 2014】 シスコ技術者認定 プロフェッショナル レベル CCNP Security
 
Protocol2018
Protocol2018Protocol2018
Protocol2018
 
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
Lessons (to be) Learned from Handling OpenSSL VulnerabilitiesLessons (to be) Learned from Handling OpenSSL Vulnerabilities
Lessons (to be) Learned from Handling OpenSSL Vulnerabilities
 
AWSだけで出来る(たぶん)一番早く構築するセキュアな環境
AWSだけで出来る(たぶん)一番早く構築するセキュアな環境AWSだけで出来る(たぶん)一番早く構築するセキュアな環境
AWSだけで出来る(たぶん)一番早く構築するセキュアな環境
 
ATSでも使える!Let's encryptで無料ではじめるSSL
ATSでも使える!Let's encryptで無料ではじめるSSLATSでも使える!Let's encryptで無料ではじめるSSL
ATSでも使える!Let's encryptで無料ではじめるSSL
 
Certificate Transparency
Certificate TransparencyCertificate Transparency
Certificate Transparency
 
IETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjpIETF89 HTTP関連WG報告 #isocjp
IETF89 HTTP関連WG報告 #isocjp
 
2015-ShowNetステージ-RPKI
2015-ShowNetステージ-RPKI2015-ShowNetステージ-RPKI
2015-ShowNetステージ-RPKI
 
RFC 7457 Summarizing Known Attacks on Transport Layer Security (TLS) and Dat...
RFC 7457 Summarizing Known Attacks on Transport Layer Security (TLS) and Dat...RFC 7457 Summarizing Known Attacks on Transport Layer Security (TLS) and Dat...
RFC 7457 Summarizing Known Attacks on Transport Layer Security (TLS) and Dat...
 
10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPF10分でわかる Cilium と XDP / BPF
10分でわかる Cilium と XDP / BPF
 
[Cloud OnAir] GCP で構築するセキュアなサービス。基本と最新プロダクトのご紹介 2018年11月1日 放送
[Cloud OnAir] GCP で構築するセキュアなサービス。基本と最新プロダクトのご紹介 2018年11月1日 放送[Cloud OnAir] GCP で構築するセキュアなサービス。基本と最新プロダクトのご紹介 2018年11月1日 放送
[Cloud OnAir] GCP で構築するセキュアなサービス。基本と最新プロダクトのご紹介 2018年11月1日 放送
 

Último

Último (11)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

qpstudy 2015.11.14 一歩先を行くインフラエンジニアに知ってほしいSSL/TLS

  • 1. © 2015 Kenji Urushima All rights reserved. 一歩先を行くインフラエンジニアに 知ってほしい  SSL/TLS設定     qpstudy 2015.11:キューピー3分インフラクッキング勉強会  セキュリティに万全を求めるのは間違っているだろうか 於:東銀座  ドワンゴ株式会社 2015年11月14日(土) 14:00〜17:00 @kjur    (15:15-16:30 75分)
  • 2. © 2015 Kenji Urushima All rights reserved. ・経歴  ・富士ゼロックス(2010~)  ・エントラストジャパン(2005~2010)  ・セコム(1988~2005) ・興味:   PKI,  TLS,  電子署名,  SSO,  認証,  暗号,     CSIRT,  脆弱性検査,  フォレンジック,            スマホ,  プログラミング,  ビットコイン ・別名  ・証明書ハンター  ・(TLS)暗号スイートウォッチャー ・委員、標準化、認定基準、実証実験、普及啓蒙  ・JNSA,  CRYPTREC,  日本データ通信協会   IPAセキュキャン講師  ・旧ECOM,  PKI-J,  欧州ETSI  ・PKI,  TLS,  長期署名,  タイムスタンプ 自己紹介:  漆嶌  賢二(うるしま),  CISSP jsrsasign  – JavaScript  実装暗号ライブラリ ブログ:自堕落な技術者の日記 @kjur
  • 4. © 2015 Kenji Urushima All rights reserved. •  今日は、インフラエンジニアとしてSSL/TLS、 HTTPS、特にサーバー設定について抑えておくとい いかなっていうポイントをお話します。 •  SSL/TLSとは何か •  今サーバー証明書をゲットする際の注意点 •  最近のSSL/TLS関連の脆弱性と設定の重要性 •  暗号スイートの設定 •  他に必要な設定 •  ポカ〜〜〜ン      とする暗号の話のおまけ 今日のアジェンダ
  • 5. SSL/TLSとは     © 2015 Kenji Urushima All rights reserved.
  • 6. アマゾンの購入確認画面 © 2015 Kenji Urushima All rights reserved. 出典:アマゾン(www.amazon.co.jp) 暗号化されているか 氏名、住所、電話番号 何を買ったか? カード番号 購入個数
  • 7. HTTPS暗号通信ってなんでいるの? © 2015 Kenji Urushima All rights reserved. 例えばアマゾンでお買いもの クレジットカード番号 住所・氏名 秘密にしたい買い物 「カード番号、住所、 氏名、買い物の内 容」を途中で見られ たくない ニセのアマゾンサイ トに「カード番号、住 所」なんかを送りた くない。 途中で「届け先住 所」を書き換えて商 品を騙し取られた くない。 SSL/TLSが守る 今のネットに必須の機能
  • 8. SSL/TLSの3つの機能 © 2015 Kenji Urushima All rights reserved. 「カード番号、住所、氏 名、買い物の内容」を途 中で見られたくない ニセのアマゾンサイトに 「カード番号、住所」な んかを送りたくない。 途中で「届け先住所」を 書き換えて商品を騙しと られたくない。 機密性 相手認証 完全性 暗号通信により通信 相手以外に通信内容 を盗み見(盗聴)され ないようにする 証明書(PKI)などを使 い通信相手が正しい 相手であるか認証す る 通信の途中でデータ が書き換え(改ざん) されないよう、改ざ ん検知できる 共通鍵暗号を使う PKI(公開鍵暗号)、 パスワード、 Kerberos認証を使う MAC(メッセージ 認証コード)を使う 覗き見(盗聴)防止 なりすまし防止 改ざん防止
  • 9. SSL/TLSの特徴(HTTPでも何でも乗る) © 2015 Kenji Urushima All rights reserved. 物理層 データリンク層 ネットワーク層 トランスポート層 セッション層 プレゼンテーション層 アプリケーション層 OSI参照モデル 従来通信の例 10baseT,RS232,DSL Ethernet IP TCP Socket HTTP UDP POP3 IMAP SMTP ‥ 10baseT,RS232,DSL Ethernet IP TCP HTTPS UDP POP3S IMAPS SMTPS ‥ Socket SSL/TLS SSL化(※1) 従来のアプ リケーショ ンプロトコ ルを全て安 全な通信に (SSL化)で きてしまう。 ※1:  他にLDAPS,  FTPS,  TELNETSとか 追加 HTTPS=HTTP  over  SSL
  • 11. © 2015 Kenji Urushima All rights reserved.    ✔︎簡単 ✔︎安全 ✔︎早い ✔︎無料 ✔オープン
  • 12. © 2015 Kenji Urushima All rights reserved. DV(ドメイン認証)証明書であることの注意点  /  OV,EVとの違い DV(ドメイン認証) OV(組織認証) EV(拡張認証) 値段 無料、1千〜1.5万円/年 9千〜11万円/年 2万〜11万円/年 用途 個人,  API利用,  開発用 企業/一般利用,  問合せ カード番号,  個人情報 ア ド レ ス バ ー OVと同じ DVと同じ 緑アドレスバーに 組織名が表示される ペ ー ジ 情 報 組織名は表示されない 組織名は表示されない 組織名が表示される 証 明 書 ビ ー ア 組織名は表示されない 組織名が表示される 組織名が表示される 企業のホームページでDV証明書を使うと、会社組織名が表示されないために、 本当にその会社が運営しているサーバーか?フィッシングサイトでないか?  利 用者を不安にさせてしまう。
  • 13. © 2015 Kenji Urushima All rights reserved. 1) 必ず証明書発行の都度、鍵ペアを再生成する 2) RSA  2048bit以上の鍵を使う 3)   SHA256への移行をなるべく早く(Chromeでは警告表示される) 4)   EV証明書を利用する場合、Certificate  Transparency(CT)に対応した証 明書を購入する(CT非対応の場合Chromeだと緑バー表示されない) 5) OCSPに対応している所がよい 6) フィーチャーフォン、ゲーム機、VoIPの対応が必要ならベンダーによく確 認を(鍵長,  SHA2,  パス長,  搭載ルート認証局で問題になることも) 7) ワイルドカード証明書、マルチドメイン証明書は鍵の運用も考えて導入 イマドキのSSLサーバー証明書に関するポイント
  • 14. © 2015 Kenji Urushima All rights reserved. • Windowsルート証明書プログラムのルートCA配下は2016年1月1日以降、 SHA1証明書を発行できない。 • Windows製品では有効期限が2017年1月1日以降の証明書を受理しないた めエラーとなる。 • Google  ChromeはSHA1証明書の有効期限により、2015年1月以降のリ リース版より下表の警告表示を開始し、2017年1月以降は受理しない。 • MSはWindows製品のSHA1停止を2016年6月に早めると発表 Microsoft製品、Google  ChromeのSHA1証明書からの移行 Google  Chrome SHA1証明書の有効期限 Chrome バージョン 安定版 リリース日 2015.12.31 まで 2016.05.31 まで 2016.12.31 まで 2017.01 以降 38 2014.10.08 39 2014.11.18 40 2015.01.21 42 2015.04中旬 2017.01直後 2017.01中旬 記号:☆:Googleのポリシにより、★:証明書期限切れにより ☆ ☆ ☆ ☆ ☆ ☆ ★★★
  • 16. CT対応のサイト(=GlobalSign  or  DigiCert) 例の出典  https://www.digicert.com/鍵を右クリック 「公開監査が可能」 = Certificate  Transparency 対応のサイト © 2015 Kenji Urushima All rights reserved.
  • 18. © 2015 Kenji Urushima All rights reserved. 時期 問題・事件 対策 2005.11 OpenSSL  SSLv2バージョンロールバック アップデート 2009.01 RapidSSL  MD5衝突偽造中間CA アップデートやPinning 2009.07 NULL終端による証明書ホスト名一致不備 アップデートやPinning 2009.11 再ネゴシエーション脆弱性 アップデート 2011.03 Comodo不正証明書発行(RA攻撃) アップデートやPinning 2011.08 DigiNotar不正証明書発行(RA攻撃) アップデートやPinning 2011.09 BEAST攻撃 暗号スイート/プロトコル設定(非CBC) 2011.11 Digicert  Sdn不正証明書発行(RSA512) アップデートやPinning 2012.05 FLAMEマルウェア用Windows  Terminal  Serverに よるMD5衝突偽造中間CA,  Windows  Update攻撃 アップデートやPinning 2012.09 CRIME攻撃 圧縮解除設定(SSL) 2013.01 Lucky13攻撃 暗号スイート/プロトコル設定(GCM利用) 2013.01 TURKTRUST不正証明書発行(オペミス) アップデートやPinning 2013.03 SSLにおけるRC4暗号危殆化 暗号スイート(非RC4) 2013.03 TIME攻撃 圧縮解除設定(SSL) 2013.06 BREACH攻撃 圧縮解除設定(HTTP  gzip) 2013.06 スノーデン氏暴露(NSAの全SSL通信保管) 暗号スイート/プロトコル設定(ECDHE,DHE使用) 2014.04 HeartBleed攻撃 アップデート 2014.06 CSSInjection攻撃 アップデート 2014.10 POODLE攻撃 暗号スイート/プロトコル設定(非SSLv3,CBC) 2015.03 FREAK攻撃 暗号スイート(非EXPORT) 2015.03 live.fi、CNNIC/MCS不正証明書発行(運用不備) アップデートやPinning(CABF  BR要件に課題も) 2015.03 パスワード盗聴可能なRC4暗号スイート攻撃 暗号スイート設定(非RC4) 2015.05 Logjam脆弱性 暗号スイート設定,  DH設定(DHE_EXPORT512bit無効化) 2015.07 RC4NOMORE攻撃 暗号スイート設定(非RC4) 2015.07 Alt証明書チェーン検証不備 アップデート 2015.10 Free-Start  SHA1  Collision攻撃 現時点では早急な対策は不要(SHA2証明書移行 SSL/TLSの過去の問題と対応方法 サーバー設定で回避し 続けならないものも多数 古い脆弱性であっても、 アップデートだけでは 解決しない問題が 多数残っている
  • 19. © 2015 Kenji Urushima All rights reserved. サーバー管理上のこれまでのSSL/TLSの問題と対策の整理 暗号危殆化の問題 MD2,  MD5,  RC4,  SHA1,   RSA1024bit,  DH1024bit SSL/HTTP  プロトコル設計の問題 SSLv2,  SSLv3,  CBCモード, TLS圧縮,  HTTP圧縮, 再ネゴシエーション 個別の実装の問題 OpenSSL(HeartBleed,   CCSInjection等) MS  (識別名NULL終端,  ASN.1) CAの運用の問題 CA攻撃により不正証明書発行 CAオペミスで不正証明書発行 暗号危殆化で偽造証明書発行(MD5) 管 理 上 S S L / T L S 問 題 対 策 証明書ブラックリストの更新 Cert  Pinning,  CT,  DNSSEC設定による検知 各種パッチ、アップデートの適用 暗号スイート、プロトコル、圧縮の設定 各種パッチ、アップデートの適用 アップデートの適用 暗号スイート、プロトコル、圧縮の設定 側 設 定 対 策 古い脆弱性であっても、アップデートだけでは解決しない問題が多数残っている デフォルト設定でなく、きめ細かい設定で問題に対処する必要がある
  • 21. 暗号スイート(CipherSuite)とは ClientHello,  ServerHelloでウェブブラウザとウェブ サーバーが合意する暗号アルゴリズムのセット ClientHello TLS_RSA_WITH_RC4_128_MD5 TLS_RSA_WITH_DES_CBC_SHA TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 をサポートしてますけど、どうしましょうか? ServerHello では、これでお願いします TLS_ECDHE_RSA_WITH_AES_128_ADES_GCM_SHASHA TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256  値  c02f (例) 鍵交換と (公開鍵暗号を使った) 認証のアルゴリズム データの 共通鍵暗号の アルゴリズム メッセージ認証 (MAC)のアルゴリズム 相手認証 データ暗号化 改ざん防止 標準(RFC)では 300種以上規定されている 通信暗号強度が決まる のでサーバー側では 注意が必要 TLS_RSA_WITH_AES128_CBC_SHA  値  0010 ※ハッシュ関数SHA1でなく MAC関数  HmacSHA1 © 2015 Kenji Urushima All rights reserved.
  • 22. © 2015 Kenji Urushima All rights reserved. 鍵交換 認証 暗号化 MAC 使 て よ い ECDHE ECDH RSA DHE DH RSA ECDSA AES_128_GCM AES_256_GCM AES_128_CBC AES_256_CBC 3DES_EDE_CBC SHA384 SHA256 SHA 使 ち ダ メ RSA_EXPORT DSS_EXPORT RC4_128 DES_CBC MD5 現在使われている主要な暗号、ダメな暗号 強 い 弱 い
  • 24. © 2015 Kenji Urushima All rights reserved. ① POODLE対策として使用プロトコルバージョン v  SSLProtocol  all  –SSLv2  –SSLv3 v  POODLE対策としてSSLv3を無効化できるか? v  レガシーな環境ではSSLv3を残す必要があるかも ② CRIME対策としての圧縮設定の解除 v  SSLCompression  Off v  CRIME攻撃、TIME攻撃対策としてSSL圧縮を無効化する 残りの大切な設定1、2
  • 25. © 2015 Kenji Urushima All rights reserved. 大切な設定3:SSLHonorCipherOrder  On 暗号スイートのサーバー側優先 デフォルト設定の クライアント側 暗号スイートを 優先するサイト クライアントから送る暗号スイート一覧の順序を優先 して接続すると弱い暗号が使われることがある Android  や  JRE  1.4-1.6  の  Java   API  (URLConnection,  Apache   HTTP  Components/HTTPClient)を 使用した場合、RC4-MD5が最優先さ れてしまう。(WebViewは問題無し) Windows  XP上のIE7では RC4-MD5のような弱い暗 号が優先されてしまってい た。 SSLHonorCipherOrder  On等設定してサーバー側を優先する設定を RC4-MD5 RC4-SHA AES128-SHA AES256-SHA 以下略 ClientHello RC4-MD5 ServerHello 参考 PKIDay  2011  NTT武藤氏:SSLにおける暗号危殆化サンプル調査の報告 http://www.jnsa.org/seminar/pki-day/2011/data/03_mutoh.pdf    自堕落な技術者の日記  JRE  1.4-1.6やAndroidのAPIを使ったHTTPS接続のCipherSuitesのRC4-MD5優先 http://blog.livedoor.jp/k_urushima/archives/1727793.html
  • 27. © 2015 Kenji Urushima All rights reserved. CRYPTREC/IPAのSSL/TLS暗号設定ガイド SSL暗号設定ガイドライン 平成27年5月 独立行政法人 情報処理推進機構 国立研究開発法人 情報通信研究機構 IPA版 CRYPTREC版 http://www.ipa.go.jp/security/vuln/ ssl_crypt_config.html http://www.cryptrec.go.jp/topics/ cryptrec_20150522_oper_guideline_fy2014.html 2015年5月に公開 IPA  SSL  ガイド 検索
  • 28. (非公式)設定ファイル自動生成ツールをご利用ください https://kjur.github.io/jsrsasign/tool_httpscfg.html •  基本、「お好みのガイド」と 「サーバーの種類」を選ぶだけ。 •  CRYPTREC/IPAガイドを含む、 様々なガイドラインに準拠した HTTPS設定ファイルを自動生成 します。 •  今は、Apache  HTTP  2.2/2.4、 nginx、lighttpdに対応していま す。 •  証明書(PEM)を貼れば、 Certificate  Pinningの鍵ハッ シュ計算も自動で行います。 •  ガイド種類はCRYPTREC,   NIST,  Mozilla,  Bulletproof他、 OSデフォルトもサポート© 2015 Kenji Urushima All rights reserved.
  • 29. © 2015 Kenji Urushima All rights reserved. Microsoft  IISの暗号スイート/プロトコル設定 オススメIISの暗号スイート/プロトコルの設定ツール(参考) NARTAC  IIS  Crypto https://www.nartac.com/Products/IISCrypto/ グループポリシーエディタでも設定可能だが、 簡単に暗号スイート/プロトコルを設定できるフリーウェア
  • 30. © 2015 Kenji Urushima All rights reserved. Apache  Tomcatの暗号スイート設定  (参考) Tomcatで使用するJavaがどのバージョンかで、設定できる暗号スイートやその 名称が決まるため、サポートする暗号スイート一覧が簡単に得られると有り難い。 このような時、SSLInfoというツールを使用している。 https://gist.github.com/MikeN123/8810553 コンパイルしてTomcatで使うJavaで実行すれば暗号スイート一覧が得られる。 ※  J2SE  1.6.0_65のサポートするCipherSuites一覧 Default  Cipher *  SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA *  SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA *  SSL_DHE_DSS_WITH_DES_CBC_SHA *  SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA *  SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA *  SSL_DHE_RSA_WITH_DES_CBC_SHA    SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA    SSL_DH_anon_EXPORT_WITH_RC4_40_MD5    SSL_DH_anon_WITH_3DES_EDE_CBC_SHA    SSL_DH_anon_WITH_DES_CBC_SHA    SSL_DH_anon_WITH_RC4_128_MD5 *  SSL_RSA_EXPORT_WITH_DES40_CBC_SHA *  SSL_RSA_EXPORT_WITH_RC4_40_MD5 *  SSL_RSA_WITH_3DES_EDE_CBC_SHA *  SSL_RSA_WITH_DES_CBC_SHA    SSL_RSA_WITH_NULL_MD5    SSL_RSA_WITH_NULL_SHA *  SSL_RSA_WITH_RC4_128_MD5 *  SSL_RSA_WITH_RC4_128_SHA *  TLS_DHE_DSS_WITH_AES_128_CBC_SHA *  TLS_DHE_DSS_WITH_AES_256_CBC_SHA *  TLS_DHE_RSA_WITH_AES_128_CBC_SHA *  TLS_DHE_RSA_WITH_AES_256_CBC_SHA    TLS_DH_anon_WITH_AES_128_CBC_SHA    TLS_DH_anon_WITH_AES_256_CBC_SHA *  TLS_EMPTY_RENEGOTIATION_INFO_SCSV    TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5    TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA    TLS_KRB5_EXPORT_WITH_RC4_40_MD5    TLS_KRB5_EXPORT_WITH_RC4_40_SHA    TLS_KRB5_WITH_3DES_EDE_CBC_MD5    TLS_KRB5_WITH_3DES_EDE_CBC_SHA    TLS_KRB5_WITH_DES_CBC_MD5    TLS_KRB5_WITH_DES_CBC_SHA    TLS_KRB5_WITH_RC4_128_MD5    TLS_KRB5_WITH_RC4_128_SHA *  TLS_RSA_WITH_AES_128_CBC_SHA *  TLS_RSA_WITH_AES_256_CBC_SHA ※  ‘*’印はデフォルトで提供されるCipherSuites
  • 31. © 2015 Kenji Urushima All rights reserved. 最後にQualys  SSLLabsで設定を確認しましょう https://www.ssllabs.com/ssltest/  を開きあなたのサイトのドメインを入力し 「Do  not  show  the  results  on  the  boards」をチェックしボタンを押します。 •  あなたのサイトのSSL設定を様々な観点から チェックしてくれます。 •  対応している暗号スイート、プロトコルの確認 •  主要クライアントで選択される暗号スイート •  証明書チェーン、OCSP、HSTS、Stapling •  最近の脆弱性や設定項目の対応状況 •  POODLE •  BEAST •  ダウングレード攻撃 •  TLS圧縮の設定 •  RC4 •  CSSInjection •  Forward  Secrecy •  HeartBleed •  LogJam •  セキュアな再ネゴシエーション •  Public  Key  Pinning •  ブラウザのどのバージョンからアクセス可能か
  • 33. © 2015 Kenji Urushima All rights reserved. •  暗号スイート(CipherSuite)の所で出てくる 公開鍵暗号の一つ •  EC  (Elliptic  Curve) •  ECDH(E)鍵交換、ECDSA署名/証明書 •  コンパクト •  鍵のデータサイズはRSAの10分の1以下 •  処理に必要なメモリが小さく組込みやICカードに適 今日のSSL/TLSの話で出てくる楕円曲線暗号
  • 34. © 2015 Kenji Urushima All rights reserved. •  ある計算は簡単だけど、逆演算は難しいという性質 •  大きな2つの数の掛け算は簡単だけど その結果を2つの因数に分解するのは難しい →  RSA暗号 •  じゃぁ、楕円曲線暗号(ECC)は? 公開鍵暗号はどんな性質を使うか
  • 35. © 2015 Kenji Urushima All rights reserved. 楕円曲線公開鍵暗号(1) 楕円曲線は楕円ではない y2 = x3 + ax + b を満たす曲線を 「楕円曲線」という 注:楕円じゃない (性質) 直線を引くと多くの場合 3つの点A,  B,  Cで交わる X軸で線対称 A B C D
  • 36. © 2015 Kenji Urushima All rights reserved. 楕円曲線公開鍵暗号(2) 点の足し算=2つの点から3つ目を見つけること 2つの点A,Bから3つめの 交点Cを見つけ そのX軸対称の点をDとする これを と足し算で表す A B C D A=B C D 接点A=Bの場合 A+B=D A+A=D すると A+A+…=nA 整数と点の掛け算 を定義できる
  • 37. © 2015 Kenji Urushima All rights reserved. 楕円曲線公開鍵暗号(3) 実数ではなく整数Iを素数pで割った余りでやる 曲線上の点のx、y座標が 「整数Iを素数pで割った余り」 で行う G 2G 3G 4G 素数p p p G nG n ある点nGが与えられ た時、nが大きければ nGからnを求めるの は非常に難しい 素数p 基準点
  • 38. © 2015 Kenji Urushima All rights reserved. (参考)  例えば素数p=263の場合 点をプロットするとこんな感じ 出典:  http://www.johannes-bauer.com/compsci/ecc/ y=p/2で点が線対称になるとい う特徴がある n=1,  2,  3  …  と軌跡を追うと もうぐちゃぐちゃ これをp=256bitの巨大な整数で やるから、もっとスゴイ事に!
  • 39. © 2015 Kenji Urushima All rights reserved. 楕円曲線公開鍵暗号(4) 楕円曲線を使った公開鍵暗号 n nG G(x,y) p 基準点 剰余の素数 曲線定数  a 曲線定数  b 秘密鍵 公開鍵 曲線パラメータ 公開鍵nGとパラメータG,  p,  a,  bから秘密鍵nを見つけるのは困難 →  公開鍵暗号として使える!! (特徴)データが小さい(256bなら公開65,  秘密32,  パラ数byte以下  
  • 40. © 2015 Kenji Urushima All rights reserved. •  曲線パラメータの値によって •  暗号強度や計算の効率性が違う •  標準化団体、業界団体が良いパラメータを選んだ →  名前つき曲線  (Named  Curve) •  以下が代表的 •  NIST  P-256、P-384、P-521 •  secp256r1、secp256k1、secp384r1、 secp521r1 曲線パラメータは何でもよくない→Named  Curve