Redis データベースはイントラネットへの浸透において比較的一般的です。最近の利用プロセスと組み合わせて記録します。
イントラネット マシンに Redis をダウンロードして make を解凍し、make install する必要はありません
A) 通常の状況では、パスとシェルを作成します
./redis-cli -h IP config set dir /home/wwwroot/default/ config set dbfilename redis.php set webshell " phpinfo(); ?>" save
B) 公開鍵を使用してパスワードなしでログインします 1 公開鍵をローカルで生成します 2 redis を使用して公開鍵を Redis マシンにバックアップします C) Linux タスクを使用してシェルを再バインドします
1 /var/spool/cron Linux マシンのデフォルトのスケジュールされたタスク。cron がオンになっていると、Linux は内部のタスクを定期的に実行します。ファイル名は username 2 です。Redis は dbfilename を上記に設定し、シェルを直接バウンスできます。要約すると、Redis は通常、すべて root 権限で起動されるため、優れた権限を持っているため、上記の 3 つの方法は主に Redis サーバーの権限を取得するために使用されます。
でも、浸透の過程では常に予期せぬ状況が起こりますよね?
最初の方法は、Redis データベースが大きすぎて PHP ホースが制限を超え、直接 500 が解析されない場合、3 番目のコマンドを通じて Web ディレクトリにホースを書き込むことができます
*/1 * * * * echo " phpinofo();?>" >/var/www/html/90sec.php;crontab -r
馬は問題ありません
2 番目の方法では、マシンを問題なくテストしましたが、侵入環境に入ったときに問題が発生しました。ssh パスワードなしのログインに問題があるはずです。成功の可能性はあまり高くありません
3 番目の方法は、私のお気に入りの方法です。シンプルで、大雑把で、明確で、権限の昇格さえも保存されます (重要なマシンの場合、通常、root ユーザーにはスケジュールされたタスクがあるため、それをお勧めします)権限の低いユーザーを使用してシェルを再バインドし、ルートで状況を調査します) が、非常に奇妙な事態にも遭遇しました マシンが外部ネットワークに接続することを許可していない場合、シェルを Web ディレクトリに書き込むことしかできませんまたは、内部ネットワーク上の bashshell を監視し、自分で接続します。redis のもう 1 つの発見は、Linux の上位バージョンでは権限を昇格できないことです。また、サードパーティ ソフトウェアが権限を昇格する方法である redis を介して権限を直接昇格することもできます。 。