企業や官公庁のホームページあるいはネットショップやSNSなど、情報化社会の現代では生活のあらゆるシーンでWebサイト/Webアプリケーションが利用されており、今では私たちが生きていくうえで欠かせない存在といっても過言ではありません。一方で普段あたりまえに利用しているWebの技術には、想像以上に重大な「脆弱性」が数多く存在していることを知っている人はそれほど多くないでしょう。
もし読者の中にWebサイトの開発・運用・管理に関わる方がいれば、あなたはWebにどのような脆弱性が存在し、それがどんな性質を持っていて、悪用されるとどれほどの被害を被るのか、を把握して対策する義務があります。
そこで今回はWebサイトに潜む脆弱性や、それを悪用する代表的なサイバー攻撃手法とその対策について解説します。本記事がWebセキュリティ対策の一助となれれば幸いです。
Webサイトをサイバー攻撃から守るためにやるべき対策
まず初めに、本記事で紹介する様々なサイバー攻撃にも共通する「セキュリティ対策の基本」をご紹介します。サイバー攻撃からWebサイトを守るためにできることは無数にありますが、それらを突き詰めると「根本的解決」と「保険的対策」という2つの考え方に分類できます。
根本的解決
根本的解決とは、Webサイトやアプリケーションの開発段階において「そもそも脆弱性を作り込まない」、いわゆるセキュアコーディングという概念です。脆弱性が存在しなければ攻撃者の付け入る隙はありませんから、サイバー攻撃も防ぐことができます。
もちろんWeb開発者はこの点を理解したうえでできる限り脆弱性を排除した実装に務めますが、現実にはWebセキュリティに精通している開発者は決して多くありません。あるいは複雑なシステムであればあるほどその全容を把握するのは難しく、どれだけ注意を払っていても脆弱性が生まれてしまうことはあります。またもうすでにシステムの開発が完了していて、運用体制、費用、時間、その他の事情によっては修正によって根本的解決を図ることがが難しい場合もあるでしょう。
いずれにしても、セキュリティの観点からみてサイバー脅威を100%防ぐことはもはや不可能です。だからこそ、サイバー攻撃が入ってくることが前提という現実を受け入れ、発生する攻撃に焦点をあてた、いわゆる「保険的な観点」からのセキュリティ対策に力を入れなければなりません。
保険的対策
保険的対策とは、サイバー攻撃が発生した場合の被害を最小限に抑えるための対策です。保険的対策によって脆弱性をなくすことはできませんが、迅速に攻撃を検知したり、脆弱性を悪用する攻撃を遮断したり、侵入した攻撃者からデータや権限を守る、などの様々な対策が考えられます。
保険的対策として最も一般的な手段は「セキュリティソリューションの導入」です。特に中小企業においては社内にセキュリティの専門家がおらず予算にも余裕がないことが多いので、ことさら専門家不要で低コストなソリューションの導入を検討する必要があります。
Webサイトの運営や管理する立場であれば、必須セキュリティ対策として「WAF(Web Application Firewall:ワフ)」の導入を考慮する必要があります。WAFはネットワークを飛び交う通信の内容をアプリケーションレベルで解析し、Web脆弱性を悪用しようとするサイバー攻撃を遮断する機能をもつ製品です。WAFを利用することでWebの脆弱性を利用した大抵の攻撃を防ぐことができるため、セキュリティ専門企の弊社としては、WAFの導入を強く推奨いたします。
参考として弊社が提供している「Cloudbric WAF+」をご紹介します。Cloudbric WAF+では、WAFの機能に加えてDDOS攻撃対策、悪性ボット対策、API攻撃対策、脅威IP遮断などのサービスを提供しており、WAFを超えたWAF(WAAP)としても注目されています。導入はシンプルな3STEPで完了し、社内にセキュリティの専門家がいなくても簡単に利用することが可能です。
Webサイトセキュリティの保険的対策として「WAF」に興味をお持ちの方は、是非一度、Cloudbric WAF+の紹介ページに目を通してみてください。
DOS攻撃・DDoS攻撃
まず、DOS攻撃とは、標的のサーバに連続的な通信を行うことでサーバをパンクさせ、機能を停止させる攻撃のことです。短期間のうちにサーバの処理性能を超える量のアクセスが集中すると、運用しているWebサービスに接続しづらくなったり、最悪の場合サーバがダウンしてしまうことがあります。
DOS攻撃の特徴
インターネット黎明期によく使用されたサイバー攻撃で、現在はDoS攻撃の進化系ともいえる「DDoS攻撃」の方が頻繁に行われています。
DDoS攻撃の仕組みはDoS攻撃とほとんど同じですが、いくつか違いがあります。まずDoS攻撃では一台のコンピューターから攻撃を仕掛けるのに対し、DDoS攻撃では複数のコンピューターから攻撃が仕掛けられます。また多くの場合、攻撃に使用される複数のコンピューターは攻撃者自身のものではなく、攻撃者によって仕掛けられた「ボット」と呼ばれるマルウェアに感染した第三者のコンピュータであることが多いです。攻撃者はボットに感染したPCを集めて「ボットネット」を形成しており、ボットネットに指示を与えることでいつでも一斉にDDoS攻撃を行えるようになります。
DDoS攻撃の特徴
- 複数のコンピュータから1つのサーバに対して行われる
- 攻撃側は数千~数万台のコンピュータが使われる事もある
DOS/DDoS攻撃への対策としては、ネットワークをリアルタイムで監視しアクセスの異常等を発見・通報する「IDS」や、監視・通報だけでなく攻撃事態を防ぐ「IPS」などの製品の導入が考えられます。弊社が提供しているCloudbric WAF+にも、DDoS攻撃への対策機能が基本搭載されています。
近年、マルチベクトル型DDoS攻撃といって、ボリューム型攻撃、アプリケーションレイヤー攻撃、TCP枯渇型攻撃など複数のDDoS攻撃手法を組み合わせて標的のサービス停止を狙うなど、DDoS攻撃の手法はさらに高度化かつ巨大化しつつあります。
弊社では、エッジコンピューティングを活用した発信元に最も近いEdgeにてワークロードを分散して処理するため、最大65Tbpsのトラフィックを緩和することが可能な「Cloudbric ADDoS」のようなDDoS攻撃専用の対策も備えております。
SQLインジェクション攻撃
SQLインジェクションとは、書き込み・読み取り・削除などのデータベースへの命令機能を悪用し、データを窃取・改ざんする攻撃のことです。データベースは基本的にどのWebサイト/サービスでも利用されているため、現在最も頻繁に脆弱性が報告される攻撃手法の1つでもあります。
SQLインジェクション攻撃は「データベースを操作する」という性質上、攻撃が成功すると機密情報の漏洩やシステムの乗っ取りなどに繋がる可能性があり、影響度がその他の脆弱性と比較して大きいため、より厳格な対策・対応が求められます。
保険的対策としてはWAFの導入が有効ですが、開発段階でSQLインジェクション脆弱性をできるかぎり排除することが求められます。開発者向けの資料としてはIPAが公開している「安全なSQLの呼び出し方」が非常に参考になります。
OSコマンド・インジェクション攻撃
OSコマンド・インジェクションとは、悪意のある第三者が外部からOSのコマンドを不正に実行する攻撃のことです。例えばOSコマンドを含むリクエストを脆弱性のあるWebアプリケーションに送信すると、そのコマンドをWebサーバが読み込み・実行してしまうことで攻撃が成功します。
OSコマンドインジェクション攻撃が成功すると、サーバ内のファイル改ざん、不正なシステム操作、不正プログラムのダウンロ―ドなどの被害が発生します。保険的対策としてはWAFの導入が有効です。
XSS/クロスサイト・スクリプティング攻撃
クロスサイト・スクリプティング攻撃(XSS)とは、XSS脆弱性のあるサイトに悪意のあるスクリプト等を埋め込まれることで、例えば知らないうちに外部サイトの偽ページに誘導され、そこで入力した個人情報やCookie情報が漏洩するといった攻撃です。つまり攻撃の被害を直接受けるのはサイトではなく利用者であり、サイトは間接的な加害者となります。
クロスサイト・スクリプティング攻撃はあらゆるサイトにおいて注意が必要ですが、特に被害に遭いやすいサイトの特徴は次の通りです。
- ユーザーの入力内容を出力する機能
- 検索結果を表示する機能
- コメントの反映(掲示板やブログなど)
既述の通り直接の被害に合うのは利用者ですが、被害の原因が企業のWebサイトであることが発覚した場合、信用の低下を招くだけでなく賠償請求などの訴訟問題に発展する可能性もあります。XSSは有名なWeb脆弱性ですから対策してアプリ開発されることがほとんどですが、保険的対策としてWAFの導入をお勧めします。
CSRF/クロスサイト・リクエスト・フォージェリ攻撃
クロスサイト・リクエスト・フォージェリとは、何かしらのサービスにログインしている正規ユーザーのセッション情報を悪用することで、ユーザーが予期しない動作を実行する攻撃のことです。例えばとあるサービスAにログインしているユーザーがセッション情報を保持したまま(ログインしたまま)悪意のある第三者が用意したWebサイトを閲覧し、そこに仕掛けられたリンクをクリックすると、保持しているセッション情報をそのまま悪用されて正規ユーザーとして利用者の意図しないリクエストをサービスAに対し送信されることがあります。
CSRF攻撃が成功するとログインユーザーのみが利用可能なサービスを悪用されたり(送金、商品購入、メッセージ投稿)、ログインユーザーのみが編集可能な情報(パスワードなど)を改ざんされたりします。
特に、以下の特徴を持つサイトはCSRF攻撃の対象となりやすいので注意が必要です。
- Cookieを用いてセッション管理を行っている
- Basic認証、SSLクライアント認証を使用している
- 金銭処理を行えるサイト(ネットショップ、その他決済)
- ログイン機能を持つサイト(ブログサイト、SNS)
保険的対策としてはWAFの導入が有効です。
ディレクトリ・トラバーサル攻撃
ディレクトリ・トラバーサル攻撃とは、ファイル名を指定するプログラムに問題があるWebアプリケーションにおいて、悪意のある第三者によって任意のファイルを指定され、公開を想定していないファイルを参照される攻撃のことです。
ディレクトリ・トラバーサル攻撃が成功すると機密情報の漏洩、データ改ざん、プログラムコードの改ざんなどの被害が発生します。2022年6月には大手決済企業であるメタップスペイメントのWebアプリケーションにディレクトリ・トラバーサル攻撃が仕掛けられ、暗号化の秘密鍵が窃取された結果240万件以上のクレジットカード情報が漏洩したことも明らかになっています。
他の攻撃手法と比べると被害報告数はそれほど多くありませんが、場合によっては深刻な事態を招きかねません。まずは脆弱性のないシステムを構築することを前提に、保険的対策としてはWAFの導入が有効です。
Webサイトのサイバー攻撃対策は「WAF」
以上、特に注意が必要なWebの脆弱性を7つ紹介しました。セキュリティ対策には「根本的解決」と「保険的対策」という2つの考え方がありますが、本記事を読んでいる読者の多くはすでに完成したWebアプリケーションを管理・運用する段階にあり、根本的解決を図ることが難しい状況だと思います。
その場合は自社のWebアプリケーションのどこにセキュリティリスクがあり、どのようなソリューションを導入することで対策できるのかを、脆弱性とセキュリティ製品の性質を見極めながら考え実施する必要があるでしょう。
ペンタセキュリティ社では、Cloudbric WAF+のような高機能WAFをはじめとして様々なセキュリティソリューションを取り揃えております。御社にセキュリティの専門家がおらず対策の仕方が分からない場合は是非一度、弊社にご相談ください。