不正アクセスを晒します

2020年1月12日

/?author=1~20

/?author=1~20までの不正アクセス。ログインユーザー名を盗もうとしている。テーマの脆弱性を狙った不正アクセスも記録されています。Typeの赤丸はセキュリティプラグインが不正アクセスを感知してブロックしたアクセスです。

画像右側のバーを使ってスクロールしてご覧ください。

/xmlrpc.phpと/wp-login.php

/xmlrpc.phpと/wp-login.phpを狙った不正アクセス。 /xmlrpc.phpはアクセス可能になってしまっていると、ログインユーザー名が第3者に分かってしまいます。

パスワードを複雑にしたり、ログインを〇回失敗したら以後のアクセスをブロックする、ような設定も有効です。

セキュリティに全くの無頓着だと、メールアドレスをそのままログインユーザー名に使っているWordPressブログもあったりします。これではスパムメールも届くようになってしまいますね。

プラグインの脆弱性を狙った不正アクセス

プラグインの脆弱性を狙った不正アクセス。このWordPressブログで使っていないプラグインに対しても、世界中に存在しているWordPressブログを狙ったbotの自動巡回で、無差別攻撃を仕掛けてきます。

WordPressテーマ・ルクセリタス3.7.5.1に備わった新しい機能、スクロールブロックを使って不正アクセスログのキャプチャ画像を公開してみました。IPアドレスや接続ホスト名は不正アクセスを働く不埒な輩、Botですが、、、とは言えさすがに隠しました。

ダークウェブTor出口ノードからの不正アクセス

wp-confing.phpの情報を盗もうとしています。ファイルのパーミッションを400にして第3者にアクセス出来ないようにしていますし、画像でわかるようにセキュリティプラグインWordfenceがアクセスブロック(404)しているので被害はなし。

データベースのユーザー名とパスワードなどの重要な情報が書かれているwp-confing.phpが第3者に漏洩してしまうと、サイトの改ざんや乗っ取りなどの原因となります。
対策はこちら。WordPressのセキュリティ対策(初心者向け)

twitterにも同じ内容を呟いた。

そしたら、いいねがひとつも無いのにこの結果。

セキュリティ関係で見てくれているなら、いいね付いてもいいはずだし(自分で言ってしまってすいません)、恐らく「ダークウェブ」で検索されて見られているのでしょう。
タイムラインに流している通常のツイートよりも、閲覧が約3倍になっています。

米ホワイトハウスのWEBサイト

アメリカ・ホワイトハウスのWEBサイトはWordPressで作られています。CMSをDrupalからWordPressに変更し、600万ドル(約6億6000万円)かかっていたコストが60%以上削減されたと説明されています。 トランプ大統領にセキュリティホールが沢山あり過ぎるので、推測ですが世界で最も不正アクセスの攻撃を受けているWEBサイトでしょうね。ホワイトハウスのセキュリティチームもたいへんだ。サーバーはセキュリティ面でも世界最強と言えるアカマイテクノロジーズを使っています。

ホワイトハウスがCMSをWordPressに変えてから、Drupal には数回にわたって深刻な脆弱性が報告されています。

ワードプレスだから危険なのではなくて、管理者のいない又はスキルの低い管理者しかいないワードプレスブログだったり、セキュリティ対策が施されていないワードプレスが危険なのですね。個人運営のワードプレスブログはコストがかけられない分、知識を習得してセキュリティを積み上げていきましょう。

WordPressブログのセキュリティ対策は抜かりなく

WordPressブログには、セキュリティ対策はしっかりやっておきましょう。WAF(ウェブアプリケーションファイアウォール)とサーバーの設定は、WordPressブログを運営していくならば最低限やっておくべき初歩のセキュリティ対策になります。WAFだけとかログインURLを変えるだけ等の、一部の設定だけでは不足です。様々な侵入経路に対して総合的、統轄的にセキュリティ対策をしておきましょう。

セキュリティプラグインWordfence

不正アクセスからWordPressブログを守り、メールで届いた通知。

This email was sent from your website “〇〇〇" by the Wordfence plugin at Sunday 12th of January 2020 at 03:58:48 AM
The Wordfence administrative URL for this site is: WEBサイトアドレス
Wordfence has blocked IP address 不正アクセスのIP.
The reason is: “Exceeded the maximum number of page not found errors per minute for humans.".
The duration of the block is 2 month.
User IP: 不正アクセスのIP
User hostname: 不正アクセスのホスト名
User location: Washington, United States

10分間に1586回もアタックを繰り返した不正アクセス。WAFが普及したためか、最近はXSS、ディレクトリトラバーサル、ローカルファイルインクルージョン等の攻撃は減ってきました。但し安心や慢心は侵入の元となってしまいます。セキュリティ対策にWAF機能は必須です。

This email was sent from your website “WEBサイト名" by the Wordfence plugin at Thursday 12th of December 2019 at 12:38:31 PM
The Wordfence administrative URL for this site is: WEBサイトアドレス
The Wordfence Web Application Firewall has blocked 1586 attacks over the last 10 minutes. Below is a sample of these recent attacks:

12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: ArticleId="><script>foo</script>
12月 12, 2019 2:08am IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: css=<script>alert(openvas-vt1087304307)</script>
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for Directory Traversal in query string: page=/../../../etc/passwd
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: op="><script>window.alert('test’);</script>
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for LFI: Local File Inclusion in query string: command=/etc/passwd
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: searchm=<script>alert(document.cookie)</script>
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for Directory Traversal in query string: page=/../../../etc/passwd
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: css=<script>alert(openvas-vt1087304307)</script>
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for XSS: Cross Site Scripting in query string: op="><script>window.alert('test’);</script>
12月 12, 2019 2:08am  IPアドレス (United States)     Blocked for LFI: Local File Inclusion in query string: command=/etc/password