カテゴリー: Security

  • 【中級編】出来ればやっておきたいセキュリティ対策5つ

    【中級編】出来ればやっておきたいセキュリティ対策5つ

    こんにちは、WordPress制作・カスタマイズ専門のgiscoです。

    前回の記事では、最低限やっておきたいセキュリティ対策をご紹介しました。
    今すぐにでも出来る対策ばかりですので、是非ご自分のサイトで行ってみてください。

    今回の記事は中級編という事で、ある程度知識のある方に今すぐ行って頂きたいセキュリティ対策をご紹介いたします。

    1. 管理画面のURLを変更

    WordPressの管理画面URLは、デフォルトのままでは/wp-admin/となっていますが、この事は世界中のハッカーが知っており、まさに格好のターゲットにされています。

    管理画面のURLを変更するだけで、セキュリティリスクを減らすことができます。

    こちらのプラグインは、管理画面のURLを変更するためだけのプラグインですので、動作が軽く、サイトの表示スピードに影響を与えません。

    https://ja.wordpress.org/plugins/login-rebuilder/

    インストールし有効化すると、管理画面の「設定」のサブメニューに「ログインページ」という項目ができます。

    「ログインページ」の設定画面

    「新しいログインファイル」の欄に、新たに任意のファイル名を入力します。
    書き込める状態であれば、ファイルは自動生成されます。

    この時点ではまだ、wp-admin/のURLでログイン画面が表示されてしまいます。

    次に、「ステータス」の欄を稼働中に、「著者ページの閲覧」を404ステータスに設定してください。

    「ステータス」と「著者ページの閲覧」の位置

    記事を書く著者が複数いるサイトの場合は、「著者ページの閲覧」を受け入れるに設定する事をお勧めいたします。

    なぜ著者ページを404にする必要があるかというと、ご自身のサイトのトップページで「?author=1」をURLにつけてアクセスしてみてください。

    おそらく、普段WordPressサイトにログインする際に入力するユーザー名が出てきたと思います。

    テーマの作り方などにもよりますが、WordPressの著者一覧ページは、そのままWordPressユーザー名で表示されるケースが多いです。

    つまり、ハッカーからすれば管理画面のURLは分かっているし、ユーザー名まで分かっている状態なんです…。

    残るはパスワードだけですが、ブルートフォースのツールを使えば、そう長くない時間で突破されてしまうでしょう。

    恐ろしいですが、大丈夫です。次のセキュリティ対策へいきましょう。

    2. 設定した管理画面にBasic認証

    次の対策は、古くから存在する古典的な方法ですが、効果のほどは正直微妙です。無いよりはあった方がマシというレベルです。

    .htaccessというファイルと、.htpasswdというファイルを設置するだけですので、ウェブサーバがApacheの場合は簡単ですね。

    ウェブサーバがNginxの場合は、nginx.confに記述する必要があります。

    Web上に、さまざまな.htpasswd作成ツールがありますが、ありがたくこちらを使わせて頂きましょう。

    .htpasswd作成支援ツール

    さて、まだ不安な要素がありますのでどんどん対策していきましょう!

    3. uploads/内でのphp実行禁止

    WordPressではアップロードされたファイルは「uploads」というディレクトリに格納されます。

    このuploadsディレクトリ内に不審なphpファイルを見つけた場合、そのファイルはバックドアの可能性が高いです。

    私のお客様でも、実際にバックドアが仕込まれてしまい、サイトが乗っ取られてしまったとの問い合わせが度々あります。

    uploadsディレクトリは画像の格納フォルダですので、通常のWordPressの挙動としては、phpを実行するタイミングが無いのです。

    以下のコードを.htacessファイルに記述し、uploads/ディレクトリ直下に配置しましょう。

    <FilesMatch \.php$>
    	SetHandler none
    </FilesMatch>

    これで、万が一バックドアを仕掛けられても、phpを実行する事ができなくなりました。

    安心レベルが少しあがりましたが、まだ不安で寝つきが悪いでしょう。

    4. wp-config.phpの権限変更

    以前の記事では、wp-config.phpファイルの場所を移動しました。

    これにより、公開ディレクトリ外に設置しデータベース情報を盗み見られるリスクを減らしました。

    今回は、wp-config.phpの権限を変更して、管理者以外が閲覧すらできないようにしましょう。

    FTPなどでサーバーへ接続し、wp-config.phpファイルの権限を「400」に設定しましょう。

    これだけです!

    5. XML-rpcの無効化

    WordPressには、外部のアプリケーションと通信するためにxml-rpc.phpというファイルが存在しています。

    ただ、このファイルはWordPressが「b2」というブログシステムだった頃の名残であり、現在はほぼ使用されることがありません。

    このファイルを利用するのは、有名なところで言うと「JetPackプラグイン」と「ハッカー」くらいです。

    JetPackは、WordPressの開発元であるAutomattic社が公式に発表しているプラグインですが、このプラグインを使っていないのであれば下記のコードを.htaccessに追記して無効化することをお勧めいたします。

    <Files xmlrpc.php>
    order allow,deny
    deny from all
    </Files>

    xmlrpcを悪用した攻撃手法はDDoS攻撃です。

    大量のpingbackを送信しサーバーをダウンさせる事が出来てしまいます。

    JetPackを使用していない方は、是非こちらの対策を試してみてください。

    まとめ

    この記事では、前回とは違いファイルを編集したりする作業が入るため、中級編としてご紹介いたしました。

    どれも簡単に行えるものですので作業に慣れている方は是非対応してみてください。

    まだ初回を見ていない!という方はこちらからどうぞー。

    WordPressテーマ制作・カスタマイズのgiscoでは、面倒なセキュリティ周りの設定を、低コストで対応致しますので、是非お気軽にご相談ください!

    次回は、上級編を書きたいと思います。

  • 【ハッカーの大好物】今すぐアップデートした方が良いプラグイン8選

    【ハッカーの大好物】今すぐアップデートした方が良いプラグイン8選

    こんにちは、WordPressテーマ制作・カスタマイズのgiscoの中の人です。

    私がWordPress制作会社で働いていた時代、様々な種類のお問い合わせがありましたが、その中でも常に上位にあった内容が「ハッキングされた」というものでした。

    以前の記事でも掲載しましたが、WordPressサイトがハッキングされてしまう原因は、FTP情報の漏洩や安易なログイン情報、そしてプラグインにあります。

    不安がある方はまず、こちらの記事を参考に最低限のセキュリティ対策を施してください。

    ハッキングの経路

    下記はハッキングの経路を多い順に表したグラフです。
    一目で分かる通り、圧倒的にプラグインからのハッキングが多くなっています。

    Wordfence hacked website survey

    in a survey from Wordfence of hacked website owners, over 60% of the website owners who knew how the hacker got in attributed it to a plugin or theme vulnerability.

    Wordfenceの行った調査によると、どのようにハッキングされたが判明したサイト所有者の60%以上が、プラグインまたはテーマの脆弱性に起因すると考えている。

    https://kinsta.com/blog/is-wordpress-secure/

    つまり、どんなにセキュリティ対策を施したところで、インストールしているプラグイン自体に脆弱性があった場合は、常にハッキングの脅威に晒され続けるという事になってしまいます。

    この記事で紹介されているプラグインをインストールしている場合、できるだけ早くアップデートをする必要があります。

    1. duplicator

    脆弱性のあるバージョン1.3.26以下
    修正されたバージョン1.3.28
    最新バージョン1.3.40.1

    脆弱性の内容は、悪意のあるコードを含むファイルをダウンロードさせられるというものです。

    プラグイン自体が悪いのではなく、プラグインの一部のソースコードを悪意を持った第三者が利用する事でサイトを踏み台にされてしまいます。

    簡単な設定だけでWordPressサイトを複製し、テスト環境やローカル環境の作成に役立つプラグインです。

    現在の最新バージョンでは解消されているようなので、該当のバージョンをインストールしている方は、すぐにアップデートをしましょう。

    2. Secure File Manager

    すでにダウンロードが出来ないようになっているため、embed出来ないようですが、キャプチャとリンクだけ掲載しておきます。

    https://wordpress.org/plugins/secure-file-manager/
    脆弱性のあるバージョン2.5以下
    修正されたバージョンなし
    最新バージョンなし

    脆弱性の内容は、プラグインのコードを介してリモードで任意のLinuxコマンドを実行できてしまうという内容でした。恐ろしい。。。

    私が制作会社に勤務していた頃、「このプラグインを入れたい」と仰るお客様が非常に多かったのを覚えています。

    たしかに、FTPなどのクライアントソフトを使わずとも簡単にファイルを操作ができるので便利だとは思いますが、逆に言えば、管理画面に入られてしまったら悪意のある第三者に、全ての権限を与えてしまう事になります。

    このプラグインを入れている場合、アップデートも出来ませんので今すぐプラグインの削除することを推奨いたします。 

    3. Elementor Website Builder

    脆弱性のあるバージョン2.8.4以下
    修正されたバージョン2.8.5
    最新バージョン3.0.14

    脆弱性の内容は、XSS(クロスサイトスクリプティング)の危険性があるという事でした。

    飛ぶ鳥を落とす勢いの、大人気プラグインですね。

    最近頂くサイト制作依頼の中で、このプラグインを導入したいというお客様は非常に多くなってきています。

    使い方に慣れてしまえば自由度も高く、便利なプラグインですね!

    ただ、私としてはこのプラグインに頼らずに、サイト内では共通したパーツを使いまわせるようにカスタマイズした方が良いと考えています。

    4. W3 Total Cache

    脆弱性のあるバージョン0.9.7.3以下
    修正されたバージョン0.9.7.4
    最新バージョン0.15.2

    脆弱性の内容は、上記同様にXSSでした。

    こちらのプラグインは、もはや説明不要ですね。

    なんかよく分からないけど入れてしまうプラグインランキング1位と言っても過言では無いかもしれません。

    キャッシュの最適化はパフォーマンスにおいて非常に重要となりますが、プラグインに頼らずにできる限り自分で行う方がオススメです。

    giscoでは、サーバーキャッシュ、ブラウザキャッシュなどの設定代行も承っていますので、お気軽にご相談ください。

    5. NextGEN Gallery

    脆弱性のあるバージョン3.2.8
    修正されたバージョン3.2.10
    最新バージョン3.4.7

    脆弱性の内容は、SQLインジェクションでした。

    サイトの情報がデータベースから盗まれたり、ひどい場合はサイトURLを書き換えられてしまったりする恐れがあります。

    ギャラリープラグインの中でも有名どころでしたので、インストールされている方も多いのでは無いでしょうか。

    一時期、アクセスログを覗くとこのプラグインファイルに対して、おびただしい量のアクセスがありドン引きした事を覚えています。

    giscoでは、ギャラリーなどもプラグインを使わずに対応できます。

    6. FancyBox for WordPress

    脆弱性のあるバージョン3.0.2
    修正されたバージョン3.0.3
    最新バージョン3.3.0

    脆弱性の内容はXSSで、サイトにiframe、スクリプトを埋め込まれ、外部のサイトにアクセスを誘導されてしまうという内容でした。

    こちらのプラグインも、非常に多くの利用者がおり、かなりの数のWordPressサイトが感染してしまった事を覚えています。

    画像のポップアップはプラグインを使わずとも実装できます。
    ちなみにgiscoなら1万円程度で対応可能です。

    7. Redirection

    脆弱性のあるバージョン3.6.2
    修正されたバージョン3.6.4
    最新バージョン4.9.2

    脆弱性の内容は、CSRF(クロスサイトリクエストフォージェリ)でした。

    これは、セッション情報などを抜き取られ、ユーザーが意図しない処理を強制的に実行させられてしまうという攻撃方法で、掲示板などに勝手に犯行予告を書き込まれてしまったり、全く身に覚えのない商品購入をされてしまったりするものです。

    非常に恐ろしい攻撃手法ですので、ECサイトやコミュニティサイトなどを運営している場合は、まず一度確認した方がよいかもしれません。

    8. Contact Form 7 DatePicker

    こちらのプラグインは、有名プラグイン「Contact Form 7」のアドオンとして開発されたプラグインです。

    WordPress.org側でembedの許可が降りていないため、キャプチャとリンクのみの掲載とさせていただきます。

    https://wordpress.org/plugins/contact-form-7-datepicker/
    脆弱性のあるバージョン2.6.0以下
    修正されたバージョンなし
    最新バージョンなし

    脆弱性の内容は、権限エスカレーションです。

    アプリケーションやファイル、フォルダなどが持つ権限を改ざんするという攻撃方法です。

    危険度が非常に高いため、もしご自分のサイトでインストールされている場合は、今すぐに削除する必要があります。

    まとめ

    WordPressには様々なプラグインが公開されていますが、安易にインストールし数を増やしてしまうと、重大なセキュリティリスクを負ってしまう事に繋がりかねません。

    アップデートにより、画面が真っ白になってしまった!という方は、以下の記事を参考にしてください。

    カスタマイズや機能追加は、プロに任せてしまうのが最も安心です。
    giscoでは、どんなカスタマイズでも承っておりますので、是非お気軽にご相談ください!