質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

4回答

2718閲覧

WAFの導入の必要性について

study_111

総合スコア82

セキュリティー

このタグは、コンピューターシステムの安全性やデータの機密性に関連したトピックの為に使われます。

SQL

SQL(Structured Query Language)は、リレーショナルデータベース管理システム (RDBMS)のデータベース言語です。大きく分けて、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)の3つで構成されており、プログラム上でSQL文を生成して、RDBMSに命令を出し、RDBに必要なデータを格納できます。また、格納したデータを引き出すことも可能です。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

3クリップ

投稿2020/06/20 14:50

編集2020/06/20 14:54

ワードプレス作成したサイトを運営する場合、WAFの導入は必要でしょうか?
WAFを調べた所、クロスサイトスクリプティングやSQLインジェクションなどの対策として用いられるようなのですが、こちらは、一般的なファイヤーウォールと違い、プログラミングで対処可能なものかと思います。WAFを導入するケースとしましては、ECサイトなどセキュリティ上強固にする必要があるサービスなどで、使用されるといった形でしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

WAFを販売しているものです。raccyさんの回答は、いささか極端、かつ古い情報に基づく内容があるように思います。

まず以下ですが、

単にWAFを入れた場合、多くのページは見えなくなります

そんなことはありません。

WAFを導入したが、拒否を有効にすると見れなくなるので監視だけの設定にしているという無意味な運用に陥っているところも少なくありません

これは10年くらい前の「常識」ですよね。今でもそういうサイトはゼロではありませんが、多くのサイトでは、防御を有効にして利用しています。クラウド型のWAFの場合は、監視だけという運用はほぼないと思います。クラウド型のWAFは通常細やかなカスタマイズをしないことを前提にしているため、カスタマイズなしで、かつ防御を有効にして運用するのが通例です。
このためシグネチャ側でも工夫をしていて、../だけだとブロックしない(昔は多くのWAFでブロックしていた)が、../etc/ だとブロックするなどの細かいルールがデフォルトになっています。

運用まで含めたクラウド型WAFについて一度見積もってみてください。お手軽で入れられるような金額ではないはずです

初期費用1万円、月額1万円くらいからありますよ。月額1万円が「お手軽」かどうかは意見が分かれるところでしょうが、「お手軽で入れられるような金額ではない」とくくられるような金額ではないと思います。

元の質問に戻りますが、

WAFを調べた所、クロスサイトスクリプティングやSQLインジェクションなどの対策として用いられるようなのですが、こちらは、一般的なファイヤーウォールと違い、プログラミングで対処可能なものかと思います

確かにその通りですが、「対処可能」と「100%対処している」は全く違います。脆弱性診断をしていますと、SQLインジェクションは見かけることが少なくなりました(raccyさんが指摘するようにプレースホルダの利用が普及したからだと思います)が、ゼロではありませんし、クロスサイトスクリプティングはまだ頻繁に検出されます。これらの脆弱性に関しては、WAFはわりあい効果的にブロックしてくれます(DOM Based XSSは例外)。
そして、これらの脆弱性は、サイト内に1箇所でも脆弱性があれば、仮に脆弱性があるページで重用情報を扱っていなくても、他のページ等に含まれる情報や、データベースに存在する情報も含めて漏洩するという性質を持っています。

ということで、日本のセキュリティの現状をつぶさに見ている立場としては、費用があえば、WAFはぜひ導入したほうがよいと思っています。ただ、冒頭に述べたように私はWAFを販売している立場でもあるので、そのあたりは考慮して判断していただいた方がよいかもしれません。

投稿2020/06/21 04:25

ockeghem

総合スコア11705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

raccy

2020/06/21 06:03

