先週末からWordPress 4.7.0および4.7.1によって稼働しているサイトの改ざんが多数発生しています。残念ながら当サイトもこの攻撃を受けて、タイトルと本文の両方が「hacked by NG689Skw」と書き換えられてしまいましたが、今朝の段階で修正をしました。
この攻撃はREST APIの脆弱性によるもので、ログ上は以下のように記録されていました:
154.16.166.179 - - [05/Feb/2017:06:46:43 +0900] "GET /wp-json/wp/v2/posts HTTP/1.1" 200 248141 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)"
154.16.166.179 - - [05/Feb/2017:06:46:44 +0900] "POST /wp-json/wp/v2/posts/9664 HTTP/1.1" 200 1727 "-" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)"
技術的な検証と考察は「WordPress 4.7.1 の権限昇格脆弱性について検証した | 徳丸浩の日記」が詳しいです。
WordPressの更新をしっかりとしていれば防げたことではあるのですが、当初はあまり大事にならないように修正内容が一部制限されて公開されていた(参考:【セキュリティ ニュース】公開済「WordPress 4.7.2」では深刻な脆弱性を修正 – 1週間遅れで情報開示(1ページ目 / 全1ページ):Security NEXT)こともあり、気付くのが遅れてしまった感じです。忙しさにかまけて放置するとやはり危険ですね。対策を打ちたいと思います。
さて、今回のこの脆弱性を狙った攻撃者ですが、比較的穏当な書き換えのみをしている印象があります。本来であればもっとどぎつい書き換えも可能であったにもかかわらず、1つの記事のタイトルと本文を短い特定文字列に置き換えるだけでした。この脆弱性を告知する目的をもって行われた攻撃の可能性もあるのかもしれない、とか考えてしまいました。むろん、根拠はありません。