質問
ここで奇妙なシナリオに取り組みます。
当社では、mySQL を使用してデータを保存する独自のワークステーション管理アプリケーションを使用しています。アプリケーション内では、どのユーザーがどのマシンにいつログインしたか、監視対象のマシンにインストールされているすべてのソフトウェア製品など、多数のレポートが提供されます。別のレポートのセットを作成しようとしていますが、カスタム レポートはサポートされていません。
データは mySQL に保存されているため、レポートは手動で実行できると思います。ただし、mySQL サーバーに接続するための有効な資格情報がありません。 とにかく、mySQL サーバーにユーザー アカウントを作成することはできますか? アプリケーションが破損する可能性があるため、root パスワードやそこに含まれる可能性のあるアカウントをリセットしたくありません。
Windows 2003 サーバーへの完全なアクセス権があります。mySQL サーバーを含むサービスを停止および再起動できます。実際の mySQL サーバーには、ソフトウェアが提供する GUI を介して基本的なアクセスしかできません。CLI または別のツールを介して直接接続できません (資格情報がないため)。
mySQL サーバーへの不正アクセスを試みているかのように受け取られた場合は、申し訳ありません。ソフトウェア会社に連絡しましたが、今日の時点で2週間ほど返答がありません。データにアクセスする必要があります。私は物理ボックスに完全にアクセスでき、管理者権限を持っています。
解決
MySQL パスワード回復プロセスを使用することをお勧めします。フォローする これらの指示, ただし、パスワード リセット クエリを次のクエリに置き換えます。 新しいユーザーを追加する. 。新しいユーザー クエリは次のようになります。
GRANT ALL ON *.* TO 'myuser'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
これにより、パスワード「mypassword」を持つ新しいユーザー「myuser」が作成され、ローカル システムの CLI を通じて MySQL にログインできるようになります。これで、MySQL 管理者 GUI (ここからダウンロード) し、ネットワーク上の他のシステムからログインできるようにユーザー権限を更新します。または、 GRANT
声明 それがあなたのスタイルであれば、CLI から。
他のヒント
問題の MySQL サーバーにアクセスできますか?
たとえば、通常のユーザーが持つ以上のアクセス権は何ですか?そのソフトウェアでは実行できる場合と実行できない場合があるため、そこに侵入する前に、これらのルートを通過することを試みる必要があります。
おそらく、データベース側にログを保存するトリガーがあり、データベースに自分自身をハッキングしたときに、いつどのようにそれを行ったかがわかるでしょう。良いアイデアではありません。
これには本当に答えるべきではないと思いますが、あまりにも楽しすぎます。
見る これ SQL インジェクションに関するページ。それはあなたのニーズをカバーするはずです。これ このページには、ユーザー アカウントを mySQL に追加する方法が示されています
ランダムなユーザー入力フィールドに次のように入力してみます。
p'; INSERT INTO user VALUES
( 'localhost'、 'mynewadmin'、パスワード( 'some_pass')、 'y'、 'y'、 'y'、y '、' y '、' y '、' y '、y'、 'y '、' y '、' y '、' y '、' y '、' y ');
その後
p'; FLUSH PRIVILEGES;
p';以上で通常質問を終了いたします。たとえば、通常の質問は次のとおりです。
"Select Adress from cusomers where custName = ' + $INPUT + ';
になる
Select Adress from cusomers where custName = 'p'; INSERT INTO user
VALUES('localhost','myNewAdmin',PASSWORD('some_pass'),
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
頭に浮かぶことの 1 つは、データベース通信を盗聴し、それが暗号化されていないことを祈ることです。暗号化されている場合は、SSL を使用しないように設定を変更し、mysql を再起動してみてください。私がよく使っているスニッファーは ワイヤーシャーク
から mysql 5.0 ドキュメント:
MySQLは、Secure Socketsレイヤー(SSL)プロトコルを使用して、MySQLクライアントとサーバー間のセキュア(暗号化)接続をサポートしています。このセクションでは、SSL接続の使用方法について説明します。また、WindowsにSSHをセットアップする方法についても説明しています。ユーザーにSSL接続を使用するように要求する方法については、セクション12.5.1.3「Grant Syntax」の助成声明の要件条項の説明を参照してください。
MySQLの標準構成は可能な限り速くなることを目的としているため、暗号化された接続はデフォルトでは使用されません。そうすることで、クライアント/サーバーのプロトコルがはるかに遅くなります。暗号化データは、コンピューターが追加の作業を行い、他のMySQLタスクを遅らせる必要があるCPU集約型操作です。暗号化された接続が提供するセキュリティを必要とするアプリケーションの場合、追加の計算が必要です。
MySQLを使用すると、暗号化を1つの接続ベースで有効にすることができます。個々のアプリケーションの要件に応じて、通常の暗号化されていない接続または安全な暗号化されたSSL接続を選択できます。
安全な接続はOpenSSL APIに基づいており、MySQL C APIを通じて利用できます。ReplicationはC APIを使用するため、マスターサーバーとスレーブサーバー間で安全な接続を使用できます。
おそらくすでにそれを行っているでしょうが、それでも、アプリケーションの構成ファイルを検索してみてください。何もない場合は、実行可能ファイル/ソース コードを検索してみてください。運が良ければ、プレーンテキストである可能性があります。