セキュリティの専門家である徳丸先生から言わせれば私の回答なんてちゃちー物なので… WAF入れたら何も見えない…はちょっと語弊があったかも知れません。ちゃんとしたクラウドサービスや初期導入サポート付きのWAFソフトなら先生の言うとおりですけど、お金が無いから、よし自分で作ろう…とすると色々と嵌まるということです(実話)。なお、オンプレですが、ソフトインストールだけして「今は監視モードなので、あとはお客さんでルールを設定して、遮断に切り替えてください」というひどい会社もありました(実話)。 月々1万円(12万円/年)はかなりお得感があると思います(前に調べた時に数十~百万円/年ぐらいが相場だったんで)が、逆に、それってどれだけしっかりしているのと思ってしまいます(1万円ってSEが2時間手を動したら赤字になる金額なんですが…)。かといって、高ければ良いって程じゃないですが。ただ、うちのところは1万円でも高いと言われそうです(FQDN違いで数十個サイトがあるので月数十万円はちょっとすぐに出せない)。 徳丸先生から「ぜひ導入したほうがよい」といわれると何も言えないです。これを契機に、私も、ペンディングになっていた各サイトのWAF導入進めようかと思います。
study_111

2020/06/21 14:03

ご回答ありがとうございます。 WAFも月々1万円から導入できるものもあるのですね。色々と教えて頂き、大変勉強になりました。 ベストアンサーの件なのですが、raccyさんもご丁寧にご回答頂いたのですが、自分では判断つかない部分がある為、一番高評価のついているockeghemさんのご回答をBAとさせて頂きます。 お二人ともご親切に教えて頂き、ありがとうございました。
退会済みユーザー

退会済みユーザー

2020/06/21 21:34

> 月々1万円 これ、クラウド型サービスの利用費用なんで、運用費用の全てではないですよ。 運用を定義/設計して、その定義の回すための費用を算出する必要があります。まぁ、その設計後に、「1万円の範囲内で良い」って判断になるかもしれませんが。 例えば、(WordPress で作るサイトに必要かどうかは微妙ですが)誤検知で止めてしまった際のサポート窓口からのエスカレーションフローを設定したりする費用等が必要です。
ockeghem

2020/06/21 23:54

いえいえ、コミコミですよ。私が企画したサービスの価格なので間違いありません
退会済みユーザー

退会済みユーザー

2020/06/22 00:23

ユーザ側のエンジニアや事業レベルの判断(責任者判断)をコミコミをするのは役割上無理だと思います。 無理と言っているのは、「"Robert'); DROP TABLE Students; --"がユーザ名として使用できないのですけれど?」といったクレームに対応するのはユーザで、WAF サービス提供者では無いという前提だからですが。 この場合、ユーザ側のエンジニアや事業責任者の待機/対応コストが発生する認識です。 ユーザとして「必要ないよ」って判断も当然あるだろうし、WordPress で作ったサイトで必須になる対応でも無いと思うので、月々1万のサービス利用でまかなえる範囲の決着もありだと思いますが、まだそこまでエンドユーザの認識に WAF は浸透できていないので運用の試算として必要かと。 WAF が広まって「不正と思われる操作を検知したため、処理を中断しました」を見たエンドユーザが、原因を自身に求めるまでにはもう少し時間がかかる気がしています。
ockeghem

2020/06/22 00:54

はい。ユーザー側の人件費など、キャッシュアウトしない費用はかかります。しかし、クラウド型のWAFを使う際に「運用を定義/設計して、その定義の回す」なんてどこの企業でもやってないですよ。それはあるべき姿ではありますが、現実ではありません。問題があれば都度対処しますし、通常そこにキャッシュアウトは発生しません。
退会済みユーザー

退会済みユーザー

2020/06/22 01:27

> クラウド型のWAFを使う際に「運用を定義/設計して、その定義の回す」なんてどこの企業でもやってないですよ。 結果論として、そうだと思います。 釈迦に説法ですが、「運用を定義/設計して、その定義の回す」ことが必要であるシステムであれば、クラウド型の WAF では満足できない可能性が高いですし。 ただ、その検討なしに WAF の導入も無いので、試算は必要だと思うという提案です。 まぁ、本件で想定する内容と比べて、過剰な提案をしているのは否めませんw 「月々1万」がキャッチーすぎるので、他の考慮点にも触れておきたかったってのが本音です。
guest

