エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

情報処理試験 セキュリティスペシャリスト個人的まとめ

脅威と攻撃手法

情報セキュリティの基本

CIA

セキュリティの要素は下記3つに分解できる。

  • 機密性
    許可された人が許可された範囲で利用できる状態
  • 完全性
    情報が完全で正確であることが保証された状態
  • 可用性
    情報をいつでもどこでも使える状態

セキュリティ対策はコストを伴う。
利便性と安全性は、トレードオフの関係にあり、経営に悪影響を及ぼさない範囲で行う。

リスク

リスク = 情報資産 + 脅威 + 脆弱性
すべてが揃うとリスクが顕在化して現実となる。
どれか一つでも取り除ければ、回避できる。

情報資産

情報資産とは、大事な情報のこと。

脅威

脅威は、情報資産を危険にさらすもののこと。
脅威には、下記3パターンが存在する。

  • 物理的脅威
  • 技術的脅威
  • 人的脅威

脆弱性

脅威に付け込まれる隙・弱点のこと。

リスクマネジメント

リスクマネジメントの体系

  • リスクアセスメント
    • リスク分析
    • リスク評価
  • リスク対応
    • リスク回避
      リスク要因の排除
    • リスク最適化
      セキュリティ対策
    • リスク移転
      リスク対策を他社に委ねる
    • リスク保有
      リスクに対して対策を行わない
  • リスク受容
  • リスクコミュニケーション

リスクアセスメント

リスクの存在を認識し、分析・評価する活動のこと。

  • ベースラインアプローチ
    標準化されたツールガイドラインを利用してリスクを洗い出す。
    低コストだが、特有のリスクを見逃す可能性あり。
  • 詳細リスク分析
    リスクの洗い出し、脅威の把握、脆弱性の検証までを丹念に積み重ねる。
    正確だが、コストが高く、評価者に高いスキルを要求する。
  • 複合アプローチ
    一般的業務はベースライン、重要業務は詳細リスク分析を行うコストと効果のバランスを考えた手法。

リスク対応

  • リスク回避
    リスクのある資産をなくしてしまう方法。
  • リスク低減
    発生頻度や被害を少なくする方法。
  • リスク移転
    リスクを別の人に引き受けてもらう方法。
  • リスク保有
    リスクを持ち続けること。被害が少ないなど、対策の必要性がない場合は何もしないなどが該当する。

ポイントは、優先順位を付けて対応すること。
リスクを一斉にすべて排除するのは無理なので、大きなリスクから順に対応していく。
リスクをゼロにすることは、不可能に近い。
受け入れられるリスクの水準を決めて、対応可否を決められるようにすることが重要。

ポートスキャン

不正アクセス

不正アクセス禁止法によって定義されている。
下記条件に当てはまると不正アクセスとみなされる。

  • 正規の利用権限を持っていない、または権限以上の行為をネットワークを介して行うこと
  • アクセスコントロールされているシステムへのアクセス
  • セキュリティホールを突いた攻撃

各種スキャン対策 - ネットワークスキャン - pingを無効化する - NATを使って、外部からネットワーク構成を把握しにくくする - ポートスキャン - 不要なポートは閉じる - IDSを導入する

バッファオーバーフロー

仕組み

関数を呼び出す際に、値に応じてメモリを確保するが、想定以上のデータが投入されたために誤動作を引き起こす現象のこと。

対策

  • バッファに書き込まれるデータサイズを必ず確認する
  • サイズオーバーの場合、異常終了させるか、バッファを拡大させる

まとめ

  • 利用者が入力したデータは信用しない。必ずチェックする。
  • 不正な文字はエスケープ処理をして無害化する
  • 終端文字は文字データ。サイズ計算は注意する。

パスワードの不正入手

ブルートフォースアタック

考えられるすべてのパスワードの組み合わせを試す。
時間が掛かるが、いつか必ずパスワードにたどり着く。
対策は、下記の内容が考えられる。

  • パスワードを長くする
  • 使う文字種を増やす
  • パスワードを頻繁に変更する
  • ログイン失敗回数をチェックして検知する

辞書攻撃

よくやりそうなパスワードを試す手法。
パスワードにありがちな文字列を使ったり、攻撃対象の個人情報からパスワードを決める。
対策として、下記が考えられる。

  • 辞書に乗っているような意味のある単語にしない
  • 生年月日などの個人情報を使わない
  • ありがちなパスワードを使わない

不正侵入後のクラッカーの行動

侵入後のクラッカーは、以下の2つの行動を起こそうとする。

  1. ログの消去
  2. バックドアの設置

