- ベストアンサー
DBを乗っ取る方法
DB名やTable名を取得する事が出来る事は分かりましたが(DBの種類に依るようですが)、 DBユーザ名やパスワードを取得する事が出来なければDB自体を乗っ取る事が出来ないのだと思っています。 が、それらを取得する方法はあるのでしょうか? もしくは別の手段で乗っ取る事が出来るのでしょうか? 別にどこかのDBを乗っ取るのではなく、勉強する上で知りたいのです。 書籍などで勉強していますが、上記のような事についてはどこにも記されていないのです。 どなたか手法をご教示下さい。 そして願わくば対処法、もしくは攻撃手法名もお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
DBに限らず、アカウントを奪取する方法。 http://www.atmarkit.co.jp/aig/02security/bruteforceattack.html ブルートフォースアタック ・パスワードを定期的に変更する ・認証失敗ログを監視する ・インストール時に作成されるユーザの無効化 http://ja.wikipedia.org/wiki/%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88 あとは、データベース自体のセキュリティホールをついた攻撃。最新のパッチを当ててください。
その他の回答 (2)
- okg00
- ベストアンサー率39% (1322/3338)
>SQL Injectionではやっぱり出来ない感じなんですかね。 基本的にはSQL Injectionの目的はデータ操作(目的外データの閲覧、削除等)なのでできません。 ただし、DBによってはユーザ管理をSystemのテーブルで管理しているものがあり、極端な話でいうとユーザアカウントの作成がテーブルへのデータ追加でできる物があります。こういったDBですと、データの操作がユーザアカウントの追加につながってしまいます。対策としては、 ・DBへ接続するユーザの権限をSystemのテーブルを操作できない限定的なものにする ・アプリケーション側でサニタイジングなどのSQL Injection対策をする 等があります。
「別にどこかのDBを乗っ取るのではなく、勉強する上で知りたいのです。」 質問者さんは「勉強」のためでも、他の閲覧者はそうじゃないかもしれません。 こういう場所で質問する内容じゃありませんね…。
お礼
確かに。悪意のあるユーザーがいないとは限りませんでしたね。 それはどこで質問してもネット上なら同じ事が言えてしまいますね。 失礼しました。
お礼
ああー、なるほど、セキュリティーホールへの攻撃ですか。 というか、SQL Injectionではやっぱり出来ない感じなんですかね。 出来ても困りますが。 ブルートフォースアタックとか辞書アタックとかですか。 そういえばそれは書籍に載ってました(笑) 一発で絞り出すってのは無いんですねぇ~。 きっとそれらで絞り出したとしてもそれがルート権限じゃなかったりとかもするでしょうし。 トロイとかを埋め込まれるのはそもそもシステムや運用自体に問題があるという事で・・・。 現象をローカル上でやってみて見たいのですが、ツール探すのも面倒だし、 一発で見つけ出すってのは不可能なんですね。 ありがとうございました。