]最新の70件2020-01-18開発支援ツール2020-01-15開発ツールフレームワークの機能について。GatewayHTTP/2について調べてみた。CLI2019-12-18SAMLの仕様を読む。CoreSAMLを実装する。.NET開発基盤部会」によって運営されています。ConsiderationsのFlowに着目した脅威モデルのうち、主に、code漏洩にフォーカスした内容。refererRedirectエンドポイントからのリダイレクト。†SSL/TLSの利用クライアント認証ブラウザ・キャッシュを自動的にクリーンアップするために、redirect_uriのターゲット・ページをリロードする。†code漏洩により、codeを用いたアクセストークン・リクエストが可能になる。refresh_tokenの開示)ただし、アクセストークン・リクエストには、client_secretも必要。codeでは、Clientにcodeが渡る。このClientの信頼性は、Clientのタイプによって異なる。高いエントロピーを使用codeをredirect_uriに紐付け検証する。redirect_uriは、スターターとアクセストークン・リクエストで必要とする。codeのオンライン推測に加え(client_id、client_secret、)redirect_uriが必要。†オープン・リダイレクタや、DNSまたはARPスプーフィングが用いられる。†Client(と言うより、ココでは任意のredirect_uri)に対するDNSまたはARPスプーフィングが行われる。悪意のあるClientに誘導してcodeを入手する。「Client登録機能で登録された悪意のあるClient」を追加した版。悪意のあるClientが登録される。悪意のあるClientに対するDNSまたはARPスプーフィングが行われる。悪意のあるClientに誘導してcodeを入手する。登録機能で登録されたClientなので、クライアント認証は対策として無効。従って、アクセストークン・リクエストをパスされる可能性が高まる。紐付ける仕組みを導入すれば、対策は可能と思われる。悪意のあるClientが登録される。既存ログイン・セッションを持っている。Formに対応するPOSTバックを自動的に送信。使用しない(行わない)。パスワード認証とユーザ同意を1つのフォームにまとめ、CAPTCHAを使用するか、ワンタイム秘密をリソース所有者に使用する。Ownerに通知する。悪意のあるClientが、アクセストークンを取得できる。悪意のあるClientが登録される。悪意のあるClientは、フロー中のユーザ同意を、スクリーン・スクレイピング技術を利用してシミュレートする(など)。既存Clientを利用した攻撃なので、Client登録機能が無くても攻撃可能。codeの置換・注入があり、其々以下のような特徴がある。共通的な影響には合致しない(アクセストークンの取得が可能)。攻撃者は、「被害者のアカウント」でリソースにアクセス可能。被害者のcode(state)を入手する。単純な攻撃では、stateを入手できない。Serverの既存のクライアントのredirect_uriを編集・追加する。(ココでは、redirect_uriパラメタではなく、登録されているデータそのものの編集・追加を言っている模様)code(state)を他の正規のクライアントに向けて置換する。†redirect_uriの改ざんなどがされないようにする。他のフローを使用する。脆弱なClientによって被害者は「攻撃者のアカウント」でリソースにアクセス可能。攻撃者は、脆弱なClientをターゲットとして、Clientを対象としたcodeを収集する。そのcodeを含むClientへのCSRFリンクを踏ませる。†"state"パラメタを使用し、CSRFを防止する。外部ログイン・シナリオでは、userinfoエンドポイントに対するリクエストによってログインが完了する。漏洩した利用者のcode置換を外部ログイン・シナリオで利用する。共通的な影響には合致しない(アクセストークンの取得が可能)。「スクリーン・スクレイピング技術」ではなく「偽造サイト」の「クリック・ジャッキング」とする。以下で認証済みアクセスする。Ownerを偽造サイトに誘導する。ダミーボタンのセットの上に、透明なiFrameでターゲットサイトを読み込む。ボタンをクリックすると、実際には隠しページのAuthorizeボタンなどをクリック。†DoSにより、codeプールなどのリソースを枯渇させる。生成codeを使用して、redirect_uriにボットネットで攻撃する。†"state"パラメタを使用し負荷軽減を行う。無効なcode要求の数がしきい値を超えるクライアントからの接続を制限/禁止する。ユーザ・アカウントからの接続を制限/禁止する(Client側で認証が必要)。