1.ミドルウェアの権利の昇格
1.mysql権限昇格
最初に知っておくべきことは、電力をエスカレートする前に必要ないくつかの条件です
1)rootアカウントとパスワードが必要です。2)Mysqlのバージョン番号をチェックして次のペネトレーションを実行します。Mysqlのバージョン番号が5.1よりも大きい場合、libディレクトリに新しいプラグインファイルを作成してUDFをエクスポートする必要があります。5.6.34よりも大きい場合は、セーフモードになります。 secure-file-priv、sqlコマンドを使用した書き込みまたは書き込みの禁止
次に、最初のステップに対応して、ルートアカウントとパスワードをどのように見つけますか
1)可能なストレージファイルをファイルキーワードで検索します。例:config、database、conf、data、db、mysql
2)データベースファイルをダウンロードして、アカウントとパスワードを取得します。例:user.MYD、user.MYI
このステップでは、パスワードが半分になる可能性があることに注意する必要があります。下半分を検索し、それらをつなぎ合わせてMD5でプレーンテキストを復号化するだけです。
この時点で、最初の手順を実行する方法について疑問に思うかもしれません。トロイの木馬をWebサイトにアップロードし、Mysql実行インターフェースに入り、SQLコマンド実行関数を呼び出してcmdコマンドを実行するか、関連ファイルを直接変更またはダウンロードできます。
次に、mysqlのセキュリティモードの突破口を説明し、シェルに書き込みますが、電力をエスカレートするプロセスの完全なシミュレーションがすべての人に示されます。
トロイの木馬をアップロードした後、実行可能ファイルをチェックして変更します(バージョン番号をメモします)
SQLコマンド実行機能を実行して、必要な操作を実行することもできます。たとえば、インストールディレクトリにクエリを実行して変更を表示できます。mysqlコマンドを自分で理解してください。
次に、画期的なmysqlセーフモードに入り、シェルリンクに書き込みます。
1)セキュリティモードの原則:MySQLバージョン5.6.34以降のsecure_file_privの値はデフォルトでNULLになり、SQLステートメントで変更できません。
2)設定を変更します。
Linux:
[mysqld]は/etc/my.cnfにあり、後でlocal-infile = 0オプションを追加できます。
窓:
mysql.iniファイルを変更して、[mysqld]の下にエントリを追加できます。secure_file_priv =
次に、mysqlを保存して再起動します。
3)ログを使用:
mysqlログには、主にエラーログ、クエリログ、スロークエリログ、トランザクションログが含まれます。
アイデア1:グローバル変数によるGetshell(SUPER権限が必要)
2つのグローバル変数、general_logおよびgeneral_log_fileが使用されます
general_log :mysqlでのsql操作のログ。すべてのクエリステートメントがここに記録され、デフォルトではオフになっています。
general_log_file :操作ログを保存するためのパス
SQLステートメントの実行:グローバルgeneral_log = 'ON'を設定
次に、シェルアドレスをログストレージアドレスに書き込みます。set global general_log_file = 'C:/phpstudy/www/shell.php'
最後に、sqlステートメントを実行します。MySQLは、実行されたステートメントをshell.phpに記録します。
アイデア2:スロークエリログのgetshellを使用する
変数を表示: '%slow_query_log%'などの変数を表示します。
スロークエリログを有効にします。グローバルのslow_query_log = 1を設定します。
ログファイルを変更します:set global slow_query_log_file = 'dC:/phpstudywww/shell.php'
sqlステートメントを実行してシェルに書き込みます(これは遅いクエリなので、sleep(12)に参加します。時間は10秒より長くなることがあります。例:select '<?Php phpinfo();?> And sleep(12);)