アカウント名:
パスワード:
やってみろSQLインジェクション等されまくって個人情報ダダ漏れになって簡単に死ねるから
全部を監督できる環境ならいいけど、他システムからの入力だのがあって文字コード変換や予期しないサロゲートペアだのが放り込まれて、エスケープしたつもりがU+00A5を通しちゃいましたとかなるからだろ
他システムからの入力をエスケープできない段階でアプリ関係なくアウトなのでは
社内の端末の専用アプリからしか入力がないエスケープが必要がなかったシステムに、スマホからユーザが入力した文字列が入ってくるようになったとき、エスケープ処理を追加するより、ホワイトリストで許されるものしか通さないようにするほうが楽じゃね?
って思うじゃん? いや、確かに楽だよ。楽だけどさ、結局今回のような問題が発生するわけで。
ホワイトリスト制限するのは自由だけど、だからといってエスケープ処理をしなくていいという考えは危険だと思うよ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日々是ハック也 -- あるハードコアバイナリアン
何で文字種制限しようとするのか (スコア:0)
Re: (スコア:0)
やってみろ
SQLインジェクション等されまくって
個人情報ダダ漏れになって
簡単に死ねるから
Re: (スコア:1)
SQLとして意味のある記号をエスケープすればいいだけなのに、SQLとして意味がある記号が何か分からない(ドキュメント見れば全部書いてあるのに!)から手当たり次第に制限してんだよね。
そんなカーゴカルトプログラミング手法で本当に危険な記号を排除できてるとどうして信じられるんだろう・・・
Re: (スコア:0)
全部を監督できる環境ならいいけど、他システムからの入力だのがあって文字コード変換や予期しないサロゲートペアだのが放り込まれて、エスケープしたつもりがU+00A5を通しちゃいましたとかなるからだろ
Re: (スコア:2, すばらしい洞察)
他システムからの入力をエスケープできない段階でアプリ関係なくアウトなのでは
Re: (スコア:0)
社内の端末の専用アプリからしか入力がないエスケープが必要がなかったシステムに、スマホからユーザが入力した文字列が入ってくるようになったとき、エスケープ処理を追加するより、ホワイトリストで許されるものしか通さないようにするほうが楽じゃね?
Re:何で文字種制限しようとするのか (スコア:2, すばらしい洞察)
って思うじゃん? いや、確かに楽だよ。楽だけどさ、結局今回のような問題が発生するわけで。
ホワイトリスト制限するのは自由だけど、だからといってエスケープ処理をしなくていいという考えは危険だと思うよ。