人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

質問:データが誰かに削除されて突き止められない
環境:Oracle9i 9.2.0
ある化粧品のシステムですが、いきなりデータが削除されてしまいました。原因を突き止めようと思っているのですが、誰かわかりません。
まずわからない原因として、DBを扱える全ての人が同じユーザでログインしています。
その気になれば全員が容疑者です。
どのPCでどんなSQLを実行したかわかりますでしょうか?このままでは非常に険悪な空気になってしまいます。。
よろしくお願いします。

●質問者: toshiharu
●カテゴリ:コンピュータ 学習・教育
✍キーワード:2.0 dB pc SQL システム
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● orez
●20ポイント

http://support.oracle.co.jp/

Oracle internet Support Center

アーカイブログ運用になっていればアーカイブログを解析して特定する事ができるかもしれません。セッションの特定は難しいかも知れないので前後関係で確認する必要があるかもしれません。LogMinerというツールがあります。使用方法はマニュアルかリンク先(Oracleのサポート契約が必要)で検索してみてください。


2 ● ちゃぼりん
●20ポイント

http://www.atmarkit.co.jp/fsecurity/rensai/webhole02/webhole01.h...

@IT:Webアプリケーションに潜むセキュリティホール(2) - Page1

データが削除されたのは不特定多数が利用できるシステムでしょうか?それとも社内システムですか?

不特定多数が利用できる(例えばWebなどの)システムの場合ならば、SQL-Injection問題を疑う必要があります。

この場合は、削除した時のアクセスが記録されており、削除実行を行ったログは、実行時のURLで特定できます(SQLが書かれているはずです)。

まずはHTTPサーバのログを保全しましょう。

http://www.atmarkit.co.jp/fdb/rensai/orasql05/orasql05_1.html

@IT:Oracle SQLチューニング講座(5) Page 1

接続元の情報や、SQL自体をどう実行したかは、SQLのパフォーマンスチューニング時の要領で、トレースの結果を参照するのが良いでしょう。

しかし、取得可能な条件として、このトレースを削除実行当時に動かしている必要があります。

普通、本番系でこれを動かしたままにすることはまずないので、さかのぼっての情報の取得はかなり難しいのではないかと思います。

(一応URLをご参照ください)

http://hybooks.atmarkit.co.jp/stand/2003/oracle9i/ch05/050403.ht...

@ITハイブックス:Oracle9iDB Release 2 実践ガイド 第5章

次に復活の方法ですが、データの削除にはTRUNCATE TABLEやDROP TABLE等DDLでの削除と、DELETEクエリによる削除の2パターンがあると思います。

後者の場合はREDOログにデータが残っているかもしれないので、メディア・リカバリで復活させることができるかもしれません。


3 ● れお
●20ポイント

http://kamoland.com/oracle/redolog.html

REDOログ周りのメカニズム (Oracle)

Oracleのログ情報から、実行されたDELETE文を発見し、その日時を特定。

その時間に出社していた人が対象となってしまいます。単純なLAN構成である場合にはネットワークのログは期待できないでしょう。

SQLを実行したツールのログも一台一台調べていくしかありません。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