20180617

エラーメッセージからの情報暴露

エラーメッセージからの情報暴露
【外部リンク】
https://www.ipa.go.jp/security/awareness/vendor/programmingv1/b09_03_main.html
画面1では通常,名前や住所,メールアドレス,誕生年の入力をユーザが行うことになる。ここで何も入力しないまま「登録」ボタンをクリックしたときに表示されるエラーメッセージを画面2にのように想定してみた。ここの「○○○は必須項目です」「○○○には数字を入力してください」のように,入力の誤りを(あるいは入力しなかったこと自体を)詳細に表示することは,ユーザが入力の訂正をすみやかに行う助けになる。

不正侵入を試みる者は,まずユーザIDを推定し有効なものを見つけると,今度はそのアカウントのパスワードを破りにいく。そのため,画面4や画面6のようなエラーメッセージを表示するログイン処理は安全な設計とは言えない。
画面8 改善されたエラーメッセージ
 画面8 改善されたエラーメッセージ
画面3と画面5のどちらの状況で「ログイン」ボタンをクリックしてもこの表示が出るようにする。
ユーザIDとパスワードのどちらが誤っているのかが読みとれないエラーメッセージにすることで,部外者がユーザIDを推定することが困難になる。


画面9 プログラム内部構造の手がかりを与えるエラーメッセージの例
 画面9 プログラム内部構造の手がかりを与えるエラーメッセージの例
IISのデフォルトでは,ASPプログラムでのエラー発生時にこのような画面が表示される。この例では,当該ASPプログラムはSQL文を生成しており6行目でデータベースにアクセスしていること,パラメタcolはデータベースの列名に関係することが推定できてしまう。
--

注目の投稿

cURL error 60: SSL certificate problem: unable to get local issuer certificate

cURL error 60: SSL certificate problem: unable to get local issuer certificate 更新失敗: ダウンロードに失敗しました。 cURL error 60: SSL certificate problem: ...

人気の投稿