私が見たの例は、サーバが heteml で、
TinyMCE を含むごく普通のフォームでした。
TinyMCE はブラウザ上で動作する JavaScript/HTML
の WYSIWIG エディタです。
さっと幾つかのデータを POST して試してみると
どうも TinyMCE でリンクを作り、その href属性の値のいかんに
よって 403 Forbidden が発生する場合があるようでした。
よくよく見てみると href属性が絶対パスから相対パスに変換され、
上位ディレクトリを参照するような形になっている場合に
403 Forbidden が発生します。
問題になるのは例えば『href=”../../”』のような値です。
そういえば、heteml には WAF (ウェブアプリケーション
ファイアウォール) があったなと思い出し、ログを見ると
「ディレクトリトラバーサルからの防御」
という記録が残されていました。
WAF を OFF にしてもすぐには反映されないので、
すぐに反映できる .htaccess による除外記述を行って
様子をみると 403 Forbidden が消え、
意図通りに動作することが確認できました。
除外記述は WAF のログに記載されている
以下のようなコードを .htaccess に追記します。
SiteGuard_User_ExcludeSig traversal-数字
相対パスが問題であれば WAF を OFF にせずとも
以下のように設定すれば回避することができます。
tinuyMCE.init({
...
relative_urls : false, // 相対パスに変換しない
...
});
.htaccess から除外記述を取り除き、
tinyMCE で相対パスへの変換を無効化します。
これで AWF の全部あるいは一部を無効にすること無く
問題を解決できたのではないかと思います。
以上、何かのお役に立てば幸いです。
お問い合わせについて
業務として技術コンサルティングやシステム設計・開発を行っております。
気になることがありましたらご相談下さい。
ご相談のみで完結する場合、コンサルティング費用の目安は
内容によりますが1時間で5千円〜1万円ていどです。
コンサルティングや開発を検討されるその前に、
まずはお気軽にコメントやメールでご連絡下さい。
※ご契約前のコメントやメールでのやりとりは無料です。