あらけす屋>情報処理技術者試験
午前問題対策(情報セキュリティ)
セキュリティ攻撃/セキュリティ対策/その他
セキュリティ攻撃
- コンピュータ犯罪の手口
- サラミ法
不正行為が表面化しない程度に、多数の資産から少しずつ詐取する方法
多数の資源から全体への影響が無視できる程度にわずかずつ資産を窃取する方法
- スキャンベンジング(ゴミ箱あさり)
プログラム実行後のコンピュータ内部、あるいはその周辺に残っている情報を密かに入手する方法
捨てられたプリンタ出力の結果などから情報を入手する
- トロイの木馬
プログラムの一部を入れ替えて、本来の仕様通りに機能させながら、データの不正コピー、悪用、改ざんなどの不正を意図的に実行する
- セキュリティ攻撃
- ハッキングの手順
- アドレススキャン:pingを利用して、インターネット上につながっているサーバを検出する
- ポートスキャン:サーバ上でどのようなソフトが稼働しているかを、TCPポートをスキャンすることによって確認する
- バナーチェック:稼働中のサーバソフトの名前とバージョンをチェックする、通常はTelnetを利用する
- バッファオーバフロー:サーバソフトのバグを利用して、バッファオーバフローを引き起こさせ、そこで不正な命令を実行させる
- OSのログに記録される攻撃
通常のコネクション手続き(SYN、SYN/ACK、ACK)を行い、接続できたならば、そのポートはリスン状態ということがわかる。リスン状態でなければ、RST/ACKを返すので閉じていることがわかる。
- ネットワークプロトコルの性質を利用した攻撃
- DoS
パケットの断片化と再構築による攻撃
パケットの到着順序が順不同になり、データを組み立てることでシステムの負荷が高まる
特定のサーバに大量のリクエストを送信することで、CPUやメモリを使用不能にさせる攻撃
対策:アクセス制御の設定や特定サイトからの要求を遮断する
- DDoS攻撃(分散DoS)
インターネットに分散している多くのコンピュータから一斉に特定のサーバへパケットを送出し、トラフィック過剰やサーバ機能を停止させる攻撃
攻撃元が複数でそれが膨大な数になることがある
NATやNAPTの内側にあるLAN内のホストから攻撃が行われる事もある
正常なアクセスと明確に区別することが難しい
本当の攻撃元を割り出すことが難しい
- FINフラッド攻撃
負荷が重いTCP通信の終了処理を大量に行わせる攻撃
- UDPポートのスキャン
UDPパケットを送信し、"ICMP port unreachablr"というメッセージが帰ってきた場合、ポートは閉じられており、このメッセージが返らない場合は、ポートがリスン状態であると考えることができる
- パケットの増幅機能を必要とするDoS攻撃
ソースアドレスを偽装したICMPブロードキャストパケットをルータに送り、ターゲットホストにICMPエコー応答を受信させ負荷を増加させる攻撃
- SYNフラッド攻撃
SYNパケットはTCPのセッション接続要求に利用されるので、このシーケンスを大量かつ中途半端に実行することで、3ウェイハンドシェイク処理が完了せず接続待ちとなる状態が大量に発生してシステムリソースを消費させる
Windowsであればnetstatを実行し、「SYN_RECEIVED」で止まっているものが多く、さらに増えているようであればSYNフラッド攻撃を受けている可能性がある
パケットフィルタリングによるファイアウォールの設定が有効
- LAND攻撃
送信元、送信先アドレスが同じSYNパケットを送信することによって、受信コンピュータをループ状態にしてしまう攻撃
- Ping of Death
非常に大きなサイズのPINGパケットを送信することによって、ネットワークに接続されたコンピュータをダウンさせる攻撃
- ICMPフラッド攻撃
ICMPリクエストパケットを高速で送信し、目標となったマシンは大量の接続処理を行おうとしてリソースを使い果たし、正当な接続も落としてしまう攻撃
- UDPフラッド攻撃
セッションという概念がないので、攻撃される側だけでなく、攻撃側のPCにも負荷がかかるので、自分のマシンからではなく第三者のPCから実行されることが多い
- OOBアタック
送信側がTCPヘッダでURGENTビットフラグを設定したパケットをNETBIOSポート(139)に送信し、受信側は、URGENT
POINTERを参照するが、このURGENY
POINTERが不正な値の時にOSがクラッシュする問題を突いた攻撃
- Fingerアタック
Fingerサービスでは再帰的なクエリをサポートしているので、攻撃者側リソース(CPU、ネットワークトラフィック)が非常に小さいのに、ターゲットに膨大なリソースを消費させることができる
- Smurfアタック
ICMPエコーパケットをブロードキャストに送り、ルータを増幅器として悪用して、ターゲットホストにICMPエコー応答を受信させトラフィックを増加させる攻撃
- ステルススキャン
Windows/UnixなどのOSではログの書き込みはアプリケーション層で動作するため、TCP(トランスポート層)でのやりとりを途中で強制的にキャンセルすれば、TCPでの情報がアプリケーションにわたらないのでログに記録されない。
- テンペスト技術(TEMPEST)
ディスプレイなどの機器から放射される電磁波を傍受し、内容を観察、解析する技術であり、電磁波遮断が施された部屋に機器を設置することによって対抗する
- DNSスプーフィング
プライマリDNSサーバになりすまして虚偽のDNS情報を転送し、キャッシュに保存されているDNS情報を偽造データに書き換える攻撃
- バックドア
企業内情報ネットワークやサーバへの外部からのアクセスにおいて、通常の経路以外で、侵入者が不正な行為に利用するために設置するもの
- フィッシング(phishing)
電子メールを発信して受信者を誘導し、実在する会社などを装った偽のWebサイトにアクセスさせ、個人情報をだまし取る
例)”本人情報の再確認が必要なので入力してください”という電子メールで示されたURLにアクセスし、個人情報を入力したところ、詐取された
- ブルートフォース攻撃
暗号解読のための攻撃法で、与えられた平文と暗号文の組に対して鍵を総当りで検索して解読を試みる
文字を組み合わせてあらゆるパスワードでログインを何度も試みる
与えられた1組の平文と暗号文の鍵候補を総当りで解読を試みる
対策:公開鍵認証の使用
- クロスサイトスクリプティング
悪意を持ったスクリプトを、標的となるサイト経由でユーザのブラウザに送り込み、その標的にアクセスしたユーザのクッキーにある個人情報を盗み取る
- ソーシャルエンジニアリング
電子的な方法を用いないで、緊急事態を装って組織内部の人間からパスワードや機密情報のありかを聞き出したり、機密情報そのものを不正に入手する行為
例)本人を装って電話をかけ、パスワードを聞き出す
- Man-in-the-middle攻撃
通信者同士が通信によって交換した公開鍵を用いて行う暗号化通信において、通信内容を横取りする目的で当事者になりすますもの
- スパムメール
多数の電子メール利用者に対する広告や勧誘などの目的で、受信者の意向とは無関係に短時間のうちに大量に送られ、場合によってはメールサーバのダウンにもつながるもの
秘匿性を維持するためOpenProxyサーバを踏み台にして送られることが多い
- グレイリスト
MTA(Message Transfer
Agent;メール転送エージェント)がメールの再送機能を備えていることを前提としたスパムメール対策
MTAからのメールを一時拒否して、MTAから一定時間後に再送があれは、これを正規のMTAとみなして接続を許可する手法
- Windowsのポート管理
ポート135はRPCで利用されているので、アカウントとパスワードを知っているとInternet
ExplorerなどのDCOM技術を使用したアプリケーションを遠隔操作される危険性がある
セキュリティ対策
- 侵入検知システム(IDS:Intrusion Detection System)
- ネットワーク監視型侵入検知ツール(NIDS)
管理下のネットワーク内への不正侵入の試みを記録し、管理者に通知する
監視対象となる情報量が多いと解析のための負荷が比較的高くなる
- ホスト型IDS
監視するホスト内に常駐し、ホスト内のキャプチャパケットやログ情報をリアルタイムに監視したり、定期的にホスト内のファイルなどの改ざんチェックを行う
導入したホスト内のみを監視する
シグネチャとのパターンマッチングを失敗させるためのパケットが挿入された攻撃でも検知できる
- シグネチャ検出型(不正検出型、パターンマッチング)
攻撃パターンに対応したシグネチャを登録しておく必要がある
多数の攻撃パターンを検知するあまり、複数の攻撃元、攻撃パターンを偽装された場合、不正アクセスの判断が困難になる
- アノーマリ検出型
未知の攻撃を検出することも可能だが、検出された異常が攻撃によるものかどうかを判断することは難しい
- ファイアウォール
- 企業内ネットワークとインターネットの接続点で、パケットフィルタリング機能などを用いて外部からの不正アクセスを防止するもの
- インターネットから内部ネットワークへの直接アクセスは阻止するが、内部ネットワークからインターネットへのアクセスは許可する
- DMZ上の公開Webサーバで入力データを受け付け、内部ネットワークのDBサーバにそのデータを蓄積するシステムにおいて、DBサーバへの不正侵入を防ぐファイアウォールの有効な設定
DBサーバの受信ポートを固定にし、WebサーバからDBサーバの受信ポートへ発信された通信だけをファイアウォールで通す
- DMZ上のコンピュータがインターネットからのpingに応答しないようにファイアウォールのセキュリティルールを定める場合には、ICMPを”通過禁止”に設定する
- パケットフィルタリング方式
IPパケットごとにフィルタリングする
特定のTCPポート番号を持ったパケットだけに、インターネットから内部ネットワークへの通過を許可する
特定のポートの通信が通過しない設定をしてネットワークを介したtelnetによるログインを禁止できる
- コネクションフィルタリング方式
TCPレベルの接続状態を監視してフィルタリングする
- アプリケーションゲートウェイ方式
アプリケーションのプロトコルごとにゲートウェイ機能の設定が必要である
コマンドの通過可否を制御する
アプリケーションのプロトコルに依存するゲートウェイ機能を提供する
電子メールの中に含まれる単語によるフィルタリングが可能
- サーキットゲートウェイ方式(トランスポートゲートウェイ方式)
TCPコネクションの様子を監視することによって、クライアントアプリケーションがサーバとのセッションを確立するときに認証処理の機構を持つ
セション層やプレゼンテーション層に割り込んでセキュリティを強化する
- ネットワークの非武装セグメント(DMZ)の構築や運用
データ保存用のサーバを、DMZのWebサーバから切り離して内部ネットワークに設置することによって、重要データがDMZに置かれることを避ける
- SSH(Secure SHell)
- ネットワーク上を流れるデータを暗号化する
- TCP22番ポートのみを使用する
- SSHを使用する場合でも、認証方式を適切に洗濯する必要がある
- SSHポートフォワーディングを利用すれば、ファイル転送やメール送信においても、インターネット上でやりとりされるパケットを暗号化することができる
- JPCERT/CC(JPCERT コーディネーションセンター)でのインシデント分類
- Scan:プローブ、スキャン、そのほかの不振なアクセス
例:ワームの攻撃が試みられた形跡があるが、侵入されていない
- Abuse:サーバプログラムの機能を悪用した不正中継
- Forget:送信ヘッダを詐称した電子メールの配送
- Intrusion:システムへの侵入
例:Dos用の踏み台プログラムがシステムに設置されていた
- Dos:サービス運用妨害につながる攻撃
例:ネットワークの輻輳による妨害を受けた
- Other:その他
- セキュリティ対策
- メッセージの改ざん
公開鍵暗号方式を応用したディジタル署名
- ペネトレーションテスト
ファイヤウォールや公開サーバに対するセキュリティホールや設定ミスがないか確認する
- ファイルへのアクセス権限の設定を行うことで、ユーザが共通に使えるプログラムの不正な実行によるデータの改ざんや破壊を防止する事ができる
- 一時記憶領域に残っている機密データの漏洩に対しては、ジョブ終了時に一時記憶領域のデータを確実に消去する
- ログの分析
アクセス状況の監視には多くの情報が必要であるが、管理業務の負荷や効率も考慮して出力設定を決定することが重要
- レプリケーション
ネットワーク上にあるデータベースの複製に対して、更新内容を自動的に伝播させる仕組み
災害発生時に短時間で復旧する
- システム障害発見時に、二次災害発生の危険性がある場合に、運用管理者が障害範囲を特定した後で取るべき処置
障害部分の切り離し
- オンラインシステムのセキュリティ対策
閉域接続機能をもつ交換回線網を利用して、回線接続の範囲を特定の利用者グループに限定することは、外部からの不正アクセスの防止に有効である
- セキュリティ対策のうち”予防”に該当するもの
セキュリティに関する社内教育を実施し、個人の意識を高める
- ハニーポット
セキュリティ上、脆弱性のあるホストやシステムをあえて公開し、受けた攻撃の内容を観察するためのもの
- “コンピュータウイルス対策基準”に準拠しているウイルス対策
ソフトウェアの導入はウイルス感染の糸口となり得るので、コンピュータにソフトウェアを導入する場合はウイルス検査を行う
- ステガノグラフィ
画像データなどにメッセージを埋め込み、メッセージの存在そのものを隠す
- 不正利用を防止するため、メールサーバ(SMTPサーバ)の設定で第三者中継を禁止する
- リストCRLに記載される情報
有効期間内に無効となったディジタル証明書のシリアル番号
- SHA-1
データ送受信に利用するアルゴリズムで、160ビットの出力データを生成し、改ざんの検出に利用する
- IPスプーフィング(spoofing)攻撃による、自ネットワークのホストへの侵入を防止する有効な対策
外部から入るパケットの発信元IPアドレスが自ネットワークのものであれば、そのパケットを阻止する
- DNSスプーフィング
DNSSECを利用し、ゾーン転送にディジタル署名を組み込む
- SQLインジェクション攻撃を防ぐ方法
サニタイジング:特殊文字の無効化操作
入力値から、データベースへの問い合わせや操作において特別な意味をもつ文字を取り除く
Webアプリケーション内で問い合わせを作成する際にバインド機構を使用する
- ネットワークシステムのセキュリティ対策
閉域接続機能を持つ回線交換網を利用して、回線接続の範囲を特定の利用者グループに限定することは、外部からの不正アクセスの防止に有効である
- 入力パスワードと登録パスワードを比較し利用者を認証する方法において、パスワードファイルへの不正アクセスによる登録パスワード盗用の防止策
パスワードをハッシュ値に変換して登録しておき、認証時に入力されたパスワードをハッシュ関数で変換して比較する
- 不正アクセス
閉域接続機能を有する交換回線網を利用して、回線接続の範囲を特定の利用者グループ間に限定する
- ネットワーク障害の原因を調べるために使用するLANアナライザの運用時に留意すること
LANアナライザにはネットワークを通過するパケットを表示できるものがあるので、盗聴などに悪用されないように注意する必要がある
- サーバへの不正侵入を試みた痕跡を発見するための手段
ログインの成功及び不成功記録の検査
- アクセスコントロール( access control )
情報システム資源に対する接近および操作の制御
- 物理的アクセスコントロール
- 論理的アクセスコントロール
アプリケーションプログラムに識別コード及びパスワードによるアクセスコントロールを組み込んだ事で、ファイル、データの改ざんのリスクがコントロール可能となる
- セキュアプログラミング
- ポリモーフィズム(クラス継承)
ひとつのインタフェース定義に対して複数の異なる機能を実装できる
この機能を悪用するとプログラマが期待したものと名称は同じで悪意のある実行コードを生成できる
- StackGuard
バッファオーバフロー対策のコンパイラ技術
”カナリア”と呼ばれるスタックのガード用の値をスタック上の関数内変数と関数からのリターンアドレスの間に配置する
- Libsafe
バッファオーバフロー対策のライブラリ技術
脆弱性があると知られているC言語の標準ライブラリ関数の呼び出しを横取りし、安全な関数と置き換える
- クロスサイトスクリプティング対策
Webアプリケーションで、クライアントに入力データを再表示する場合、情報内のスクリプトを無効にする処理を行う
- サーバへのログイン時に用いるパスワードを不正に取得しようとする攻撃とその対策
辞書攻撃:ランダムな値でパスワードを設定する
スニッフィング:パスワードを平文で送信しない
ブルートフォース攻撃:ログインの試行回数に制限を設ける
- クライアント上のアプリケーションがデータベース接続プログラム経由でサーバ上のデータベースのデータにアクセスする場合に、データベース接続プログラム間で送受信されるデータが、通信経路上で盗聴されることに対する対策
クライアント側及びサーバ側にあるデータベース接続プログラム間の通信を暗号化する
- プログラムの不正実行とデータの改ざんの防止
ファイルへのアクセス権限の設定
- 給与システムにおける、情報セキュリティのインテグリティの確保
権限のない従業員が、給与データを書き換えることはできないようにしておく
- 情報漏えい対策
-
機密ファイルが格納されていたPCの磁気ディスクを廃棄する場合、専用ツールによって、磁気ディスクの各クラスタに2種類の乱数を書き込んだ後、さらに固定値0で上書きする
-
電子メールのコンテンツフィルタリングによって、登録したキーワードと自動照合することによって、情報漏えいの疑いのある電子メールを検知して発信を停止する
-
メーリングリストの安易な作成を禁止し、不要なものを廃止する
-
ノート型PCのハードディスクの内容を暗号化する
-
機密データの漏洩の検知
機密データに対する利用者のアクセスログを取り、定期的にチェックする
- 情報の漏洩の事例
- スパイウェア
インターネットに接続したところ、パソコン内の利用者情報が知らないうちに送信されてしまった
- 盗聴
暗号化せずに電子メールを送信したところ、ネットワーク上で内容が読み取られてしまった
- ソーシャルエンジニアリング
パスワードを忘れてしまったという電話に対して、システム管理者が教えたのでパスワードが他人に知られてしまった
- スキャンベンジング
パソコンをそのまま廃棄したところ、磁気媒体上に残存していたデータが読み取られてしまった
- 電子メールのセキュリティ対策
- STARTTLS
SMTPサーバ間とSMTPサーバとメールクライアント間での通信で利用できるメール本文の暗号化技術
- POP before SMTP
POPサーバで認証されたホストに対してSMTP送信を許可する
IPアドレスベースで認証を行うため、POP接続時とSMTP接続時のグローバルIPアドレスが同一である必要がある
ダイヤルアップアクセスなどメール受信後に回線切断する方式では利用できない
- S/MIME
電子メールの内容の機密性を高めるために内容の暗号化と署名を行うプロトコルで改ざんの検出も可能
インターネットで電子メールを送信するとき、メッセージの本文の暗号化に共通鍵暗号方式を用い、共通鍵の受け渡しには公開鍵暗号方式を用いる
メールの送信を行う際に、メール本文の暗号化とメール本文に対して公開鍵暗号方式によるディジタル署名機能を実装する技術で、メールの送信元から宛先までのすべての通信を暗号化する
- POP over TLS/SSL
メールサーバから電子メールを受信する際に、認証内容や本文などを暗号化する
- SMTP AUTH
SMTPにアカウントとパスワードによる認証を実装する技術
メール本文は暗号化されない
- Webサーバのセキュリティ対策
- apacheの設定
セキュリティ面からhttpd.confの設定を修正し、バージョン情報などを表示させないようにする
その他
- セキュリティプロトコル
- SSL(Secure Socket Layer))
-
Webサーバとブラウザとの間やクライアントサーバ間の通信を暗号化して転送する場合に使用することができるプロトコル
-
効果か擬暗号方式と共通鍵暗号方式を組み合わせて使用する
-
SSLで使用する個人認証用のディジタル証明書は、ICカードやUSBデバイスに格納できるので、格納場所を特定のパソコンに限定する必要はない
-
SSLを使用するために、契約しているISPに許可を取る必要はない
-
ブラウザに登録されている証明書、または信頼関係のある認証局によって発行されたディジタル証明書を使用することによって、アクセス時のセキュリティ警告メッセージが表示されなくなる
- HTTPのほか、SMTP、LDAP、POP3などのプロトコルも使用できる
- SSLを利用するWebサーバでは,そのFQDNをディジタル証明書に組み込む
- TCPとアプリケーションとの間において、クライアントとサーバ間の認証をHandshakeプロトコルで行う
- ブラウザからWebサーバにアクセスするシステムのセキュリティ
SSLを使用すれば、通信経路上にプロキシサーバが存在していても、各利用者とWebサーバとの間での参照情報が、本来の利用者以外に開示されることはない
- インターネット経由でwwwサーバにアクセスして商取引をする場合、wwwサーバの提供者が、商取引上、信頼できる相手であるかを判断するのに有効
- NAPTによるアドレス変換が経路上で行われていても使用できる
- SSL/TLS
FTPなどの様々なアプリケーションに利用されて、アプリケーション層とTCPとの間で暗号化する
- ディジタル証明書
ディジタル証明書は、SSL/TLSプロトコルで通信データの暗号化のための鍵交換や通信相手の認証に利用される
- LDAP(Lightweight Directiry Access Protoco)
メールアドレスやユーザ情報などの問い合わせを行うプロトコル
LDAPサーバに接続するときに通信内容は暗号化される
- セキュリティに関する機関
- RA(登録機関:Registration Authority)
公開鍵証明書の発行依頼者の資格審査を行う機関
- AA(属性証明書発行機関:Attribute authority)
- CA(認証機関/認証局:Certificate Authoritiy)
- 主にインターネット上においてデータ交換を行う際、個人や法人の存在や正当性を保証し、データの発行元が信頼のおける組織であることを証明するための電子証明書を発行する
- 公開鍵の正当性を保証する証明書を発行する
- 認証局(CA)に登録されている通信相手の公開鍵を使用してディジタル署名を検証することができる
- CRL(Certificate Revocation List)
有効期限内に失効したCAのディジタル証明書のシリアル番号のリスト
特定のCAが発行した公開鍵暗号証明書の有効性に関する情報を提供する
破棄されている公開鍵証明書と破棄された日時の対応が提示される
- ユーザの公開鍵の正当性を保証する証明書を発行する
- VA(証明書有効性検証機関:Validation Authority)
- spamメール対策
- OP25B(Outbound Port25 Blocking)
- ISPによるspamメール対策の一つ
- ネットワーク協会に設置されたルータによってネットワーク内のホストから外部ホストのTCP25番ポートへの通信を遮断する手法
- サブミッションポートとして527番ポートが使用される
- SMTP AUTHに対応しているSMTPクライアントを使用することによって外部からの利用が可能になる
- セキュリティ情報提供サイト
- 脆弱性情報
- VU#(Vulnerability Notes)
US-CERTにより脆弱性情報を提供
- CVE(Common Vulnerabilities and Exposures)
非営利団体MITRE Corporationにより脆弱性情報を提供
- JVN(Japan Vulnerability Notes)
JPCERT/CCが国内ベンダと調整し脆弱性情報を提供
- Bugtraq ID
Security Focusが運営する脆弱性情報のメーリングリスト
- その他
- DSBL(Distributed Sender Blackhole list)
spamメールで利用しているSMTPサーバやProxyサーバのIPアドレスをブラックリストとして提供