SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
OAuth Security Workshop 2017 TOI
2017-07-24
Tatsuo Kudo http://www.linkedin.com/in/tatsuokudo
Cyber Consulting Services
NRI SecureTechnologies, Ltd.
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 1
IETF OAuth Working Group がオーガナイズする、
OAuthのセキュリティにフォーカスしたワークショップ
業界関係者と研究者が一堂に会する場を設けること
により、OAuthがもたらす「アシュアランス」の改善と、
OAuth自体の品質向上を目指す
年1回開催。2017年は7月13, 14日の2日間、スイス
連邦工科大学チューリッヒ校にて実施
OAuth Security Workshop とは
https://zisc.ethz.ch/oauth-security-workshop-2017/
Source: https://twitter.com/_nat_en/status/885861840990990337
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 2
スケジュール
https://zisc.ethz.ch/oauth-security-workshop-2017/
08:30-09:00 Registration and coffee
09:00-09:15 Torsten Lodderstedt, YES Europe Opening Remarks
09:15-10:15 David Basin, ETH Zurich Security Protocols at ETHZ slides
10:15-10:30 break
10:30-11:30 Cas Cremers, University of Oxford
Automated analysis and the subtleties of
authentication: Adventures in TLS 1.3 (Invited
Talk) slides
11:30-11:45 break
11:45-12:30 Michael Jones, Microsoft
OAuth Token Binding: Status and Next Steps
slides
12:30-13:15
Denis Pinkas, DP Security
Consulting
A privacy by design eID scheme supporting
Attribute-based Access Control (ABAC) slides-
scheme slides-German-eID paper
13:15-14:45 Lunch at Dozentenfoyer (directions)
14:45-15:30
Naveen Agarwal, Breno de
Medeiros, Google
OAuth & Phishing – Experiences @ Google
slides
15:30-16:15 Torsten Lodderstedt, John Bradley OAuth security slides
16:15-16:45 break
16:45-17:30 Sven Hammann, ETHZ
Proposing a new Private Mode for Open ID
Connect slides
18:00 Dinner at The Alehouse – Palmhof (location)
08:30-09:00 Coffee
09:00-09:45
Daniel Fett, Ralf Kuesters, and
Guido Schmitz, Universität
Stuttgart
The Web SSO Standard OpenID Connect: In-
Depth Formal Security Analysis and Security
Guidelines slides
09:45-10:30
Nat Sakimura, Nomura Research
Institute
Future Proofing the OAuth 2.0 Authorization
Code Grant Protocol by the application of BCM
Principles slides paper
10:30-10:45 break
10:45-11:30 Hannes Tschofenig, ARM
Lessons learned from security protocol design:
Meaningful content for security consideration
sections of technical specifications slides
11:30-11:45 break
11:45-12:30
William Denniss (presented by
John Bradley), Google
Improving Native App OAuth Security with
External User Agents slides
12:30-13:15
Go Yamamoto, Richard Boyer,
Kenji Takahashi, and Nat
Sakimura, Nomura Research
Institute
Asserting Access Tokens from the Transport
Layer slides
13:15-14:45 Lunch at Dozentenfoyer (directions)
14:45-15:30 Jacob Ideskog, Curity
Simplified Integration of OAuth into JavaScript
Applications slides
15:30-16:00 break
16:00-16:45 Antonio Sanso, Adobe Invalid curve attack in JWE ECDH-ES slides
16:45-17:30 General Discussion
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 3
 セキュリティプロトコルのモデル化
 ScytherによるNSPK(ニーダム・シュレーダー公開鍵プロトコル)の解析デモ
 AliceからBobの通信をCharlieが仲介し、BobはCharlieのことをAliceだと信じてしまう
 cf. https://staff.aist.go.jp/y-isobe/CSP-NSPK/NSPK-CSP-slides-IEICE-Taikai-20150909.pdf
 “Provably Repairing the ISO/IEC 9798 Standard for Entity Authentication” の話
 ISO 9798-2-5 Symmetric key encryption with TTP (Trusted Third Party)
 TTPが実際のEntity Authをやった場合どうなる!?
Security Protocols: Foundations, Methods, and Tools at ETHZ by David Basin, ETH Zurich
https://zisc.ethz.ch/wp-content/uploads/2017/02/basin-securityprotocols.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 4
 1.3のゴール
 レガシーなやつを排除してクリーンスタートする。楕円曲線しか使わないとか
 0-RTT、いきなりペイロードが暗号化されてる状態
 Clean up design。よりよいデザイン原則。IETFの人がデザイン過程に関わってる
 0-RTT
 それなりのキーから始めて、あとでアップグレードする。PSK (pre shared key) -resumption。
かなり速い。delayed authentication
 Tamarin Prover で formal analysis
 クライアント認証周りの攻撃 (revision 10+) を発見
 nonceの再利用によるなりすまし
 Awkward handshake: Client can’t tell difference between “accept” and “reject but continue.
サーバーが複数インスタンスの場合とか
Automated analysis and the subtleties of authentication: Adventures in TLS 1.3 by Cas Cremers,
University of Oxford
https://zisc.ethz.ch/wp-content/uploads/2017/02/cremers_tls_invited.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 5
 仕様3つ
 draft-ietf-tokbind-protocol, draft-ietf-tokbind-negotiation, draft-ietf-tokbind-https
 Keyは長期間 → PC閉じてまた起動してもそのままバインドされてる
 Cookieのchannel binding
 super cookieを避けた。鍵ペアはブラウザがクッキーと同じバウンダリで作る。eTLD+1
 TB4OIDC: tbhというカンファメーションクレーム。ハッシュ。IDトークンに入れる
 議論
 tokbindいるんか? なにを解決しようとしてるのか
 導入時の課題。最新の環境が必要。経済学的には、いろんなブラウザからのアクセスを受け入れた
