遅すぎるサニタイズではダメな例
PostgreSQL 11がリリースされました。このリリースでto_number()、to_char()、to_date()、to_timestamp()関数の仕様が変更されました。これらは名前の通り入力を変換する関数です。その際に
- サニタイズ – ダメな形式のデータを使える/安全なデータ形式に変換する
を行います。保存されるデータ形式は、保存可能な形に変換されます。しかし、これは十分ではないです。遅すぎるサニタイズがダメな例として紹介します。
※ エスケープやプリペアードクエリもサニタイズ(無害化)の一種です。
もっと読む