セキュリティ 2023.07.26

意図しない処理が実行されているCSRF(クロスサイトリクエストフォージェリ)とは?

この記事を書いた人

土井 純也

WordPressスペシャリスト・エンジニア/株式会社e2e 取締役 / CTO

1985年北海道生まれ。
200社以上の大手上場企業のWordPressサイトの制作、保守・セキュリティをサポートしている。

【 展開しているサービス一覧 】
■WordPress開発サービス「wp.make
■WordPress保守/運用サービス「wp.support
■WordPressハッキング/緊急復旧対応サービス「wp.rescue
■WordPressバージョンアップ代行サービス「wp.versionup

CSRF(クロスサイトリクエストフォージェリ)とは、ユーザーに攻撃用のURLを踏ませることでなりすましてSNSへの投稿や不正な書き込みを行うことができてしまうサイバー攻撃です。

リクエストの整合性を確認したり、不明なリンクへのアクセスをブロックすると行ったことが必要です。

CSRF(クロスサイトリクエストフォージェリ)とは

CSRF(クロスサイトリクエストフォージェリ)とは、XSS(クロスサイトスクリプティング)やSQLインジェクションと同じようにWebアプリケーションの脆弱性を利用したサイバー攻撃の一種です。

正規のリクエストとは別のサイトからリクエストを送ることによって、不正な書き込みやアカウントの設定など気づかないうちに行われてしまいます。

リクエストの整合性を確認・トークンの照合や不明なリンクへのアクセスを控えると行ったことが必要です。

XSSについてはこちら
SQLインジェクションはこちら

CSRFの攻撃手法

CSRF攻撃は以下のような手順で行われます。

  1. 攻撃者が罠URLをメールやサイトに仕掛ける
  2. ユーザーが罠URLにアクセスする
  3. 偽サイトから成りすましのリクエストが本物のサイトへ送られる
  4. 本物のサイトに不正な書き込みが行われる、書き込みを行なっているのは攻撃者だが発信元はユーザーとなってしまう

ログインしているユーザーが攻撃者の仕掛けたURLを踏んでしまうと、意図しないアクセスが成立してしまい、不正書き込みなどが発生してしまいます。

URLには書き込みなど行う処理が含まれているため、ログインしているユーザーだと処理がそのまま実行されてしまい、事件に発展するといったことが起こってしまいます。

また、実行したIPアドレスやアカウントは、ユーザーの情報であるため犯人であると間違えられる可能性があります。

CSRFの被害と被害事例

CSRFが行われてしまうと、以下のような被害が起こります。

不正書き込みや閲覧・設定の変更

ログインされているユーザーにCSRFが行われてしまった場合、不正な書き込みが行われてしまいます。

ログインされている状態が成立しているからこそ不正な書き込みや閲覧・設定の変更が可能となってしまうのです。

SNSなどであれば、意図しない書き込みや誹謗中傷が行われてしまい、被害にあった方からの賠償つながりかねません。
設定画面やユーザー変更画面を見ることができてしまえば、セキュリティを低く設定できてしまったり、ユーザー情報によるアカウント乗っ取りにもつながります。

また、ECサイトなどであれば金銭的な被害にも繋がってしまう可能性があるので、注意が必要です。

CSRFの被害事例1:ぼくははまちゃん事件

mixiにある、URLをクリックしてしまうと「ぼくははまちゃん!」という日記が勝手に書き込まれてしまうというCSRF攻撃がありました。

ユーザーがURLをクリックするとユーザー権限が攻撃者に渡ってしまい、不正な書き込みを行うことができてしまいます。

今回は悪質な不正書き込み以外は被害がはなかったものの、脅迫や場合によってはECサイトでの購入やネットバンキングでの送金など勝手に行うことが可能です。

不明なURLだと思った際には、押さないようにしましょう。

参考:「ぼくはまちちゃん」 ――知られざるCSRF攻撃

CSRFの被害事例2:Twitterでも起きていたCSRF

攻撃者が不正なURLを閲覧させることによって、端末のSMS経由でアカウントが操作されるというものでした。

不正なリンクを閲覧した場合、ツイートすることができたりダイレクトメッセージを読むことが可能となってしまいます。

SNSなどのリンクでは、不正なものか判断することが難しいため閲覧してしまうことが多いです。
しかし、不正なサイトかどうか判断することができるセキュリティソフトを導入しておくことでブロックすることができます。

被害規模などは公表されていませんが、現在は修正され安全に使うことができます。

参考:他人のアカウントからツイート投稿も、Twitterが脆弱性を修正

CSRFの対策

