3

mySQLデータベースのデータを表示できる方法または関数を探しています。ユーザーは記事を投稿することができmysql_real_escape_stringます。これは、DBに投稿を挿入する前にSQLインジェクションを回避するために使用します。

私のテスト目的では、テキスト領域に。のようなタグを付けて投稿を書き込みます<b> <a> <i> <li>。後で、Stackoverflowでこのようなエディターを使用して、ユーザーの投稿を支援します。

ただし、私はXSSを認識しており、DBから直接エコーするだけでXSS攻撃が発生する可能性があります。そのため、テストでは、htmlentitiesまたはを使用してコンテンツを出力することを選択しましhtmlspecialcharsた。それらのどれも私にhtmlで正しく投稿を表示しません。

したがって、私はストリップタグを使用しましたが、私が知っていて読んでいる限り、安全ではありません。

XSSと同じ よう に、データを正しく出力できるようにする、あなたも使用できる関数は何ですか?this

4

1 に答える 1

0

htmlを正しく表示したい場合は、取得したとおりにプレーンhtmlを印刷する必要があります。ただし、XSSを回避するには、JavaScriptタグを削除し、外部リソースからの画像の読み込みを許可しないようにしてください。

于 2011-08-26T21:41:45.690 に答える