ホームページ  >  記事  >  バックエンド開発  >  phpmyadminに認証コードを追加したいのですが、認証場所が見つかりません。

phpmyadminに認証コードを追加したいのですが、認証場所が見つかりません。

WBOY
WBOYオリジナル
2016-06-23 14:03:14915ブラウズ

phpmyadmin に確認コードを追加しますか? ?しかし、それを確認できる場所が見つからないので、教えてください。



結局のところ、確認コードがないとソーシャルワーカーによってハッキングされるのは簡単です。同時に、パスワードをJSで暗号化し、PHPで復号化したいと考えています。

知っていたら教えてください。ありがとう。


ディスカッションへの返信(解決策)

ログイン後にのみアクセスできるように設定しても良いのではないでしょうか?

ログイン後にアクセスする必要があると言えますか? ?よくわかりません。
確認コードを追加するか、パスワードを暗号化したいだけです。

はは、それなら phpmyadmin のソースコードを変更する必要があります。

ログイン機能が付いています

はは、それなら phpmyadmin のソースコードを変更する必要があります。

ログイン機能が付いています

それは知っていますが、ユーザーのパスワードを認証する場所はどこですか? 長い間探しましたが見つかりませんでした。

それはユーザー名とパスワードです

専門家として教えてください、どこで変更すればよいでしょうか? ? ?

ログインフォームは、libraries/auth/cookie.auth.lib.php の 240 行目近くにあります

