ある朝のシステムトラブル・・・
ある朝出社すると複数の事業所から社内Webサービスが使えないとの連絡が入っていた。それらのサービスは2つのWebサーバで提供されており、どちらもサーバは停止しておらず、接続先のデータベースサーバへのログインがロックされていることが判明する。
このアカウントのロックについては数年前にオラクル10では無制限だったパスワードの有効期限がオラクル11から初期設定180日に変更されたため、気づかないと180日後にログインできなくなるという時限爆弾が発覚し、パスワード有効期限を無制限に設定した記憶がある。
覚書を確認してSYSDBA権限にてアンロックコマンドを発行した後、2台のWebサーバのApacheを再起動して障害は復旧した。本来であれば二度と起こらないはずのアカウントロックの対処について、きちんと覚書を残しておいたのは復旧までの時間が短縮されてありがたかった。過去の自分に感謝(笑)
さて、念のためデータベースにプロファイルを確認するが、PASSWORD_LIFE_TIME UNLIMITED となっており、特に問題はなさそうだ。
とすると、考えられるのは次の3点
1.PASSWORD_LIFE_TIME UNLIMITEDでは問題が残っていた
しかし、先の設定をしてから数年が経過しており対策が間違っているなら長期間動作していた説明がつかない。
2.社内の誰かがパスワードを間違えた
通常パスワードはアプリに組み込んでおり手入力はしない。するとすれば情報システムの限られたメンバーだが、プロファイルを確認すると10回パスワードを間違うと1日間アカウントがロックされる設定になっている。
そもそも10回もパスワードを通らない時点で管理者に問い合わせするだろう。
3.外部の誰かがデータベースのパスワードを破ろうとした
ここまで考えて背筋が寒くなった。しかしながらハッカーがそれを行うとしてなぜデータベースなのか。データベースにアクセスするためにはインターネットと接続できないセグメントになるデータベースサーバに社内のどこからか踏み台を作ってアクセスを試みなければならない。データベースサーバの接続情報は当然非公開なので、どこに接続するのか判らないアドレスを総当たりで試すのだろうか。考えるとますます怖くなってきたので、対策を考えようと思う。
この記事が気に入ったらサポートをしてみませんか?