い。Windows 7とかも。そうするとダウングレードアタックを招く。非常に重要な議論
 0-RTTはまだ完全に理解されているものではない。Rev 21でなんか変わった
OAuth Token Binding: Status and Next Steps by Michael Jones, Microsoft
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 6
 アクセストークンを属性のやり取りに使ってる話 (?)
A privacy by design eID scheme supporting Attribute-based Access Control (ABAC) by Denis Pinkas,
DP Security Consulting
https://zisc.ethz.ch/wp-content/uploads/2017/02/pinkas_privacybydesign.ppt
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 7
 Challenges with “Undefined”
 Developer registration, Approval Page, Notification, Usage, User controls, Revocation, Admin Controls
 Googleならではの課題
 スコープが数100
 データタイプ、なんでもある。GDriveとかも。SnapchatがGCP使ってたり
 ユーザーのリテラシー。グローバルなのでバラバラ
 企業ユーザーが悪意のあるアプリに権限付与しちゃったりとか
 こないだの “OAuth Phishing Attack”
 client_idを無効化した。無効化することで同時にトークンも使えなくなる
 今後はベリフィケーションをもっとやる、ユーザー数がある閾値を超えたらマニュアルレビューする
 Wordpress Plugin のケース。コンタクトしてねボタンがGmailの権限を必要とする。インストールするのはWordpress管理者
 Approval Page
 多くのユーザーは書かれてることを読まない。レビューとかは読む。Yahooで、スコープを減らす機能をつけた → スコープ減らしたら
SSOしかできなくなった → 前のページに戻ってスコープ戻そうとしたり
 サインインについては承認ページをなくした。メールアドレスとプロファイル email profile だけ
 UXチームの調査にもとづいて、ボタンを “Trust” にした。ユーザーが実際に信頼するということをわかりやすくした
 リボケーション: リスクの高いアプリから順に並べて、レビューしてもらう
 ドメインレベルでのスコープ制御: G Suiteでできるようになった。いま何社かでテスト中。Gmailとか単位。あとスコープ単位
OAuth & Phishing – Experiences @ Google by Naveen Agarwal, Breno de Medeiros, Google
https://zisc.ethz.ch/wp-content/uploads/2017/02/agarwal_challenges.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 8
 “Access token phishing”
 リソースサーバーが悪いやつだった場合にどうするか
 ASからMetadataを取得する
 クライアントに負担がかかる
 Audience Restriction
 クライアントが、トークン使いたい先 (URI) を指定してATを取得する
 TLSへの攻撃には弱い。DNS Attackにも? いずれにせよ TLS ちゃんとしてる前提
 PoP
 RS XがMITMしようとしたリクエストが無効なものになる。署名が一致しないので
 Transport: Token Binding, MTLS (Subject DN使う)
 Application: 新しいトークンを作ってAudience Restrictionする。Signed Request, J-POP
 Q. Real issueはなによ?
 UMAとか、もろに影響がある。あるRSがやられて、そこを踏み台に他のRSがやられちゃうケース。FAPI では Sender Restriction やろうとしてる
 Q. ふつうASはRSのこと知ってるよね?
 Federated OAuthとか、Googleが3rd PartyにAT出すケースとかある
OAuth security by Torsten Lodderstedt, John Bradley
https://zisc.ethz.ch/wp-content/uploads/2017/02/lodderstedt_accesstoken.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 9
 IdPはユーザーがどのRPにログインしようとするかを知ることができる。たとえば医療関係の
フォーラムにアクセスしようとしてるとか
 Our solution: We propose a new mode that hides the RP’s identity from the IdP
 OIDC private implicit mode
 implicit modeと同等のセキュリティ
 client_id_hash、rp_nonceの導入
▪ AuthZ Reqにおいて、rp_nonceはフラグメントで送る
 IdPのJSがブラウザ上でrp_nonceを使ってhashを計算する。ハッシュはランダム値
 議論・コメント
 IdPのJSが値をサーバーにフォワードしないというのは現実的なん?
 IDトークンのリプレイはどうなん?
 データ最小化難しいのでは
 redirect_uri の verification を JS でやる? できる?
Proposing a new Private Mode for Open ID Connect by Sven Hammann, ETHZ
https://zisc.ethz.ch/wp-content/uploads/2017/02/hammann_oidc_private_mode.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 10
 OIDC の formal model を開発した
 ベストプラクティス準拠
 主要なセキュリティ・プロパティを形式化
 Authentication (IDトークン), Authorization (ATを使ったアクセス), Session Integrity
 Security Guidelines
 Mix-up対策(まだ確定してない)
 stateはフレッシュなノンス(プレディクタブルにしないように)
 リファラーからの漏洩対策
 User Intention Tracking
 リダイレクトは307じゃなくて303で
 オープンリダイレクター除去
 CSRF対策
 サードパーティリソースの除去
 すべてTLS
 セッション管理、ログイン前とログイン後でセッションを分ける
The Web SSO Standard OpenID Connect: In-Depth Formal Security Analysis and Security Guidelines by
Daniel Fett, Ralf Kuesters, and Guido Schmitz, Universität Stuttgart
https://zisc.ethz.ch/wp-content/uploads/2017/02/schmitz_oidc.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 11
 BCM Principles を RFC 6749に適用し、追加すべきパラメーターを検討
 3 Criteria
 Unique Source Identifier
 Protocol + version + msg identifier
 Full list of actor/roles
