Skip to content

東京都江戸川区 ホームページ制作・SEO対策・WEBマーケティング BC-STYLE合同会社  03-5662-6322お問い合わせ

WordPressでサイト内の検索窓を利用した外部攻撃と対策はどうすればよい?

WordPressでサイト内の検索窓を利用した外部攻撃について

WordPressの検索窓を利用した主な攻撃

現在、WordPressを利用してホームページを制作する個人や企業が増加しています。標準で付いている検索窓を利用して悪質な攻撃を行うクラッカーが世界中にいます。WordPressのサイト内検索窓を利用した外部攻撃とは、攻撃者がウェブサイトの検索機能を悪用して、サイトに損害を与えたり、機密情報を盗み出したりする行為を指します。これは、検索窓に通常とは異なる、悪意のあるコードやクエリを入力することで行われます。今回はどのような攻撃を仕掛けてくるのか、主な攻撃方法とその防御対策を詳しく解説します。

WordPressの検索窓を利用した主な攻撃
SQLインジェクション
クロスサイトスクリプティング (XSS)
検索エンジンのインデックス汚染

SQLインジェクション

SQLインジェクションは、インターネット上の悪い人たちが、ウェブサイトに悪さをするための一つの手口です。ウェブサイトには、よく入力フォームがありますよね?例えば、ログインする時のユーザー名とパスワードの入力欄や、何かを検索する時の検索ボックスなどです。これらの入力欄は、普通は私たちが情報を入れるために使いますが、SQLインジェクションを使うと、悪い人たちはこれらの入力欄を通じて、ウェブサイトの裏側で動いているデータベースに命令を送ることができてしまいます。

SQLインジェクションの例

例えば、あなたがお店のウェブサイトで「靴」という言葉を検索ボックスに入れたとします。すると、ウェブサイトの裏側ではこんな命令が動いています。

SQL

SELECT * FROM 商品 WHERE 名前 LIKE ‘%靴%’;

これは、「商品」という箱(データベースのテーブル)から、「名前」に「靴」という文字が含まれているものを探してね、という意味です。

でも、悪い人が検索ボックスに「靴’; DROP TABLE 商品;–」と入力すると、命令はこう変わります。

SQL

SELECT * FROM 商品 WHERE 名前 LIKE ‘%靴’; DROP TABLE 商品;–%’;

これは、「靴」という文字を含む商品を探した後に、「商品」という箱を丸ごと捨ててしまえ、という命令になります。この「」は、それ以降の文字を無視するという意味なので、本来の命令の一部が無視されてしまいます。

なぜ悪いことなのか

このようにして、悪い人はウェブサイトのデータベースを勝手に変更したり、大事な情報を盗んだりすることができます。これは、お店にとってもお客さんにとってもとても危険なことです。

どうやって防ぐのか

ウェブサイトを作る人たちは、入力された情報が正しいものかどうかをしっかりとチェックする必要があります。また、データベースに命令を送る前に、その命令が安全なものかどうかを確認する特別な手順を踏むことも大切です。これによって、悪い人たちが勝手な命令を送れないようにすることができます。

ウェブサイトを守るためには、このようなセキュリティ対策が非常に重要です。それによって、私たちの情報も安全に守られるわけです。

クロスサイトスクリプティング (XSS)

クロスサイトスクリプティング(XSS)は、ウェブサイトの訪問者に対する一種のトリックです。このトリックを使うと、悪意のある人はウェブサイト上で自分のスクリプト(小さなプログラム)を実行させることができます。これが問題になるのは、そのスクリプトがウェブサイトを訪れた普通の人のブラウザ(インターネットを見るためのプログラム)で動くからです。

XSS攻撃の例

例えば、あなたが友達から「この面白いビデオを見て!」というメッセージと共にリンク先URLをもらったとします。そのリンクをクリックすると、見慣れたニュースサイトが開きます。でも、そのページのどこかには、見えないところで悪意のあるクラッカーが書いたスクリプトがあります。

あなたは何も悪いことをしていないし、ただニュースを読んでいるだけですが、そのスクリプトは裏で動いて、例えばあなたのログイン情報を盗んだり、ウェブサイトに表示されている情報を変えたりすることができます。

なぜ悪いことなのか

このような攻撃が悪い理由は、あなたが信頼しているウェブサイトが、実はあなたに対して悪いことをしているかのように見えるからです。でも、実際はウェブサイトが悪いのではなく、悪意のある人がウェブサイトを利用してあなたに悪さをしているのです。

どうやって防ぐのか

ウェブサイトを作る人たちは、ウェブサイトに入力された情報をチェックして、悪意のあるスクリプトが含まれていないかを確認する必要があります。また、ウェブサイトがブラウザに情報を送る時には、その情報がスクリプトとして実行されないように特別な処理をすることも大切です。