対策

  • ログ消去
    • ログファイルを推測しにくい場所に置く
    • 暗号化やディジタル署名で改竄しにくくする
    • 上書き不可のメディアに保存する
  • バックドア
    • セキュリティパッチの適用
    • IDSなどによる、PCから送信されるデータのチェック

セッションハイジャック

  • TCPセッションハイジャック
    TCPは通信をセッション番号(シーケンス番号)で管理している。
    次に送られるセッション番号を予測してパケットを自作し、セッションを乗っ取る。

  • HTTPのセッションハイジャック
    HTTPにセッション管理機能はない。しかし、セッションが必要になることがある。
    その場合、セッション番号をURLに埋め込む、hiddenフィールド、Cookieを使う方法が用いられる。
    セッション情報がクリアテキストで送られてないか注意する必要がある。

  • UDPセッションハイジャック
    UDPにはセッションの概念がない。早く返信すれば簡単に乗っ取ることができる。

対策

  • セッション番号に乱数を利用する
  • 暗号化と認証を行う
  • ポート番号をランダムに選択する

セッションフィクセーション

セッション番号を固定化することで、なりすましを行う方法。

攻撃手法

  1. クラッカーがWebサーバーにアクセスする
  2. セッション番号を利用者に強制的に使わせる
  3. セッションの有効期限に同一セッション番号でアクセスすれば、正規利用者と同じ権限でサーバーにアクセスできる

対策

  • セッション番号の有効期限を短くする
  • ログインごとにセッションを変える

盗聴

盗聴とは、ネットワーク上を流れるデータを不正に傍受する行為。
キーボードロギングのようなローカル情報の窃取も盗聴になる。

スニファ

ネットワークを流れるパケットをモニタリングしたり、トラフィック調査したりすること。

プロトコルアナライザの設置場所

クラッカーにプロトコルアナライザがおける隙を作らないようにすることが重要。
(未承認機器をネットワークに接続できないようしたり、入退室を管理したりするなど)

電波傍受

  1. テンペスト
    • 内容
      電磁波を読み取って内容を解読する。
    • 対策
      • 電磁波シールド有りのケーブルを使う
      • 部屋全体を電磁波遮断素材で作る
  2. 無線LAN
    • 内容
      電波の届く範囲にアンテナ置くだけで傍受できる
    • 対策
      (傍受は)防げない。暗号化することによって内容を解読できないようにすることが重要。

無線LANの暗号化

  1. WEP → 弱い。脆弱性あり。
  2. WPA → 古い機器向けの暫定版
  3. WPA2 → 現在の標準

キーボードロギング

キーボードロギングとは、キーボード操作記録を残すこと。

対策

  • ウィルス対策ソフトの常駐
  • 覚えのないファイルは開かない
  • ファイアウォール・IDSを設置する

なりすまし

「誰か」のふりをして権限を利用し、システムを不正利用することができる。
発覚しても、責められるのは「誰か」で、やっている方は安全。
なにを根拠に本人確認を行い、なりすましを防ぐかが重要。

IPスプーフィング

送信者のIPアドレスを詐称して別のIPアドレスに「なりすまし」を行う攻撃手法。

【対策】

  • 他の階層の情報と合わせて検査をする。
  • パケットの前後関係を調べる。

踏み台攻撃

第三者への攻撃を行う際に、他の人のPCを経由して行う攻撃。

Dos攻撃

Flood攻撃

意図的にアクセスを集中させ、許容量をオーバーさせて業務妨害を行う攻撃。

  • TCP SYNC Flood
    TCPの3ウェイハンドシェイクを悪用した攻撃。
    大量のコネクション確立要求を出して、資源を枯渇させる。
    要求だけなので、架空のIPアドレスを使用できる。

  • Connection Flood
    コネクションを確立させてリソースを消費させる。
    コネクションを確立させるので、実際のIPアドレスが必要になる。

  • UDP Flood
    TCP SYNC FloodのUDP版。
    コネクションレス型で、シンプルな通信のため、比較的容易に実行できる。

  • Ping Flood(ICMP Flood)
    pingを大量に送りつけて、リソースを消費させる攻撃。
    pingに反応しないようにする対策が一般的。

DDoS攻撃

分散Dos攻撃
大量のマシンからDos攻撃を行う。
大規模かつ、攻撃マシンが特定しづらい状態を作る。

分散反射型DoS攻撃

標的に偽装してSYNを送り、SYN/ACKを標的サーバーに遅らせる手法。
標的は身に覚えがないので、応答はしない.
SYN/ACKを送っている方は応答がないため、送り続ける。

同様のやり方をDNSを使って行うDNSリフレクション攻撃がある。

