【基本情報技術者試験】第8回:セキュリティ基礎を総まとめ!暗号・認証・脅威と対策を徹底解説
前回(第7回)は、アルゴリズムとプログラミング基礎を取り上げました。今回は、セキュリティをテーマに解説します。現代のITシステムは複雑化が進み、ネットワークやソフトウェアなどあらゆる領域でセキュリティ対策が不可欠となっています。基本情報技術者試験でも、暗号化や認証、不正アクセスの手口や対策など、セキュリティ分野から幅広い出題がなされます。
この記事では、暗号技術の基礎知識、認証方式やアクセス制御の仕組み、マルウェアや不正アクセスの代表例、そしてファイアウォールやIDS/IPSといった主要な対策技術について順を追って解説していきます。午前試験から午後試験の事例問題まで、十分に対応できる知識を得ることが目的です。
1. セキュリティが求められる背景
セキュリティ対策が重視される理由は、機密性・完全性・可用性(CIAトライアングル)の3要素が脅かされると、企業活動や社会インフラに大きな損害が生じるためです。
- 機密性(Confidentiality): データが許可された人だけに閲覧可能であること
- 完全性(Integrity): データやシステムが正確で改ざんされていないこと
- 可用性(Availability): システムやデータにいつでもアクセス可能であること
基本情報技術者試験では、この3要素をバランスよく維持するために「どんな技術や対策が必要なのか?」がよく問われます。
2. 暗号化技術の基礎
2-1. 暗号化と復号
暗号化(Encryption)とは、平文(通常の文)を暗号文に変換する操作、復号(Decryption)とは暗号文を平文に戻す操作です。送受信するデータを第三者に盗み見られても内容が解読されないようにするのが暗号化の目的です。
- 平文(plaintext): 暗号化前の通常のデータ
- 暗号文(ciphertext): 暗号アルゴリズムと鍵を用いて変換されたデータ
- 鍵(key): 暗号化・復号のためのパラメータ
基本情報技術者試験では、暗号アルゴリズムの種類や鍵の管理方法を問う問題がよく登場します。
2-2. 共通鍵暗号方式(対称鍵暗号)
共通鍵暗号(対称鍵暗号)は、暗号化と復号に同じ鍵を使用する方式です。代表的な暗号方式としてAES(Advanced Encryption Standard)やDES、3DESなどがあります。
- メリット: 暗号化・復号が比較的高速
- デメリット: 鍵を安全にやり取りする手段が必要
試験では、AESが共通鍵暗号方式であることや、鍵配送問題(離れた場所で安全に鍵を共有するのが難しい)に注意が必要であることなどが頻出ポイントです。
2-3. 公開鍵暗号方式(非対称鍵暗号)
公開鍵暗号では、暗号化と復号で異なる鍵(公開鍵と秘密鍵)を用います。代表例としてRSAや楕円曲線暗号(ECC)などがあります。
- 公開鍵: 文字通り広く公開する鍵。これを使って暗号化する。
- 秘密鍵: 公開鍵に対応する鍵。これを使って復号する。原則として持ち主だけが所有。
公開鍵暗号は、共通鍵の配送問題を解決できる半面、処理速度が遅いというデメリットがあります。そのため実際のシステムでは「ハイブリッド暗号(共通鍵暗号 + 公開鍵暗号)」がよく使われます。例えば、鍵交換部分だけ公開鍵暗号を使い、データ本体の暗号化には高速な共通鍵暗号を使う方式です。
2-4. ハッシュ関数とディジタル署名
- ハッシュ関数: 入力データに対して一定長のハッシュ値(メッセージダイジェスト)を求める関数。SHA-256、SHA-3、MD5などが有名。
- ディジタル署名: 送信者の秘密鍵を用いてハッシュ値を暗号化し、受信者側で送信者の公開鍵を使って検証する。改ざんやなりすましを防ぐ。
試験問題では、「ハッシュ値が同じならデータは同一か」という問いや、「ディジタル署名を使った認証の手順」などが出されます。ハッシュ関数は復号不可能(元のデータには戻せない)である点も要チェックです。
3. 認証方式とアクセス制御
セキュリティの世界では、本人確認(認証)と権限管理(アクセス制御)が非常に重要です。どんなに暗号化がしっかりしていても、不正なユーザが正規ユーザとして認証されてしまうとシステムが危険にさらされます。
3-1. 認証の3要素
認証で使われる代表的な要素は以下の3つです。
- 知識(Something you know): パスワードや暗証番号など、ユーザが覚えている情報
- 所持(Something you have): ICカードやトークン、スマートフォンなど、ユーザが所持するもの
- 生体情報(Something you are): 指紋や虹彩、顔認証などの生体認証
試験では、「多要素認証」によってセキュリティを強化できることや、パスワードとワンタイムパスワードの組み合わせがよく利用される理由などが頻出です。
3-2. アクセス制御モデル
アクセス制御では、ユーザが「どのリソースに対して、どのような権限(読み取り・書き込み・実行など)を持つか」を管理します。代表的なモデルにDAC(任意アクセス制御)、MAC(強制アクセス制御)、RBAC(ロールベースアクセス制御)などがあります。
- DAC(Discretionary Access Control): リソース所有者がアクセス権を設定する。Unixのファイルパーミッションが代表例。
- MAC(Mandatory Access Control): セキュリティラベルを使ってシステムが一元的にアクセスを制御する。軍事・政府系で多用。
- RBAC(Role Based Access Control): ユーザではなく「役割(Role)」に権限を割り当て、ユーザは所属する役割の権限を得る。
基本情報技術者試験では、Unixファイルシステムの「所有者・グループ・その他」によるアクセス制御や、RBACのメリット(権限管理の手間を減らせる)などが出題されることがあります。
4. マルウェアと不正アクセスの代表例
セキュリティで避けて通れないのが、マルウェア(悪意あるソフトウェア)や、不正アクセスの手口です。これらを知ることで被害を未然に防ぐ対策が見えてきます。
4-1. 主なマルウェアの種類
- ウイルス: 自己増殖機能を持つプログラム。他のファイルに寄生して広がる。
- ワーム: ネットワークを介して自動的に広がるプログラム。メールや脆弱性を突く。
- トロイの木馬: 有用なソフトウェアを装い、裏で不正行為を行う。
- スパイウェア: ユーザの行動や情報を密かに収集して外部に送信。
- ランサムウェア: データを暗号化して人質に取り、身代金を要求。
試験では、「自己増殖機能があるか」「どのように感染を広げるか」など、マルウェアごとの特徴を問われることがあります。
4-2. 不正アクセスと代表的攻撃手法
- フィッシング: 偽のWebサイトやメールを使って個人情報やログイン情報を盗み取る。
- SQLインジェクション: Webアプリケーションの入力フォームなどに不正なSQL文を仕込んでDBを操作する。
- XSS(クロスサイトスクリプティング): ユーザ入力を適切にエスケープ処理しないと、スクリプトを挿入されて実行される。
- パスワードリスト攻撃: 流出したID・パスワードのリストを使って他サイトでもログインを試みる。
- DDoS攻撃: 複数の端末から大量のトラフィックを送りつけ、サーバをダウンさせる。
これらの攻撃手法がどのように機能し、どんな対策があるかを理解しておくことが大切です。試験では「不正アクセス禁止法」など、関連する法規との絡みも出題されます。
5. セキュリティ対策技術
上記の脅威に対抗するにはさまざまな技術・運用対策を組み合わせる必要があります。基本情報技術者試験では、代表的な対策技術の仕組みを大まかに理解しておくことが問われます。
5-1. ファイアウォールとDMZ
- ファイアウォール: ネットワークの出入口でパケットを検査し、アクセス制御ルールに従って通過可否を判断する。パケットフィルタ型やアプリケーションゲートウェイ型などがある。
- DMZ(DeMilitarized Zone): 外部公開するサーバ(Webサーバ、メールサーバなど)を内部LANと分離し、攻撃が侵入してきても被害が広がりにくいようにする区域。
試験問題では、「内部LANとインターネットの間にDMZを設置する理由」や「パケットフィルタリングでどのようにポートやIPを制限するか」といった仕組みを問われることが多いです。
5-2. IDS(侵入検知システム)・IPS(侵入防止システム)
- IDS(Intrusion Detection System): ネットワークやホスト上で不正なアクセスや挙動を検知し、管理者に通知する。
- IPS(Intrusion Prevention System): IDSの機能に加えて、不正アクセスをブロックするなどの防止機能を持つ。
IDSとIPSの違い(検知だけか、防御まで行うか)はよく問われます。また、ホスト型(HIDS/HIPS)とネットワーク型(NIDS/NIPS)の区別も覚えておきましょう。
5-3. VPN(仮想プライベートネットワーク)
VPNは、公衆回線(インターネットなど)を利用しながらも、あたかも専用線のように安全な通信を実現する仕組みです。IPsec VPNやSSL-VPNなどが代表的で、データを暗号化してトンネルを作ることで盗聴や改ざんを防ぎます。
「IPsecはOSI第3層で暗号化を行う」「SSL-VPNはアプリケーション層寄りの通信を暗号化する」などの違いが試験で問われることがあります。
6. セキュリティ管理と運用
技術対策だけでは完全ではなく、日々の運用や管理が重要です。基本情報技術者試験では、「情報セキュリティポリシーの策定や、監査ログの取得、脆弱性管理などの運用面」も出題対象になります。
- セキュリティポリシー: 組織としてのセキュリティ対策やルールを文書化したもの。全社員が遵守すべきガイドライン。
- 監査ログ: 誰が、いつ、どの操作をしたかを記録。事故や不正発覚時の原因究明に役立つ。
- 脆弱性管理: OSやソフトウェアのセキュリティパッチを速やかに適用し、脆弱性を放置しない。ゼロデイ攻撃など最新の脅威に備える。
午後試験では、「運用ルールが守られておらず、ウイルス対策ソフトが更新されていなかった」といった事例問題が出ることがあります。技術と運用が一体となってこそ、セキュリティは確保されるという視点を覚えておきましょう。
7. 学習のポイントまとめ
- 暗号技術: 共通鍵暗号(AESなど)、公開鍵暗号(RSAなど)、ハイブリッド暗号、ハッシュ関数、ディジタル署名の仕組みを押さえる。
- 認証・アクセス制御: 認証の3要素、多要素認証、アクセス制御モデル(DAC, MAC, RBAC)を理解する。
- マルウェア・不正アクセス: ウイルス、ワーム、トロイの特徴、フィッシングやSQLインジェクションなどの代表的攻撃を知る。
- セキュリティ対策技術: ファイアウォール、DMZ、IDS/IPS、VPN、それぞれの仕組みや目的を整理する。
- 運用管理: セキュリティポリシー、監査ログ、脆弱性パッチ適用など、運用面を怠らない重要性を把握する。
基本情報技術者試験では、セキュリティ分野で安定した得点を取ることが合格に直結するケースが多いです。技術的な仕組みだけでなく、運用や法制度にも目を向け、全体的なセキュリティ対策をイメージできるよう学習しましょう。
次回(第9回)は、マネジメント・ストラテジ系のうち、プロジェクトマネジメントの基礎について取り上げる予定です。ウォーターフォールモデルとアジャイル、WBS作成、品質・コスト・リスク管理など、ITエンジニアに必須の知識を網羅していきます。お楽しみに!
コメントを残す