セキュリティ

##セキュリティ被害が起こる背景
* ソフトウェア、ハードウェア、通史、サービスなどプログラムやシステムの脆弱性によるもの
* 正しいセキュリティ知識の欠如、リスクの高い業務設計、運用によるヒューマンエラーによるもの。


##セキュリティ侵害の例
* webページの改ざん
* 個人情報や機密情報の漏洩
* サービスの停止
* 他社を攻撃するときの踏み台


##IDとパスワード認証の仕組み

|                    名称                     | 詳細                                                         |                           設定方法                           |
| :-----------------------------------------: | :----------------------------------------------------------- | :----------------------------------------------------------: |
|               ベーシック認証                | 最も一般的な方法。サーバ側が管理するIDとPWに一致すれば認証が成功となる。IDとPWは平文で通信されるため、ネットワークが盗聴されると盗まれる可能性がある。ユーザアクセスが固定されている場合はIPアドレスによるアクセス制限を加えることが望ましい。 | `.htaccessファイル`にベーシック認証用の設定。`.htpasswdファイル`にIDとBase64でエンコード済みのパスワードを記載。 |
|              ダイジェスト認証               | IDとPWによる認証だが、通信の際、MD5で暗号化される。暗号化されたデータは解析が困難であるため盗聴のリスクが少ない。 |                             同上                             |
|              データベース認証               | IDやPWをデータベースに格納する方法。多数のID,PWの運用に向いており、またデータベース内にPWを不可逆暗号化して保存することでデータが漏洩してもパスワードが判明しないような対策をとることができる。 |                      データベースに設定                      |
|                   OpenID                    | さまざまなwebサイトなどで共通のID情報を使うことができる認証方法である。ユーザ名としてwebサイトのURLやドメイン名を利用している。 |                                                              |
|            ワンタイムパスワード             | ネットバンキングなどの高いセキュリティが求められるサービスなどで利用される。セキュリティトークンと呼ばれるハードウェアやプログラムを利用して、アクセスの都度作成される使い捨てのPWのこと。 |    セキュリティトークンと呼ばれるハードウェアやプログラム    |
| LDAP(Lightweight Directory Access Protocol) | ディレクトリデータベースという、ネットワークを利用するユーザ名やマシン名などの様々な情報を管理するためのデータベースへアクセスするための通信プロトコル。IDとPWをLDAPサーバで一元管理することで複数のサーバやwebサービスへのアクセスを可能にしている。 |                   ディレクトリデータベース                   |

##個人識別とCookie
Cookieはクライアントサイドだけで完結するセッション管理機能。
代表的な用途として、IDとPW認証による会員サイトのログイン状態管理がある。
サーバ側で認証が成功すると、セッションID割当て、Cookieとしてクライアントに通知する。
Cookieそのものは、ASCII文字列で構成されたwebサイト独自の番号や暗号化されたテキストファイルであり、ユーザのHDにCookieファイルとして保存される。

暗号化されていないCookieファイルは盗まれて利用される可能性があるため個人情報を含むセッションはSSLによる暗号化された通信状態で行うことが望まれる。


##マルウェア
悪意のあるソフトウェア全般のことをマルウェアと呼ぶ。マルウェアが行う活動は以下の種類がある。

* 入力情報を外部に送信
* ソフトウェアをダウンロード
* 特定のwebページを表示する
* パソコンへの侵入口を作成、設定する
* リモートで一斉操作されDDos攻撃に参加させられるなど


代表的なマルウェア

| マルウェア   | 内容                                                         |
| ------------ | ------------------------------------------------------------ |
| アドウェア   | 広告表示を目的としたソフトウェア。                           |
| スパイウェア | デバイスの入力情報、ブラウザの閲覧情報から個人情報やパスワードなどを取得し第三者に自動送信するソフトウェア。 |
| トロイの木馬 | あたかも有用なソフトウェアと見せかけてインストールさせ、コンピュータにアクセス可能な侵入口を作成する。 |
| ウィルス     | 自身で自己複製することが可能で、感染拡大する機能を持つ。独立して実行できないプログラムの断片であるため添付ファイルや外部記憶媒体を媒介にして感染を広げる。 |
| ワーム       | ウィルスと同等の活動を行うが、自身で独立して実行可能なプログラムである。 |



###マルウェアへの対策
* マルウェアの検出だけでなく、侵入を防ぐ機能を有している常時監視型のセキュリティソフトを起動しておく。
* 素性のわからないwebサイトを訪れない。怪しいソフトウェアをダウンロードしない。
* 実行できる形式のファイル（com,bat,exe,pif,scr）が添付されたメールを開封しない。これらはクリックだけで実行する。
* 2次被害防止の為、LANの利用を停止する。セキュリティソフトを利用しマルウェアの検出駆除を行う。
* 駆除できない場合、重要なファイルを退避させた後、OSの再インストールを行う。


