この記事を読むために必要な時間は約3分(1118文字)です。
ハッシュ値の使われ方3 「攻撃検知」での使用例
前々回、前回から3回に分けて、既にお話をしたハッシュ関数の使用例のお話をしています。
前回は、「暗号化・認証」についてお話をしましたので、最終回の今回は「攻撃検知」のお話をします。
実例を挙げて説明した方がわかりやすいので、ログを例にお話をします。
しかし、一般的には、利用者がログを書き換えることはありません。
「書き換えられた=改ざんされた」と考えれば、ハッシュ値を使ってチェックができることになります。
ハッシュ値を使った対策は、次のような手順で行います。
ログ出力のプログラムによっては、次のようにログ出力時に前回のハッシュ値を確認することで、自動的に改ざん検出できます。
ただし、ログ出力のたびに改ざんを検知するので、そのままでは使えませんので、ご注意ください。
また、ハッシュ値を計算する分、処理が遅くなります。
その遅延で処理に影響がでるような高速でログを出力するようなシステムには使用できません。
ログを出力するプログラムを変更できない場合やログを出力する速度の問題がある場合は、別の方法を検討する必要があります。
前回は、「暗号化・認証」についてお話をしましたので、最終回の今回は「攻撃検知」のお話をします。
目次
ハッシュ関数の使用例
使用例は、次の順番でお話をしています。- ディジタル署名(電子署名)
- 暗号化・認証
- 攻撃検知
攻撃検知での使われ方
攻撃検知で使われるハッシュ関数の特徴は、改ざんチェック機能が強いです。実例を挙げて説明した方がわかりやすいので、ログを例にお話をします。
ログの場合
不正ログイン後の代表的な行動でお話をしたように、攻撃者であれば、ログの書き換えを行うことがあります。しかし、一般的には、利用者がログを書き換えることはありません。
「書き換えられた=改ざんされた」と考えれば、ハッシュ値を使ってチェックができることになります。
改ざん対策手順
改ざん対策としては、不正ログイン後の代表的な行動でお話をしたように、暗号化を使った方法もありますが、今回の趣旨から離れますので、省略します。ハッシュ値を使った対策は、次のような手順で行います。
- 準備
- ログを出力する
- ログファイルのハッシュ値を取得する
- (ログファイル内でも別ファイルでも良いので)ハッシュ値を書込む
- 確認時
- 既存のログのハッシュ値を取得する
- ハッシュ値をファイルに記録されたハッシュ値と比較する
- 同じであれば改ざんはないと判断できる
異なる場合や記録されたハッシュ値が見つからない場合は改ざんを検知できる
メリット:改ざん対策になる
既存のログとハッシュ値を確認することで、改ざんを検出できます。ログ出力のプログラムによっては、次のようにログ出力時に前回のハッシュ値を確認することで、自動的に改ざん検出できます。
ただし、ログ出力のたびに改ざんを検知するので、そのままでは使えませんので、ご注意ください。
- 既存のログのハッシュ値を取得する
- 取得したハッシュ値をファイルに記録されたハッシュ値と比較する
- 異なる場合や記録されたハッシュ値が見つからない場合は改ざんを通知する
- ログを出力する
デメリット:ログ出力の処理を変更しなければならなく
既存のログを出力するプログラムに、ハッシュ値の書き込みプログラムを組み込む必要があります。また、ハッシュ値を計算する分、処理が遅くなります。
その遅延で処理に影響がでるような高速でログを出力するようなシステムには使用できません。
ログを出力するプログラムを変更できない場合やログを出力する速度の問題がある場合は、別の方法を検討する必要があります。
タグ:トロイの木馬, ログ, 不正ログイン, 攻撃の影響, 攻撃者, 暗号化
| 広告枠・・・広告やリンク先の保証はしません |
|---|