Webシステムへの攻撃

Webビーコン

メールやWebページに画像を埋め込み、ユーザの行動・情報を収集する手法。

  • 目的
    • 標的の行動監視
    • マーケティングや準備行動
  • 対処
    • メールをテキストとして読み込み
    • 画像をブロックする

フィッシング

信頼しているサイトになりすまして、重要情報を窃取する攻撃方法。
似たURL, なりすましサイトのURLを踏ませるリンクをメールで送るな脅して誘致する。

ファーミング

DNSキャッシュポイズニングをつかったフィッシング。
怪しいリンクを踏まないだけではなく、サーバーのディジタル証明書を確認する必要がある。

スクリプト攻撃

クロスサイトスクリプティング(XSS)

不正スクリプトをWebページに埋め込み、それを見た利用者のマシン上で不正スクリプトを実行させる。

クロスサイトリクエストフォージェリ(CSRF)

ログイン状態を乗っ取り、不正利用する手法。

DNSキャッシュポイズニング

偽情報を蓄積させ、不正サイトへ誘導する手法。
正サーバーへの問い合わせ時、返答より先に不正な情報を含む内容を返すことで、不正情報を蓄積させる。
対策としては、トランザクションID・ポート番号をランダムに設定し、応答待ちを察知させないことが重要。

DNSSEC

DNSの名前解決にディジタル証明書を組み込んだ方法。
偽装した応答を防ぐため、キャッシュポイズニングが起こらないはず。

DNS Changer

やることはDNSキャッシュポイズニングと一緒。
用意した不正なサーバーを使用して名前解決を行わせる。

ソーシャルエンジニアリング

IT技術を使わずに人間の錯覚や心理的要素をついて行う情報窃取攻撃。
主なことは以下のとおり。

  • ショルダーハッキング
    利用者が暗証番号を入力しているのを肩越しから見る方法。
  • スキャベンジン
    ゴミ箱を漁って情報を入手する方法。
  • 会話
    業務担当者同士の会話を聞いて情報を入手する方法。

対策としては、社員に対するセキュリティ教育と最小限の権限の付与。

コンピューターウィルス

ウィルスの3機能

  • 自己伝染機能
  • 潜伏機能
  • 発病機能

どれかに該当すればウィルス確定。

ウィルスの分類

ウィルスの感染経路

  • メール感染
    添付ファイルやHTMLメールによる自動ダウンロードでウィルスが送られる。
  • リムーバブルメディア感染
    USBにウィルス仕込んで、接続した瞬間にウィルスをコピーする。
  • Web感染
    脆弱性をついたり、有用なファイルに見せかけてダウンロードさせる。

マクロウィルス

Excelのマクロなどを利用したウィルス。
馴染み深いファイルで配布できるので、信用させやすい。

ボットネット

クラッカーの思い通りに動くゾンビパソコンで構成されたネットワークのこと。

スパムメール

迷惑メール。
対策としては下記。

  • メールサーバーの第三者中継を禁止
  • 送信ドメイン認証で送信者の正当性を確認する

コンピューターウィルス対策

発見方法

パターンマッチングが一般的。
パターンファイル(シグネチャ)を作り、疑わしいデータと比較することで炙り出す。
ファイルを圧縮してあるなどで対策されていることもある。

  • パターンファイルの更新を確実に行う。
  • パターンファイルの更新を自動化する
  • パターンファイルの更新を集中管理する

パターンマッチング以外の検出

感染した時の対処方法

  • 初動対応
    • システムの利用停止
    • ネットワークからの遮断
    • 利用者へのアナウンス
  • 復旧
    • ウィルスと影響範囲の特定
    • 復旧手順の確立と復旧作業
  • 事後処理
    • 原因の特定と対応策の選定
    • 関係機関への届け出

初動対応

  • ネットワークからの切り離しは確実に行う
  • ウィルスの行動情報を後から調査するために、スナップショットを取るのが基本。
    安易にシャットダウンしない。

セキュリティ対策と実装

ファイヤーウォール

境界線モデル

境界線を引き、内側と外側に分ける。内側の安全を確保し、外側の外敵の侵入はシャットアウトする。

インバウンドトラフィック→外から内の通信
アウトバウンドトラフィック→内から外の通信

レイヤ3フィルタリング

レイヤ3の情報を使用して安全を確保するタイプのファイヤーウォール。
つまりIPアドレスを使用したフィルタリング。
フィルタリングには、ルール表を用いて、受信の許諾を行う。µ

気をつける事
  1. ルールの適用順序
  2. セキュリティは原則ホワイトリスト方式が望ましい
