アカウント名:
パスワード:
例えば、AWS WAF で Body 全体 に対して "SQL injection match conditions" を適用していると、
' OR 'Hoge' = 'Hoge';#
のようなパスワードが送られてきた際に、SQLインジェクション攻撃だと判定して、HTTPリクエストごとブロックしてしまいます。
こういったケースでは、WAFの例外ルールを作る必要がありますが、Webアプリケーションの製作者とWAFの管理者が違うと面倒だし、URL変更やパスワード認証を行う箇所を増やした場合にも例外ルールを作り直さないとまた誤検出が発生してしまいます。こういった手間を避ける目的で、記号を使えなくしているシステムもあるのではないでしょうか。
# WAF のせいでかえって脆弱なシステムになるパターン
エスケープすんのマンドクセ( 'A`)ということだな!
こういう強制ってより弱いパスワード生産を促しているように思うわ。シェルやSQL使ってるせいか、クォートやダブルクォート、アスタリスクにパイプ、アンパサンドみたいな誤動作の元になるような文字列は避けてしまう。
実際、安全に使える記号って少なくね。
すごい納得した。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell
WAF の誤検出対策で使える記号を制限 (スコア:4, 興味深い)
例えば、AWS WAF で Body 全体 に対して "SQL injection match conditions" を適用していると、
のようなパスワードが送られてきた際に、SQLインジェクション攻撃だと判定して、HTTPリクエストごとブロックしてしまいます。
こういったケースでは、WAFの例外ルールを作る必要がありますが、Webアプリケーションの製作者とWAFの管理者が違うと面倒だし、URL変更やパスワード認証を行う箇所を増やした場合にも例外ルールを作り直さないとまた誤検出が発生してしまいます。こういった手間を避ける目的で、記号を使えなくしているシステムもあるのではないでしょうか。
# WAF のせいでかえって脆弱なシステムになるパターン
Re: (スコア:0)
エスケープすんのマンドクセ( 'A`)
ということだな!
Re: (スコア:0)
こういう強制ってより弱いパスワード生産を促しているように思うわ。
シェルやSQL使ってるせいか、クォートやダブルクォート、アスタリスクにパイプ、アンパサンドみたいな誤動作の元になるような文字列は避けてしまう。
実際、安全に使える記号って少なくね。
Re: (スコア:0)
すごい納得した。