ユーザー名の操作は、file
    if (! empty($_REQUEST['pma_username'])) {        // The user just logged in        $GLOBALS['PHP_AUTH_USER'] = $_REQUEST['pma_username'];        $GLOBALS['PHP_AUTH_PW']   = empty($_REQUEST['pma_password']) ? '' : $_REQUEST['pma_password'];        if ($GLOBALS['cfg']['AllowArbitraryServer'] && isset($_REQUEST['pma_servername'])) {            $GLOBALS['pma_auth_server'] = $_REQUEST['pma_servername'];        }        return true;    }
の 450 行目近くにあります

phpmysqladmin 自体は、ユーザー名とパスワードの信頼性を検証する必要はありません
ユーザー名とパスワードは mysql 用なので間違えるとデータベースに接続できなくなります

@xuzuning モデレーター

phpmyadmin は mysql に接続せずにデータベース内の操作を行うにはどうすればよいでしょうか?困惑しています。この情報をどこで mysql に渡すのでしょうか? ?

@xuzuning モデレーター

phpMyAdmin を使用して mysql に接続する方法についてはオンラインで多くの話題がありますが、phpMyAdmin を変更し、セキュリティを強化するための確認コードを追加する方法については説明されていません。

そうでなければ、誰かがスキャンを続けます。通常の状況では、初心者でもおそらく 2 ~ 3 日でスキャンできるでしょう。

phpmyadmin は、mysql に接続せずにデータベース内の操作をどのように行うことができますか?困惑しています。この情報をどこで mysql に渡すのでしょうか? ? 私の意味を誤解しています

phpmyadmin自体はログインする必要はありません

入力する必要があるのは、データベースにアクセスするためのユーザー名とパスワードです
​​ したがって、phpmyadminは検証を提供せず、ログインするためのユーザー名とパスワードかどうかを判断できませんmysql は合法です

接続する場合 phpmyadmin の入り口は公開されているのに、なぜ他の人がそれを「スキャン」するのを心配するのですか?

8 階の bluewjzhhr からの返信を引用: phpmyadmin は、mysql に接続せずにデータベース内の操作を行うにはどうすればよいですか?困惑しています。この情報をどこで mysql に渡すのでしょうか? ?私の意味を誤解しています

phpmyadmin自体はログインする必要はありません

入力する必要があるのは、データベースにアクセスするためのユーザー名とパスワードです
​​ したがって、phpmyadminは検証を提供せず、ログインするためのユーザー名とパスワードかどうかを判断できませんmysql は合法です

接続すると…

モデレーター、私が率先して公開したわけではありませんが、おそらく何らかの方法でハッカーによって検出されたのでしょう。

こちらも:

 if (! empty($_REQUEST['pma_username'])) {        // The user just logged in        $GLOBALS['PHP_AUTH_USER'] = $_REQUEST['pma_username'];        $GLOBALS['PHP_AUTH_PW']   = empty($_REQUEST['pma_password']) ? '' : $_REQUEST['pma_password'];        if ($GLOBALS['cfg']['AllowArbitraryServer'] && isset($_REQUEST['pma_servername'])) {            $GLOBALS['pma_auth_server'] = $_REQUEST['pma_servername'];        }        return true;    }


どう考えても、ここはユーザー名のログインを確認する場所ではないと思いますが? ?別の場所にあるのでしょうか? ?


phpmyadmin の入り口の名前とディレクトリさえ変更すれば、遮断壁の「攻撃」を回避できませんか?

ユーザー認証とは言っていませんよね?先ほどログイン関連と言いましたよね?

さらに、phpmyadmin はログインを必要としないと繰り返し述べてきました。ユーザー ログインは mysql に接続するためだけのものです。
ユーザー ログインは mysql に接続するように設計されていることを理解しています:

" select * from user where user='".$user."' and passwd='".$password."'";


? ? ?

ユーザー ログインが mysql に接続するように設計されていることは理解しています。どこで実行するかはわかっています:

"select * from user where user='".$user."' and password='".$パスワード。" '"


? ? ?

モデレーターが意味するのは、phpmyadmin は接続用の mysql ユーザー名とパスワードを渡すインターフェイスのみを提供するということだと思います。したがって、mysql_connect(xx,xx,xx) を実行する場所を見つけて、接続の状態を判断する必要があります。あなたが言及した SQL の実行に関しては、mysql データベース内で実行される必要があります。おそらく、mysql 自体にユーザー情報を保存するテーブルがあります。

13 階の bluewjzhhr からの返信を引用します: これは理解しています。ユーザー ログインが mysql に接続するように設計されていることは知っています:

"select * from user where user='".$user。 "' とパスワード=' ".$password."'"

? ? ?

モデレーターの意味は、phpmyadmin が mysql のユーザー名とパスワードを渡すインターフェイスのみを提供するということだと思います...


モデレーターの意味はわかりますが、表現が明確ではありません。

三晩探しましたが、まだ結果はありません。 phpMyAdmin に確認コードを追加したいのですが、なぜそんなに難しいのですか? ? ? ? ?

この投稿は、xuzuning によって最終編集されました: 2012-12-20 16:46:41
ログイン フォームは、libraries/auth/cookie.auth.lib.php の 240 行目近くにあります
ユーザー名に関連する操作は、この近くにありますファイル code?123456789 の PHP の行 450 if (! empty($_REQUEST['pma_username'])) {...

7 階の xuzuning からの引用: この投稿は、2012 年 12 月に xuzuning によって最終編集されました。 -20 16:46:41
ログインフォーム library/auth/cookie.auth.lib.php の 240 行目付近
ユーザー名の操作はファイルの 450 行目付近 PHP コード?123456789 if (! empty($_REQUEST ['p...


mysql の暗号化を発見する 方法は sha1(unhex('xxx')) です。JS フロントエンドで直接暗号化してから直接比較する方が安全ですか?このパスワードを解読した人はいないと思います

送信ページと表示ページに何かを追加するだけです。質問です。送信ページと表示ページの両方に何かを追加してください

問題は、パスワードを確認する場所が見つからないことです ! phpでは確認できないため、パスワードを確認してください

phpMyAdminを使用する場合、パスワードを確認できません


設定ファイル内のユーザー名またはパスワードが間違っている場合、この時点でmysqlに接続できません。 mysql は対応するエラー メッセージを表示します
これは、銀行にお金を引き出しに行ったときと同じです。窓口係はあなたの取引を受け入れ、パスワードは自分で入力し、間違って入力した場合は、パスワードを入力するように指示されます。間違っています

表現が正確ではありません、モデレーターからご容赦ください

phpMyAdmin ユーザー名とパスワードが共存するレコードを見つけるには、mysql にアクセスする必要があります。mysql 内で検索しないと、どうやってわかりますか。このユーザーはどこにいますか?

phpMyAdmin が mysql にユーザー名とパスワードを与える方法を知りたいです。


見つかりました:
common.inc.php の 945 行目について:

// サーバーに接続します (ユーザーのログインを検証します)
$userlink = PMA_DBI_connect($cfg['Server']['user '], $cfg['サーバー']['パスワード'], false);

モデレーターありがとうございます。

前にも言いました
$GLOBALS['PHP_AUTH_USER'] = $_REQUEST['pma_username'];
$GLOBALS['PHP_AUTH_PW'] = empty($_REQUEST['pma_password']) '' : $_REQUEST[ 'pma_password'];
これは、受信したユーザー名とパスワードがキャッシュされる場所です
もちろん、同様の場所がいくつかあります
mysql に接続するときは、mysql_connect('localhost', $username, $parssword); を実行する必要があります。 ?

この $username と $parssword は、受信または事前設定されたユーザー名とパスワードではありませんか?

これは、データベースに接続するために使用される、phpmyadmin が入力を求めるユーザー名、パスワード、およびパスワードです

データベースがまだ接続されていない場合、phpmydaminはどうですか、mysqlでユーザー名とパスワードを見つけるのはどうですか?

では、データベースがすでに接続されている場合、ユーザー名とパスワードを検証しても何の意味があるのでしょうか?
もちろん、接続時に、mysql 自体もユーザー テーブルにアクセスしてユーザー名とパスワードを確認しますが、介入することはできません

これは、アプリケーション システムのユーザー名とパスワードとは異なります。 mysql に接続した後、テーブルに移動してユーザー名とパスワードを確認します
この 2 つを混同したようです

@xuzuning
奇妙なことを聞​​きたいのですが、検証コードは追加されましたが、検証コードによって生成されたセッションまたは Cookie は phpMyAdmin に入ることができません。つまり、phpMyAdmin はどこかでセッションをログアウトしているはずです。現状、認証コードは正常に表示されますが、使用することはできません。

やったことある方、教えてください。死ぬほどです

とても曇っていて霧がかかっています。
ああ。 。 。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。