利点と弱点
  • 利点
    • IPパケットのヘッダで判断できるので高速
    • 不可が少ない
  • 弱点
    • IPで制御するので、悪意あるソフトウェアの通信を防御できない
    • 受け入れる範囲が広いので脆弱性の元になりやすい

レイヤ4フィルタリング

IPアドレス+ポート番号でフィルタリングを行う。
意図せず開いたポートを攻撃される可能性を狭めることができる。

利点と弱点
  • 利点
    • ソフトウェア単位で通信制御を行える。
  • 弱点
    • レイヤ3より負荷が増える

レイヤ7フィルタリング

IPアドレス+ポート番号+アプリケーションデータでフィルタリングを行う。 アプリケーションの情報を元にフィルタリングを行う。

利点と弱点
  • 利点
    • ソフトウェアの通信内容単位で通信制御を行える。
  • 弱点
    • レイヤ4より負荷が増える。

プロキシサーバー

代わりにWebサイトにアクセスしてくれるサーバーのこと。

メリット
  • 通信速度の向上
  • トラフィック削減によるコスト減少
  • クライアントのIPアドレスがWebサーバーに漏れない
  • プロキシサーバーに通信を集約することで、個々のPCの脆弱性をカバーできる

リバースプロキシとシングルサインオン

シングルサインオンとは、複数のサーバーにログインする必要がある場合に、どれか一つのサーバーでログインできれば自動的にログインできる仕組み。
リバースプロキシは、シングルサインオンを実現させるための実装技術。
Webサーバーに配置して、通信を分散させる。

WAF

WAFとは、Webアプリケーションファイヤーウォールの略で、Webアプリケーションを守ることに特化したセキュリティ機器のこと。
レイヤ7(アプリケーション層)の情報を元に通信可否の判断を下す。

WAFの分類

WAFとレイヤ7フィルタリング

包含関係にあり、レイヤ7>WAFの関係となっている。
レイヤ7の情報を元にフィルタリングするのが、レイヤ7フィルタリング。
レイヤ7でも、HTTPに特化してフィルタリングするのが、WAF。

DMZ

DMZとは、非武装地帯とよばれるネットワーク上の緩衝地。
サーバーを内部に置いた場合、外部との接続するための穴を開ける必要が有り、ネットワークの水準が低下する。
サーバーを外部においた場合、攻撃に対して脆弱になる。
※内・外はファイヤーウォールを基準とする。
その折衷案としてあるのが、DMZ

VPN

役割と目的

  • 暗号化を使い、公共の伝送路に不可侵な伝送路を作る。
  • 認証で端末のなりすましを防止する。

種類

  • インターネット-VPN
    伝送路としてインターネットを使用する方式
  • IP-VPN
    通信業者の広域IP網を使用する方式

VPNのモード

  • トランスポートモード
    端末がデータを暗号化・復号化する方式。
    通信経路すべてが暗号化された状態になる。

  • トンネルモード
    VPN装置が暗号化・復号化を行う方式。
    VPN装置の間のネットワークが暗号化される。
    トランスポートよりも導入・メンテナンスコストが少ない。

IPsec

ネットワーク層で暗号化を行う。

IPsecの通信の流れ

  1. 暗号化方式を決める → IKEフェーズ
  2. 使用する鍵を決める → IKEフェーズ
  3. 出来上がったコネクションで通信する → IPsecフェーズ

SA

IPsecでは、コネクションのことをSAと呼ぶ。
SAは、制御用とデータ通信用など複数作られる。
データ通信用は、上り専用・下り専用でコネクションが作成される。

セッション確立時の認証方法

事前共有鍵の交換方法

  • メインモード
    IPアドレスを認証機能に使用する。
  • アグレッシブモード
    暗号化せずにID交換をして認証する。
  • クイックモード
    ISAKMP SAを確立し、IPsecに必要なパラメータを交換後にIPsec SAを2つ作ります。

AHとESP

IPsecは、IPヘッダだけでは必要な情報が記載できないため、オプションヘッダを付与する。
付与されるヘッダには、AHとESPの2種類がある。
IPアドレス単位で認証するため、IPアドレスが変わると再認証が必要になる。

  • AH
    認証を行う。
    パケット全体から認証用のメッセージダイジェストを作るので、IPアドレスが変わる場合、そのままでは使えない。
  • ESP
    暗号化と認証を行う。
    SPIから次ヘッダまでの情報を元に認証情報を作る。
    ペイロードから次ヘッダまでの情報を暗号化する。
    暗号化と認証が別々。

その他のVPNプロトコル

PPTP

