本格的なインターネットの普及から約30年、生活の奥深くまで浸透したインターネットは、私たちの生活と切っては切り離せなくなっています。
そして、世の中のサービスや情報の提供は、WebサイトやWebアプリなどインターネットに移行し、個人と企業が関わる重要な接点となっています。
ここで重要になるのが「Webセキュリティ」です。
今回は、Webセキュリティが必要になった背景から、Web上に潜む脅威、Webセキュリティの種類まで解説していきます。ぜひ最後までご覧ください!
Webセキュリティとは、インターネット上に存在する様々な脅威から身を守る対策のことを指します。
冒頭でも述べたように、インターネットが普及した現代社会で、企業と顧客の重要な接点となっているWebサービス(WebサイトやWebアプリ)は、今やビジネスの継続に不可欠な存在となっています。
また、様々なサービスのクラウド化が進み、今まで紙媒体で管理されていた書類も電子化され、クラウドへの保管が進んでいます。
これだけ、インターネット上に重要なデータが集まるようになったことから、情報の盗難や攻撃の標的は必然的にインターネット経由に移行し始めました。世界中の統計調査データを公開するStatista[1]は、世界中で年々増加しているサイバー攻撃の被害額は、2028年までに13兆8,000億ドルに達すると予測しています。
そこで、改めて必要性が唱えられたのが「Webセキュリティ」です。Webセキュリティは、個人や組織の情報を安全に管理することで、ビジネスを保護しながらコンプライアンスの維持や、攻撃によるサービス中断を回避できるだけでなく、より優れたユーザー体験の提供などが期待でき、企業側だけでなく、ユーザーも恩恵を受けることができます。
Webセキュリティが求められるようになっている背景には、いくつかの要因があります。以下にその代表的なものを挙げていきます。
・インターネットの普及
インターネットの普及により、個人情報や機密情報などのデータがオンライン上でやり取りされる機会が増えました。これに伴い、悪意ある第3者が個人情報や組織の機密情報を盗み出すために、Webサイトを標的とするようになったため、より強固なWebサイトセキュリティの必要性が唱えられるようになりました。
・複雑になるWebサービス
Webサービスは、サービス自体の数の増加とともに、その複雑性が増しています。そしてその中にはユーザーの個人情報など、多くの機密情報を保持するため、セキュリティ向上がますます課題となってきました。
・セキュリティ脅威の進化
昔は単純なウイルスやマルウェアが主流でしたが、サイバー攻撃は日に日に進化し、今ではソーシャルエンジニアリング(人間の心理的隙やミスにつけ込んで情報を入手する犯罪手法)やゼロデイ攻撃(セキュリティホールを発見してから解消するまでの、脆弱性につけ込んだ攻撃)などの高度な技術が使用されています。このような脅威に対抗するためには、WebサイトやWebアプリのセキュリティが強化される必要があります。
・規制の強化
個人情報の保護やデータセキュリティに関する法整備が進み、規制が厳しくなっています。そのため、組織はセキュリティに対する投資を増やさざるを得ません。
Webセキュリティと類似した言葉で、「情報セキュリティ」や「サイバーセキュリティ」があります。ここで一旦、言葉の意味を整理していきます。
【Webセキュリティ】
Webセキュリティは情報セキュリティの一部であり、Webベースのシステムやアプリケーションに焦点を当てたセキュリティです。WebサイトやWebアプリの保護、脆弱性の検出や修正、悪意あるWeb攻撃などの対策を行います。
【情報セキュリティ】
情報セキュリティは、「機密性」「整合性」「可用性」といった情報セキュリティの3要素に則り、情報を保護することに焦点を当てて、組織の情報を不正なアクセスや損失から保護するための包括的な戦略や手法を指します。
Webセキュリティと情報セキュリティの違い:
WebセキュリティがWebベースのシステムやアプリケーションに焦点を当てている一方、情報セキュリティは、データベース、ファイルシステム、ネットワーク通信、物理的な文書などあらゆる種類の情報を対象としています。
【サイバーセキュリティ】
サイバーセキュリティは、情報技術(IT)やコンピュータシステム、ネットワークなどのデジタル環境におけるセキュリティに焦点を当てています。コンピューターシステムやネットワークの保護、サイバー攻撃への対処、データの保護など、サイバーセキュリティは広範囲に渡ります。
Webセキュリティとサイバーセキュリティの違い:
WebセキュリティがWeb上のシステムやアプリケーションに焦点を当てている一方、サイバーセキュリティは、コンピューターシステム、ネットワーク、モバイルデバイス、クラウドインフラストラクチャなど広範囲にわたるデジタル環境全体に焦点を当てています。
このようにWebセキュリティ<情報セキュリティ<サイバーセキュリティの順でセキュリティ対象範囲は広がり、それに対する対策の種類も変化していきます。
インターネットの発達した現代社会で、脅威は様々なから理で私たちに近づいてきます。これらの脅威により、情報漏洩や悪意ある第3者からの不正による被害、またその被害に遭ったことによる機会・金銭・信用の損失など様々な影響が考えられます。以下に、Webサイトセキュリティの脅威としてよく知られているものを挙げていきます。
・SQLインジェンクション
まずSQLとは、Structured Query Languageの略称で、データベース言語の1つです。SQLインジェクションは、Webアプリの脆弱性を利用して、不正なSQL分を入力し、実行させる攻撃です。機密情報を盗み出したり、データベース内のデータを改ざん・削除するなど、データベースを不正に操作します。
・クロスサイトスクリプティング(XSS)
Cross Site Scriptingを省略して、XSSと表記されることもあります。クロスサイトスクリプティングは、不正なスクリプト(簡易的なプログラム)を挿入する攻撃です。Webページの脆弱性を利用し、ユーザーが入力する個人情報やセッション情報などを盗み出し、ユーザーを悪意のあるWebサイトにリダイレクトさせたりすることができます。
・ゼロデイ攻撃
システムに発見されたセキュリティ上の欠陥について、改修作業が行われ修正パッチが公開されるまでの、脆弱性のあるタイミングをついた攻撃です。テストで予測できなかった未知の脆弱性をついた攻撃は、完全に防ぐのは難しいと言われています。
・ディレクトリトラバーサル
ディレクトリトラバーサルは、アクセスされることを想定していない非公開の情報が保存されているディレクトリ(ファイルをグループ化するフォルダ)に不正アクセスし、ファイルの閲覧や書き換えをする攻撃です。
・コードインジェンクション
コードインジェクションは、Webアプリに不正なコードをに入力する攻撃です。不正なコードがサーバサイドやクライアント再度で実行させることで、システムやユーザーの情報を操作したり、他の攻撃を実行したりします。
・リモートファイルインクルード
Webアプリの外部ファイル参照機能を悪用した攻撃で、意図せず不正なファイルを参照や取り込みをさせることで、悪意のあるスクリプトやコードを実行します。
Webセキュリティには多くの技術が存在します。それぞれが脅威をどのように防いでいくのか、代表的なものをいくつか挙げていきます。
・Webアプリケーションファイアウォール(WAF)
ファイアウォールは、元々火災などから建物を守る防火壁のことを指しますが、インターネットの世界では、外部からの不正アクセスや攻撃からネットワークを保護するソフトウェアやハードウェアを指します。ネットワーク通信において、通信をするか許可/拒否する仕組みで、許可された通信のみを通過させることで、不正な通信をブロックすることができます。このようにWAFは、ネットワークの前面に配置し、脆弱性をついた攻撃を検知し、防御する役割を果たすWebアプリケーションセキュリティツールです。
・IPS(Intrusion Prevention System)
侵入防止システムとも呼ばれるIPSは、ファイヤウォール同様ネットワークやシステムに対する侵入を検知し、防止するだけでなく、攻撃をブロックしてネットワークやシステムのセキュリティを強化することのできるセキュリティシステムです。
・SSL(Secure Sockets Layer)
Webサーバーとブラウザ間の通信を暗号化するためのプロトコル(コンピュータでデータをやり取りするために定められた規約や規格)です。SSLを使用することで、データの盗聴や改ざんなどの攻撃から通信を保護することができます。SSLによって暗号化されたウェブサイトは、https://で始まるURLで識別されます。
・脆弱性スキャン
脆弱性スキャンは、様々な攻撃手法やWebアプリケーションやサーバに存在するセキュリティ上の脆弱性をシミュレートして、システムの弱点を自動で検出する、Webセキュリティ診断ツールです。脆弱性スキャンを行うことで、脆弱性を修正するための情報を集めることができます。
・ファジング
ファジングは、開発段階のシステムに対して行う、脆弱性のテストを指します。テストを自動化するツールを用いるのが一般的で、不正入力を模倣した操作を行い、システムの応答を観察し、潜在的な脆弱性を特定します。
また、最新のアップデートやセキュリティパッチを反映し、Webサービスを最新状態に保つことで、改善されたセキュリティポリシーの適用や、既知のセキュリティ上の欠陥を修正することができ、悪意ある攻撃者の侵入を防ぐことができます。
ここまで、企業がWebサイトやWebアプリを開発/提供する側の視点でWebセキュリティを考えてきました。ただ、Webセキュリティは開発側のみが配慮するのではなく、ユーザー側もWebセキュリティに対する正しい知識を身に付けていく必要があります。最後に、ユーザーが実施できるWebセキュリティの例を紹介します。
・強力なパスワードの使用
パスワードは、長く複雑な文字列であるほど、クラッキングや推測攻撃から身を守ることができます。また、複数のサイトで同じパスワードを使い回しすると、どこかでパスワードが流出してしまった場合に、他のサイトでの不正リスクも上がってしまいます。そのため、長く複雑なパスワードをサイトごとに設定することが望ましいと言われています。
・多要素認証の有効化
認証の3要素「知識情報」「所持情報」「生体情報」のうち、2つ以上を組み合わせる認証の方法です。アカウント作成時に決めたパスワードに追加して、ログインの都度変わるワンタイムパスワード、指紋や虹彩などの生体認証を組み合わせることで、第3者による不正ログインが発生しづらくなり、セキュリティ性が一気に向上します。
・VPNの使用
飲食店やショッピングモールなどで提供される無料のWi-Fiサービスは、多くの人が手軽に使えるようにしているからこそ、ネットワークの脆弱性が懸念されます。このような場合、VPN(Virtual Private Network、仮想プライベートネットワーク)を使用することで、データは送信時に暗号化され、悪意ある第3者がデータを傍受して内容を読み取ることは困難になります。
・リンクや添付ファイルの取り扱い
なりすましのメールは、以前に比べて巧妙になっています。フィッシング詐欺などの被害から身を守るためには、リンクのクリックや添付ファイルのダウンロードには細心の注意を払っていく必要があります。
ここまで、Webセキュリティとは?という基礎的な知識から、Web上に潜む脅威、それに対する対策やWebセキュリティの種類について解説してきました。
インターネットの普及とともに、より複雑かつ高度になっているWebサービスには、様々な手法を使った脅威が忍び寄っています。それらの対策するためにWebセキュリティは欠かせない概念であり、抜け目ないWebセキュリティの実施することで、個人や会社の機密情報を守ることができます。また、Webサービス提供サイドだけでなく、ユーザー自身もWebセキュリティのリテラシーを身につけ、実践していく必要があります。
プロダクトには、高いセキュリティ性が欠かせません。JIITAKでは、サイバーセキュリティエンジニアがセキュリティテストを実施し、データの暗号化、セッション管理、API、認証、外部ライブラリの使用、アクセス制御など各レベルで検証・改善を行うサービスを提供しています。お困りごとのある方は、ぜひ一度JIITAKまでご相談ください。