サイバー攻撃は、企業や個人にとって深刻な脅威となっています。被害に遭ってしまえば、機密情報や個人情報の漏えい、ビジネスの停止や財務的損失など多くの被害を受ける可能性があります。こちらの記事では、情報セキュリティについての基礎知識、サイバー攻撃の主な種類について解説します。
情報セキュリティとは?
情報セキュリティとは、一言で表すと「情報資産を守るべき対象を洗い出すこと」「情報資産を守ること」を意味します。この情報資産の具体的な内容は、個人や組織によって異なり、情報資産はさまざまな形で保管されています。例を挙げると、紙の文章やPCのハードディスク、SSDやUSB、サーバーやクラウドなどが該当するでしょう。
情報セキュリティマネジメント規格についての概要と基本用語集である「JIS Q 27000:2014」では、情報セキュリティについて以下のように述べられています。
参考:JIS Q 27000:2014(情報セキュリティマネジメントシステム-用語)
情報の機密性、完全性、及び可用性を維持すること。さらに真正性、責任追跡性、否認防止、信頼性などの特性を維持することを含めてもよい。
情報セキュリティには7つの構成要素がある
情報セキュリティとは情報資産を守ること、と先ほどご説明しました。この情報セキュリティを構成する要素として、3大要素とその付加的要素である4つの要素があります。
情報セキュリティの3大要素
情報セキュリティの3大要素は必須の概念であるため、それぞれの頭文字をとってCIAと呼ぶ場合もあります。
-
機密性(Confidentiality)
機密性とは、許可されたユーザーだけが情報資産にアクセスできるようにすることです。そのため、別名アクセスコントロールとも呼ばれます。
ある情報を、許可されたユーザーだけが許可された範囲内で利用できる状態を機密性があると表現します。ここで注意すべき点は、アクセスする情報には紙媒体なども含んでいること、ユーザーにはシステムも含まれる点に注意が必要です。
機密性を確保するには、ユーザーに応じたアクセス権を正確に付与し、確認することが必要です。
-
完全性(Integrity)
完全性は、情報が完全で正確であることが保証された状態のことです。この状態を完全性があると表現します。
情報が改ざんされたり、破損されたりしていない状態を意味します。同時に、情報が古い場合にも完全性が損なわれていることになってしまうため注意が必要です。
完全性を確保するための仕組みや技術には、デジタル署名などがあります。
-
可用性(Availability)
可用性とは、許可されたユーザーがある情報を使いたいと思った時に、いつでも使える状態にすることです。この状態のことを可用性があると表現します。
サーバーが故障したり、PCが壊れて使用できないといった場合には、可用性が損なわれることになります。
可用性を向上させるための方法としては、設置する機器の二重化、電源の二重化、データのバックアップなどがあります。故障の前兆を早期に発見するために予防保守を行うなども効果的です。
可用性の目標としてファイブナイン(99.999%)といった数値が挙げられる場合があります。この場合、24時間365日稼働のシステムでは、1年間で5分ほどしか止めることができないことになるため、実際にはなかなかシビアと言えるでしょう。
情報セキュリティにおける4つの要素
3大要素に加えて重要な4つの要素とは、「真正性」「責任追跡性」「否認防止」「信頼性」です。この4つについては図にまとめました。
このように、情報セキュリティ対策で重要なのは、3大要素である「機密性」「完全性」「可用性」に加えて、「真正性」「責任追跡性」「否認防止」「信頼性」に準拠することが重要になります。
サイバー攻撃とは?
守るべき情報資産が明確になれば、それを脅かす「脅威」を明確にすることができます。この脅威は「物理的脅威」「技術的脅威」「人的脅威」に大別されます。この3つのうち、「技術的脅威」に該当するのがサイバー攻撃です。
技術的脅威とは、ソフトウェアのバグ、マルウェア、不正アクセスなど論理的に情報が漏えいしたり破壊されたりする脅威のことです。
サイバー攻撃の種類
サイバー攻撃の種類には、マルウェアを使用した攻撃や不正アクセスなど様々な種類があります。こちらでは代表的なサイバー攻撃について、どのような特徴があるのかを解説します。さらに詳しく知りたい方は、種類ごとにリンクを貼っておきますのでそちらをご覧ください。
ゼロデイ攻撃
ゼロデイ攻撃(ゼロデイアタック)とは、開発元が修正プログラムを作成する前の段階にある、ソフトウェアの脆弱性(セキュリティホール)に対してのサイバー攻撃のことです。
発見された脆弱性への対策が取られる日を1日目と考え、対策を取られるよりも前の日(0日目)に攻撃を実行するので、ゼロデイ攻撃と呼ばれています。
開発元が対策を講じる前に攻撃を仕掛ける、つまり無防備状態を狙われるためサイバー攻撃の中で最も深刻な脅威とも言われています。
ゼロデイ攻撃については以下のリンクで解説しています。
https://envader.plus/article/20
辞書攻撃
辞書攻撃とは、パスワードに用いられやすい文字列や数値列をあらかじめ「辞書」として用意しておき、その辞書を使用してパスワードを特定する手法のことです。辞書攻撃はパスワードが単純で予測可能な場合に、非常に効果的な攻撃手法であり、サイバーセキュリティに対する脅威の一つです。
https://envader.plus/article/103
XSS(クロスサイトスクリプティング)
XSS(クロスサイトスクリプティング)とは、セキュリティ的欠陥のあるWebサイトが攻撃者によって狙われ、ユーザが被害に遭うサイバー攻撃の1種です。
以下の記事では、実際にJavaScriptを用いてXSSについて解説しています。
https://envader.plus/article/13
CSRF(クロスサイトリクエストフォージェリ)
CSRF(Cross Site Request Forgeries)は、Webシステムの脆弱性を利用したサイバー攻撃の一つで、クロスサイト(Webサイトをまたぐ)という意味と、リクエスト・フォージェリ(リクエストの偽造)という2つの意味からCSRFと呼ばれています。
CSRFでは、攻撃者が罠として用意したWebサイト内でユーザーがリンクを踏むなどの操作を行うことで、ユーザーが全く意図していない偽造されたリクエストが強制的に正規のWebサイトへ送られてしまいます。結果、ユーザーの身に覚えのない書き込みがされてしまったり、ログイン中のサービスの強制退会などが行われてしまいます。
https://envader.plus/article/42
SYN flood 攻撃
SYN flood攻撃とは、Webサーバーなどをターゲットにし、サービスを妨害する目的として行われるDoS(Denial of Service)攻撃の一つです。TCP SYN floodやSYN flooding attack、SYNフラッド攻撃などと表現されます。
SYN flood攻撃ではサーバーを大量の応答待ち状態にさせることで、機能低下やOSのダウンにより正常なサービスを提供できなくさせることを目的とします。
https://envader.plus/article/97
SQLインジェクション
SQLインジェクションとは、Webアプリケーションの検索フォームや入力フォームなどを通じて、データベースに発行されるSQL文を開発者が意図しない形に変更し、データベース内の情報の不正取得や改ざんなどを行う攻撃、またはその脆弱性のことです。
インバンドSQLインジェクション、ブラインドSQLインジェクションなど複数の種類があり、悪意のあるリクエストを送信する方法や不正なSQL文を送信してレスポンスを分析する方法などが存在します。
https://envader.plus/article/45
ブルートフォース攻撃
ブルートフォース攻撃とは、ツールなどを利用し、入力する文字を総当たりで試してパスワードなどの特定を行うサイバー攻撃です。
ブルートフォース攻撃では、ユーザーIDとパスワードの組み合わせでの認証機能が存在した場合、ユーザーIDを固定してパスワードを1文字ずつ順番に変更しながら、何十億もの文字や数字、記号の組み合わせを作成しパスワードの特定を行います。
https://envader.plus/article/67
ポートスキャン
ポートスキャンとは、サーバーやネットワーク機器などに外部からツールなどを使用してパケットを送信し、その応答によって通信するために開放されているポート番号(オープンポート)を特定することを意味します。
本来のポートスキャンの目的は、サーバーやネットワークの管理者が運用しているシステムに脆弱性やセキュリティ的な問題がないかチェックを行うことです。このポートスキャンを逆手に取り、サイバー攻撃の事前調査として行われる場合があります。
開放されているポート番号を把握できれば、どのようなプログラムが使われているのか推測されてしまいます。使われているプログラムが推測できれば、そのプログラムの脆弱性を突くにはどうしたら良いかを攻撃者に考える隙を与えてしまいます。
https://envader.plus/article/89
まとめ
情報セキュリティとは、紙の文章やPCのハードディスク、SSDやUSB、サーバーやクラウドなどの情報資産を守ることです。そして、この情報セキュリティを構成する要素として「機密性」「完全性」「可用性」の3大要素があることをよく理解しておきましょう。
さらに今回は、複数のサイバー攻撃についての概要をご紹介しました。対策方法の詳細については各リンクにて解説しています。それぞれのサイバー攻撃について、どのような対策方法があるのかも理解していだだけたら幸いです。
サイバー攻撃は今後も進化していく可能性があるため、最新のセキュリティ技術やトレンドにも目を向けていきましょう。
【番外編】USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話
プログラミング塾に半年通えば、一人前になれると思っているあなた。それ、勘違いですよ。「なぜ間違いなの?」「正しい勉強法とは何なの?」ITを学び始める全ての人に知って欲しい。そう思って書きました。是非読んでみてください。
「フリーランスエンジニア」
近年やっと世間に浸透した言葉だ。ひと昔まえ、終身雇用は当たり前で、大企業に就職することは一種のステータスだった。しかし、そんな時代も終わり「優秀な人材は転職する」ことが当たり前の時代となる。フリーランスエンジニアに高価値が付く現在、ネットを見ると「未経験でも年収400万以上」などと書いてある。これに釣られて、多くの人がフリーランスになろうとITの世界に入ってきている。私もその中の1人だ。数年前、USBも知らない状態からITの世界に没入し、そこから約2年間、毎日勉学を行なった。他人の何十倍も努力した。そして、企業研修やIT塾で数多くの受講生の指導経験も得た。そこで私は、伸びるエンジニアとそうでないエンジニアをたくさん見てきた。そして、稼げるエンジニア、稼げないエンジニアを見てきた。
「成功する人とそうでない人の違いは何か?」
私が出した答えは、「量産型エンジニアか否か」である。今のエンジニア市場には、量産型エンジニアが溢れている!!ここでの量産型エンジニアの定義は以下の通りである。
比較的簡単に学習可能なWebフレームワーク(WordPress, Rails)やPython等の知識はあるが、ITの基本概念を理解していないため、単調な作業しかこなすことができないエンジニアのこと。
多くの人がフリーランスエンジニアを目指す時代に中途半端な知識や技術力でこの世界に飛び込むと返って過酷な労働条件で働くことになる。そこで、エンジニアを目指すあなたがどう学習していくべきかを私の経験を交えて書こうと思った。続きはこちらから、、、、
エンベーダー編集部
エンベーダーは、ITスクールRareTECHのインフラ学習教材として誕生しました。 「遊びながらインフラエンジニアへ」をコンセプトに、インフラへの学習ハードルを下げるツールとして運営されています。
関連記事
2020.02.25
完全未経験からエンジニアを目指す爆速勉強法
USBも知らなかった私が独学でプログラミングを勉強してGAFAに入社するまでの話
- キャリア・学習法
- エンジニア
2024.09.28
Trivyで実現するクラウド環境のCI/CDパイプラインでの自動脆弱性チェック
Trivyは、コンテナやIaC(Infrastructure as Code)ファイル、Kubernetesクラスターなどの脆弱性を検出するオープンソースツールとして、クラウド環境のセキュリティ対策に貢献しています。
- サイバーセキュリティ
- インフラエンジニア
2024.09.28
Trivyで実現するTerraformのセキュリティ強化 IaC脆弱性スキャンの方法
インフラのコード化による効率化が進みましたが、一方でコードに潜むセキュリティリスクも拡大しています。これらのリスクを管理するためには、適切なセキュリティスキャンを導入し、脆弱性を早期に発見することが重要です。
- サイバーセキュリティ
- インフラエンジニア
- Terraform
2024.05.25
Easy RSAを使用したFQDN証明書の生成とAWS ACMへの登録
この記事では、Easy RSAを使用してOpenVPN用の証明書を生成し、それをAWS ACMに登録する手順を説明します。証明書は、VPN接続のセキュリティを確保するために重要です。
- サイバーセキュリティ
- ハンズオン