データリンク層で暗号化と認証を行う。
暗号化のアルゴリズムは、RC4固定で、アルゴリズム選定の必要はない。
送信と受信で異なる鍵を使う。

SSL-VPN

SSLVPNに利用したもの。
SSLは、ほとんどのブラウザが対応しているので、汎用性が高い。
SSL-VPN装置には、認証のためのディジタル証明書が必要。

IDS/IPS

IDS

侵入検知システム。

種類

  • ホスト型IDS(HIDS)
    ホストにインストールして、ホストを監視する。
  • ネットワーク型(NIDS)
    ネットワーク上に配置して、ネットワークのパケットを監視する。
    監視対象のパケットが流れているネットワークに配置しないと無意味。

検知種類

  • Misuse検知法
    不正な攻撃パターンを蓄積して、パターンマッチングで検知する。
  • Anomaly検知法 システムの正常な状態を記憶し、そこから外れる場合に警告する。
    誤検知が多めで、正しく動作するまでに時間がかかる。(正常な状態を把握するため)

IPS

侵入防御システム
IDSの発展型のため、基本的なことは似ている。
ネットワークの境界に置く必要がある。

不正データの排除

入力データ

  • 利用者が入力したデータは信用しない
  • 利用者が入力したデータは安全に加工してから使う

エスケープ処理

処理において特別な意味を持っている文字を、別の文字に置き換えて無害化する処理のこと。
クロスサイトスクリプティングに対して有効な対策手段。
使っては行けない記号は、処理系によって異なる。
使う直前にエスケープ処理をする。
システム変更時にエスケープ対象が変わっていないかも注意する。

静的プレースホルダ

SQLインジェクション対策として行われる。
SQL文を組み立てる手法の一つで、入力データを入れる場所をあらかじめ確保しておき、他の箇所は構文解析を済ませておく手法。
バインド処理はDBで行う。

動的プレースホルダ

バインド処理をWebアプリケーションで行う手法。

RASIS

システムの信頼性に関連する要素のこと。

  • Reliability:信頼性
    連続して使える時間。数値化の尺度としてMTBF(平均故障間隔)が使われる。
    MTBF = 1 / λ λは故障率
  • Availability:可用性
    システムが使える状態にある割合。
    稼働率は大きいほどよい。
    稼働率 = MTBF / (MTBF + MTTR)
  • Serviceability:保守性 故障してから復旧までの割合。
    数値の尺度としてMTTR(平均修理時間)が使われる。
    MTTR = 1 / μ μは修理率
  • Integrity:完全性
    データ改ざんや不整合が発生する度合い。
  • Security:安全性
    クラッカーの攻撃や自然災害などでシステムが脅かされている割合。

フォールトトレランス

フォールトアボイダンスとフォールトトレランス

  • フォールトアボイダンス
    精度・品質の高い製品を利用し、故障の確率を減らす手法。
    故障をゼロにすることができず、コストが高い。
  • フォールトトレランス
    故障時の対策を考え、業務が問題なく行えるようにする手法。
    コストが低い

フォールトトレランスの種類

  • フェールセーフ
    故障した時に安全に止める
  • フェールオーバー
    故障した時に代替機に処理を引き継ぐ
  • フェールバック
    フェールオーバーした際の復帰処理のこと
  • フェールソフト
    機能を一部切り捨てて、全停止しないようにする
  • フールプルーフ
    人為的ミスを防止する仕組み

  • 覚え方 ソフトは続行、政府はやめる。
    バックは戻して代わりはオーバー

バックアップ

バックアップ計画

バックアップ時に決めなければいけない項目は以下。 - バックアップ取得範囲 - バックアップ頻度 - バックアップ取得方法 - バックアップ/リストアに使える時間 - 世代管理 - バックアップ取得場所

バックアップ方法

バックアップ方法 バックアップの速さ リストアの速さ
フルバックアップ 遅い 速い
差分バックアップ 普通 普通
増分バックアップ 速い 遅い
  • フルバックアップ
    毎回全てのデータを取得する。バックアップに時間が掛かるが、1ステップで復元できる。
  • 差分バックアップ
    基準日から変更があった分だけバックアップを取得する。
    復元は、運が良ければ1回でリストアできる。そうでなければ2回でリストアできる。
  • 増分バックアップ
    基準データをバックアップ後、次の日には基準データからの差分を取得する。
    その次の日は前日のデータからの差分を取得する。

バックアップ運用

  • バックアップ作業のログは残しておき、定期的に監査する。
  • 定期的なチェックでバックアップが空振りしていないか確認する。

バックアップデータの廃棄