Future Proofing the OAuth 2.0 Authorization Code Grant Protocol by the application of BCM Principles
by Nat Sakimura, Nomura Research Institute
https://zisc.ethz.ch/wp-content/uploads/2017/02/sakimura_future-proofing-oauth.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 12
 Approaching security in the IETF
 RFC 3552: システムセキュリティはスコープ外。ジェネリックなセキュリティフレームワーク、GSSAPIとかSASLとか、プラガブルなやつ。スタイルとして有用なドキュメントではある。不満なところ、セ
キュリティに関する記述が分散してること、セキュリティ専門家がドキュメント全体を読まなきゃいけないこと
 RFC 6793: プライバシー
 W3CのPrivacy Interest Group はJS APIが対象
 “We examined 20 RFCs (15 standards-track) from 1996, well after the imposition of the security mandate: only three had anything substantive to say about security.” -- Nick
Doty, at al. wrote in their position paper for the IAB Privacy Workshop
 PKCS#11実装を解析したら no randomness なやつがあった話。 http://homepages.inf.ed.ac.uk/s1050796/
 議論・コメント
 SAML Conformance Testingの話。みんなテスト通るよ、メッセージチェックしてないから。Negative Testing重要。IETFだとネガティブテスティング無い。相互運用性だけ
 アウェアネスとエデュケーション重要。Rationalをもっと書くべき
 RFC 6819、Core Specと同じくらいのページ数。誰が読む?
 テスタブルであること、テスタビリティ。 "Formal" な stuff を入れるとか
Lessons learned from security protocol design: Meaningful content for security consideration sections
of technical specifications by Hannes Tschofenig, ARM
https://zisc.ethz.ch/wp-content/uploads/2017/02/HannesTschofenig_OAuth_lessons.ppt
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 13
 何が問題か
 ユーザー認証・認可について、ブラウザをembedして使うと、かんたんにcookieとか取れるし、JSを注入できたりする
 開発者に悪意がなくとも、サードパーティのSDKを使ってるとリスクがあるかも
 In-App Browser Tabs
 AppAuth ライブラリ
 Coming Soon: OpenID RP Certification
 iOS 11 beta
 WWDC Video #225 https://developer.apple.com/videos/play/wwdc2017/225/
 (beta 3 adds SFAuthenticationSession to enable Shared Authentication Context (Single Sign-in))
Improving Native App OAuth Security with External User Agents by William Denniss (presented by John
Bradley), Google
http://www.thread-safe.com/2017/07/appauth.html
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 14
 インターネットから物理システムを監視したい。REST API出したい。そこの認可にOAuth使いたい
 工場Aと工場Bとの連携。工場BはAのセキュリティをマネージできない
 提案: 認可サーバーが証明書を発行し、X.509の属性としてATを返す。クライアントはその証明書を使ってRSに接続する
 議論・コメント
 クライアントが動的にクライアント証明書を切り替えられるだろうか?
 ガチガチに繋がったPKIは避けたい、別々にCA持ちたいというニーズ
 Token in Token?
 リソースサーバーごとにクライアント証明書を切り替える? チャネルの再利用できないよね
 15分毎に50万台の証明書をアップデートするような環境に有用
 署名処理はいまやそんな高コストではないという前提
 証明書をATとして使えばいんじゃね、イントロスペクションすればいんじゃね、という話
Asserting Access Tokens from the Transport Layer by Go Yamamoto, Richard Boyer, Kenji Takahashi,
and Nat Sakimura, Nomura Research Institute
https://zisc.ethz.ch/wp-content/uploads/2017/02/yamamoto_token_transport_layer.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 15
 フロントエンドのつらみ
 デベロッパーが理解するにはいまだ難解
 SPA対応、implicitでは不十分
 トークンハンドラー・パターン
 フレームに入れて分離、有効期間長めのトークン
 Token Handler Token
▪ postMessage、タイムアウト5秒くらい
 Assisted Token Flow
 "Assisted Token" は cookie に入れる。HTTP Onlyにして、JSから覗けなくする。Secureにして、
HTTPオンリーにする
 for_origin
 redirect_uriではない。クライアントをサーブするドメイン。フレーミング(型にはめる)ために使う。
X-FRAME-OPTIONS、CSPヘッダー
 議論・コメント
 Service Workerでやるといんじゃね?
 問題は単純、レイヤーをどこで分けるかがポイント
Simplified Integration of OAuth into JavaScript Applications by Jacob Ideskog, Curity
https://zisc.ethz.ch/wp-content/uploads/2017/02/ideskog_assisted-token.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 16
 http://blogs.adobe.com/security/2017/03/critical-vulnerability-uncovered-in-json-encryption.html の話
Invalid curve attack in JWE ECDH-ES by Antonio Sanso, Adobe
https://zisc.ethz.ch/wp-content/uploads/2017/02/sanso_jwe.pdf
Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 17
 スライド / ペーパー
 https://zisc.ethz.ch/oauth-security-workshop-2017/
 Twitter
 https://twitter.com/hashtag/osw17, https://twitter.com/hashtag/osw2017
Resources
OAuth Security Workshop 2017 #osw17

Mais conteúdo relacionado

Mais procurados

#jics2014 そろそろ「社員IDでログインできます」 始めてみませんか? サービス・プロバイダーの立場から考える 「エンタープライズ・アイデンテ...
#jics2014 そろそろ「社員IDでログインできます」始めてみませんか? サービス・プロバイダーの立場から考える「エンタープライズ・アイデンテ...#jics2014 そろそろ「社員IDでログインできます」始めてみませんか? サービス・プロバイダーの立場から考える「エンタープライズ・アイデンテ...
#jics2014 そろそろ「社員IDでログインできます」 始めてみませんか? サービス・プロバイダーの立場から考える 「エンタープライズ・アイデンテ...
Tatsuo Kudo
 
OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向
Tatsuo Kudo
 
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
Tatsuo Kudo
 
エンタープライズITでのOpenID Connect利用ガイドライン
エンタープライズITでのOpenID Connect利用ガイドラインエンタープライズITでのOpenID Connect利用ガイドライン
エンタープライズITでのOpenID Connect利用ガイドライン
Tatsuo Kudo
 
クラウド時代の「ID管理」と「認証セキュリティ」
クラウド時代の「ID管理」と「認証セキュリティ」クラウド時代の「ID管理」と「認証セキュリティ」
クラウド時代の「ID管理」と「認証セキュリティ」
Tatsuya (達也) Katsuhara (勝原)
 

Mais procurados (20)

#jics2014 そろそろ「社員IDでログインできます」 始めてみませんか? サービス・プロバイダーの立場から考える 「エンタープライズ・アイデンテ...
#jics2014 そろそろ「社員IDでログインできます」始めてみませんか? サービス・プロバイダーの立場から考える「エンタープライズ・アイデンテ...#jics2014 そろそろ「社員IDでログインできます」始めてみませんか? サービス・プロバイダーの立場から考える「エンタープライズ・アイデンテ...
#jics2014 そろそろ「社員IDでログインできます」 始めてみませんか? サービス・プロバイダーの立場から考える 「エンタープライズ・アイデンテ...
 
OpenID Connect のビジネスチャンス
OpenID Connect のビジネスチャンスOpenID Connect のビジネスチャンス
OpenID Connect のビジネスチャンス
 
OpenID Connect, December 2011
OpenID Connect, December 2011OpenID Connect, December 2011
OpenID Connect, December 2011
 
PDSを実現するにあたっての技術動向の紹介 (OAuth, OpenID Connect, UMAなど)
PDSを実現するにあたっての技術動向の紹介 (OAuth, OpenID Connect, UMAなど)PDSを実現するにあたっての技術動向の紹介 (OAuth, OpenID Connect, UMAなど)
PDSを実現するにあたっての技術動向の紹介 (OAuth, OpenID Connect, UMAなど)
 
OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向OpenID ConnectとSCIMの標準化動向
OpenID ConnectとSCIMの標準化動向
 
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門するKeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
 
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けてOpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
OpenID ConnectとSCIMによるエンタープライズでのID連携活用に向けて
 
APIdays Australia 2017 TOI #APIdaysAU
APIdays Australia 2017 TOI #APIdaysAUAPIdays Australia 2017 TOI #APIdaysAU
APIdays Australia 2017 TOI #APIdaysAU
 
API提供におけるOAuthの役割 #apijp
API提供におけるOAuthの役割 #apijpAPI提供におけるOAuthの役割 #apijp
API提供におけるOAuthの役割 #apijp
 
なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景なぜOpenID Connectが必要となったのか、その歴史的背景
なぜOpenID Connectが必要となったのか、その歴史的背景
 
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
『OpenID ConnectとSCIMのエンタープライズ実装ガイドライン』解説
 
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
パスワード氾濫時代のID管理とは? ~最新のOpenIDが目指すユーザー認証の効率的な強化~
 
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
エンタープライズIT環境での OpenID Connect / SCIM の具体的実装方法 idit2014
 
エンタープライズITでのOpenID Connect利用ガイドライン
エンタープライズITでのOpenID Connect利用ガイドラインエンタープライズITでのOpenID Connect利用ガイドライン
エンタープライズITでのOpenID Connect利用ガイドライン
 
Random Thoughts on Digital Identity Professional #openid_eiwg
Random Thoughts on Digital Identity Professional #openid_eiwgRandom Thoughts on Digital Identity Professional #openid_eiwg
Random Thoughts on Digital Identity Professional #openid_eiwg
 
ID連携のあるとき~、ないとき~ #エンプラ編
ID連携のあるとき~、ないとき~ #エンプラ編ID連携のあるとき~、ないとき~ #エンプラ編
ID連携のあるとき~、ないとき~ #エンプラ編
 
Authlete overview
Authlete overviewAuthlete overview
Authlete overview
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクル
 
20150723 最近の興味動向 fido編
20150723 最近の興味動向 fido編20150723 最近の興味動向 fido編
20150723 最近の興味動向 fido編
 
クラウド時代の「ID管理」と「認証セキュリティ」
クラウド時代の「ID管理」と「認証セキュリティ」クラウド時代の「ID管理」と「認証セキュリティ」
クラウド時代の「ID管理」と「認証セキュリティ」
 

Semelhante a OAuth Security Workshop 2017 #osw17

Semelhante a OAuth Security Workshop 2017 #osw17 (20)

Cloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOICloud Identity Summit 2012 TOI
Cloud Identity Summit 2012 TOI
 
Keycloak拡張入門
Keycloak拡張入門Keycloak拡張入門
Keycloak拡張入門
 
