タグ

ブックマーク / oauth.jp (9)

  • Implicit Flow では Covert Redirect で Token 漏れるね - OAuth.jp

    この記事は、先ほど書いたこちらの記事の訂正版です。 記事に入る前に、まずは全シンガポールにお詫び申し上げますm m さて、Covert Redirect についての説明は…超絶取り消し線はいりまくってる前の記事を読んでください、でいいでしょうか? で、訂正分だけ以下に。 Fragment Handling in Redirect 宮川さんが記事にしてますね。 英語だけど。 で、まぁ要するに、(Modern Browser は) 30x リダイレクト時にリダイレクト元に付いてた URL fragment をリダイレクト先にも引っ付ける、と。 fragment は server-side には送られないけど、クライアントサイドではリダイレクト先に引き継がれる、と。 試しに http://www.idcon.org/#foobar にアクセスすると、http://idcon.org/#fooba

    kamipo
    kamipo 2014/05/08
  • OAuth 2.0 の脆弱性 (!?) "Covert Redirect" とは - OAuth.jp

    訂正 リダイレクト時の fragment の扱いを勘違いしていたため、記事全体訂正します。 細かく訂正いれてると分けわかんなくなってきたんで、新しい記事書きました。 ゴールデンウィークまっただなかに Twitter海外の ID 厨から袋だたきにあってたので、もうこの問題は片付いただろうとすっかり油断してた「Covert Redirect」の件ですが、日でもゴールデンウィーク明けてバズりだしたので、一旦問題を整理した方がよさそうですね。 事の発端 Wang Jing さんていうシンガポールの大学院生が、こんなサイトを公開すると共に CNet はじめ各種メディアが取り上げたのが、バズりだした発端のようです。 前提知識 OAuth 2.0 や OpenID Connect だけでなく、OAuth 1.0 や OpenID 1.0/2.0 や SAML なんかでも、2つのサービスの間でリダ

    kamipo
    kamipo 2014/05/07
  • Y!J API が止まった日 - GlobalSign の Root 証明書切れから学んだこと - OAuth.jp

    昨日あたりから、Yahoo! Wallet や YConnect といった、Yahoo! Japan の API にアクセスできなくなったって人、ちらほらいるかもしれませんね。 僕もちょっとそういうケース見かけました。 なんか Yahoo! Japan がポカしちゃったの?とか、まぁ昨日まで健康に動いてたシステムが突然 Yahoo! Japan の API にアクセスできなくなっちゃったんだし、そらそう思うのもムリはない。 が、今回のケース、Yahoo! は全く悪くない! プライバシーフリークはどうかと思うがな!! では早速、今回起こったことを、振り返ってみましょう。 Yahoo! API にアクセスできなくなった Yahoo! Japan は、yahoo.co.jp 以外にも、CDN 用や API 用など、用途ごとにいくつかのドメインを持ってます。 今回止まったのは、その中の API

    kamipo
    kamipo 2014/01/31
  • Rails SessionにCookieStore使った時の問題点 - OAuth.jp

    今日 @mad_p さんからRT来てたこのツイートに関して、ちょっと調べたのでまとめときます。 Security Issue in Ruby on Rails Could Expose Cookies http://t.co/JlsXVEn4rZ — Ruby on Rails News (@RubyonRailsNews) September 25, 2013 前提条件 Railsではデフォルトでsessioncookieにのみ保存して、DBなりmemcacheなりのserver-side storageには何も保存しません。 これがCookieStoreとか呼ばれてるやつです。 この場合のsession cookieは、Railssession object (Hash object) をMarshal.dumpしてそれに署名を付けたtokenです。 rails 4では署名付ける代

    kamipo
    kamipo 2013/11/28
  • JSON Web Token (JWT) - OAuth.jp

    @novです。 個人的に最近OAuth 2.0よりJWT (というかJWS) を利用するシーンが多く、毎回同じ説明するのもめんどくさいのでブログにまとめるかと思い、どうせならOAuth.jpに書くかということで、こんな記事を書いております。 (そろそろJWTとJWSは、OpenID Foundation Japanの翻訳WGで翻訳するべき?) JSON Web Token (JWT) とは、JSONをトークン化する仕組み。 元々はJSONデータにSignatureをつけたりEncryptionする仕組みとして考えられたものの、Signature部分がJSON Web Signatue (JWS)、Encryption部分がJSON Web Encryption (JWE) という仕様に分割された。 それぞれ2012年10月26日現在の最新仕様はこちら。 (JWTとJWSは既にだいぶ仕様が固

    kamipo
    kamipo 2013/01/20
  • Re: OAuth 2.0のclient_secretって本当に秘密鍵ですか? - OAuth.jp

    昨日こんな記事を見かけたので、記事にまとめることにします。 OAuth2.0のclient_secretって当に秘密鍵ですか? 元記事にあるとおり、現状Native AppでのOAuth 2.0の実装は、API提供者・利用者ともにポリシーがバラバラで、混乱の元になっていると思います。 Googleのドキュメントにも「the client_secret is obviously not treated as a secret.」とあるわけだけど、そのくせclient_secretを使ってるし、ネットで調べても少なくない数の人がアプリに埋め込んでるので、client_secretを公開したときの問題を考えてみる。 "offline" アクセスと "online" アクセス Googleは、"offline access" に対して以下のようなポリシーを持っています。 Upcoming cha

  • OAuth 2.0 Implicit Flow で認証の問題点、再び。 - OAuth.jp

    おひさしぶりです、@novです。 最近は、新しいFacebook iOS SDK使ってるアプリを見つけるとまずToken置換攻撃を試みていますが、結構高い確率でこの攻撃に対して脆弱なアプリがみつかります。困ったものです。。 そんななか、2週間ほど前に、Micosoft Researchの人がIETF OAuth WGのメーリングリストに同じ問題を提起していました。該当Threadでは少し話題が脱線している部分もありますが、もともと最初にこの問題を提起したJohn BradleyがOAuth 2.0 CoreにSecurity Considerationsを追加する流れのようです。 これが現状の改善につながれば良いのですが、そう簡単に行かないかもなとも思います。というのも、この問題、なかなかデベロッパーにとって理解されない傾向があります。 そこで今日は、これまでいくつかのアプリデベロッパーに

  • "なんちゃら iOS SDK" でありそうな被害例 - OAuth.jp

    昨日の続き。「ソーシャルゲームなんて3000万人の特殊な人しかやってない」という意見もあるようなので、今日は iOS アプリ版。 登場人物 iOS SDK 出してるプラットフォーム iOS SDK と連携するプラットフォームの公式 iOS アプリ プラットフォーム上で "まっとうな" アプリを運営してる攻撃者 攻撃者が自作した攻撃用アプリ iOS SDK 使って開発された被害アプリ あいかわらず無邪気な被害ユーザ 前提 プラットフォームが提供する iOS SDK は、 プラットフォームが指定するカスタムスキーマ (ex. “xyz-connect://”) で始まる URI にアクセスすることで プラットフォーム公式 iOS アプリに access token 取得のフローを delegate し 公式アプリが被害アプリの指定するカスタムスキーマ (ex. “foobar-rowial:/

  • 「OAuth 2.0 (Implicit Flow) でログイン」の被害例 - OAuth.jp

    。登場人物 OAuth 2.0対応してる某ゲームプラットフォーム 某ゲームプラットフォーム上で占いゲームを運営してる攻撃者 某ゲームプラットフォーム上で農園ゲームを運営してる被害アプリの開発者 某ゲームプラットフォーム上で無邪気に遊んでる被害ユーザ ※ 念のため、今回の話は特にゲームに限った話ではない。 前提 某ゲームプラットフォーム、農園ゲーム共に、XSS とか CSRF とかセッションハイジャックされるような脆弱性はない。 農園ゲームはプラットフォームが発行するAccess TokenをOAuth 2.0のImplicit Flowを使って受け取り、同じくプラットフォームが提供するProfile API (GET /me とか) にアクセスして、レスポンスに含まれる user_id をもとにユーザを認証している。 攻撃者は占いゲームDBから任意のAccess Tokenを取得可能。

  • 1