バックアップデータは重要なデータであることが多い。
確実なデータ消去手段を講じ、データの発生から消滅までのライフサイクル管理を行う。

  • 遠隔地保存
    バックアップデータは遠隔地に保存するのが望ましい。
    狙われるのが、遠隔地へのデータ移送手段。

ネットワーク管理技術

SNMP

通信機器をネットワーク経由で監視・制御するためのプロトコル
SNMPマネージャとSNMPエージェントで二分され、管理情報(PDU)をやり取りすることでネットワークを管理する。 Trapでイベント通知を行う。

暗号化と認証

暗号化方式

暗号化アルゴリズムと鍵が構成要素。 暗号化アルゴリズムは既知なので、鍵を秘匿することで暗号化を成立させる。

暗号化とハッシュ

暗号化 = 複合することが前提で、情報を安全に伝える。
ハッシュ = データを元に戻せない。情報が改ざんされていないか検証する手段。

共通鍵暗号

暗号化と復号化に同じ鍵を使う暗号化方式。
特徴として以下の性質を持つ。
- 送信者と受信者で同じ鍵を使う。 - 鍵は秘匿しておく - 新規の通信相手には新しく鍵を作る。

AES

共通鍵暗号方式の一種。以下の特徴を持つ。

  • DESの安全性が危ういために作られた
  • 暗号化アルゴリズムは公募
  • 鍵長は128bit、192bit、256bitから選べる。

共通鍵暗号の欠点

  • 鍵の交換が面倒
  • 鍵の管理が面倒

新しい通信相手ができたら鍵を作る必要があり、ネットワークが大きくなるに連れて膨大な数の鍵を生成・管理する必要がある。
必要な鍵の数は、以下の数式で求められる。 n(n-1) / 2 n:ネットワークに参加している人数

公開鍵暗号

公開鍵暗号の特徴

  • 公開するのは暗号鍵
  • 秘密にするのは復号鍵
  • 公開鍵は、暗号を作ることしかできないので悪用されにくい

S/MIME

電子メールの機能であるMIMEに手を加えたもので、暗号と認証機能が付加されている。
暗号には公開鍵暗号、認証にはディジタル証明を使用する。
SMTPボディ部のみ暗号化される。(メール本文)
SMTPヘッダ部は暗号化されない。(送信元アドレス、宛先アドレス、件名)

認証

パスワード認証

知識による認証。合言葉形式で、知り得ない情報を知っている/知らないで本人確認する。
漏れやすく、広まるのが早い。
特有の運用方法が必要。

予期せぬ伝播対策

  • 人前でパスワードを言わない
  • メモで残さない
  • 既知の情報をパスワードにしない
  • 長文で複雑なパスワードにする
  • 定期的な変更

パスワード認証の種類

PAP

  • パスワードが平文でネットワークを流れる
  • PPPで使われていた認証方式

CHAP

  • パスワードはネットワークに流れない
  • チャレンジレスポンスで認証する

ワンタイムパスワード

  • パスワードを使い捨てにする方法
  • 盗聴・推測されても使いまわせないので、不正使用しにくい

ワンタイムパスワードの種類

  • S/KEY
    サーバーとクライアントで同じパスフレーズを登録し、サーバーで作成したシードとパスワードをシーケンス番号-1回ハッシュ化して送る。
    ワンタイムパスワードがネットワーク上を流れない。
  • 時刻同期方式 パスワード作成に時刻を利用し、チャレンジコード交換の必要性をなくす。
    時刻からトークンコードを生成して、個人識別番号(PIN)と組み合わせてワンタイムパスワードとする。
    時刻のズレをどの程度許容するかが重要。

バイオメトリクス認証

生体認証とも呼ばれ、人の生体情報を手がかりに本人確認する方法。
コピーが困難で、忘れることがないのが特徴。
ただし、コピーされるとパスワードの変更ができない。

指紋

指紋の形を本人確認の情報とする。
認証突破が生体認証のなかでも容易。

虹彩、網膜

目の情報を使って本人確認する方法。
精度が高いものの、高コストになる。

声紋

声から作られるエンベロープパターンを元に本人確認する。
精度は低く、喉を痛める・加齢で誤認症しやすい。

その他のパスワード強化方法

  • ソルト
    パスワードをハッシュ化して保存する方式。
  • 二要素認証
    パスワードの他にも認証ステップを必要とする方式。
    登録しておいた携帯宛てにパスワードを送るなどが該当する。

ディジタル署名

公開鍵の仕組みを応用して本人であることを証明する。

役割

  • なりすましの検出
  • 改ざんの有無の検出
  • 事後否定の防止