CSFRは、ユーザー側とサービス提供者側の双方で対策が必要になります。
両者の視点からの対策方法をご紹介します。

ユーザーが行う対策

不正サイトのブロック

セキュリティソフトなどによる、不正サイトや悪質サイトのブロックを行うことで未然にリクエスト送信やアクセスを防ぐことができます。

アクセスを防ぐことができれば、そのサイトに対してリクエストを送ることができないため、有効な手段と言えます。

常時ログインにしない

ログインした状態で強制的にリクエストが送信されてしまった場合、書き込みを行うことができたり情報の変更ができたりと好ききなようにできてしまいます。

しかし、ログアウトしている状態であれば強制的にリクエストが送信されたとしても、ログインし直さなければならない状態なので、不正に処理が実行される訳ではないためCSRFを防ぐことが可能です。

不明なリンクにアクセスしない

不明なリンクにアクセスすることによって、攻撃者のサイトに訪問するきっかけになってしまいます。

ログインしていた場合、ログイン・クレジットなどの情報が漏洩してしまう可能性にもつながります。

見覚えのないリンクであれば、踏まないようにしましょう。

提供者が行う対策

アクセストークンを使う

リクエストを送信する際にトークンをリクエストパラメータに記載しておくことで、
リクエストの整合性を確かめることができます。

サーバー保存されているトークンとアクセス時に含まれている値が合わなければリクエストは受け付けず、リクエストは実行されないのでCSRFは起こりません。

開発側がきちんと設定しておくことで、被害にあう可能性を低くすることが可能ですので開発を行う際に導入しましょう。

外部からのリクエストには応答しない

外部からのリクエストに応答しないことによって、書き込みに対応することができるため、CSRFが起こり得る環境を防ぐことができます。

開発段階で、実行できるリクエストを限定などしておくことで、対策することができます。

また、ファイアウォールなどの対策を行うことで不正なアクセスも防ぐことができるので、有効な手段です。

まとめ

今回は、CSRFについて解説していきました。

被害事例をみてわかる通り、不正書き込みやメッセージの閲覧も可能となってしまう問題に発展します。

おもしろ半分であればまだいいものの、場合によっては脅迫や情報漏洩・金銭的な動きも出てしまう可能性があるので注意が必要です。

Webアプリケーションを開発している方も、ユーザーもどちらも対策することが可能です。

お互いに、セキュリティ対策を行うことで被害にあう確率を低くすることが可能ですので、対策を行なっていきましょう。

『WordPressサイトの保守運用・セキュリティ対策』のご相談はこちら

『WordPressサイトの制作・リニューアル』のご相談はこちら

『WordPressサイトのハッキングからの復旧・不具合の解消』はこちら

WordPress保守・運用のパートナーなら「wp.support」にお任せ!

WordPressサイトを運用していて、以下のようなお悩みはありませんか?

  • 管理画面を使いやすくしたいけれど、カスタマイズする時間や技術がない…
  • サイトのUI/UXを改善したいけれど、自社内では難しい…
  • WordPressサイトを高速化したいけれど、ノウハウがない…
  • セキュリティ対策をしたいけれど、知識のある人材がいない…
  • 日々の業務に追われて、バージョンアップなどの保守業務が放置気味…
  • ちょっとしたトラブルを気軽に相談できる相手が欲しい…

「wp.support」は、WordPressのプロフェッショナル集団によるWordPress保守サービスです。
「セキュリティ対策」「バージョンアップ対応」「定期バックアップ」はもちろん、「電話サポートが無制限」なのでカスタマイズの方法やトラブル発生時にも気軽にプロに相談できます。

既に導入済みのお客様からも、
「些細なことでも気軽に相談できるパートナー的な存在」
「困ったら相談していいんだ、と気持ちが楽になった」
と大変ご好評をいただいています。

WordPress保守・運用のパートナーをお探しなら、ぜひお気軽にお問合せください。

>> wp.supportに無料相談する

バージョンアップが面倒だと思ったら WordPress保守・セキュリティ対策は『wp.support』にお任せ!

wp.support資料

WordPressのバージョンアップやセキュリティ対策にお悩みではないですか?

面倒な保守・運用作業は全て任せて、コア事業に集中してください。
大手・上場企業100社以上のWebサイトの安全を守る、WordPressのプロフェッショナル集団が、あなたのWordPressサイトを守ります!

【対応範囲】
・WordPress、プラグインのバージョンアップ ・セキュリティ対策 ・継続的なバックアップ ・緊急時の復旧対応 ・技術サポート・電話/メールサポート無制限 etc...

WordPressに関することなら何でもご相談ください!