0

ワードプレス作成したサイトを運営する場合、WAFの導入は必要でしょうか?

WordPress に限らず、WAF の導入が必要かどうかは、セキュリティ要件により判断されるべきです。
では、セキュリティ要件は何によって決められるかと言うと、概ね以下で判断されます。

  • 守るべきリソース
  • それに対して想定される攻撃
  • それを守るためのコスト

まずは判定のための材料を正しく揃え、判断してください。

raccy さんも記述してくれてますが、WAF は運用コストが大きく、守れる範囲がごく限定的なものなので、(マッチすると非常に効果的なのですが)小さなシステムではなかなか導入できません。先に運用コストを見積もってみて判断しても良いと思います。

投稿2020/06/21 00:31

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

study_111

2020/06/21 03:07 編集

ご回答ありがとうございます。 WAF導入を検討するには、WAFが必要かどうか判断材料を揃えることから、始めていきたいと思います。 会社の場合、運用コストの見積もりをし、提案するフローも必要になってきますし、その部分も考えて導入を決めていけたらと思います。
guest

0

まず、セキュリティについての考え方からです。

非常に残念ですが、セキュリティ対策において、「これだけすれば100%安全」というものは存在しません。また逆に、「これをしないと100%危険」というのも存在しません。セキュリティ対策というのは、対策にかかるコストをみながら、安全度をどれだけ高められるかのトレードオフを常に強いられるものです。セキュリティ対策にコストをかければかけるほどより安全にはなっていきますが、どこまで行っても100%にはなることはないことを意識する必要があります。

コスト0または低コストで行えるセキュリティ対策があります。例えば、プログラミングにおいてSQLインジェクション防止のためにプレースホルダーを使うというのがあります。この機能はほとんどの言語のSQLライブラリに備わっており、プログラマーが気をつけてコーディングするだけですので、非常に低コストです。かかるのはプログラマーに対する教育(できるプログラマーならものの数分で理解できるでしょう)のみと言っていいでしょう。他にも、各ソフトウェアやOSの設定一つで有効にでき、また、動作に影響がないセキュリティ対策もあります。こういった、低コストのセキュリティ対策はなるべく行っておくべきと考えられます。世間的には、こういった物が必要最低限とみなされています。

逆にコストがかかるものがあります。ウィルス対策やIDS/IPS等は定期的な定義ファイル取得のために、有償のサービスが必要でしょう。それは少なくない金額です。無償のサービスもありますが、その分品質が落ちるため、有償の物よりもリスクが高い可能性があります。入れる・入れない、そして、有償・無償、それらの選択はコストとリスクからバランス良く選択する必要が出てきます。

WAFについてはどうでしょう。WAFは少なくないコストがかかり、また、WAFによって防げるリスクも限定的です。

WAFのコストは次のような物があります。

  1. WAFを動作させるためのリソースにかかるコスト

別サーバーであればそのサーバーを用意する必要があります。既存のWebサーバー上に組み込んだとしても、そのサーバーの計算資源を使うことになり、場合によっては、サーバーのスケールアップが必要でしょう。クラウドサービスの場合は自前でリソースは不要ですが、その料金にクラウド上のリソース使用量が含まれているだけに過ぎません。

  1. WAFの購入料金・サポート料金のコスト

ModSecurityといった無償のWAFもありますが、サポートが欲しいのであれば有償のWAFを購入する必要があるでしょう。サポートが無い分、無償は無償で後述する運用コストが増大します。

  1. 導入・運用のコスト

