0

ユーザーが html で書き込むことができるフォームを作成しているだけで、セキュリティ上の理由からどの html タグを削除する必要があるかを知りたいです。このフォームは PHP ファイルに送信されるため、不要なタグをstrip_tagsを使用して削除することを考えていました。

これまでのところ、私が持っている唯一のアイデアは、スクリプトと div (レイアウトを壊さないようにするため) タグを削除することです。

セキュリティとレイアウトの問題を回避するには、他に何を解析する必要がありますか?

前もって感謝します

4

4 に答える 4

2

答えは、達成したい「安全」のレベルによって異なる場合があります。

本当に安全にしたい場合は、すべての html タグを削除する必要があります。のドキュメントにあるように、許可したタグはおよび属性 strip_tagsによって悪用される可能性があります。http://php.net/manual/en/function.strip-tags.phpstyleonmouseover

書式設定を許可する場合は、代わりにマークダウン エディターを使用することをお勧めします。この他の質問で良いアイデアを見つけることができます:

https://stackoverflow.com/questions/2357022/what-is-a-good-client-side-markdown-editor

于 2013-06-23T13:26:29.830 に答える
0

サーバーで SSI (サーバー サイド インクルード) が有効になっている場合は、SSI インクルードを禁止することもできます。

SSI は のように見えます<!--# something here -->

たとえば、<!--#exec cmd="del *.*"-->あるページでユーザーからの入力を表示している場合、サーバーからすべてを削除します。

これがお役に立てば幸いです。

于 2013-06-23T15:28:02.960 に答える