2012-04-27 16 views
1

代わりにtext/plainを使うべきですか?あるいは、クロスサイトセキュリティに関しては、text/jsonが実際に同じものになるだろう。コンテンツタイプtext/jsonにセキュリティの影響がありますか?

どちらの方法でも、コンテンツは有効なJSONになります。コンテンツタイプのヘッダーについて正しいことを確認したいだけです。

+1

正しいコンテンツタイプは、application/json – Musa

+0

@Musa、ありがとうございます。http://stackoverflow.com/questions/477816/the-right-json-content-typeこれを回答として投稿してみませんか? – msanford

答えて

1

リクエスト回答のMIMEタイプの選択に影響するセキュリティ上の考慮事項はありません。 JSONの適切なMIMEタイプはapplication/jsonです。

+0

The Tangled Webという本を読むことをお勧めします。コンテンツの盗聴について詳しく説明しています。 – Erlend

+0

石けん箱から声を上げないでください。私はもつれたWebを読んだ。 HTTPコンテンツヘッダーのコンテンツにはセキュリティ上の考慮事項がないという私の主張に依拠しています。 mime-type application/jsonで悪用できるものは、text/plainで悪用することができます。 –

+0

一般的に、またはこの特定のシナリオでのみですか? (私はあなたの最初の文で何を意味するのか分かりませんが、何とかあなたを怒らせてしまった場合はごめんなさい) – Erlend

1

はい、セキュリティ上の意味があります。ブラウザー、特にIEは、しばしばコンテンツタイプを推測します。その理由として、サーバーはすべてのコンテンツを同じコンテンツタイプとして配信していたため、ブラウザーは物事を正しく表示するために推測する必要がありました。 テキスト/プレーンはコンテンツスニッフィング(2番目の推測)で有名です。 jsonにHTMLの値の一部が含まれている場合、ブラウザーで直接URLを開くと、ブラウザーはそのHTMLを判別してレンダリングする可能性があります。これはXSSにつながる可能性があります。

+2

これは一般的な神話であり、神話は通常行くので、間違いです。 MIMEの種類の検出に関するMicrosoftの参照は、次のとおりです。http://msdn.microsoft.com/en-us/library/ms775147%28v=vs.85%29.aspx注:このドキュメントでは、a)text/plainは決してありません制限されたゾーンでHTMLとしてレンダリングされます。 b)未知のMIMEタイプは決して推測されません。これは8年前に開始されたIE6SP2からの挙動です。 text/jsonはjsonとして扱われるか、または未知の型として扱われます。それはXSSに安全です。 –

+1

私は、この議論がフォーラムで時折ポップアップするのを見ています。 2011年のランダムな例:http://www.highdots.com/forums/html/ie-ignores-text-plain-again-299596.html – Erlend

+0

私はテストベッドをしばらく前にセットアップしました。これは少なくともIE9が処理することを示しますいくつかの状況下でtext/plainとしてHTMLとして:http://erlend.oftedal.no/blog/research/json/testbench.html – Erlend

関連する問題