ディレクトリ登録サービス 海外ディレクトリー 約50サイト登録サービス

  ディレクトリ チャンネル vol.19

 

 「入力問題」  3つ目が、入力パラメータに悪意のパターンを仕組んでサーバーに注入・侵害する「入力問題」。SQLインジェクションはここに分類され、ほかにもコマンド/LDAP/XPATH/SSIインジェクションなどが含まれる。この問題の原因は、Webアプリケーション側で悪意の入力を排除できていないことだ。  予防的実装例としては、特殊な文字列を制限することが重要で、SQLインジェクションならば、「'(シングルクォート)」「\(バックスラッシュ)」「;(セミコロン)」などのエスケープが必須だが、加えてシングルクォートの内側と外側など文脈に応じた対策を行うほか、プリペアド・ステートメントを使用するのもよいという。  その上で「入力検査の徹底も有効。例えば入力フォームの文字種、けた数、値の範囲を厳密に検査しなくてはならない。また、ユーザーが文字を直接入力するテキストボックスのような項目も、文字を直接入力しないラジオボタンも、HTTP上では同じようにパラメータを送信する動作となるので、直接入力するか否かに関係なくすべての項目を検査するように」(同氏)としている。

メニュー