受講料が最大70%OFF 受講料が最大70%OFF

WAF(Web Application Firewall)をご存知でしょうか?WAFとは、ウェブアプリケーションの脆弱性を悪用した攻撃などからWebアプリケーションを保護するソフトウェア、またはハードウェアです(IPAの資料より)。何だか難しそうですね。

それより、何となくお金がかかりそう。でも、インターネットには悪い人がたくさんいますし、よく分からないけどセキュリティ的に必要だと思いますよね。

そこで本記事では、そんな疑問を払拭するために、WAFとは何かから始まりAWS WAFまでを解説します!これからインターネット上にサービスを展開しようとしている方、またはすでに公開している方、ぜひ参考にしてください。

WAF(ワフ)とは

冒頭でお伝えしたとおり、WAFとは悪意からWebシステムを守るためのものです。WAFを導入すると、インターネットとWebシステムはWAFを介して通信をします。WAFはいわゆる関所だと思ってください。ファイヤウォールとのちがいを説明すると、WAFの特徴がよく分かります。

ファイヤウォールは、送信元のIPアドレスやポート番号をもとに通信を制限するものです。一緒じゃないか、と思われるかもしれませんが、ファイヤウォールは通信の中身にタッチしないという特徴があります。

また、Webシステムはインターネット上に公開するのが普通です。どこからアクセスされるか分かりません。つまりファイヤウォールで通信元を特定して制限するのが難しいのです。

一方WAFは、ファイヤウォールの役割を含みますが、さらに通信内容まで関与します。例えば、インターネットの外からWebシステムに対する通信(インバウンド)におけるSQLインジェクション、逆方向(アウトバウンド)におけるカード情報や電話番号を検知する機能、つまり情報漏洩を防ぐ機能を備えています。

AWS WAFとは

WAFが何なのか分かったし、その必要性も分かったけど、お金がかかりそう、技術的に難易度が高い、専任の要員を割り当てるほど人はいない、などなど導入にハードルが高そうですよね。そこで、AWS WAFの出番です。

AWS WAFとは

AWS WAFとは、文字どおりAWSの提供するWAFサービスです。前述のWAFの機能プラスアルファが、マネジメントコンソールから必要事項を入力するだけで手に入ります。

AWS WAFの特徴・機能

前置きが長くなりましたが、AWS WAFそのものについて、特徴や魅力をお伝えします。AWS WAFは以下3機能から構成されています。

 

 

順に解説していきましょう。

AWS WAF

AWS WAFの中核をなす機能です。インターネットからのアクセスに対して、どのようにフィルタリングするのかをあげてみましょう。

 

 

早い話、定義した条件に合致するリクエストを「許可する」のか「ブロック」するのか、もっといえば許可する条件を登録するのか拒否する条件を登録するのか、です。

この条件をリストアップしたものを、Access Control List(ACL)といいます。

ACLを設定後、実際にリクエストを拒否するか許可するかを実行せず、カウントだけをする機能もあります。カウントだけを取得して、問題なく検出できていたら実行、ということもできます。

AWS Shield

DDoS攻撃という名前を聞いたことがあるでしょうか?DDoS攻撃は、攻撃したい対象に対し、すでに乗っ取った複数のサーバーから標的に対し一気に攻撃を仕掛ける手法です。

AWS ShieldはこのDDoS攻撃に特化したサービスです。Standard版とAdvanced版があります。

AWS FMS(Firewall Management System)

AWS FMSは、複数のアカウント間、または複数のリソース(サーバーやロードバランサなど)でのACLの管理を行うサービスです。サーバーやシステムごとにルールが異なる場合、このAWS FMSが有効です。

AWS WAFのメリット

今までWAFとは何か、AWS WAFとは何かを見てきましたが、AWS WAFを導入するメリットをご紹介します。

マネジメントコンソールで管理可能

AWS WAFも他のAWSサービスと同様に、AWSマネジメントコンソールで管理や操作が可能です。一般的なWAFを導入すると、それだけ別管理になってしまうのでどうしても煩雑になります。AWS WAFだと一元管理できるので便利ですね。

他のAWSサービスとの連携

AWS WAFは、AWS CloudFrontやAWS ロードバランシングとの相性が良く、連動可能です。ここはやはりAWS内のサービスであることが大きなメリットとなりますね。

コストメリットと導入の容易さ

何といってもコレ!というくらいの特徴です。AWS WAFは、事前契約などは一切不要で、しかも前払金なしの完全従量制です。ちょっと試したいだけ、という場合でも低価格で試すことが可能です。また別途ハードウェアやソフトウェアの導入も不要で、製品固有のノウハウなども必要ありません。

料金

1ACLごと、1ルールごと、それらに加えてアクセス数に応じて料金が決まります。1ACLあたり5USD/月、1ルールあたり1USD/月、100万リクエストあたり0.60USDとなっています。

始め方

AWSマネジメントコンソールから導入できます。ルールは、以下の順に決めます。

ルール → コンディション → Web ACL

フィルタリングの条件をルール、複数のルールの組み合わせをコンディション、複数のコンディションの組み合わせがWeb ACLとなります。

ルール

以下は、ルールの設定例です。

<IPアドレス>

<HTTPヘッダ>

<SQLインジェクション>

コンディション

次は、上記ルールの組み合わせであるコンディションの設定です。以下は例です。

<コンディション例1>

<コンディション例2>

Web ACL

そして最後はコンディションを組み合わせて、Web ACLの出来上がりです。例えば、コンディション例1に該当しない、そしてコンディション例2に該当しない、ならば通過、といった具合です。

まとめ

本記事では、AWS WAFについて解説しました。AWSにてWebシステムを公開する方、または予定している方は、セキュリティ対策としてぜひAWS WAFの導入を検討してみてくださいね!

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。