サイト攻撃手法

サーバーに残した「.old」や「.bak」は危険!リネームバックアップが招く情報漏えいリスク

津久井 隆行
津久井 隆行
サーバーに残した「.old」や「.bak」は危険! リネームバックアップが招く情報漏えいリスク

WordPressのメンテナンスやカスタマイズ中、一時的なバックアップとして設定ファイルやテーマファイルの名前を変更(リネーム)し、サーバー上に残すことは珍しくありません。

例えば、以下のようなファイル名です。

  • wp-config.bak
  • wp-config.php.old
  • wp-config.php_backup
  • wp-config.backup
  • wp-config.php.txt

「作業が終わったら削除しよう」と思っていても、そのまま忘れて放置してしまうケースは少なくないと思います。
しかし、このようなリネームしたバックアップファイルを公開領域に残すことは、非常に危険な行為です。

今回は、実際に攻撃を受けたWordPressサイトのアクセスログをもとに、リネームしたバックアップファイルをサーバーに残すことが、どれほど危険なのかを解説します。

実際に攻撃者が探していたファイル

以下は、攻撃を受けたWordPressサイトのアクセスログに記録されていた、「本来存在しないはずのファイル」へのアクセス例です。
※ドメイン名は変更しています。

本来存在しないはずのファイル一覧

攻撃者は、自動化されたツール(ボット)を使い、wp-config.php をリネームしたと思われるファイルに対して、手当たり次第にアクセスを試みています。

.bak .old といった定番のものから、.txt.zipハイフンやアンダーバーを組み合わせたものまで、Web管理者が付けそうなファイル名が数多く存在します。

「wp-config.php」とは?

WordPressのルートディレクトリにある wp-config.php は、WordPressの動作に欠かせない重要な設定ファイルです。

このファイルには、次のような重要情報が保存されています。

  • データベース名
  • データベースのユーザー名
  • データベースのパスワード
  • データベースの接続先
  • 認証キーやセキュリティ設定

つまり、このファイルの内容が漏えいすると、データベースへの不正アクセスやサイトの乗っ取りにつながる危険があるのです。

なぜリネームしたファイルが危険なのか?

通常の wp-config.php はPHPとして実行されるため、ブラウザからアクセスしてもファイルの内容が表示されることはありません。

しかし、以下のような拡張子やファイル名に変更した場合は注意が必要です。

  • wp-config.bak
  • wp-config.php_bak
  • wp-config.php_old
  • wp-config.php_backup
  • wp-config.backup

サーバーの設定によっては、これらのファイルがPHPとして処理されず、単なるテキストファイルとして表示・ダウンロードできてしまうことがあるのです。

その結果、攻撃者がそのURLにアクセスすると、プログラムのソースコードがそのまま表示され、その中に記載されているデータベースの接続情報(データベース名・ユーザー名・パスワードなどが漏えいしてしまいます。

■ ブラウザに「https://サイトのドメイン/wp-config.bak」と入力した例

 実際にブラウザで「wp-config.bak」にアクセスした例

ファイルが見つかると何が起きるのか?

攻撃者が wp-config.php のバックアップファイルを見つけ、その中身が漏えいしてしまった場合、次のような被害につながる可能性があります。

  • データベースの情報を盗み見られる
  • 管理者アカウントを不正に作成される
  • サイト内に不正なコードを埋め込まれる
  • 不正なリダイレクトを設定される
  • 迷惑メール送信やフィッシングページ設置に悪用される
  • サイト全体を乗っ取られる

データベース内には、投稿内容、ユーザー情報、各種設定が保存されています。
そのため、データベースへのアクセスを許してしまうと、管理者権限が奪われ、サイト全体が改ざんされるおそれがあります。

今すぐできる!サイトを守るためのセキュリティ対策

作業中に一時的なバックアップを作成すること自体は、決して悪いことではありません。問題なのは、そのバックアップファイルを公開領域に残したままにしてしまうことです。

大切なWebサイトを守るために、以下の対策を徹底しましょう。

1. サーバー上にリネームしたバックアップファイルを残さない

作業用に一時的に複製したファイル(.old.bak など)は、作業が完了したら必ずその場で削除しましょう。

2. バックアップはローカル環境(PC)か専用の安全な場所に保管する

バックアップを取る場合は、サーバー上の公開ディレクトリ(誰でもアクセスできる場所)ではなく、自分のパソコンにダウンロードするか、Webからアクセスできないサーバーの上の非公開領域、または保護された専用のバックアップストレージに保存しましょう。

3. プラグインを活用してバックアップを取得する

手動でファイル名を書き換える運用をやめ、『BackWPup』や『UpdraftPlus』といった定評のあるWordPressプラグインを使い、安全な方法でバックアップを取る方法もおすすめです。

まとめ

このような攻撃(ディクショナリアタック・スキャン攻撃)は、24時間365日、自動化されたツールによって行われています。攻撃者は、サイトの知名度やアクセス数に関係なく、公開されているWebサイトを無差別にスキャンして攻撃を仕掛けてくるため、「うちのサイトは大丈夫」という考えは危険です。

今すぐFTPソフトやサーバーのファイルマネージャーを開き、公開フォルダ内に wp-config.oldwp-config.bak などの不要なファイルが残っていないか確認してみてください。

この記事を書いた人

津久井 隆行
津久井 隆行
金融、通信業界等の大規模システムの開発、マネージメントに従事。
WordPressサイト制作サービス「WPPLUS」を展開。
AI、DeepLearningについての知見も。
JDLA Deep Learning for Engineer
JDLA Deep Learning for General

お問い合わせ

WPPLUSセキュリティサービスへのお問い合わせは以下よりお願いいたします

WEBからのお問い合わせ
お電話でのお問い合わせ 047-701-5206 【受付時間】 8:00 〜 20:00
(土日祝も受け付けております)
ページ先頭へ