##様々なセキュリティ対策
1.　ネットワークwebサイト・サービス
2.　OS
3.　ハードウェア
4.　メール
5.　その他


##1. ネットワークのセキュリティ
###不正アクセス
他人になりすましたり、アクセス制限されているコンピュータに不正な命令を送ってアクセスする行為のこと。

* なりすまし
* セキュリティホールを攻撃してアクセス制限を回避
* 他のコンピュータのアクセス制限を解除して不正アクセス

###ソーシャルハック
社会的に脆弱な部分から情報を抜き出す手法

* ユーザのフリをして管理者に電話をかけアクセス情報を抜き出す
* ユーザの家や会社に忍び込んでアクセス情報を手に入れる
* 生年月日などからパスワードなどの情報を推測する。

###無線LANのセキュリティ
* 無線LANの暗号化にはWEP,WPA,WPA2などが使われている。
* MACアドレスやSSIDによるアクセス制御を利用できるが、MACアドレスは無線LAN子機の設定で容易に偽装できること、SSIDは通信の傍受で簡単に知ることができるため、それぞれ単独での制限はセキュリティ的に危険である。



##通信の暗号化
インターネットでは通信内容が傍受されることを完全に防ぐことは難しい。
これにはHTTPプロトコルがセキュリティ機能を持っておらず、盗聴されても検出手立てがないという問題があるため。
結果盗聴されても解読困難にすれば良いということから暗号化流れが生まれた。

###暗号化の流れ
1. 保護されるべき情報を「鍵となる情報」と「一定のルール」で暗号化する
2. 暗号化された文章を送信する
3. 送信先で暗号化された文書を「鍵となる情報」と「一定のルール」で複号する。


|     暗号鍵     | 詳細                                                         | 種類                                       |
| :------------: | :----------------------------------------------------------- | ------------------------------------------ |
| 共通鍵暗号方式 | 暗号化と復号化を同じ鍵を用いて行う暗号方式。どちらか一方の鍵を知られてしまうと情報が漏洩するため運用時には鍵は通信対象の２者間以外には知られないようにする必要がある。暗号化、複合処理が高速なため、傍受される可能性が低い場合に用いられる。WEP,WPA,WPA2など。SSLの一部も。 | WEP,WPA,WPA2（無線LAN）など。SSLの一部も。 |
| 公開鍵暗号方式 | 暗号化、復号化それぞれに専用の鍵を用意。複合化の鍵がなければ解読できないので、暗号化の鍵は公開される。共通鍵よりも暗号化復号化に時間がかる。 | SSLの一部。                                |実際のデータの暗号化には、その場限りの共通鍵を作成し、その共通鍵の配送を公開鍵で行うことが一般的である。


##VPN
下記参照。

[5分で絶対に分かるVPN]（http://www.atmarkit.co.jp/ait/articles/0204/27/news003.html）

外出先からインターネット経由で安全に社内へ接続したり特定のビジネスパートナーに安全にデータを提供するニーズが高まっている。かつては膨大な費用を払い専用線をを利用しインフラを構築していたが、現在はVirtual Private Networkと呼ばれる、パブリックネットワークを使って（仮想的に）プライベートネットワークを実現しようとするものがVPNである。（一般道路を利用するが、専用の車で情報を渡しに行くようなイメージ）

###インターネットVPN
一般的なインターネットのアクセス回線を利用するVPN接続。
安価に環境構築ができるが、不特定多数の利用者が存在するため、トラフィック増大による通信の遅延や、通信途中でのデータ盗聴や改ざんのリスクが高い。
インターネットVPNの機能として、通信を暗号化する「トンネリング」と「通信パケットを暗号化する機能」がある。

###IP-VPN
閉域網を利用する。トラフィック混雑時も一定の帯域が保障され、盗聴や改ざんのリスクが低いが、その分コストは高い。
IP-VPNの機能として、「MPLS（Multi Protocol Label Switching）」と呼ばれるものがある。パケットに「ラベル」と呼ばれる2種類のヘッダ情報を付与する。一つ目のラベルは転送経路を示し、二つ目のラベルでユーザーのネットワークを識別する。




