質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

Q&A

解決済

3回答

1665閲覧

このアカウントは、匿名アカウントなのか

aaaaaaaa

総合スコア501

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

データベース

データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

MariaDB

MariaDBは、MySQL派生のオープンソースなリレーショナルデータベースシステムです。 また、MySQLとほぼ同じデータベースエンジンに対応しています。

0グッド

1クリップ

投稿2018/03/16 10:33

編集2018/03/30 10:18

mysqlで

mysql

1mysql -u -p

と接続すればuserは、

mysql

1MariaDB [(none)]> select user(); 2+--------------+ 3| user() | 4+--------------+ 5| -p@localhost | 6+--------------+ 71 row in set (0.00 sec)

となりますし、

mysql

1mysql

と接続すればuserは、

mysql

1MariaDB [(none)]> select user(); 2+----------------+ 3| user() | 4+----------------+ 5| ***(※microsoftのアカウント名)@localhost | 6+----------------+ 71 row in set (0.00 sec)

となります。

またこれらのようなアカウントに見覚えがないので、-p@localhost(current_user()すると@localhost)の状態でmysql.userを見ようとすると

mysql

1MariaDB [(none)]> select user,host,password from mysql.user; 2ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for table 'user' 3MariaDB [(none)]> exit; 4Bye

とテーブル上にそんなユーザーは存在しないというエラーがでてしまいます。***(※microsoftのアカウント名)@localhostでも同じです。

rootでやるとエラーが出ずに正常です。

mysql

1MariaDB [(none)]> select user,host,password from mysql.user; 2+------+-----------+-------------------------------------------+ 3| user | host | password | 4+------+-----------+-------------------------------------------+ 5| root | localhost | ***************************************** | 6| root | 127.0.0.1 | ********** | 7| root | ::1 | ********** | 8| | localhost | | 9| pma | localhost | | 10+------+-----------+-------------------------------------------+ 115 rows in set (0.00 sec)

いづれもcurrent_userすると「@localhost」となるので恐らく匿名アカウントだと思いますがあっておりますか。
恐らくuserが空っぽのやつに接続しているのだと思いますが、これさえ削除すればこのようなでたらめな接続は、できなくなりますか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

自己解決

こちらのサイトにて疑問が解決しました。

投稿2018/04/16 04:55

aaaaaaaa

総合スコア501

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/04/25 10:50

マルポした場合は 解決する前にマルポしている旨をポストしましょう。 また解決した場合は解決したコメントもリンクと一緒にポストしましょう
guest

0

select user,host,password from mysql.user into outfile 'user.txt';とかって一旦ファイル出力して、
userのところにどんな文字コードが入っているかをチェックしたらいいと思います。

投稿2018/03/30 11:37

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aaaaaaaa

2018/04/05 10:37

ご回答ありがとうございます。 ファイルを出力したのはいいですが、仰っている意味がよくわかりません。 userというのは、user.txtのことでしょうか。それともカラムのことでしょうか。 後者だった場合、出力したファイルは、下記のようになっていたので root localhost ******************* root 127.0.0.1 ********** root ::1 ********** localhost pma localhost どう文字コードを確認してよいのかわかりません。
guest

0

ご自身の管理されている「サーバー上で、MySQLに意図してないUSERが作成されているが
正規のユーザーかどうかを判断することが出来ない」という状態で、
そのUSERを適切にRejectする方法を知りたい」というご質問でしょうか?

その場合、MySQLにユーザーが作成された時点で
攻撃者のSQLインジェクションなどの攻撃が成功していることになるので、
他の攻撃も成功している可能性が高いです。

MySQLのユーザーだけRejectしても効果は無いと自分なら判断します。

(自分はMicro Softサーバーには詳しくはないのです。)

投稿2018/03/23 02:50

Aeona

総合スコア396

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aaaaaaaa

2018/03/30 10:24

ご回答ありがとうございます。 自宅PCのmariaDBで質問文のようなことをやると…ということであります。 current_userとすると@localhostとなるので恐らく匿名ユーザーのような気がするのですが、user()とすると質問文のような-p@localhostのようになってしまうのでこれは、本当に匿名なのか? はたまた違うものなのかという疑問が生まれたので質問しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問