[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003[Japan Tech summit 2017] MAI 003
[Japan Tech summit 2017] MAI 003
 
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
 
Keycloak入門
Keycloak入門Keycloak入門
Keycloak入門
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
 
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
 
AWSの最新動向と事例から知る クラウド利用の進化と真価
AWSの最新動向と事例から知る クラウド利用の進化と真価AWSの最新動向と事例から知る クラウド利用の進化と真価
AWSの最新動向と事例から知る クラウド利用の進化と真価
 
クラウドと共に進むエンジニアの進化
クラウドと共に進むエンジニアの進化クラウドと共に進むエンジニアの進化
クラウドと共に進むエンジニアの進化
 
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
【日商USA】webinar 2022.6.24 RSAカンファレンス2022 フィードバック
 
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402
 
Tips and tricks for Azure IoT system development
Tips and tricks for Azure IoT system developmentTips and tricks for Azure IoT system development
Tips and tricks for Azure IoT system development
 
Modernization of IT Infrastructure by Microsoft Azure
Modernization of IT Infrastructure by Microsoft AzureModernization of IT Infrastructure by Microsoft Azure
Modernization of IT Infrastructure by Microsoft Azure
 
Microsoft AI セミナー - Microsoft AI Platform
Microsoft AI セミナー - Microsoft AI PlatformMicrosoft AI セミナー - Microsoft AI Platform
Microsoft AI セミナー - Microsoft AI Platform
 
Iot algyan jhirono 20190111
Iot algyan jhirono 20190111Iot algyan jhirono 20190111
Iot algyan jhirono 20190111
 
The Shift Left Path and OWASP
The Shift Left Path and OWASPThe Shift Left Path and OWASP
The Shift Left Path and OWASP
 
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
 
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
【Tech-Circle #3 & OCDET #7 SDS勉強会】 Ceph on SoftLayer
 
Microsoft ではじめる AI DLラボ パートナープログラムご紹介
Microsoft ではじめる AI DLラボ パートナープログラムご紹介Microsoft ではじめる AI DLラボ パートナープログラムご紹介
Microsoft ではじめる AI DLラボ パートナープログラムご紹介
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
 

Mais de Tatsuo Kudo

Mais de Tatsuo Kudo (20)

Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
Apigee の FAPI & CIBA 対応を実現する「Authlete (オースリート)」
 
金融APIセキュリティの動向・事例と今後の方向性
金融APIセキュリティの動向・事例と今後の方向性金融APIセキュリティの動向・事例と今後の方向性
金融APIセキュリティの動向・事例と今後の方向性
 
Client Initiated Backchannel Authentication (CIBA) and Authlete’s Approach
Client Initiated Backchannel Authentication (CIBA) and Authlete’s ApproachClient Initiated Backchannel Authentication (CIBA) and Authlete’s Approach
Client Initiated Backchannel Authentication (CIBA) and Authlete’s Approach
 
In-house OAuth/OIDC Infrastructure as a Competitive Advantage #eic2021
In-house OAuth/OIDC Infrastructure as a Competitive Advantage #eic2021In-house OAuth/OIDC Infrastructure as a Competitive Advantage #eic2021
In-house OAuth/OIDC Infrastructure as a Competitive Advantage #eic2021
 
Authlete: API Authorization Enabler for API Economy
Authlete: API Authorization Enabler for API EconomyAuthlete: API Authorization Enabler for API Economy
Authlete: API Authorization Enabler for API Economy
 
銀行 API における OAuth 2.0 / FAPI の動向 #openid #bizday
銀行 API における OAuth 2.0 / FAPI の動向 #openid #bizday銀行 API における OAuth 2.0 / FAPI の動向 #openid #bizday
銀行 API における OAuth 2.0 / FAPI の動向 #openid #bizday
 
いまどきの OAuth / OpenID Connect (OIDC) 一挙おさらい (2020 年 2 月) #authlete
いまどきの OAuth / OpenID Connect (OIDC) 一挙おさらい (2020 年 2 月) #authleteいまどきの OAuth / OpenID Connect (OIDC) 一挙おさらい (2020 年 2 月) #authlete
いまどきの OAuth / OpenID Connect (OIDC) 一挙おさらい (2020 年 2 月) #authlete
 
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_insideAuthlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
Authlete: セキュアな金融 API 基盤の実現と Google Cloud の活用 #gc_inside
 
Financial-grade API Hands-on with Authlete
Financial-grade API Hands-on with AuthleteFinancial-grade API Hands-on with Authlete
Financial-grade API Hands-on with Authlete
 
Authorization Architecture Patterns: How to Avoid Pitfalls in #OAuth / #OIDC ...
Authorization Architecture Patterns: How to Avoid Pitfalls in #OAuth / #OIDC ...Authorization Architecture Patterns: How to Avoid Pitfalls in #OAuth / #OIDC ...
Authorization Architecture Patterns: How to Avoid Pitfalls in #OAuth / #OIDC ...
 
英国オープンバンキング技術仕様の概要
英国オープンバンキング技術仕様の概要英国オープンバンキング技術仕様の概要
英国オープンバンキング技術仕様の概要
 
オープン API と Authlete のソリューション
オープン API と Authlete のソリューションオープン API と Authlete のソリューション
オープン API と Authlete のソリューション
 
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューションOAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
OAuth / OpenID Connect (OIDC) の最新動向と Authlete のソリューション
 
FAPI (Financial-grade API) and CIBA (Client Initiated Backchannel Authenticat...
FAPI (Financial-grade API) and CIBA (Client Initiated Backchannel Authenticat...FAPI (Financial-grade API) and CIBA (Client Initiated Backchannel Authenticat...
FAPI (Financial-grade API) and CIBA (Client Initiated Backchannel Authenticat...
 
#OAuth Security Workshop 2019 Recap @ #Authlete Partner Meetup Spring 2019
#OAuth Security Workshop 2019 Recap @ #Authlete Partner Meetup Spring 2019#OAuth Security Workshop 2019 Recap @ #Authlete Partner Meetup Spring 2019
#OAuth Security Workshop 2019 Recap @ #Authlete Partner Meetup Spring 2019
 
APIエコノミー時代の認証・認可
APIエコノミー時代の認証・認可APIエコノミー時代の認証・認可
APIエコノミー時代の認証・認可
 
CIBA (Client Initiated Backchannel Authentication) の可能性 #authlete #api #oauth...
CIBA (Client Initiated Backchannel Authentication) の可能性 #authlete #api #oauth...CIBA (Client Initiated Backchannel Authentication) の可能性 #authlete #api #oauth...
CIBA (Client Initiated Backchannel Authentication) の可能性 #authlete #api #oauth...
 
Japan/UK Open Banking and APIs Summit 2018 TOI
Japan/UK Open Banking and APIs Summit 2018 TOIJapan/UK Open Banking and APIs Summit 2018 TOI
Japan/UK Open Banking and APIs Summit 2018 TOI
 
Trends in Banking APIs
Trends in Banking APIsTrends in Banking APIs
Trends in Banking APIs
 
銀行APIのトレンド #fapisum
銀行APIのトレンド #fapisum銀行APIのトレンド #fapisum
銀行APIのトレンド #fapisum
 

OAuth Security Workshop 2017 #osw17

  • 1. OAuth Security Workshop 2017 TOI 2017-07-24 Tatsuo Kudo http://www.linkedin.com/in/tatsuokudo Cyber Consulting Services NRI SecureTechnologies, Ltd.
  • 2. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 1 IETF OAuth Working Group がオーガナイズする、 OAuthのセキュリティにフォーカスしたワークショップ 業界関係者と研究者が一堂に会する場を設けること により、OAuthがもたらす「アシュアランス」の改善と、 OAuth自体の品質向上を目指す 年1回開催。2017年は7月13, 14日の2日間、スイス 連邦工科大学チューリッヒ校にて実施 OAuth Security Workshop とは https://zisc.ethz.ch/oauth-security-workshop-2017/ Source: https://twitter.com/_nat_en/status/885861840990990337
  • 3. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 2 スケジュール https://zisc.ethz.ch/oauth-security-workshop-2017/ 08:30-09:00 Registration and coffee 09:00-09:15 Torsten Lodderstedt, YES Europe Opening Remarks 09:15-10:15 David Basin, ETH Zurich Security Protocols at ETHZ slides 10:15-10:30 break 10:30-11:30 Cas Cremers, University of Oxford Automated analysis and the subtleties of authentication: Adventures in TLS 1.3 (Invited Talk) slides 11:30-11:45 break 11:45-12:30 Michael Jones, Microsoft OAuth Token Binding: Status and Next Steps slides 12:30-13:15 Denis Pinkas, DP Security Consulting A privacy by design eID scheme supporting Attribute-based Access Control (ABAC) slides- scheme slides-German-eID paper 13:15-14:45 Lunch at Dozentenfoyer (directions) 14:45-15:30 Naveen Agarwal, Breno de Medeiros, Google OAuth & Phishing – Experiences @ Google slides 15:30-16:15 Torsten Lodderstedt, John Bradley OAuth security slides 16:15-16:45 break 16:45-17:30 Sven Hammann, ETHZ Proposing a new Private Mode for Open ID Connect slides 18:00 Dinner at The Alehouse – Palmhof (location) 08:30-09:00 Coffee 09:00-09:45 Daniel Fett, Ralf Kuesters, and Guido Schmitz, Universität Stuttgart The Web SSO Standard OpenID Connect: In- Depth Formal Security Analysis and Security Guidelines slides 09:45-10:30 Nat Sakimura, Nomura Research Institute Future Proofing the OAuth 2.0 Authorization Code Grant Protocol by the application of BCM Principles slides paper 10:30-10:45 break 10:45-11:30 Hannes Tschofenig, ARM Lessons learned from security protocol design: Meaningful content for security consideration sections of technical specifications slides 11:30-11:45 break 11:45-12:30 William Denniss (presented by John Bradley), Google Improving Native App OAuth Security with External User Agents slides 12:30-13:15 Go Yamamoto, Richard Boyer, Kenji Takahashi, and Nat Sakimura, Nomura Research Institute Asserting Access Tokens from the Transport Layer slides 13:15-14:45 Lunch at Dozentenfoyer (directions) 14:45-15:30 Jacob Ideskog, Curity Simplified Integration of OAuth into JavaScript Applications slides 15:30-16:00 break 16:00-16:45 Antonio Sanso, Adobe Invalid curve attack in JWE ECDH-ES slides 16:45-17:30 General Discussion
  • 4. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 3  セキュリティプロトコルのモデル化  ScytherによるNSPK(ニーダム・シュレーダー公開鍵プロトコル)の解析デモ  AliceからBobの通信をCharlieが仲介し、BobはCharlieのことをAliceだと信じてしまう  cf. https://staff.aist.go.jp/y-isobe/CSP-NSPK/NSPK-CSP-slides-IEICE-Taikai-20150909.pdf  “Provably Repairing the ISO/IEC 9798 Standard for Entity Authentication” の話  ISO 9798-2-5 Symmetric key encryption with TTP (Trusted Third Party)  TTPが実際のEntity Authをやった場合どうなる!? Security Protocols: Foundations, Methods, and Tools at ETHZ by David Basin, ETH Zurich https://zisc.ethz.ch/wp-content/uploads/2017/02/basin-securityprotocols.pdf
  • 5. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 4  1.3のゴール  レガシーなやつを排除してクリーンスタートする。楕円曲線しか使わないとか  0-RTT、いきなりペイロードが暗号化されてる状態  Clean up design。よりよいデザイン原則。IETFの人がデザイン過程に関わってる  0-RTT  それなりのキーから始めて、あとでアップグレードする。PSK (pre shared key) -resumption。 かなり速い。delayed authentication  Tamarin Prover で formal analysis  クライアント認証周りの攻撃 (revision 10+) を発見  nonceの再利用によるなりすまし  Awkward handshake: Client can’t tell difference between “accept” and “reject but continue. サーバーが複数インスタンスの場合とか Automated analysis and the subtleties of authentication: Adventures in TLS 1.3 by Cas Cremers, University of Oxford https://zisc.ethz.ch/wp-content/uploads/2017/02/cremers_tls_invited.pdf
  • 6. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 5  仕様3つ  draft-ietf-tokbind-protocol, draft-ietf-tokbind-negotiation, draft-ietf-tokbind-https  Keyは長期間 → PC閉じてまた起動してもそのままバインドされてる  Cookieのchannel binding  super cookieを避けた。鍵ペアはブラウザがクッキーと同じバウンダリで作る。eTLD+1  TB4OIDC: tbhというカンファメーションクレーム。ハッシュ。IDトークンに入れる  議論  tokbindいるんか? なにを解決しようとしてるのか  導入時の課題。最新の環境が必要。経済学的には、いろんなブラウザからのアクセスを受け入れた い。Windows 7とかも。そうするとダウングレードアタックを招く。非常に重要な議論  0-RTTはまだ完全に理解されているものではない。Rev 21でなんか変わった OAuth Token Binding: Status and Next Steps by Michael Jones, Microsoft
  • 7. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 6  アクセストークンを属性のやり取りに使ってる話 (?) A privacy by design eID scheme supporting Attribute-based Access Control (ABAC) by Denis Pinkas, DP Security Consulting https://zisc.ethz.ch/wp-content/uploads/2017/02/pinkas_privacybydesign.ppt
  • 8. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 7  Challenges with “Undefined”  Developer registration, Approval Page, Notification, Usage, User controls, Revocation, Admin Controls  Googleならではの課題  スコープが数100  データタイプ、なんでもある。GDriveとかも。SnapchatがGCP使ってたり  ユーザーのリテラシー。グローバルなのでバラバラ  企業ユーザーが悪意のあるアプリに権限付与しちゃったりとか  こないだの “OAuth Phishing Attack”  client_idを無効化した。無効化することで同時にトークンも使えなくなる  今後はベリフィケーションをもっとやる、ユーザー数がある閾値を超えたらマニュアルレビューする  Wordpress Plugin のケース。コンタクトしてねボタンがGmailの権限を必要とする。インストールするのはWordpress管理者  Approval Page  多くのユーザーは書かれてることを読まない。レビューとかは読む。Yahooで、スコープを減らす機能をつけた → スコープ減らしたら SSOしかできなくなった → 前のページに戻ってスコープ戻そうとしたり  サインインについては承認ページをなくした。メールアドレスとプロファイル email profile だけ  UXチームの調査にもとづいて、ボタンを “Trust” にした。ユーザーが実際に信頼するということをわかりやすくした  リボケーション: リスクの高いアプリから順に並べて、レビューしてもらう  ドメインレベルでのスコープ制御: G Suiteでできるようになった。いま何社かでテスト中。Gmailとか単位。あとスコープ単位 OAuth & Phishing – Experiences @ Google by Naveen Agarwal, Breno de Medeiros, Google https://zisc.ethz.ch/wp-content/uploads/2017/02/agarwal_challenges.pdf
  • 9. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 8  “Access token phishing”  リソースサーバーが悪いやつだった場合にどうするか  ASからMetadataを取得する  クライアントに負担がかかる  Audience Restriction  クライアントが、トークン使いたい先 (URI) を指定してATを取得する  TLSへの攻撃には弱い。DNS Attackにも? いずれにせよ TLS ちゃんとしてる前提  PoP  RS XがMITMしようとしたリクエストが無効なものになる。署名が一致しないので  Transport: Token Binding, MTLS (Subject DN使う)  Application: 新しいトークンを作ってAudience Restrictionする。Signed Request, J-POP  Q. Real issueはなによ?  UMAとか、もろに影響がある。あるRSがやられて、そこを踏み台に他のRSがやられちゃうケース。FAPI では Sender Restriction やろうとしてる  Q. ふつうASはRSのこと知ってるよね?  Federated OAuthとか、Googleが3rd PartyにAT出すケースとかある OAuth security by Torsten Lodderstedt, John Bradley https://zisc.ethz.ch/wp-content/uploads/2017/02/lodderstedt_accesstoken.pdf
  • 10. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 9  IdPはユーザーがどのRPにログインしようとするかを知ることができる。たとえば医療関係の フォーラムにアクセスしようとしてるとか  Our solution: We propose a new mode that hides the RP’s identity from the IdP  OIDC private implicit mode  implicit modeと同等のセキュリティ  client_id_hash、rp_nonceの導入 ▪ AuthZ Reqにおいて、rp_nonceはフラグメントで送る  IdPのJSがブラウザ上でrp_nonceを使ってhashを計算する。ハッシュはランダム値  議論・コメント  IdPのJSが値をサーバーにフォワードしないというのは現実的なん?  IDトークンのリプレイはどうなん?  データ最小化難しいのでは  redirect_uri の verification を JS でやる? できる? Proposing a new Private Mode for Open ID Connect by Sven Hammann, ETHZ https://zisc.ethz.ch/wp-content/uploads/2017/02/hammann_oidc_private_mode.pdf
  • 11. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 10  OIDC の formal model を開発した  ベストプラクティス準拠  主要なセキュリティ・プロパティを形式化  Authentication (IDトークン), Authorization (ATを使ったアクセス), Session Integrity  Security Guidelines  Mix-up対策(まだ確定してない)  stateはフレッシュなノンス(プレディクタブルにしないように)  リファラーからの漏洩対策  User Intention Tracking  リダイレクトは307じゃなくて303で  オープンリダイレクター除去  CSRF対策  サードパーティリソースの除去  すべてTLS  セッション管理、ログイン前とログイン後でセッションを分ける The Web SSO Standard OpenID Connect: In-Depth Formal Security Analysis and Security Guidelines by Daniel Fett, Ralf Kuesters, and Guido Schmitz, Universität Stuttgart https://zisc.ethz.ch/wp-content/uploads/2017/02/schmitz_oidc.pdf
  • 12. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 11  BCM Principles を RFC 6749に適用し、追加すべきパラメーターを検討  3 Criteria  Unique Source Identifier  Protocol + version + msg identifier  Full list of actor/roles Future Proofing the OAuth 2.0 Authorization Code Grant Protocol by the application of BCM Principles by Nat Sakimura, Nomura Research Institute https://zisc.ethz.ch/wp-content/uploads/2017/02/sakimura_future-proofing-oauth.pdf
  • 13. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 12  Approaching security in the IETF  RFC 3552: システムセキュリティはスコープ外。ジェネリックなセキュリティフレームワーク、GSSAPIとかSASLとか、プラガブルなやつ。スタイルとして有用なドキュメントではある。不満なところ、セ キュリティに関する記述が分散してること、セキュリティ専門家がドキュメント全体を読まなきゃいけないこと  RFC 6793: プライバシー  W3CのPrivacy Interest Group はJS APIが対象  “We examined 20 RFCs (15 standards-track) from 1996, well after the imposition of the security mandate: only three had anything substantive to say about security.” -- Nick Doty, at al. wrote in their position paper for the IAB Privacy Workshop  PKCS#11実装を解析したら no randomness なやつがあった話。 http://homepages.inf.ed.ac.uk/s1050796/  議論・コメント  SAML Conformance Testingの話。みんなテスト通るよ、メッセージチェックしてないから。Negative Testing重要。IETFだとネガティブテスティング無い。相互運用性だけ  アウェアネスとエデュケーション重要。Rationalをもっと書くべき  RFC 6819、Core Specと同じくらいのページ数。誰が読む?  テスタブルであること、テスタビリティ。 "Formal" な stuff を入れるとか Lessons learned from security protocol design: Meaningful content for security consideration sections of technical specifications by Hannes Tschofenig, ARM https://zisc.ethz.ch/wp-content/uploads/2017/02/HannesTschofenig_OAuth_lessons.ppt
  • 14. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 13  何が問題か  ユーザー認証・認可について、ブラウザをembedして使うと、かんたんにcookieとか取れるし、JSを注入できたりする  開発者に悪意がなくとも、サードパーティのSDKを使ってるとリスクがあるかも  In-App Browser Tabs  AppAuth ライブラリ  Coming Soon: OpenID RP Certification  iOS 11 beta  WWDC Video #225 https://developer.apple.com/videos/play/wwdc2017/225/  (beta 3 adds SFAuthenticationSession to enable Shared Authentication Context (Single Sign-in)) Improving Native App OAuth Security with External User Agents by William Denniss (presented by John Bradley), Google http://www.thread-safe.com/2017/07/appauth.html
  • 15. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 14  インターネットから物理システムを監視したい。REST API出したい。そこの認可にOAuth使いたい  工場Aと工場Bとの連携。工場BはAのセキュリティをマネージできない  提案: 認可サーバーが証明書を発行し、X.509の属性としてATを返す。クライアントはその証明書を使ってRSに接続する  議論・コメント  クライアントが動的にクライアント証明書を切り替えられるだろうか?  ガチガチに繋がったPKIは避けたい、別々にCA持ちたいというニーズ  Token in Token?  リソースサーバーごとにクライアント証明書を切り替える? チャネルの再利用できないよね  15分毎に50万台の証明書をアップデートするような環境に有用  署名処理はいまやそんな高コストではないという前提  証明書をATとして使えばいんじゃね、イントロスペクションすればいんじゃね、という話 Asserting Access Tokens from the Transport Layer by Go Yamamoto, Richard Boyer, Kenji Takahashi, and Nat Sakimura, Nomura Research Institute https://zisc.ethz.ch/wp-content/uploads/2017/02/yamamoto_token_transport_layer.pdf
  • 16. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 15  フロントエンドのつらみ  デベロッパーが理解するにはいまだ難解  SPA対応、implicitでは不十分  トークンハンドラー・パターン  フレームに入れて分離、有効期間長めのトークン  Token Handler Token ▪ postMessage、タイムアウト5秒くらい  Assisted Token Flow  "Assisted Token" は cookie に入れる。HTTP Onlyにして、JSから覗けなくする。Secureにして、 HTTPオンリーにする  for_origin  redirect_uriではない。クライアントをサーブするドメイン。フレーミング(型にはめる)ために使う。 X-FRAME-OPTIONS、CSPヘッダー  議論・コメント  Service Workerでやるといんじゃね?  問題は単純、レイヤーをどこで分けるかがポイント Simplified Integration of OAuth into JavaScript Applications by Jacob Ideskog, Curity https://zisc.ethz.ch/wp-content/uploads/2017/02/ideskog_assisted-token.pdf
  • 17. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 16  http://blogs.adobe.com/security/2017/03/critical-vulnerability-uncovered-in-json-encryption.html の話 Invalid curve attack in JWE ECDH-ES by Antonio Sanso, Adobe https://zisc.ethz.ch/wp-content/uploads/2017/02/sanso_jwe.pdf
  • 18. Copyright © NRI SecureTechnologies, Ltd. All rights reserved. 17  スライド / ペーパー  https://zisc.ethz.ch/oauth-security-workshop-2017/  Twitter  https://twitter.com/hashtag/osw17, https://twitter.com/hashtag/osw2017 Resources