1

私はHTML purifierを使用して、公開されている WYSIWYG エディターから入ってくる疑わしいものを取り除きました。受信 HTML は、Web サイトの公開部分にも表示されます。

私はリンクを許可しており、URL をプレーン テキストで自動的にリンクします (purifier を使用)。

外部リンクを許可し、同じドメインへのリンクを禁止する方法はありますか? たとえば、私のドメインは www.example.com です

http://www.google.comがリンクされます。

http://www.example.com/logout/はリンクされません。

悪意のあるユーザーからの干渉を最小限に抑えることを検討しています。これを防ぐには、ログアウト リンクを POST キーと値のペアを含むフォーム アクションにする必要がありますか?

ありがとう

4

1 に答える 1

3

ログイン/アウト フォームは常に POST 専用にする必要があります。

検証値について心配する必要はありませんが、これは非常に重要なセキュリティ上の問題です。Web サーバーの状態を変更するトランザクションはすべて POST 要求である必要があります。http://example.com/object?action=delete、またはその変種は絶対に許可しないでください。PHP はこの点で悪い習慣を奨励していますが、常にどちらか一方を使用する必要があり、両方を許可しないでください。

ユーザーがフォームを WYSIWYG エディターに書き込める場合、これよりもはるかに大きな問題が発生します。

元の質問に答えるには、内部リンクを無効にするには、次を使用URI.HostBlacklistし、必ず設定してURI.MakeAbsoluteください。

http://htmlpurifier.org/live/configdoc/plain.html#URI.HostBlacklist

于 2009-11-09T05:42:50.897 に答える