ウェブサイトの訪問者としては、ブラウザのセキュリティ設定を最新の状態に保ち、不審なリンクやメールには注意することが重要です。また、信頼できるセキュリティソフトを使って、悪意のあるスクリプトから保護することも可能です。

簡単に言うと、XSSはウェブサイトを介してあなたのコンピュータに悪さをするための手口です。ウェブサイトの作成者と訪問者の両方が注意深く行動することで、このような攻撃から身を守ることができます。

検索エンジンインデックス汚染

「検索エンジンインデックス汚染」とは、攻撃者が検索エンジンの結果を操作して、不適切な内容やスパム、マルウェアを含むページを意図的にランクアップさせる行為です。これは、一般のユーザーが検索エンジンを使用する際に、攻撃者が意図したページに誘導されるリスクを生み出します。

検索エンジンインデックス汚染の仕組み

検索エンジンは、インターネット上のウェブページを巡回して内容を解析し、データベース(インデックス)に保存します。ユーザーが検索クエリを入力すると、このインデックスを基に最も関連性の高いページを結果として表示します。

インデックス汚染の手法

  • スパムリンクの挿入
    攻撃者は、合法的なウェブサイトのコメント欄やフォーラムにスパムリンクを挿入します。これにより、検索エンジンはこれらのリンクを有用なコンテンツと誤認し、インデックスに追加する可能性があります。
  • 自動生成されたコンテンツ
    スクリプトや自動化ツールを使用して、大量の低品質なページを生成し、それらを検索エンジンにインデックスさせることで、特定のキーワードでのランキングを操作します。
  • クローキング
    ウェブサイトが検索エンジンのクローラーには一つのコンテンツを、実際のユーザーには全く異なるコンテンツを表示する手法です。これにより、ユーザーは検索結果とは異なる、しばしば有害なコンテンツに導かれます。

検索エンジンインデックス汚染の影響

以上のような、スパムリンクの挿入自動生成されたコンテンツクローキング、などの汚染が検索エンジンに影響を与えると、以下のような問題が発生します。

  • ユーザー体験の低下
    ユーザーが有益な情報を求めて検索した際に、スパムや関連性の低いページが表示されることで、検索エンジンの信頼性が損なわれます。
  • セキュリティリスク
    スパムページやマルウェアを含むページにユーザーが誘導されることで、セキュリティが脅かされます。
  • ビジネスへの影響
    合法的なビジネスやウェブサイトが、スパムによって検索ランキングで不当に下位に押し下げられる可能性があります。
    ウェブサイト運営者は、以下のような対策を講じることが重要です:

どうやって防ぐのか

  • スパム対策
    コメント欄やフォーラムにはスパムフィルターを設置し、不正な投稿を自動でブロックします。
  • コンテンツの監視
    ウェブサイトのコンテンツを定期的に監視し、不審な変更や挿入がないかをチェックします。
  • クローキングの禁止
    検索エンジンとユーザーに同じコンテンツを表示するようにし、クローキングを行わないようにします。
  • 検索エンジンとの連携
    不正なコンテンツを発見した場合は、検索エンジンに報告し、インデックスから削除を要請します。

これらの対策により、検索エンジンインデックス汚染を防ぎ、ユーザーに安全で信頼性の高い検索結果を提供することができます。

まとめ

このように、WordPressでのサイト内検索窓を利用した外部攻撃は、ウェブサイトの正常な機能を悪用して、さまざまなセキュリティ上の脅威を引き起こす可能性があります。

対策方法としては、

  • 入力の検証とサニタイズ: 入力されたデータを適切に検証し、悪意のあるコードが実行されないようにする。
  • 定期的なアップデート: WordPress、プラグイン、テーマを最新の状態に保ち、セキュリティパッチを適用する。
  • アクセス権の管理: データベースやファイルシステムへのアクセス権を厳格に管理し、不正アクセスを防ぐ。
  • バックアップの定期実施: ウェブサイトの定期的なバックアップを取り、万が一の事態に備える。

など行うことです。

検索窓を利用した外部からの攻撃は、ウェブサイトの信頼性とユーザーのセキュリティに深刻な影響を与えるため、適切な対策を講じることがとても重要です。

ただ、対策を行うには技術的知識が無いと難しいと思います。そこで、セキュリティ対策のプラグインiTheme(現SolidWP)Hide My Ghostなどを利用して対策を講じると良いでしょう。

無料相談承ります
ホームページで集客をされたいとお考えであれば、ご相談承ります。ご遠慮なくお申込みください。
トップへ戻る