Slide 1

Slide 1 text

HTTP/2とセキュリティ In OWASP Night 17th 2015/4/9 亀田 勇歩 @YuhoKameda

Slide 2

Slide 2 text

Profile(プロフィール) 亀田 勇歩 - @YuhoKameda [活動] ZAP Evangelist 『OWASP Zed Attack Proxy 運用マニュアル』執筆協力 ZAP Hands-on Training in AppSec APAC2014 脆弱性診断士(Web アプリケーション)スキルマップ執筆 [業務] Web/PF脆弱性診断 インシデントレスポンス全般

Slide 3

Slide 3 text

HTTP/2 • IETF(Internet Engineering Task Force)の httpbisによって制定されたHypertext Transfer Protocolのバージョンの1つ • 現在の仕様では、HTTP/2.0ではなく HTTP/2 または HTTP2 が正しい呼び方。

Slide 4

Slide 4 text

HTTP 1992年 HTTP/0.9 1996年5月 HTTP/1.0 RFC化 1999年6月 HTTP/1.1 RFC化 2009年 SPDY/1 SPDY/2 SPDY/3 SPDY/3.1 SPDY/4 => HTTP/2 2015年2月 HTTP/2 正式承認 現在 RFC化対応中

Slide 5

Slide 5 text

きっかけ • HTTP/2がWebアプリケーション脆弱性診断に 与える影響を見極める • HTTP/2の実装におけるセキュリティリスクを把 握し理解する • HTTP/2に対応するアプリケーション設計・開 発におけるセキュリティリスクを理解する

Slide 6

Slide 6 text

HTTP/2の特徴 • バイナリベースのプロトコル • プロトコルの単位がフレーム(TCPコネクションではない) – HTTP/1.Xでは、リクエストごとにTCPコネクションを張りなおして いた • TCPコネクションを並列化・多重化できる • ヘッダ圧縮 • サーバからコンテンツをプッシュできる • TLS上で実装時の制約 – TLS1.2以上 – 再ネゴシエーションの禁止 – 圧縮利用の禁止 – 特定のCipher Suiteを必須化 • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

Slide 7

Slide 7 text

フレーム送受信 HEADERSフレーム stream_id=1 PUSH_PROMISEフレーム stream_id=2, stream_id=4 DATA/HEADERSフレーム stream_id=2 DATA/HEADERSフレーム stream_id=4

Slide 8

Slide 8 text

今後のポイント • HTTP/2のRFC告知 • HTTP/2に関するドラフトupdate – WebPush – 日和見暗号 – Alternative Services など • HTTP/2のアプリケーション実装 • 各種ツール/機器の対応状況

Slide 9

Slide 9 text

参考リンク • HTTP2 Advent Calendar 2014 – http://qiita.com/advent-calendar/2014/http2 • Httpbis Status Pages – https://tools.ietf.org/wg/httpbis/draft-ietf-httpbis-http2/ • Hypertext Transfer Protocol version 2 draft-ietf-httpbis-http2-17 – https://tools.ietf.org/html/draft-ietf-httpbis-http2-17 • HTTP/2 Japan Local Activity – http://http2.info/

Slide 10

Slide 10 text

Any Question? • Social Account – Twitter : @YuhoKameda • URL – https://www.owasp.org/index.php/User:Yuho_Kameda • E-mail – [email protected]