ディジタル署名の流れ

  1. 送信者の文章を秘密鍵を使って暗号化する
  2. 受信者は公開鍵を使って平文に直す
  3. 複合できれば送信者本人であることが証明できる。→本人しか持たない鍵で暗号化したため

公開鍵基盤(PKI)

公開鍵の信頼性を向上させるために、第三者認証が必要になる。
認証局(CA)と呼ばれる機関に署名してもらったディジタル署名を発行してもらうことで信頼性を向上させている。
盗聴や盗難にあった場合は、認証局ディジタル署名を失効させることでなりすましの可能性を防ぐ。

登録局と発行局

認証局は、ディジタル署名の登録を行う登録局(RA)と発行を行う発行局(IA)に別れる。

認証の階層

全ての認証局ディジタル署名をブラウザにインストールするのは不可能。
そのため、認証局間に階層を作り、上位の認証局をインストールしていれば、その認証局が認証した下位の認証局は認証したこととする。
階層の上位に位置する認証局をルート認証局という。

ディジタル証明書の失効とCRL

ディジタル証明書には有効期限があり、期限を過ぎると効力を失う。
有効期限内でも鍵を失効した場合は、執行させることができる。
期間内に執行したディジタル署名はCRL(証明書失効リスト)として公開される。
ディジタル署名の運用は、必ずCRLをチェックする必要がある。

タイムスタンプ

タイムスタンプは電子文章に挿入し、その時点で文章が存在していたことを証明する。
時刻認証局(TSA)と時刻配信局(TA)でタイムスタンプの正当性を証明する。

認証サーバ

RADUIS

Kerberos

レルムは3つの要素で成り立つ 1. AS(認証サーバ)
クライアントの認証をする 2. TGS(チケット発行サーバ)
認証情報を暗号化したチケットを発行する 3. KDB(鍵データベース)
共通鍵を管理する

認証プロセス

  1. ASにアクセスしてチケットを要求
  2. ASはKDBからチケットを取り出して返信
  3. チケットをTGSに送信して、サーバの仕様を要求
  4. TGSはサーバ使用許可と共通鍵を返信

SSL

  • トランスポート〜セッション層で動く
  • ディジタル署名を利用したクライアント認証とサーバ認証ができる
  • 暗号化と認証を行う
  • 暗号化アルゴリズムは選択可能

SSLのセッション確立手順

  1. サーバ認証
  2. 暗号化アルゴリズムの選定
  3. 暗号鍵とメッセージダイジェストの生成

マネジメントと法務

情報セキュリティポリシ

情報セキュリティ対策は網羅的に行い、各人・各組織間でのバラツキをなくすことが重要。
全社的に統一された文章が情報セキュリティポリシとなる。
情報セキュリティポリシは、強制力を持つことが重要で、経営層を含めた情報セキュリティ委員会の設立が必要。

ISMS

セキュリティ対策を形骸化、死文化しないための仕組み。
守ることができるポリシを作ることが大切。

ISMSの運用

  • 適用範囲を決める
  • 情報資産管理台帳を作る
  • 情報セキュリティ委員会の設立

セキュリティシステムの運用

セキュリティパッチの適用

  • ベンダーのセキュリティパッチ公開方法と周期を把握しておく
  • 製品選択時は、パッチ適用時のダウンタイムを考慮する

Exploitコード

研究者やベンダーが公開する脆弱性情報。
クラッカーの攻撃にも利用されるので、ゼロデイ攻撃が生じやすい。
Exploitコードが公開されたら情報収集や対応方法の策定を迅速に行う。

ログ収集

ログの収集は、インシデント発生時に起こった問題の分析や対応の手がかりを得られる。
ログは取りっぱなしではなく、常時監視する必要がある。

サービスマネジメント

SLA

サービス水準の合意のことで、提供側と利用側が合意して明文化する。

ITIL

サービス管理のベストプラクティスのこと。

セキュリティ教育

利用者教育

セキュリティ教育=みんな受けたくない
受講の義務化、罰食の規定をしないと受講率はあがらない。

セキュリティ教育の限界

大きなリスク要因は内部犯で、セキュリティ教育によってリスクを減らすことができるが、ゼロにはならない。

セキュリティインシデントへの対応

初動対応

インシデントの初動対応=被害を抑えること
自分一人で対応できると思っては行けない。
対応すると二次被害が拡大しやすい。

管理者の初動対応

  1. 後から分析できるようにスナップショットを取って、ネットワークから切断する
  2. システムへの影響を評価する
  3. 社員への告知
  4. 復旧作業をする
  5. 報告内容や作業記録を文書にして残す

