Web制作者が知っておきたい「ランサムウェア対策」|WordPressとPHPで守るための基本チェック

Web制作者が知っておきたい「ランサムウェア対策」|WordPressとPHPで守るための基本チェック
Contents

ランサムウェアとは?Web制作者にも関係ある攻撃

ランサムウェア(Ransomware)とは、感染するとパソコン内やサーバー上のファイルを暗号化し、「元に戻してほしければ身代金を支払え」と脅迫するマルウェアの一種です。
最近では、企業だけでなく、個人が運営するWordPressサイト制作中のテスト環境が攻撃の対象になるケースも増えています。

「自分は個人サイトだから関係ない」と思われがちですが、
攻撃者にとっては「セキュリティが甘いサイト=踏み台にしやすい標的」です。
一度サーバーを乗っ取られると、自分のデータだけでなく、クライアントの情報や制作実績サイトにまで影響する可能性があります。

ランサムウェアの被害事例と2025年の傾向

ここ数年、攻撃の手口は急速に高度化しています。
最近のランサムウェアは、単に暗号化して身代金を要求するだけでなく、「データを盗み、公開をちらつかせて二重脅迫する」タイプも増えています。

企業だけじゃない!個人サイトの被害も

たとえば、海外ではフリーランス制作者のWordPressが改ざんされ、制作中のポートフォリオサイトが攻撃者のリダイレクト用サーバーとして悪用された例もあります。
WordPressの脆弱なプラグインを通じて不正コードが埋め込まれ、感染が広がったとされています。

攻撃の目的が変化している

以前は「金銭目的」が中心でしたが、最近ではサーバー資源の悪用(スパム送信・仮想通貨マイニング)など、「とりあえず侵入して利用できるものを利用する」ケースが増えています。このため、WordPressやPHPの基礎知識を持つ制作者にも、セキュリティ意識が求められています。

WordPressを安全に使うための基本チェック

WordPressは世界で最も使われているCMS(コンテンツ管理システム)ですが、
その分「攻撃対象として狙われやすい」という面もあります。
ここでは、Web制作者が最低限チェックしておきたい5つの基本対策をまとめます。

① プラグインとテーマを常に最新に保つ

脆弱性は「古いプラグイン・テーマ」から狙われます。
更新通知が出ている場合は、バックアップを取ってからすぐに更新しましょう。

② 不要なテーマ・プラグインを削除する

有効化していなくても、サーバー上に存在するだけでリスクになります。「使っていないもの=削除」が基本です。

③ セキュリティプラグインの導入

All In One WP Security(AIOS)」や「SiteGuard WP Plugin」を設定しておくと、ログイン試行制限・2段階認証・ファイル改ざん検知などを自動化できます。特に、AIOSはスコア形式で安全度を見える化できる点がおすすめです。

④ バックアップを自動化する

UpdraftPlus」などのプラグインを使って、毎週自動バックアップを取りましょう。
サーバー障害・感染被害どちらにも備えられます。

⑤ ファイル権限と.htaccessを確認

FTPでファイルを編集できる環境は便利ですが、権限設定が緩いと誰でも書き換え可能になります。
また、.htaccess によるアクセス制限(管理画面IP制限など)も効果的です。

PHPで気をつけたいセキュリティの基本

WordPressも内部ではPHPで動作しています。
そのため、PHPの基本的なセキュリティ対策を知っておくことは、Web制作者にとって必須のスキルです。

① フォーム送信時のhtmlspecialchars()を忘れない

フォームからの入力値をそのまま出力すると、**クロスサイトスクリプティング(XSS)**の危険があります。

echo htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');

のように、常にエスケープ処理を行いましょう。

requireincludeのパスを固定する

動的にファイルを読み込む構成では、外部ファイルを悪用されるリスクがあります。
必ず、絶対パス+固定ファイルを指定します。

require_once __DIR__ . '/config.php';

③ SQLインジェクションを防ぐ

$pdo->prepare()bindParam() を使うことで、悪意のあるSQL文が実行されるのを防げます。

$stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");
$stmt->bindValue(':id', $id, PDO::PARAM_INT);
$stmt->execute();

④ エラーメッセージを公開しない

display_errorsOff にし、代わりにログファイルで確認する設定にしましょう。
本番環境でエラー内容を表示すると、サーバー構成やファイル構造が漏れるおそれがあります。

⑤ ファイル操作時の安全対策

外部からアップロードされたファイルは、basename()でパスを安全化し、保存先ディレクトリを限定するようにします。

$filename = basename($_FILES['upload']['name']);

Web制作者ができるリスク対策

セキュリティは「知っているかどうか」で大きく差が出ます。
特にWeb制作者は、以下の3つを意識しておくと安心です。

  1. 保守契約を提案する
     納品後も更新・バックアップを代行することで、顧客サイトの安全を維持できます。
  2. 受講生や初心者にも「基本の危険」を伝える
     「ID・パスワードの使い回し」「FTPを公開環境で使う危険」など、現場で起きるトラブルを例に教えると効果的です。
  3. 教材にセキュリティを組み込む
     PHPやWordPress教材の中に「htmlspecialcharsを使う」「AIOSでロックアウト設定を確認」など、自然にセキュリティ習慣を入れると、学習効果が高まります。

被害にあったときの初動対応と復旧の流れ

もしも感染・改ざんが疑われた場合は、慌てて操作せず、証拠を残すことが大切です。

  1. サーバーを一時停止・通信を遮断
  2. IPA(情報処理推進機構)やJPCERTへ報告
  3. 専門業者にログ解析を依頼
  4. 最新バックアップからの復旧
  5. 原因を特定し、再発防止(プラグイン削除・権限調整)

Web制作者が今日からできる3つのこと

  1. バックアップを週1で自動化する
  2. フォーム・DB処理には必ずエスケープとプリペアドステートメントを使う
  3. WordPressとPHPのバージョンを定期的に更新する

Web制作者や学習者にとって、セキュリティは「まだ先の話」と思われがちです。
しかし実際には、コーディングの基礎と同じくらい大切なスキルです。

デザインや機能を作る力に加えて、「安全に動かす」力がある人は、クライアントやチームから信頼されます。

今日から少しずつ、守るWeb制作の意識を身につけていきましょう。

  • URLをコピーしました!
Contents