##2. WEBサイト・サービスのセキュリティ
|            名称            | 詳細                                                         |
| :------------------------: | :----------------------------------------------------------- |
| OSコマンドインジェクション | 外部のコマンド呼び出しプログラムの不備を利用し管理者外としていないOSコマンドを実行する攻撃。サーバ内の情報漏えいや管理者権限を乗っ取られる可能性がある |
|      パラメータ改ざん      | webサイトへ送信するパラメータを管理者が意図しないものに書き換える攻撃。データ改ざんや情報漏えいの危険がある。 |
|    ファイルアップロード    | アップロードするファイルに悪意あるコードを含めることでXSSを始めとしたJSを利用した攻撃が可能になる。 |
| HTTPヘッダインジェクション | サーバへの攻撃により、そのサーバにアクセスしたユーザへの攻撃が可能になる。サーバからwebブラウザに送信するHTTPレスポンスヘッダを出力するプログラムの不備を利用し、webサイト管理者が意図していないHTTPヘッダをユーザのwebブラウザへ読み込ませる攻撃。 |


###これらの攻撃に対する対策
* ユーザの入力内容の検証
* パラメータに頼らない
* セキュリティが考慮されたライブラリの利用


##3. OSのセキュリティ
OSには基本的にアクセス権限の決定機能やファイヤーウォールなどのセキュリティ機能が備わっている。

###ファイヤーウォール
外部ネットワークからのアクセスを制御する機能。
パソコンへの侵入、外部ネットワークへの通信を監視し、検知遮断することが目的。

###ユーザ権限設定機能
プログラムの実行やファイルのアクセス権限を細かく設定でき、特定のユーザにしかできない操作を定義する機能。


###バックアップ機能
ウィルスやワームなどの感染などでシステムに異常が発生した場合にはバックアップからの復旧が必要となる。
MacOSの場合、TimeMachineという専用アプリケーションが標準で備わっている。しかしバックアップ用のハードディスクドライブが別途必要。

##4. ハードウェアのセキュリティ
###自社サーバ室での運用
   * サーバ室を施錠管理し、サーバ管理者以外を入退室できないようにする。
   * 停電時に備え、UPS(無停電電源装置)を設置する。またこれだけではサーバの安全な停止くらいしか利用できないので自家発電装置の導入などを検討する必要がある。

###データ・センターでの運用
データセンターは高い信頼性を持つ設備郡である。

* 空調、耐震、電力、消化など、あらゆる想定に備えている。
* 入退館についてはICカードから指紋認証、生体認証など様々な認証方法を行う。
* 停電対策としてUSPはもちろん、無給油状態でも24時間から48時間の電力を蓄えた電力設備を持つ。


また外部設備以外にもハードウェアのセキュリティを高めるための方法がある。

|               名称               | 詳細                                                         |
| :------------------------------: | :----------------------------------------------------------- |
|        ディザスタリカバリ        | 大切な資源が1箇所だけであることは好ましくない。地理的に離れた複数のでデータ・センターにデータを分散させバックアップ・同期をとっておき、いざというときに復旧させる考え方。 |
| ソフトウェア・ファイヤーウォール | webサーバや組織内のネットワークに不正なアクセスを遮断するため、OSのモジュールとして組み込むもの。 |
| ハードウェア・ファイヤーウォール | 不正アクセス監視・遮断に特化した機器。高機能で安定して       |
|       ハードウェアの冗長化       | サーバ機を複数用意し、一つが故障してもシステムが停止しづらい状況を作ること。 |



##メールのセキュリティ

|         名称         | 詳細                                                         |
| :------------------: | :----------------------------------------------------------- |
| ウィルスなどへの感染 | 添付ファイルつきのメールを開くことで感染。データの破壊、削除、改ざん、流出などの恐れがある。 |
|     スパムメール     | 受診者の意思を無視して多数配信されるメール。                 |
|         盗聴         | 通常メールは暗号化されずにネットワーク上に流れるため送信、中継、受信のそれぞれの段階で盗聴される恐れがある。 |

###対策方法
| メールの流れ | セキュリティ対策                                             |
| ------------ | ------------------------------------------------------------ |
| 作成時       | RGPや、S/MIMEでメール本文を暗号化する規格を利用。            |
| 送信時       | SMTP-AUTHというユーザ認証機構を、SSL通信などの暗号化の仕組みとともに利用。 |
| 受信時       | POP3やIMAP4ではユーザ認証によるアクセス制御が可能である。暗号化通信にはPOP over SSLや、IMAP over SSLなどを利用する。 |



###その他の意識すべきセキュリティ
* 通信内容の傍受
* なりすまし被害
* ウイルス感染
* パソコンなどの盗難
* メール添付やファイルのアップロードによる漏洩
* ファイルの誤った公開
* ドメインや電子証明書の有効期限切れ



##個人情報とプライバシー
個人情報とは以下の2点となる。

* 「特定の個人を識別することができるもの」
* 「他の情報と容易に照合することができ、それにより特定の個人を識別することができるもの」