WAFにおいてこれが最もかかります。単にWAFを入れた場合、**多くのページは見えなくなります。**製品にもよりますが、WAFは、単純なHTTP/HTTPSのGETアクセスにHTML等の普通のWebページのファイルを返すぐらいしかできないように設定されているからです。ですので、ルールのカスタマイズは必須です。
このルールのカスタマイズが一番大変です。WAFによって拒否されたページがあったとき、「そのページへのアクセスは本当に正しいものか」「どのルールによって拒否されたのか」「そのルールを解除しても問題ないか」「ルール解除の範囲はどこまでにするか」と言ったことを考慮してルールを再設定します。これにはHTTP/HTTPSを初めとしたWebの仕組みやそのセキュリティに関する十分な知識が無いと難しいです。これができないと、WAFを導入したが、拒否を有効にすると見れなくなるので監視だけの設定にしているという無意味な運用に陥っているところも少なくありません。
ルールのカスタマイズは最初の導入時にしっかり作ればほぼ問題ありませんが、その後に再度必要になることが度々あります。新しい攻撃手法に合わせて新しいルールが提供された、保護対象のWebサイトでHTTP/2.0等を使った新機能を追加した、といった場合に、見えないサイトが出てくるときがあります。つまり、ルールをカスタマイズできる人が必須と言うことです。
中には、Wordpress専用のルールセットを用意しているWAFもあります。ただ、これらの製品であっても、基本はWordpress本体と有名なプラグインのみ対応で、マイナープラグインや自作のプラグインには対応していない場合があります。結局の所、カスタマイズは必須と言うことです。
運用は自分で行わず、委託するというのもあります。当たり前ですが、少なくないコストがかかります。自前でセキュリティエンジニアを雇うよりは安いですが。

運用まで含めたクラウド型WAFについて一度見積もってみてください。お手軽で入れられるような金額ではないはずです。しかし、商用サイトにおいては、リスクに対して想定される損害費用も大きいため、コストに見合うと考えられる場合は、導入した方が良いでしょう。しかし、その判断は経営者がするべきで、エンジニアはその判断材料を提供することに留めるべきです。

なお、WAFによって防げるリスクは、当たり前ですが、Web周りだけになります。Web以外からの侵入は防いではくれません。また、全く未知の方法による攻撃も、場合によっては防げなかったりします。ここら辺はウィルス対策やIPSなどと同じです。しかし、Wordpressやそのプラグインの未知脆弱性に対して、その攻撃手法が既存の物と類似している場合は、WAFによって防げる場合があります。そのようなWAFを入れて良かったと言う事例にあたることは極めて稀かも知れません。しかし、入れなかったために攻撃が成功し、顧客情報が漏洩した後に「なぜWAFを入れなかったのか?」と攻められます。そのリスクをどのように考えるかです。

最後に、WAF入れたら、何もしなくても安全というわけではありません。脆弱性が出たときのパッチ適用やアップデート、各ソフトウェア設定、ファイアウォールの導入など、あらゆる対策を組み合わせて安全性を高めるのであって、WAFはその一つに過ぎないと言うことです。

投稿2020/06/21 00:00

raccy

総合スコア21739

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

study_111

2020/06/21 03:01

ご回答ありがとうございます。 WAFの導入は思った以上にコストがかかることが分かり参考になりました。 WAFの導入が本当に必要かどうかは、リスクとコストの2つの比率をどの程度にするか、サイト運用の際は、慎重に検討をしたいと思います。
guest

0

プログラミングで対処可能かもしれませんが、使用しているWordPressやプラグインについて、「常に絶対に何の脆弱性も無い」という保証もないので、無いよりはあった方が良いです。
ただし、正常な通信をブロックしてしまうこともあるので、除外ルールの作成(※)が必要になることもあります。
※プラグインだとWP SiteGuardなどが可能

追記:最近だと、追加費用無しWAFが利用できるレンタルサーバーも増えてきているので、そういうところをサーバー選びの基準としても良いと思います。

投稿2020/06/20 15:01

編集2020/06/21 02:44
yuki84web

総合スコア1857

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

study_111

2020/06/20 15:06

ご回答ありがとうございます。 確かに、脆弱性がないという保証はないですし、入れておくに越したことはないですよね。 教えて頂きましたプラグインについても、調べてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問