システム監査

  • システム監査
    システムに対して経営活動全般の評価と改善を行う
  • セキュリティ監査
    情報資源全般に対してセキュリティの構築と意地を確認する

監査人の立場による種類分け

  1. 第一者監査:組織内で行われる監査(内部監査)
  2. 第二者監査:監査を受ける組織の利害関係者による監査
  3. 第三者監査:独立した監査機関による監査

監査における基準

  • システム監査基準
    監査人の行動規範。
  • システム管理基準 監査の合否を判断するかの基準

監査は、基準の他にも監査判断を行うための証拠(監査証拠)が必要。

監査人の適格性

  • 倫理的行動
  • 公平/公正な報告
  • 職務遂行に必要な力量
  • 独立性
  • 証拠に基づく客観的アプローチ

監査手順

  1. 監査計画を立てる
  2. 文書レビュー
  3. 現地監査の準備
  4. 現地監査の実施と監査証跡をもとに調書を作る。

  5. 修正→不適合状態の解消

  6. 是正処置→不適合の根本原因を除去

国内ガイドライン

法令

コンピュータ犯罪に関する法令

不正アクセス禁止法

不正アクセスを禁じる法律で、下記に該当するものを不正アクセスとする。
- ネットワークを介すること - アクセス制御されたシステムであること - 正当な権限を持たずにアクセスすること

刑法

  • 電磁的記録不正作出供用罪
    電磁的記録を不正に作って間違った仕事をさせる行為への罰則
  • 支払用カード等電磁的記録不正作出罪
    キャッシュカードの偽造
  • 不正指令電磁的記録作成罪(ウィルス作成罪)
  • 電子計算機破壊等業務妨害
    物理的破壊、不正データの投入などの業務妨害
  • 電子計算機使用詐欺罪
    業務システムを不正利用して金銭を設けることを処罰する

不正競争防止法

ライバル会社のコピー商品、デマの拡散、営業秘密の不正入手を禁じる法律。
営業秘密が成立条件は以下。
- 秘密として扱われ管理されている - 営業で有効な情報 - 周知されていない

個人情報保護法

個人情報を取り扱う事業者の責任を明確化したもの。
目的を特定し、それ以外のことに使うことを禁じる。
漏洩を防ぐ措置を講じる必要があり、本人同意を得ない第三者への提供を禁止する。

知的財産権

ソフトウェア開発技術とセキュリティ

システム開発のプロセス

共通フレーム2007

  • システム計画
    対象業務を分析・確認してモデル化する。
  • 業務要件定義
    システム化対象を決め、責任・権限を決める。
  • システム要件定義
    システム化範囲の特定と機能の明確化を行う。
  • システム方式設計(外部設計)
    • システムのサブシステムに分割
    • 画面・帳票のデザイン・レイアウトを決める
    • システムで使うコードの決定
  • ソフトウェア要件定義
    セキュリティ仕様、データ定義の決定。
  • ソフトウェア方式設計(内部設計)
    • 機能分割
    • 入出力詳細設計
    • 物理データ設計
  • ソフトウェア詳細設計(プログラム設計)
    ロジックの決定とモジュール分割
  • ソフトウェアコード作成
    プログラミング
  • テスト
    設計通りに動くか確認する

CMMI

システム開発を行う組織の評価

  • レベル1:プロセスがない
  • レベル2:属人的な状態
  • レベル3:一貫性のあるプロセスの確立
  • レベル4:プロセスの定量評価してフィードバックできる状態
  • レベル5:環境の差異に応じて最適化できる

ソフトウェアテスト

プロセスによる分類

  • 単体テスト
    モジュール単独の動作テスト
  • 結合テスト
    モジュール間の連携テスト
  • システムテスト
    要件を満たしているか確認するテスト
  • 検収テスト
    要求事項が満たされているか確認するテスト
  • 運用テスト
    実運用と同じ条件で行うテスト

結合テストの種類

  • ビックバンテスト
    個々に作られたモジュールを一気に結合してテストする。
    障害がなければすぐに終わるが、トラブルがあると解決が難しい。
  • ボトムアップテスト
    下位モジュールから上位モジュールへと結合していくテスト
    上位モジュールがない場合はドライバを使って代価する。
  • トップダウンテスト 上位モジュールから下位モジュールへと結合してテストする。
    下位モジュールがない場合はスタブを使って代価する。

視点による分類

テストデータ設計

  • 同値分析
    データの性質ごとに分類して、その分類の中の代表値を使ってテストする。
  • 限界値分析
    境界値に注力して作成するテスト。

まとめてみて

まとめて満足してはいけない。
過去問をやらないと
この時期だと手遅れな気がするが。