ITパスポート単語帳 - セキュリティ
情報セキュリティ
情報を詐取や改竄などから保護しつつ、必要に応じて利用可能な状態を維持すること。また、そのために講じる措置や対策などの総体。
一般には、情報の「機密性」(confidentiality)、「完全性」(integrity)、「可用性」(availability)の三つの性質を維持することと理解される。これらの頭文字を組み合わせて「情報セキュリティのC.I.A.」と呼ぶ。国際標準のISO/IEC 27000シリーズなどでも、この三要素を情報セキュリティの構成要件としている。
情報の機密性とは正当な権限を持った者だけが情報に触れることができる状態を、完全性とは情報の破損や欠落がなく正確さを保っている状態を、可用性とは正当な権限のある者が必要なときに情報に触れることができる状態を、それぞれ表す。
また、これに加えて「真正性」(authenticity)や「責任追跡性」(accountability)、「信頼性」(reliability)、「否認防止」(non-repudiation)などの要素を情報セキュリティの要件の一部とする場合もある。
情報セキュリティが脅かされると、外部の攻撃者や内部犯による機密情報や個人情報などの漏洩や改竄、消去などの被害が生じる。企業などの組織が取り扱う情報の安全を確保するには、これらの要素に留意しながら、適切なコンピュータシステムによる保管や管理、認証やアクセス制御、暗号化などの実施、適切な利用手順の整備や利用者に対する啓発などが必要となる。
サイバースペース 【サイバー空間】
インターネットのような広域の開かれたコンピュータネットワークを人々が社会的営みを行なう場と捉え、現実世界の空間に例えた表現。
1980年代にカナダの作家ウィリアム・ギブスン(William Gibson)氏の小説「ニューロマンサー」(Neuromancer)などの作品群に登場し広まった語で、“cybernetics”(サイバネティックス)と “space”(スペース)の造語であるとされる。
SF作品などでは、脳や感覚器官と直結し、実際に空間として知覚されるような電子ネットワークとして描かれることが多い。このイメージから、1990年代にはアバター(自分の代理となるキャラクター)を介した遠隔コミュニケーションや、VR(仮想現実)技術による没入感のある仮想空間などが想起されることが多かった。
21世紀になるとインターネットが爆発的に普及し、人々が日常の一部としてネット上で仕事や商取引、他者との交流、情報の発信や収集などを行うようになり、トラブルや犯罪さえもネットを舞台に起こるようになると、社会の一部としてのインターネットを指してサイバー空間と呼ぶようになっていった。
サイバー攻撃 【サイバーアタック】 ⭐
あるコンピュータシステムやネットワーク、電子機器などに対し、正規の利用権限を持たない悪意のある第三者が不正な手段で働きかけ、機能不全や停止に追い込んだり、データの改竄や詐取、遠隔操作などを行うこと。
特定の組織や集団、個人を狙ったものと、不特定多数を無差別に攻撃するものがある。政治的な示威行為として行われるものは「サイバーテロ」(cyberterrorism)、国家間などで行われるものは「サイバー戦争」(cyberwarfare)と呼ばれることもある。
具体的な活動として、Webサーバに侵入してサイトの内容を改竄したり、情報システムに侵入して機密情報や個人情報を盗み出したり、大量のアクセスを集中させてサーバや回線を機能不全に追い込んだり(DoS攻撃/DDoS攻撃)、アクセス権限を不正に取得して本人になりすましてシステムを操作したり、システムを使用不能にして回復手段の提供に身代金を要求したり(ランサムウェア)といった事例が挙げられる。
攻撃者がインターネットなどを通じて標的システムに直接働きかけて攻撃を実行する手法と、コンピュータウイルスやトロイの木馬などのマルウェアを感染させ、その働きにより攻撃する手法がある。両者を組み合わせ、送り込んだマルウェアに外部から指令を送って遠隔操作する手法もある。
サイバーテロ (cyberterrorism)
サイバー攻撃のうち、政治的な要求や脅迫、示威などを目的に行われるものを「サイバーテロリズム」(cyberterrorism)、略してサイバーテロという。
特定の個人や集団が政治的な意図や動機に基づいて行うインターネットやコンピュータシステムを利用した攻撃活動で、対象に打撃を与えて政治的な主張を宣伝したり、何らかの要求に従うよう求めたり、標的側の行いに対する報復であると称したりする。
官公庁や軍、マスメディア、社会インフラ、通信網、交通機関、金融機関、医療機関など、国家や社会、人命、財産にとって重要な機能に損害を与えることを狙った攻撃が典型的だが、Webサイトの改竄や活動妨害(DoS攻撃)のような攻撃では特定の国家や民族に属するというだけで広汎・無差別に対象が選択される場合もある。
情報資産 ⭐
企業などの組織が保有する資産としての情報。情報が記録された書類や電子メディアなどの記憶媒体を含む。
企業や官公庁などの組織が収集、記録、蓄積している情報を、金銭や設備などと同じように組織が保有する一種の資産として捉えた用語である。典型的には組織に属する財産や従業員についての情報、製品やサービスについての情報、顧客や関係先、取引についての情報などが含まれる。
情報がどのような形態で保管されているかは問わず、書類など紙媒体に記録されたもの、コンピュータの内蔵ストレージ装置や光学ディスク、USBメモリ、磁気テープなどの記録媒体にデジタルデータとして記録されたもの、クラウドサービスなどを利用して外部の事業者の設備に保管されたものなどが含まれる。
情報資産の中には、個人情報や認証情報などのように第三者の手に渡ると被害や損害に繋がるものがあるため、重要性に応じて適切に保護し、権限のない者が触れることができないようにする仕組み作りが必要となる。情報の安全を確保することを「情報セキュリティ」と呼び、機密性、完全性、可用性の三つの要素から成る。
脆弱性 【バルネラビリティ】 ⭐⭐⭐
コンピュータやソフトウェア、ネットワークなどが抱える保安上の弱点。システムへの損害や不正な操作、情報の盗み取りや改竄など、管理者や利用者にとって脅威となる行為に悪用できる可能性のある欠陥や、仕様・設計上の不備のこと。
例えば、ソフトウェアにバグ(プログラムの誤り)があり、正当な利用権限がなくてもコンピュータを遠隔から任意に操作可能になってしまう場合がある。外部の攻撃者はこれを悪用することでシステムを乗っ取ることができてしまう。このような弱点のことをセキュリティ上の脆弱性という。
最も一般的な脆弱性はソフトウェアの実装上の誤りや設計・仕様上の不備で、システムの利用権限の奪取や、重要なデータの抜き取りや消去・改竄、コンピュータウイルスなど悪意あるソフトウェア(マルウェア)の感染や活動、外部システムの攻撃の踏み台などに悪用される。
プログラムコードの記述ミスのような明白な誤りだけが脆弱性になるとは限らず、開発者が予想しなかった利用形態や設計段階での見落としなど、形式的には欠陥とはならない潜在的な問題点が脆弱性として後から認知される場合もある。
ソフトウェアの脆弱性は開発者が修正プログラムや修正済みの新バージョンなどを提供して後から修正することが多いが、半導体チップ(マイクロプロセッサなど)内部の回路や動作に脆弱性が存在する場合もあり、既存品の修正ができず装置の交換などが必要となる場合がある。
また、複数のシステムが通信する際のプロトコル(通信規約)や通信手順などの仕様が脆弱性となる場合もあり、規格の改訂などを行わない限りソフトウェアの修正などでは対応できないこともある。
情報セキュリティ上の脆弱性となるのはコンピュータ側の問題だけでなく、機密情報の管理体制の未整備や行動規範の不徹底といった人間の振る舞いに関する問題や、施設の警備や設備の盗難対策の不備といった物理的な問題もある。
セキュリティインシデント 【情報セキュリティインシデント】
コンピュータの利用や情報管理、情報システム運用に関して保安(セキュリティ)上の脅威となる事象のこと。システムの機能不全や乗っ取り、データ漏洩、改竄などが含まれる。
情報セキュリティを脅かす事件や事故、およびセキュリティ上好ましくない事象・事態のことで、コンピュータウイルスなどのマルウェア感染、不正アクセス、アカウント乗っ取り(なりすまし)、Webサイトの改竄、機密情報の漏洩、迷惑メール送信、サービス拒否攻撃(DoS攻撃)、情報機器や記憶媒体の紛失や盗難などが含まれる。
システムの機能停止などの事象は悪意による意図的な行為だけでなく偶発的な故障や事故、不手際などでも引き起こされるため、原因を調べたら結果的にセキュリティ(保安)上の問題ではなかったことが明らかになる場合もある。
セキュリティインシデントが発生した際に、発見者や被害者からの報告を受け、事態の情報収集や公表、関係者への通知や対処依頼、有害事象の抑止や被害拡大の防止、再発防止策の策定などを行う一連の活動のことを「セキュリティインシデントレスポンス」(セキュリティインシデント対応)あるいは略して「インシデントレスポンス」(インシデント対応)という。
企業や官公庁などの組織内でインシデントレスポンスを担当し、利用部門や外部との窓口となる部署を「CSIRT」(Computer Security Incident Response Team)あるいは「CIRT」(Computer Incident Response Team)「SIRT」(Security Incident Response Team)などという。
なりすまし 【スプーフィング】
自分以外のある特定の人物のふりをして、その人に成り代わって活動すること。特に、その人しか得ることのできない情報や金品などを取得したり、その人にしか許可されていない行為を行うこと。
ITの分野では、ある人がコンピュータやネットワークを利用するために利用している識別・認証情報(アカウント名やパスワードなど)を不正に取得し、その人のふりをしてアクセスするなりすまし行為が問題となっている。不正に取得した認証情報で金融機関のオンラインサービスなどにアクセスされ、預金などを盗み取られるといった被害が起きている。
電子メールの差出人情報を偽装するなどして、ある特定の人物や組織からのメッセージであるかのように装い、騙された受信者に個人情報や秘密の情報を送信させるといった手口のなりすまし行為もある。この手口で騙し取った情報を使って本人になりすまし、金融機関に不正アクセスするといった二重のなりすましによる詐欺手法を「フィッシング」(phishing)などと呼ぶ。
また、サイバー攻撃などの手法の一つで、データの送信元アドレスなどを改ざん・偽装し、別のアドレスやコンピュータからのアクセスであるかのように装うことで、他の人の仕業に見せかけたり、追及されにくいようにすることもなりすましという。攻撃者が罪を無関係な第三者になすりつけ、司法当局が誤ってなりすまされた被害者を罰してしまう事件も発生している。
SNSなどでのなりすまし行為
SNSなどのネットサービスでは、自分とは無関係な有名人や企業、団体などの名前を勝手に名乗り、その人物・組織を装って発言などを行うなりすまし行為も発生している。IDやパスワードの詐取、行使などを行わなくても誰でも簡単に実行できてしまうため、著名人などになりすますいたずらが後を絶たず問題となっている。
なりすます対象は著名な人物や団体とは限らない。何らかの論争の渦中にある人が、自分と対立する側の匿名ユーザーを装った別のアカウントを作成し、わざと対立側に不利な発言などを行うといったなりすまし行為もある。「自作自演」「偽旗作戦」などとも呼ばれる。
なお、動物や人工物など人間以外の存在、故人や歴史上の人物、創作物に登場するキャラクターなどを自称するSNS利用者もいるが、こうした行為は「本人」が実在しない(ことが誰の目にも明白である)ため、なりすましとは区別され「なりきり」などと呼ばれる。
近年では、ネット広告などで著名人の名前を勝手にかたり、無関係な第三者が広告を作成して掲載する「なりすまし広告」も問題となっている。実業家が投資の勧誘をするなど本人の実績や信用を勝手に利用する広告で、宣伝されている商品やサービスなどがそもそも詐欺である事例も多いとされる。
クラッキング 【クラック】 ⭐
コンピュータやソフトウェア、データなどを防護するための措置や仕組みを破壊あるいは回避、無効化し、本来許されていない操作などを行うこと。
“crack” には割る、押し入る、突破するといった意味があり、ドアを破って部屋に押し入ったり、鍵を破って金庫の中のものを盗んだりすることを指す。ITの分野でも同じように、著作物を記録したデータの複製を制限する措置を解除して不正コピーしたり、コンピュータを利用するためのパスワードを割り出して不正に操作権限を取得したりといった行為をクラッキングという。
コンピュータシステムへの攻撃や侵入は一般的には「ハッキング」(hacking)と呼ばれることが多いが、この言葉は元来、コンピュータの動作を解析したりソフトウェアの拡張や改造などを行うことを指し、必ずしも悪い意味ではなかった。
そのような技術や手法を悪用して不正や犯罪を働くことをクラッキングと呼び、ハッキング全般とは区別すべきだとする主張もあり、技術者コミュニティなどではそのような呼び分けが一定程度行われているが、マスメディアなど世間一般には浸透していない。
システムのクラッキング
コンピュータシステムの攻撃としてのクラッキングは意味が広く、システムの利用権限の奪取(侵入)や乗っ取り、秘密のデータの盗み取りや漏洩・公表、システムに保存されたデータやプログラムなどの改竄や破壊などを含む。
パスワードなどを不正に入手したりソフトウェアの脆弱性を攻撃して誤作動させるなどして、本来は許可されていない動作や操作を行う攻撃手法の総称であり、侵入行為を伴わないDoS攻撃などは含まれない。
ソフトウェアのクラッキング
商用ソフトウェアなどデータとして販売される著作物に施された複製の制限や利用者の確認・認証などを無力化し、不正にコピーしたり、これらの防護措置が機能しないよう改造したりすることをクラッキングという。
映像ソフトなどには内容を暗号化して複製を制限しているものがあり、ソフトウェア製品にはパッケージのシリアル番号の入力や利用者のオンライン登録、プロダクトアクティベーション、プロテクトドングルなどで購入者であることを確認してから導入や起動を行う仕組みになっているものがある。
クラッキングはこれらを無効化することを指し、暗号化が解除された状態のデータの複製を作成したり、ソフトウェア内のチェック機構を探し出して除去するなどして、無制限にコピーや使用ができるよう不正に改造することなどが含まれる。
ソーシャルエンジニアリング 【ソーシャルハッキング】 ⭐⭐⭐
コンピュータシステムにアクセスするために必要な情報(パスワードなど)やその手がかりを、それを知る本人や周辺者への接触や接近を通じて盗み取る手法の総称。
コンピュータウイルスや通信の盗聴のような情報システムに直接介入する攻撃手法を用いず、物理的に本人の周辺に近づいて、人間の行動や心理に生じる隙を利用して重要な情報を得る手法を指す。
例えば、本人が端末にパスワードや暗証番号を入力しているところに近づいて、背後から肩越しに入力内容を盗み見る「ショルダーハック」(shoulder surfing)がよく知られる。
他にも、本人が席を外した隙にメモや付箋を盗み見たり、ゴミとして捨てられた書類などを盗んだり、身分を詐称して電話をかけて情報を聞き出すといった手法が知られている。情報の盗み取りだけでなく、本人にしかできない手続きを本人になりすまして行わせる手法も含む場合がある。
また、架空請求詐欺やフィッシングのように、虚偽の発信元や内容を記した電子メールやショートメッセージなどで受信者を騙し、ウイルス感染や偽サイトへの誘導、金銭の詐取など狙う手法も、電子的な手段を用いているがソーシャルエンジニアリングの一種に分類される場合もある。
ビジネスメール詐欺 【BEC】
電子メールを利用した詐欺の一種で、企業などの従業員に対して管理職や取引先などを装ったメールを送り、偽の口座に送金を指示するなどして金銭を詐取する手口。
組織内の特定の取引の担当者や決済、送金などの業務に従事する従業員に対し、上長や経営幹部、取引先の担当者などを装った偽のメールを送り付け、攻撃者の用意した銀行口座などに送金するよう指示する。経営トップの極秘案件を装って社内での問い合わせや確認をさせない手口は特に「CEO詐欺」「企業幹部詐欺」などとも呼ばれる。
攻撃者はメールの信憑性を増すためにソーシャルエンジニアリングの手口を利用する。事前に何らかの方法で組織内の役職者や担当者の氏名や職位、メールアドレスなどを調べたり、実際の案件の取引の詳細や担当者などを調べ、実在の人物になりすまして職務上のやり取りにうまく紛れるように偽の送金指示を送る。
手口の詳細は多様で、マルウェアの送り込みやキーロガーなどによる盗聴、メールアカウントの乗っ取りなど情報システムへの攻撃を伴う事例も多い。顧問弁護士や会計事務所など外部の専門家や機関などになりすます場合もある。
ダークウェブ 【ダークWeb】 ⭐
インターネット上に存在する、特定のソフトウェアや技術を使わなければ接続できない領域で運用・公開されているWebサイトのこと。非合法な活動の温床になっているとされる。
一般的なWebサイトはインターネットに接続してWebブラウザでアクセスすれば閲覧でき、会員制のサイトも認証(ログイン)手順が必要になるだけで技術的な条件は同じだが、ダークウェブは接続のために特殊なソフトウェアを導入したり、既存の参加者から招待を受けてネットワークに参加したりする必要がある。
最も有名な例は「Tor」(トーア/The Onion Router)というツールを利用したネットワークである。これはインターネット上の通信を匿名化するために世界中のボランディアが運営する中継拠点を何段階も経由して相手先に接続するシステムで、通常のWebサイトやネットサービスへのアクセスにも使われるが、Tor経由でなければ接続できないよう設定されているサイトが多数存在する。
そのようなサイトはWeb検索エンジンなどへ掲載されることもなく発見が難しい上、Torを経由しない通常設定のWebブラウザ等ではそもそも閲覧することさえできない。運営者も閲覧者も互いに高度に秘匿されており、捜査機関であっても身元や接続元などに関する情報を得ることは困難となっている。
ダークウェブはその秘匿性の高さからしばしば非合法な活動に悪用されているとされ、所持や譲渡が規制されている薬物やコンテンツ、銃火器類、盗み取られた個人情報やアカウント情報、クレジットカード情報、企業や公的機関の機密情報、未発表のソフトウェア脆弱性、未使用のマルウェアや開発キット、ソフトウェア製品の海賊版などが取引されていると言われる。
Tor以外にも、暗号技術などを用いてインターネット内で外部から隔絶された小規模なネットワークを形成するソフトウェアが多数存在し、各ネットワーク内でダークウェブが運用されている。近年では仮想通貨の普及により支払いの匿名性を高めることが可能となり、以前にも増して取引が活発化しているとの指摘もある。
ディープウェブ/闇サイトとの違い
似た用語に「ディープウェブ」(深層Web)があるが、これは一般的な検索エンジンなどが到達し得ない場所にあるWebコンテンツ群のことで、閲覧にログインを要求するサイトや、Webページ上のリンクを辿っても到達できない情報(表示手段がフリーワード検索しか無いなど)が該当する。その多くは単に一般に非公開なだけで非合法活動と関連があるわけではない。
また、日本語で「闇サイト」という場合は、犯罪の共犯者を募集するなど非合法な目的のために設置あるいは利用されている電子掲示板(BBS)などのWebサイトのことを指し、それが技術的な意味でのダークウェブに存在するとは限らない。実際のところ、報道されているような事例の多くはダークウェブではなく通常の方法でアクセス可能なサイトばかりである。
情報セキュリティポリシー ⭐⭐⭐
企業などの組織が取り扱う情報やコンピュータシステムを安全に保つための基本方針や対策基準などを定めたもの。広義には、具体的な規約や実施手順、管理規定などを含む場合がある。
情報部門などの提案や助言などを得ながら経営層が策定し、全社に周知すべきものとされる。基本方針など一部は、その組織の情報管理についての考え方や取り組み方を表明する文書として外部や一般にも公開される。
基本方針には、ポリシーの適用範囲、対象となる情報資産、実施体制、各員・部門の役割や責務、実施・策定すべき施策や規約、遵守する法令や指針などが記述される。これに基づき、組織内に存在する人員や部門、情報などに合わせて具体的に何をどのような脅威から守るのか、誰が何をすべき・すべきでないか、誰に何を許可する・許可しないか、といった方針をセキュリティ対策基準として策定する。
基本方針のみ、あるいは対策基準までをポリシーの範囲とする場合が多く、これらに基づいて実施手順や運用規約、社内規定など個別具体的なルールが定められる。内部の人員にはこれら具体的な規約が手順書やマニュアルなどの形で周知・徹底される。
情報セキュリティポリシーは技術的な対策や専門家、専任スタッフだけでは適切な情報資産の管理に限界があることを踏まえ、全社の人や組織がどのように情報やシステムを安全に運用していくか観点で策定される。このため、作成しただけで具体的な行動に反映されなければ意味がなく、また、施行後も運用状況や外部環境の変化などに合わせて繰り返し見直しや改善を行うことが重要とされる。
マルウェア 【悪意のあるソフトウェア】 ⭐⭐⭐
コンピュータの正常な動作を妨げたり、利用者やコンピュータに害を成す不正な動作を行うソフトウェアの総称。コンピュータウイルスやワーム、トロイの木馬などが含まれる。
“malicious software” (悪意のあるソフトウェア)を短縮した略語で、悪意に基づいて開発され、利用者やコンピュータに不正・有害な動作を行う様々なコンピュータプログラムを総称する。
コンピュータウイルスやワーム、トロイの木馬、スパイウェア、ランサムウェア、ボット、バックドア、一部の悪質なアドウェアなどが含まれる。キーロガーのように正規の用途で用いる場合もマルウェアとなる場合もあるものもある。
利用者の知らない間に、あるいは欺くような手法でコンピュータに侵入し、記憶装置に保存されたプログラムやデータを改変、消去したり、重要あるいは秘密のデータを通信ネットワークを通じて外部に漏洩したり、利用者の操作や入力を監視して攻撃者に報告したり、外部から遠隔操作できる窓口を開いたり、ネットワークを通じて他のコンピュータを攻撃したりする。
「マルウェア」という用語は専門家や技術者以外の一般的な認知度が低く、また、マルウェアに含まれるソフトウェアの分類や違いなどもあまり浸透していないため、マスメディアなどでは「コンピュータウイルス」という用語をマルウェアのような意味で総称的に用いることがある。
マルウェア対策
マルウェアに対抗するため、これを検知・駆除するソフトウェアを用いることがある。歴史的にウイルス対策から発展したため「アンチウイルスソフト」(anti-virus software)と呼ばれる。企業などでは伝送途上の通信内容からマルウェアを検知する「アンチウイルスゲートウェイ」なども用いられる。
マルウェアの検知には、ストレージ内のファイルなどを既知のマルウェアの特徴的なパターンと照合する「パターンマッチング法」や、マルウェアに特徴的な振る舞いを検知する「ヒューリスティック法」、隔離された実行環境で実際に実行してみる「ビヘイビア法」などの検知手法が用いられる。
マルウェアの中にはソフトウェアやハードウェアに存在する保安上の欠陥(脆弱性)を悪用して侵入・感染するものも多いため、セキュリティソフトなどに頼るだけでなく、老朽機材の入れ替え、ソフトウェアの適時の更新、不要な機能の停止などの対応も適切に行う必要がある。
コンピュータウイルス ⭐⭐⭐
コンピュータの正常な利用を妨げる有害なコンピュータプログラムの一種で、他のプログラムの一部として自らを複製し、そのプログラムが起動されると便乗して悪質な処理を実行に移すもの。
生物の体に潜り込んで害を成す微生物のウイルスに似ていることからこのように呼ばれ、コンピュータ関連の文脈であることが明らかな場合は単に「ウイルス」と呼ばれることも多い。広義には不正・有害なソフトウェアの総称として用いられることがあるが、本来これは「マルウェア」(malware)と呼ぶべきであるとされる。
ウイルスの感染
コンピュータウイルスは自ら単体のプログラムとして起動する能力はなく、「宿主」となる他の(正常な)プログラムの一部として自らを「感染」させ、その動作を改変して起動時に自らを実行するよう仕向ける。感染したプログラムが起動されると様々な不正・有害な処理を行うほか、他のプログラムへ自らを複製して次々に増殖していく。
ウイルスに感染したプログラムファイルが、光学ディスクやUSBメモリなどの持ち運び可能な記憶媒体(記録メディア)、インターネットや構内ネットワーク(LAN)などを通じて他のコンピュータへ移動し、そこで起動されることにより、別のコンピュータへ次々に感染が広まっていくこともある。
ウイルスの挙動
コンピュータウイルスは記憶装置に保存されたプログラムやデータを破壊、改変、消去したり、秘密あるいは重要なデータを利用者の知らないうちにネットワークを通じて外部に送信したりといった不正・有害な動作を行う。
こうした振る舞いは感染後すぐに実行に移すとは限らず、一定時間の経過後や攻撃者の指定した日時に実行したり、システムの状態を監視して何らかの条件が満たされると実行するものもある。稀に、繰り返し感染するだけで何も有害な振る舞いを行わない愉快犯的なものもあり、これをウイルスとみなさない場合もある。
ウイルス対策
コンピュータウイルスに感染したプログラムを発見し、また、感染前の状態に戻したりする働きをするソフトウェアを「アンチウイルスソフト」(anti-virus software)あるいは「ワクチンソフト」(vaccine software)などと呼ぶ。
ウイルスの検知には、ストレージ内のファイルなどを既知のウイルスの特徴的なパターンと照合する「パターンマッチング法」や、ウイルスに特徴的な振る舞いを検知する「ヒューリスティック法」、隔離された実行環境で実際に実行してみる「ビヘイビア法」などの検知手法が用いられる。
ウイルス検知のみを行い回復は利用者や他のツールに頼るシステムと、ファイルに含まれる不正なコードの除去を試みるシステムがある。企業などのネットワークでは、伝送途上の通信内容からウイルスを検知して流入を阻止する「アンチウイルスゲートウェイ」なども用いられる。
他のマルウェアとの違い
コンピュータウイルスのような開発者が悪意に基づいて開発・配布している有害なソフトウェアを総称して「マルウェア」(malware:悪意のあるソフトウェア)という。この用語はあまり普及しておらず、総称の意味で「コンピュータウイルス」と呼ぶことも多い。
ウイルスの他に、プログラムファイルへの感染などはせず、自ら単体のプログラムとして起動し、主にネットワークを通じて他のコンピュータへの感染を広める「ワーム」(worm)、一見何か有用な働きをするソフトウェアのように振る舞うが、その裏で利用者に気づかれないように有害な動作を行う「トロイの木馬」(Trojan horse)などがある。
他にも、感染先のコンピュータのストレージを暗号化し、復号のために攻撃者への「身代金」の支払いを求める「ランサムウェア」(ransomware)、攻撃者が遠隔から操作できるネットワーク上の「窓口」を設ける「バックドア」(backdoor)、利用者の操作やコンピュータ内の処理、データ送受信などを盗聴して攻撃者に報告する「スパイウェア」(spyware)など様々な類型があり、これらの複数に該当する複合型のマルウェアも多い。
ボット ⭐⭐⭐
人間による操作や作業を代替したり、人間の行為を模して人間のように振る舞い、自動的・自律的に行動するソフトウェアやシステムなどのこと。
「ロボット」(robot)のIT分野における略語で、コンピュータ上である程度の長い時間稼働し続けて、従来は人間が操作して行っていたような作業を一定の条件や規則に基づいて連続して自動的に遂行するプログラムを、機械のロボットになぞらてこのように呼ぶ。
また、チャットやSNSなどのコミュニケーションサービス・システムなどで活動し、人間の発言や行動などを真似て人間のように振る舞う自律的なプログラムなどを指す場合もある。
検索ロボット
Web検索エンジンが検索対象のWebページを収集するシステムを「クローラ」(crawler)、「スパイダー」(spider)、「ロボット」(robot)などと呼び、ロボットを略してボットと呼ばれることがある。
Webページ間のハイパーリンクを辿って次々に様々なWebサイトやWebページを訪れ、ページを構成するHTMLファイルやCSSファイル、画像ファイルなどのデータを取得し保存する。ボットが収集したデータはインデクサー(indexer)が記述内容を解析し、索引付けを行って検索可能な状態にする。
マルウェアのボット
マルウェア(悪意のあるソフトウェア)の一種にもボットと呼ばれるプログラムがあり、感染したコンピュータで攻撃者からの指示を待ち、遠隔からの指令された動作を行う。
コンピュータウイルスやトロイの木馬などの一部として送り込まれ、感染したコンピュータ上に常駐して特定のネットワークに接続して指示を待つ。コンピュータを使用不能にするような妨害・破壊活動は行わず、なるべく遠隔操作を利用者に気づかれないように振る舞う。パスワードやクレジットカード番号など秘密の情報を盗み出して攻撃者に報告したり、別のコンピュータやネットワークへの攻撃の踏み台として悪用される。
インターネット上で同じボットが組み込まれたコンピュータにより築かれたネットワークを「ボットネット」(botnet)と呼び、攻撃者の指示で一斉に特定のネットワークへDDoS攻撃(分散DoS攻撃)を行ったり、スパムメールの発信元などとして悪用される。
オンラインゲームのボット
オンラインゲームでは本来プレーヤーが操作するキャラクターをプレーヤーに代わって「自動操縦」するプログラムをボットという。敵キャラを倒してゲーム内の通貨やアイテム、経験値などを稼ぐ作業を人間に代わって自動的に行う目的などで使われる。
ボットが操作するキャラクターはシステム上の扱いは他のプレーヤーキャラクターと変わらないが、人間が操作しているわけではないため、他のプレーヤーと会話したり共に行動したりすることができない。マナーを無視して行動したり、他のキャラクターの邪魔をしたりすることも多いため、一般のプレーヤーが快適にプレイするのを妨げるとされ嫌われている。
また、ボットを利用して育成したキャラクターや、入手したゲーム内通貨やアイテムなどを他のプレーヤーに現金で転売するRMT(Real Money Trade)行為も問題となっており、ボットの使用を規約で禁じて違反者のアクセス権を剥奪する運営元も多い。
スパイウェア ⭐⭐
有害なソフトウェアの一種で、利用者の文字入力内容やWebアクセス履歴などのデータを気付かれないようこっそり収集し、インターネットを通じて攻撃者に報告するもの。
スパイウェアは無料ソフトウェアなどの配布パッケージに同梱されて導入時にソフトウェア本体と共に導入されたり、Webページ上のスクリプトや電子メールの添付ファイルなどを通じてソフトウェアの脆弱性を悪用して侵入したり、利用者へ「ウイルスに感染しています」等の虚偽のメッセージを表示して操作を促し導入させるといった手口でコンピュータに忍び込む。
主な活動は利用者の操作の監視・記録や利用者個人に関連する情報の収集で、得られたデータやファイルは利用者に知られないようインターネットなどを通じて開発元などに送信され、蓄積される。集められたデータは広告事業者や広告主などが広告配信のために利用したり、攻撃者が不正アクセスのために利用したりする。
特に、文字入力を記録・送信するキーロガーを不正に設置し、利用者がオンラインバンキングやネット通販などのために入力した銀行口座番号や暗証番号、クレジットカード番号、パスワードなどの重要な情報を盗み出して不正アクセスや不正送金などの犯罪に利用する悪質な事例が確認されている。
情報の収集はプログラムにより自動で行われることが多いが、遠隔からアクセスできる窓口を設け、攻撃者が直に操作してファイルや情報を探したり盗聴などを行うよう設計されたものもある。また、情報収集以外にもWebブラウザの起動ページの設定を特定のサイトに変更して通常の操作では元に戻せないようにロックしたり(ブラウザハイジャッカー)、強制的に広告を表示する(アドウェア)などの迷惑行為を働く場合がある。
コンピュータウイルスと共にマルウェア(悪意のあるソフトウェア)の一つに分類されるが、ウイルスと異なり自己複製・増殖機能を持たない。また、データの不正な取得と漏洩が主目的であることから気付かれて駆除されないよう他の活動をしないものも多く、ウイルスに見られるようなデータの改変や削除、他のコンピュータへの攻撃などの破壊・妨害活動は行わない場合が多い。
ランサムウェア 【身代金型ウイルス】 ⭐⭐⭐
有害なソフトウェアの一種で、感染したコンピュータからデータを抜き取ったり正常に利用できないような状態に置き、復元のために犯人への金品の支払いを要求するもの。
コンピュータウイルスやトロイの木馬などの形で標的への侵入を試み、成功すると操作画面をロックしてパスワードの入力を要求したり、ストレージ内のファイルを暗号化して読み取れないようにするなどして、正常に利用できない状態に改変する。
画面上には、指定された方法で犯人に金品を送れば、代わりにパスワードが提供され元の状態に復元できる旨のメッセージが表示される。送金手段には銀行振込やオンライン送金サービス、仮想通貨などが用いられることが多い。“ransom” は「身代金」の意。
多数の被害者が出ている著名なランサムウェアに対しては、一般のコンピュータウイルスなどと同じようにセキュリティソフト各社などが駆除ツールを提供している場合がある。ただし、ファイルの暗号化などを行うタイプの場合、単に実行ファイルなどの本体を削除しただけではファイルは復元できない。暗号化の手法などによっては駆除ツールが暗号化を解除できない場合もあり、通常のマルウェアとは異なる対応の困難さがある。
ランサムウェアの手法そのものは1990年代から知られていたが、広く観測されるようになったのは2000年代中頃からである。2010年代になると洗練された手口で大規模に感染を試み、送金に仮想通貨を用いるなど、摘発や駆除、送金手段の遮断などを免れて長期的に活動することを狙った営利目的と見られる犯行が増えている。
ファイルレスマルウェア
有害なソフトウェアの種類の一つで、ストレージ内のファイルなどに自身を保存せず、メモリ上で活動を完結させるもの。再起動で消滅するが、ファイルのスキャンでは検知できない。
利用者を虚偽のメッセージで誘導したりソフトウェアの保安上の弱点(脆弱性)を利用してコンピュータに入り込むまでは通常のマルウェアと同じだが、独自の実行ファイルなどをコンピュータ内のハードディスクやSSDなどに作成・保存しない。
代わりに、オペレーティングシステム(OS)のスクリプト実行機能などを利用して、悪意ある挙動を標準のコマンドやスクリプトの組み合わせとして実行する。実行ファイル自体はOS側に用意されているものを利用するため、アンチウイルスソフトなどで検知するのは難しい。再起動すると消去され、痕跡を残さない。
よく悪用されるのはWindows PowerShellというWindows標準のスクリプト機能で、電子メールにMicrosoft Office形式のファイルを添付し、その中に悪意あるスクリプトを埋め込む攻撃手法がよく用いられる。対策としては、EDR(Endpoint Detection and Response)などを導入して不審な挙動を検知したり、不審な添付ファイルを開かないようメールの運用方法を見直すことなどが挙げられる。
ワーム 【コンピュータワーム】 ⭐
有害な動作を行うソフトウェアの一種で、インターネットなどを通じてコンピュータに侵入し、さらに他のコンピュータへの自身の複製を試みるもの。
ソフトウェアの保安上の弱点(脆弱性)や利用者の誤認などを悪用してコンピュータ内に自身を複製して感染する。自己増殖機能を有し、自身が感染した経路や手段を繰り返し用いて次々に他のコンピュータへの感染を試みる。
“worm” の原義はミミズや芋虫のような線形の虫や動物のこと。世間一般にはコンピュータウイルスの一種とみなされるが、一般的なウイルスと異なり宿主・寄生先となる他のソフトウェアやファイルがなく単体で侵入・活動するため、専門的な分類ではウイルスとは区別されることが多い。
主な感染経路
感染経路として最も一般的なのは電子メールの添付ファイルを悪用したもので、何か有用なファイルが添付されているように偽装したメールを無差別に大量送信し、受信者がワームと気付かず添付ファイルを開いてしまうと実行ファイルが起動して感染するというものである。
他に、WebサーバやWebブラウザの脆弱性を利用してWebページの閲覧などを介して感染するものや、ファイル共有やUSBメモリなどを介して感染するものがよく知られる。
感染後の活動
感染したコンピュータで自身が起動時に自動的に実行されるようシステム設定を改竄することが多く、利用者が気付かないうちに常時稼働状態となって他のコンピュータへの感染などの動作を繰り返し行う。
感染したシステムに対する有害な動作として、ストレージ(外部記憶装置)内のファイルなどの外部への漏洩や改竄、削除、システムを破壊し起動不能にするといった活動を行う場合がある。
また、外部の他のコンピュータへの攻撃・妨害活動を自動的に行ったり、外部の攻撃者がインターネットを通じて遠隔から操作できる窓口(バックドア)を設置することもある。ワームを介して特定の攻撃者からの指令を受け、一斉に攻撃などを行うよう組織されたコンピュータ群を「ボットネット」(botnet)という。
トロイの木馬 【Trojan Horse】 ⭐⭐
何らかの有用なソフトウェアなどを装って導入や実行を促し、起動すると利用者に気付かれないよう秘密裏にデータ漏洩や遠隔操作などの有害な動作を行うソフトウェア。
一般にはコンピュータウイルスの一種と理解されているが、トロイの木馬は他のソフトウェアのファイルなどの一部に寄生したりせず単体で活動し、他のコンピュータへ自律的に感染を試みる自己複製の機能も持たないため、専門的にはウイルスやインターネットワームとは区別される。
名称は古代ギリシャ神話のトロイア戦争で、木馬を利用した作戦に由来する。巨大な木製の馬の像の内部に兵士を忍ばせて敵方に送り、敵が油断したところで兵士が城門を開放して味方を手引きして勝利したという逸話が残っており、相手を欺いて忍び込む手法をこの木馬になぞらえている。
偽装・侵入方法
トロイの木馬が利用者を欺く方法は主に二つあり、最も一般的なのはセキュリティソフトやメディアプレーヤー、圧縮ソフトなど何らかの有用なソフトウェアを装って利用者に導入(インストール)を促すものである。
実行すると実際にそのソフトウェアとしての機能を提供したり、あるいは何か有用な処理を行っているふりをする(「ハードディスク内のウイルスを検索中です…」といったメッセージを表示する等)が、その裏では有害な動作を行っている。
もう一つはWindowsやメールソフトなどのファイル表示の仕様を悪用して文書や動画、画像などのファイルになりすまし、開いて閲覧するよう利用者に促す方式である。
利用者がファイルを開くと、ファイルは文書などではなく実際にはアイコンや拡張子が偽装・隠蔽された実行ファイルになっており、トロイの木馬が起動してコンピュータに自身の複製を作成する。以降はコンピュータの起動時に自動的に起動するようシステム設定を改変するなどして、利用者に気付かれないよう有害な動作を行う。
有害な動作の内容
トロイの木馬の動作は攻撃者の目的により多種多様だが、よく知られる動作として、攻撃者が秘密裏に遠隔からコンピュータを操作できるようにする裏口(バックドア)として機能するというものがある。攻撃者は継続的にコンピュータに侵入し、データを盗み取ったり利用者の通信を監視・盗聴したり、無差別な広告メールの送信元にしたり、他のコンピュータへの攻撃の「踏み台」にしたりする。
また、パスワードなど秘密の情報を盗み取って攻撃者に報告したり、あらかじめ指定された特定の場所にあるファイル(利用者個人のファイル保管場所などが選ばれることが多い)を攻撃者に送信するデータ漏洩の被害も多い。中には個人的なファイル群をP2Pネットワーク上に流出させるといった動作を行うものもある。
他にも、ネット上の特定の場所からプログラムをダウンロードして実行するよう仕組まれていたり、プロキシサーバとして外部への接続を代理し、攻撃者が発信元を隠して他のコンピュータを攻撃するための中継拠点にされてしまうこともある。
RAT 【遠隔操作ウイルス】 ⭐
不正アクセスに用いられる攻撃用ツールの一種で、標的のコンピュータに潜んで攻撃者からの遠隔操作を受け付けたりデータの盗み出しや改竄などを行うもの。
潜入の仕方や攻撃手段には様々なバリエーションがあるが、一般的によく知られるタイプは有用なソフトウェアやファイルに見せかけて標的の利用者に実行を促し、気付かれないようにシステム内に不正なプログラムなどを導入する「トロイの木馬」型のものである。このため「RAT」を “Reomte Access Trojan” の略とする場合もある。
RATは標的のコンピュータに常駐し、攻撃者が任意のOSコマンドを実行できるようにしたり、保存されているファイルなどを盗み出して攻撃者へ送信したり、存在が露見しにくいようシステムの設定や記録の変更や改竄を行ったり、利用者の操作を監視(キーロガーによる文字入力記録やデスクトップのスクリーンショット撮影など)して攻撃者に報告したりする。
スマートフォンやノートパソコンなどマイクやカメラが付いている機器の場合は、これを秘密裏に操作して盗聴や盗撮を行うこともある。企業などへの攻撃に用いる場合は、乗っ取ったコンピュータや利用者には直接害を及ぼさず、内部ネットワーク上の他のコンピュータや重要なデータを攻撃するための踏み台として悪用することもある。
RATによる攻撃は、あらかじめ決められた動作を行うだけのマルウェア感染に比べ、人間が攻撃手法を吟味して行うため被害が深刻化、長期化しやすい。外部の攻撃への踏み台に使われた場合、乗っ取られた被害者が加害者と誤解され、そのまま検挙されて罰せられてしまう事件(2012年のパソコン遠隔操作事件など)も発生している。
マクロウイルス 【マクロ感染型ウイルス】 ⭐⭐
オフィスソフトなどが搭載する、操作を記録して自動化する仕組みを悪用し、文書ファイルなどに寄生して感染するタイプのコンピュータウイルス。文書作成ソフトや表計算ソフトなどが標的となる。
ワープロソフトや表計算ソフトなどは、定型的な繰り返し作業などを自動化するために「マクロ」(macro)と呼ばれる簡易なコンピュータプログラムの実行機能を持っており、プログラムを文書ファイル内にデータ本体と供に保存することができるようになっている。
マクロウイルスはこの仕組みを悪用し、利用者に気づかれないようにこっそりと文書ファイルに「感染」して、自己増殖や破壊活動を行う。マクロ機能が有効になっていれば文書ファイルを開いただけで感染するため、電子メールの添付ファイルなどを通じて感染を広げやすい。
ソフトウェアの保安上の欠陥(脆弱性)を悪用するウイルスなどとは異なり、ソフトウェア本来の機能を使用して実装されているため、本来の目的で使われるマクロと形式的に区別することは難しく、修正プログラムの適用といった一律の対策で完全に排除することは困難である。
同じマクロを実行できる環境があればオペレーティングシステム(OS)の種類を問わずに活動できるため、アプリケーションソフトが複数のOSに移植されるようになった今日では、複数のOSにまたがって大量感染するケースも見られる。
また、マクロは構造上、元のプログラム(ソースコード)をそのままファイル内に記録するため、オリジナルの開発者以外が「改造」しやすく、亜種が発生しやすいという特徴もある。感染したファイルを開くとアプリケーションソフトの設定を改変し、元のファイルが削除されても他のファイルに感染することができる手の混んだウイルスもある。
最も標的にされやすい米マイクロソフト(Microsoft)社のオフィスソフト「Microsoft Office」(Word/Excel/PowerPointなど)では、2000年前後にマクロウイルスが猛威を振るったことからマクロを初期設定では無効にしているが、本来の目的でマクロを使用するために利用者の操作で簡単に実行できるようになっており、現在もスパムメールなどを通じた感染は続いている。
キーロガー 【キーロギング】 ⭐
コンピュータのキーボード操作を常時監視して時系列に記録する装置やソフトウェア。本来は有害なものではないが、他人のコンピュータにこっそり仕掛けて秘密の情報を盗み取るのに悪用されることがある。
コンピュータの利用者や管理者が何らかの理由や目的でキー入力の履歴を得たい場合に使用するもので、OSに常駐して他のソフトウェアを利用している最中のキー操作を読み取って記録する。
近年問題になっている悪用事例として、トロイの木馬やコンピュータウイルスにキーロガーが埋め込まれ、利用者が気付かずにネット通販やオンラインバンキングなどでパスワードなど秘密の情報をキー入力すると、それを盗み取って攻撃者にこっそり報告するというものがある。
また、不特定多数の人が代わる代わる利用するコンピュータ(ネットカフェのパソコンなど)に攻撃者がキーロガーを仕掛け、利用者が気付かずにネットサービスのパスワードなどを入力して盗み取られてしまうといった被害も発生している。
バックドア ⭐⭐
攻撃者が侵入に成功したシステムに設ける接続窓口で、管理者や利用者に気付かれないよう秘密裏に設置され動作する遠隔操作用のプログラム。
「バックドア」とは「裏口」という意味で、ここを経由することで正規の利用者認証やセキュリティ対策などを回避してこっそり遠隔操作することができる。ネットワークを通じてシステムへの不正侵入に成功した攻撃者が設けることが多いが、コンピュータウイルスなどが感染する際に、外部からの操作を受け入れるための窓口として設置する場合もある。
バックドアは侵入に利用したソフトウェアの脆弱性やアカウント情報などは用いずに、別の手段により実装されるため、侵入に気づいた管理者などがソフトウェアを更新するなど侵入経路に悪用された問題点を修正しても、影響を受けずに再び侵入することができる。
不正アクセスなどが確認された際に、悪用された個所の修正などに留まらず記憶装置の完全消去やオペレーティングシステム(OS)の再インストールなどを行うべきとされるのは、バックドアを消去するためでもある。
また、システムの開発元や国家の情報機関などが、秘密裏に利用者の監視や情報の窃取などを行なうため、製品の開発時などにあらかじめバックドアを設ける場合もある。そのような事例では利用者側での対策は困難となる。
ファイル共有ソフト 【ファイル交換ソフト】
ネットワークを介してコンピュータ間でファイルを共有する機能を持ったソフトウェア。狭義にはインターネット上で他のコンピュータを直に探索・接続し、不特定多数の集団内で相互にファイルの交換を行うことができるP2P(Peer-to-Peer)方式のものを指し、こちらの意味が一般に広まっている。
一般的なインターネット上のシステムではコンピュータやソフトウェアの役割はサーバとクライアントに分かれており、ネット上に固定的に設置され常時運用されるサーバに対してクライアントがファイルの送信や受信を要求するという形で利用される。
これに対し、P2P型のファイル交換ソフトウェアではこのような役割の違いがなく、すべてのコンピュータが同じソフトウェアで動作する他のコンピュータに対して対等に接続し、相互に送信や受信を要求しあえるようになっている。常にネットに繋がっているわけではない個人利用のパソコン同士が互いに保存されているファイル群を交換することができる。
厳密には、「同じソフトを使っている相手を探す」機能のみを提供するサーバを必要とし、そのサーバに登録した者同士が接続してファイルの交換は相対で行う中央サーバ型のシステムが多いが、このような集会場のようなサーバすら不要で、まったく同機能で対等なコンピュータの集団でネットワークを形成する純粋P2P(ピュアP2P)型のシステムもある。
歴史
ファイル交換ソフトウェアは1999年にMP3ファイルの交換に特化した「Napster」(ナップスター)の誕生と急激な普及により注目を集め、ファイルの種類を限定しない汎用で純粋P2P型「Gnutella」(グヌーテラ)など多くの類似ソフトが広まった。
日本ではNapster互換ソフトから派生した「WinMX」(ウィンエムエックス)が2001年から、続いて2002年から「Winny」(ウィニー)が、2004年から「Share」(シェア)が急激に普及し、他にも多くのファイル交換ソフトウェアが広まった。
初期のファイル交換ソフトウェアは匿名性が高く、日本を含む全世界で音楽や映像、ソフトウェアなどの著作物の違法(海賊版)な配布や交換、および、法律で作成や配布(国によっては所持も)が禁じられたコンテンツの流通に悪用され、訴訟や摘発が相次いだ。各国司法当局の監視や摘発が進んだこともあり、2010年代になると違法行為のプラットフォームのように用いられていたファイル交換ネットワークの利用は下火になった。
一方、オープンソースソフトウェアなど自由に複製してよいファイルを低コストで効率的に配布・流通できる手段としての技術的な可能性に着目した人々もおり、BitTorrentのようにあえて匿名性を奪うことで合法的な利用を促すようにしたシステムは現在も広く受け入れられている。
迷惑メール 【ジャンクメール】 ⭐⭐
利用者と無関係な相手先から一方的に送りつけられてくる電子メール。メールは原則として誰が誰に送ってもよい仕組みになっていることを悪用し、様々な目的で無差別に大量にメールを送る者がおり、受信側がメールを利用する妨げになったり、何らかの被害を被ったりする。
迷惑メールは受信側の同意なく知らない相手から一方的に送りつけられてくるメールで、送信者が何らかの方法で集めた大量のメールアドレスに無差別に一斉送信されることが多い。送信側も相手が誰だかわからないまま一方的に送りつけている。
様々な種類や目的で送られるが、主な目的として、商業的な広告・宣伝、詐欺や違法な物品の売買など何らかの不法行為、悪意のあるソフトウェア(マルウェア)の導入や悪意のあるWebサイトへのアクセスの誘導、悪戯などがある。
このうち、商業的な目的のものは「スパムメール」(spam email)、でっち上げの名目で金銭を請求するものを「架空請求メール」、悪意のあるWebサイトへ誘導するものは「フィッシングメール」(phishing email)、マルウェア配布目的のものは「ウイルスメール」(virus email)とも呼ばれる。
受信側での対策
近年のメールソフト(メールクライアント)には「迷惑メールフィルタ」機能がついており、書かれている内容や添付ファイル、送信元などのパターンから怪しいメールを自動的に迷惑メール用の保管場所に振り分けることができる。必要なメールを迷惑メールと判断したり、迷惑メールを気づかず通してしまったりといった誤判定が起きるため、完全な対策とはなっていない。
メール受信サーバを運営するインターネットサービスプロバイダ(ISP)や移動体通信事業者などでは、サーバ側でこのような自動振り分けを行ったり、特定の送信元ドメインやメールアドレスからの受信を拒否するよう利用者が設定できる機能を提供している。
送信元ドメインの偽装と確認
送信者が送信元のメールアドレスやドメイン名を偽って送信することもある。例えば、送信元メールアドレスとして勝手に他者のアドレスを騙り、著名な大企業や政府機関、利用者の多い著名な製品の販売元やサービスの運営元から送られてきたメールであると錯誤させる手口である。
初期のメールの仕組みでは送信元が偽装されているか確かめる術は無かったが、現在では、名乗っている送信元から確かに送られてきたかどうかを問い合わせる「SPF」「Sender ID」「DKIM」などの「送信ドメイン認証」技術が普及しており、ある程度自動的に偽装を見破ることができるようになっている。
送信させない対策
各ISPでは契約者や契約者のコンピュータを乗っ取った外部の人間が自社のネットワークから迷惑メールを送信できないよう、外部サーバのメール送信ポート(TCP25番ポート)へのアクセスを一律遮断する対策を取っており、これを「OP25B」(Outbound Port 25 Blocking)という。
ISP自身の運営するメール送信サーバへはアクセスできるため、正規のアカウントを持つ会員本人がメールの送受信を行うのに支障はない。また、外部ネットワークからのメール送信サーバへのアクセスを拒否する「IP25B」(Inbound Port 25 Blocking)を実施している事業者もある。
UBE/UCE
英語圏では迷惑メールのことを “UBE” (Unsolicited Bulk Email:望まない大量の電子メール)、あるいは “UCE” (Unsolicited Commercial Email:望まない営利目的の電子メール)ということがある。UBEは迷惑メール全般を含み、UCEは商業目的の無差別配信メールを指す。
UCEはいわゆるスパムメールとほぼ同義だが、“SPAM”とはもともと迷惑メールとは無関係なホーメル(Hormel)社のランチョンミートの缶詰の商品名のことであるため、このような俗称が忌避される文脈(公的な文書に記載する場合など)に好まれる傾向がある。
スパム 【SPAM】 ⭐
何らかの方法で入手したメールアドレスに対して無差別に、本人に許諾を得ずに一方的に営利や詐欺を目的とする宣伝メールを配信すること。転じて、電子メール以外にも様々なネット上の手段を用いて無差別に広告メッセージをばらまく行為を総称する。
送信者(スパマー)はメールアドレスのリストを使い、宣伝内容を記したメールを片っ端から送信する。受信者のメールボックス容量やインターネット上の公共的な回線資源を無駄遣いし、受信者に有無を言わさず選別・削除作業の負担を強いる迷惑行為である。
受信者の心象を損なうため、まともな営業活動を志向するほとんどの事業者は用いない手法だが、アダルト関連やコンプレックス商法、一攫千金を謳う金融業者など端から消費者の信用を求めない事業者が低コストな宣伝手段として根強く実施し続けている。フィッシング詐欺などそもそもが犯罪目的のスパムも多い。
転じて、SMSやメッセンジャー、電子掲示板(BBS)やSNS、ブログやWebサイトのコメント機能などを悪用し、一方的に宣伝メッセージを送りつける行為全般を指して「スパム」と総称する。また、検索エンジンの分野では、ページ上の広告を閲覧させる目的で価値ないWebページを大量に制作し、検索エンジンに上位表示させようとする試みを「SEOスパム」と呼ぶ。
語源
「SPAM」とは、米ホーメルフーズ(Hormel Foods)社の味付け豚肉の缶詰のことである。イギリスのコメディー番組「Monty Python’s Flying Circus」(モンティ・パイソンの空飛ぶサーカス)の有名なコントに次のようなものがある。
レストランに夫婦が入ってきてメニューを選んでいると、近くに座っているバイキングの一団が「SPAM、SPAM、SPAM!」と大声で歌いだす。次第に店員も「SPAM」を連呼しだし、最初は嫌がっていた夫婦も最後には屈してSPAMを注文せざるを得なくなる、という筋書き。ほしくもないのに大量に送りつけられてくる広告メールから、このコントでしつこく連呼される「SPAM」を連想したのが由来と言われている。
ホーメル社は同社の登録商標である「SPAM」(すべて大文字)とは区別して、迷惑メールのことはすべて小文字の「spam」と呼ぶよう自社サイトで呼びかけている。また、「SPAM」及び「spam」を商標の一部として使用したり、迷惑メールと関連付けて同社製品の写真を使用することは許容しないとしている。
バグ
「虫」という意味の英単語で、コンピュータの分野ではプログラムに含まれる誤り、欠陥を指す。俗に、ソフトウェアが正常に動作しなくなることを「バグる」ということがある。
ソフトウェアの誤作動を引き起こすコンピュータプログラム中の欠陥を指し、人間がプログラムを書き記す際に起きる単純な誤記や勘違いなどによるものから、構想や設計の段階で誤りや矛盾が含まれていたことに起因するものなど、様々な原因によって発生する。プログラム中の誤りを発見し取り除く作業・工程を「デバッグ」(debug:除虫する)という。
バグを含むプログラムを実行することで生じる問題は様々だが、典型的なものとしては、利用者の操作に応答しなくなったり、設計意図と異なる挙動を示したり、誤ったデータを出力したり、記録されたデータを破壊したりといった振る舞いが挙げられる。
ビデオゲームの分野では、キャラクターやフィールドが通常はありえない状態になる現象や、不可能なはずの挙動や展開が可能になるバグが注目されることが多い。製品としては欠陥だが、バグによって可能になる奇妙な挙動や攻略テクニックなどを「裏技」「バグ技」などと呼んで面白がる文化がある。
潜在的なバグ
常に同じ実行箇所に差し掛かると同じ問題を引き起こすバグは発見しやすいが、いつどこで実行しても同じ箇所で必ず不具合を引き起こすとは限らない。特定の入力データや操作、使用環境や設定、あるいはそれらの特定の組み合わせによって発現し、それ以外の状況では誤作動を引き起こさない場合がある。
例えば、1980年代までは日付データの年号部分を西暦の下二桁で記録・管理することは記憶容量の節約や処理速度の向上に寄与するとして推奨されることが多かったが、西暦2000年に到達すると正常に動作しなくなる(西暦2000年問題)。実際、情報システム業界は1990年代末に業務用システムの改修に大きな人手を割くことになった。
バグの発見と修正
コンピュータプログラムの設計・記述の多くは人間が行うため、バグの発生・混入を未然に完全に防ぐ方法はなく、いかに効率よく早期に発見し取り除くかが重要となる。そのためには、ソフトウェア開発の各段階で繰り返し入念にテストを行い、発見された不具合や誤作動についてプログラム上の発生箇所や原因を特定し、対処方法を決定して修正などを行う。
発見されたほとんどのバグは正しい動作を行うプログラムコードに差し替えられる。発売・公開前のプログラムは修正して実行ファイルなどを作りなおすが、利用者の手元に提供した後にバグが発見されることもある。そのような場合には、開発元が「パッチ」「バグフィックス」などと呼ばれる修正プログラムをインターネットなどを通じて配布し、利用者側のソフトウェアを更新する。
オペレーティングシステム(OS)やライブラリ、ミドルウェアなど基盤的なソフトウェアの場合には、修正によってプログラムの振る舞いが変わり、従前の振る舞いを前提に動作していた他のプログラムなどに思わぬ影響を及ぼすことがある。深刻な影響が想定される場合はバグをあえて放置し、別の箇所や方法で悪影響を抑えるというアプローチが取られる場合もある。
歴史
古くは19世紀の記録に機械の設計・製造上の誤りや不良が “bug” と呼ばれていた事例がいくつか知られており、初出がいつに遡るのかは判然としない。現代のコンピュータのソフトウェアにおける用例に近い初期のエピソードとして最も有名なものは、1947年にグレース・ホッパー(Grace Hopper)氏が米ハーバード大学で遭遇した事例である。
初期の電気機械式のコンピュータ「Harvard Mark II」の不具合を調査する過程で、あるスタッフがリレー(スイッチ)に蛾が挟まって接触不良を起こしているのを発見した。彼女は日誌に蛾をテープで留め、“First actual case of bug being found”(実際にバグが見つかった最初の事例) と書き残した。
セキュリティホール ⭐
コンピュータシステムに生じた保安上の弱点や欠陥。悪意ある人物やプログラムがシステムを不正に操作したり、データを不正に取得・変更することができるようになってしまう不具合のこと。現在ではほぼ同義の「脆弱性」(vulnerability)という語が用いられる。
システムを構成する機器や装置、ソフトウェア、あるいはデータ形式や通信規約(プロトコル)などに含まれる、設計上あるいは実装上の誤りや見過ごしなどにより生じる不具合のうち、システムの安全性(セキュリティ)を脅かす潜在的な危険性を持つものを指す。
攻撃者はこれを発見し悪用することで、システム上で本来の権限を超えた操作を実行したり、本来は見ることのできないデータを盗み取ったり、編集権限の無いデータを改ざん、削除したり、他のシステムへの侵入や攻撃の踏み台に使用したりすることができるようになる。攻撃はコンピュータウイルスやインターネットワームのような形で自動化されている場合もあり、知らない間にこれらに感染し損害を被ったり、他のシステムへ感染を広げてしまうことがある。
セキュリティホールの多くはソフトウェアの問題により発生するため、欠陥の発見されたソフトウェアは開発者が修正プログラム(セキュリティパッチ)を配布することが多い。インターネットが普及した現在ではセキュリティホールを放置するといつ外部からの攻撃に晒されるか分からないため、ソフトウェアは常に最新の状態に更新することが奨励されている。
シャドーIT 【shadow IT】 ⭐
企業などの組織内で用いられる情報システムやその構成要素(機器やソフトウェアなど)のうち、従業員や各業務部門の判断で導入・使用され、経営部門やシステム管理部門による把握や管理が及んでいないもの。
組織内では業務用に正規に設置された機器や配線、ソフトウェアなどの他に、従業員が持ち込んだ私物のスマートフォンやタブレット端末、USBメモリなどのデジタル機器、私用の端末上で動作するソフトウェアや消費者向けネットサービス、当該部署が独自に決済して導入した機器やシステムなどが用いられることがある。
これらが経営層や情報部門の関与や認知を経ずに「知らないうちに」導入されて利用されている状態をシャドーITという。適切な管理下にあれば防げたはずのマルウェア感染や情報漏洩、外部からの攻撃などのセキュリティ上の問題を生じたり、事前の設計と異なる通信機器の設置や配による通信障害を招く場合がある。
背景として、スマートフォンなど消費者向けIT機器が高機能化・高性能化し、無料もしくは安価で便利な個人向けのソフトウェアやネットサービスが増えた結果、業務用製品がそれを後追いせざるを得なくなる「ITコンシューマライゼーション」と呼ばれる状況がある。
シャドーITへの対策としてシステムの徹底した監視と管理外要素の排除、接続遮断が行われることが多いが、そもそも従業員は業務の効率化を求めて持ち込みを行っているという事情に配慮し、一定のルールや管理システムのもと、持ち込みを認めて業務に活用する動きも見られる。これを「BYOD」(Bring Your Own Device)という。
サンクションIT (sanctioned IT)
シャドーITと対比する文脈で、組織として正式に導入、設置、支給などしているIT機器やソフトウェア、正式に契約したクラウドサービスなどのことを「サンクションIT」(sanctioned IT)と呼ぶことがある。“sanction” とは「正式に認める」「認可する」などの意。
不正のトライアングル ⭐
人が不正行為をはたらくのは「機会」「動機」「正当化」の三要素が揃った時であるとするモデル。アメリカの犯罪学者ドナルド・クレッシー(Donald R. Cressey)氏が提唱した理論をもとに会計学者のスティーブ・アルブレヒト(W. Steve Albrecht)氏がモデル化した。
主に組織内で従業員が不正行為を犯すに至るメカニズムを分析した理論で、人は三つの重要な要因が揃ったときに不正にはしるため、三つが揃わないようにするという観点で対策を立てる必要があると考える。
一つ目は不正を企図する「動機」(motive)あるいは「圧力」(pressure)で、そもそも本人がなぜ不正を働こうと思うのかという誘因や必要性を表す。例えば、「投資に失敗して多額の借金を抱えてしまった」「まとまったお金を用意できれば家族の重い病気を治療できる」といったことである。
二つ目は不正を行う「機会」(oppotunity)で、本人にとって不正を成功させるチャンスとなる状況を指す。例えば、「会計管理や入出金が一人に任されている」「監査や内部統制が機能しておらず経費精算をチェックする仕組みがない」など、不正を行っても発覚しにくい環境が該当する。
三つ目は本人の主観として不正を「正当化」(rationalization)してしまう心の働きである。例えば、「これは借りるだけで、投資で増やして返済すれば良い」「自分の待遇は能力や実績に照らして不当に低く、埋め合わせが必要である」など、自分に都合の良い理屈を考え出して倫理的な抵抗感を失わせる心理的作用を指す。
パスワードクラック 【パスワードクラッキング】
コンピュータの利用者が本人確認に用いる秘密の文字列(パスワード)を探り当てること。得られたパスワードにより本人になりすましてコンピュータを利用し、不正に操作することができるようになる。
最も単純で原始的な手法は「総当たり攻撃」(brute force attack:ブルートフォース攻撃)で、考えられるありとあらゆる文字の組み合わせを試す方式である。短くて単純(文字の種類が少ない)場合には有効な手法で、例えば数字4桁の暗証番号は「0000」から「9999」までの1万通りであるため、コンピュータで自動的に繰り返し試行できる環境ならばすぐに割り出すことができる。
辞書攻撃・類推攻撃
覚えやすく入力しやすいパスワードにしたいという人間心理の隙をついて効率的にパスワードを探索する手法もある。一般的な単語やよくある人名や地名、およびそれらの組み合わせを探索する「辞書攻撃」(dictionary attack)や、ターゲット本人に関連する情報(誕生日、住所、電話番号、家族の名前など)や単純な文字列(「12345」「abcde」など)を組み合わせたり一部を改変して探索する「類推攻撃」などがよく知られる。
パスワードリスト攻撃
複数のシステムやサービスで別々のパスワードを設定してそれぞれ覚えるのは億劫であるため、多くの人がパスワードの「使い回し」をしている。これを利用した攻撃手法が「パスワードリスト攻撃」で、あるサービスから不正アクセスなどで流出したIDとパスワードの組を用いて他のサービスへのログインを試み、パスワードを使いまわしている利用者のアカウントを乗っ取る。
パスワードのハッシュ化
認証システムなどではユーザー情報を保存する際、不正に盗み出されてもパスワードが露見しないよう、パスワードをハッシュ化してハッシュ値のみを保存する。ログイン時に入力されたパスワードとの照合はハッシュ値の比較のみで可能な一方、攻撃で流出しても元のパスワードは分からない。ただし、ハッシュ関数の強度が低い場合には総当たり法で短時間に逆算できてしまう場合があり、パスワードが割り出されてしまう。
辞書攻撃 【ディクショナリアタック】
パスワードの割り出しなどの不明な文字列の推測を効率よく行う手法の一つで、辞書や人名録など人間にとって意味のある単語のリストを候補として用いる方式。
利用者認証などのパスワード破りに応用する場合には、辞書に掲載されている単語やフレーズを片端から入力して認証を突破できるか試みる。
文字通り語学辞書(英英辞典など)の見出し語などから候補リストを作る場合と、これに加えて何らかのリストから地名や人名、社名、製品名などの固有名詞を抽出して追加する場合がある。
人間はまったくランダムな文字列は覚えにくいため何らかの意味のある単語を使いたがるという心理を利用したもので、ありとあらゆる文字の組み合わせを試行する総当り攻撃(ブルートフォースアタック)よりも効率的に探索を進めることができる。
試行回数は増えるが、より確実性を増すために、同じ単語の大文字と小文字の組み合わせが異なるパターンや、綴りを逆さにした文字列、先頭や末尾に数字や記号を加えたものなどを自動生成して追加する場合もある。
対処法としては、パスワードなどの一部または全体をまったく無意味でランダムな文字の並びにしたり、認証の試行回数に制限(一定回数の連続失敗でアカウントをロックするなど)を設け、攻撃者が大量のパターンを自動試行できないようにするといった手法がよく知られる。
暗号文やハッシュ値への辞書攻撃
暗号やハッシュ関数の解読手法として使われる場合には、辞書にある単語や無作為に集めた平文を暗号化あるいはハッシュ化し、目的の暗号文やハッシュ値と突き合わせて一致するかどうかを調べる。
対策法としては、平文に毎回変化する無意味なデータ(ソルトと呼ばれる)を連結してから暗号化やハッシュ化などを行うようにするなどの手法がある。
総当たり攻撃 【ブルートフォースアタック】 ⭐⭐⭐
暗号の解読やパスワードの割り出しなどに用いられる手法の一つで、割り出したい秘密の情報について、考えられるすべてのパターンをリストアップし、片っ端から検証する方式。
暗号鍵やパスワード、暗証番号(PIN)などを割り出す手法の一つで、コンピュータプログラムを用いて可能性のある符号列を自動的に生成し、順番に一つずつ正解かどうか試してみる。時間や試行回数に制限が無ければいつかは必ず解読できる。“brute force” とは「力づく」の意。
例えば、暗証番号が数字4桁のシステムの場合、「0000」から「9999」までの1万通りの可能性がある。人の手で番号の入力などを1万回行うのは大変だが、試行をコンピュータで自動化することが可能な状況ならば瞬時に終わらせることができる。
総当たり攻撃に対抗する最も単純な方法は符号列を長くするか、使用する文字の種類を増やすことである。例えば、4桁の番号の組み合わせは1万通りだが、8桁ならば1億通りになる。また、n桁の番号(数字のみ)の組み合わせは10n通りだが、数字・英大文字・英小文字の組み合わせならば62n通りとなる。
組み合わせの数がどの程度あれば安全と言えるかはその時代のコンピュータや通信回線の性能次第となる。半導体技術の発展により以前ならば十分安全だった暗号鍵やハッシュ値、パスワードなどが現実的な時間で解読できるようになってしまうことがある。実際、10年前や20年前と比べると、現在はより長い符号、より複雑なパスワードが求められるようになっている。
また、符号が短くても試行回数や速度を制限することで攻撃を難しくすることは可能である。例えば、一定の回数連続で誤った入力を試すとアカウントがロックされ、規定の方法(一定時間の経過や管理者による操作など)で解除しない限り再試行できないといった仕組みである。人間が頻繁に符号を入力しなければならない端末のパスコードやPINなどでよく用いられる。
パスワードリスト攻撃 【クレデンシャルスタッフィング攻撃】 ⭐
ネットサービスやコンピュータシステムの利用者アカウントの乗っ取りを試みる攻撃手法の一つで、別のサービスやシステムから流出したアカウント名とパスワードのリストを用いてログインを試みる手法。
何らかのシステムで実際に使われていたアカウント情報を入手して攻撃に利用する手法で、流出元と同じアカウント名(ID)とパスワードを別のシステムでも使いまわしている利用者のアカウントが乗っ取られてしまう。
攻撃者はまず管理が杜撰なインターネット上のネットサービスなどに侵入して会員のアカウント情報を盗み取ったり、別の攻撃者からリストを購入するなどして入手する。
このリストに含まれるアカウント名とパスワードの組み合わせを用いて別のサービスやシステムへのログインを試みると、同じ組み合わせを使いまわしている利用者が偶然いた場合に不正ログインに成功する。
ソフトウェアの脆弱性などを利用してシステムを直接攻撃する手法と異なり、標的システムが適切に運用され不正侵入などを受けていなくても攻撃が成功してしまう。アカウント名として利用者のメールアドレスを用いるシステムが特に標的となりやすく、また被害が起きやすい。
正規のアカウント情報を用いて行われる攻撃であるため直接防ぐことは難しく、二要素認証(二段階認証)などで本人確認を厳重にしたり、アカウント名にメールアドレス以外を設定するようにしたり、利用者に他のサービスとのパスワードの使い回しをやめるよう要請するなどの対策が取られることが多い。
クロスサイトスクリプティング 【XSS】 ⭐⭐⭐
利用者が入力した内容を表示するような構成のWebサイトに存在する欠陥を悪用して、攻撃者が用意した悪意のあるスクリプトを利用者の元に送り込んで実行させる攻撃手法。
SNSやECサイトのように閲覧者が送信したデータを何らかの形でコンテンツの一部として表示する機能を含むWebサイトが標的となる。入力内容のチェックが甘い場合に、攻撃者の仕掛けたスクリプト(Webページ上で実行される簡易プログラム)が閲覧者のコンピュータで実行される。
典型的な攻撃例は以下の通りである。まず、標的サイトには入力フォームがあり、閲覧者の入力を受け付けてサイト内の別のページに表示する。入力内容が「Hello World」の場合「http://標的サイト/message.cgi?text=Hello+World」というURLでアクセスするものとする。
フォームの受け付けプログラムには入力内容のチェックに不備(XSS脆弱性)があり、「Hello+World」の部分が実行可能なJavaScriptのコード断片であってもそのままブラウザへ送り返し、内容を表示した閲覧者のコンピュータ上で実行されてしまう。
攻撃者はこのサイトの利用者に向けて攻撃用のサイトを用意し、標的サイトに向けてリンクを作成する。リンク先のURLには「http://標的サイト/message.cgi?text=%3Cscript%3Ealert%28%22Hello+World%22%29%3B%3C%2Fscript%3E」のように、スクリプトとして解釈・実行される文字列を含ませておく。
閲覧者が攻撃用サイトのリンクを経由して標的サイトを訪れると、攻撃者によって仕込まれていたスクリプトが標的サイト上のものとして動作し、様々な攻撃が実行される。サイトをまたいでスクリプトが移転・実行されることが「クロスサイト」の名称の由来となっている。
この攻撃により、閲覧者は標的サイトの発行したCookieデータなどを攻撃者に盗み取られたり、攻撃者の用意した偽サイトに誘導されて個人情報やアカウント情報などを攻撃者に送信してしまったり、標的サイト上で意図せず自動的に特定の操作を実行させられてしまうなどの被害を受ける。
現在では様々な攻撃のバリエーションが知られており、必ずしも攻撃者がサイトを用意する必要はなくなっている。攻撃者が用意したスクリプトを標的サイトのものとして実行させられてしまう攻撃全般をクロスサイトスクリプティングと呼んでいる。
CSRF 【Cross Site Request Forgeries】
Webブラウザを不正に操作する攻撃手法の一つで、偽装したURLを開かせることにより利用者に意図せず特定のサイト上で何らかの操作を行わせるもの。
攻撃者はあるサイトへ特定のリクエストを発生させるURL(Webアドレス)を用意し、何らかの方法でこれを偽装・隠蔽してWeb閲覧者に開かせる。閲覧者は気付かずに、あるいは何のURLであるかを誤認して開き、攻撃者の意図したリクエストを発生させてしまう。
URLを開かせる手法はいくつか知られており、Webページやメール本文にリンク先について虚偽の内容を記載したリンクを設置する、HTMLのimgタグのようにページを開くと自動的にURLが読み込まれるタグを悪用する、ページ上にURLを読み込ませるようなスクリプト(JavaScript)や自動転送(HTTPリダイレクト)などを仕掛ける、といった手口が有名である。
URLを開くことによって生じる被害や被害者も様々で、多数の閲覧者から同時に特定のサイトへリクエストを発生させて機能不全に陥らせるDDoS攻撃として用いられることもあれば、URLがSNSやネットサービスなどの手続きや操作を表しており、閲覧者の個人データやアカウント情報の漏洩や改竄、意図しない決済や送金、手続きの執行などの被害を被ることもある。
また、攻撃者が閲覧者になりすまして外部へ攻撃や迷惑行為を働く場合もあり、閲覧者が身に覚えがないまま名誉毀損や業務妨害の加害者に仕立て上げられることがある。2012年に日本で発生した、いわゆる遠隔操作ウイルス事件では、真犯人がこの手口で別の人のWebブラウザから電子掲示板に犯行予告を書き込み、その人が犯人と疑われ検挙される被害が生じた。
クロスサイトリクエストフォージェリ攻撃の標的となるのは、いきなり特定のURLへアクセスするだけで何らかの操作や手続きが完了してしまうWebサイトやWebアプリケーションで、このような状態をクロスサイトリクエストフォージェリ脆弱性という。よく知られる対策法として、送信元のチェックや、利用者が意図してアクセスしたものかの確認(確認画面の表示や画像認証など)、サイト側から発行した情報の提示を求める等の手法があり、これらを組み合わせて十分なチェックを行うのが望ましいとされる。
クリックジャッキング 【クリックジャック攻撃】
Web閲覧者への攻撃手法の一つで、攻撃用ページの上に透明表示に細工した外部サイトを重ねて表示し、外部サイト上で利用者に意図しない操作を行わせる手法。
攻撃者は閲覧者にマウスなどで特定の位置を操作するよう仕向けるページを作成し、その上に被せるようにiframeタグで外部の著名サイト(SNSや商取引サイトなど)を表示する。外部サイトの方は見た目が透明になるような表示設定を行い、閲覧者に存在を気づかせないようにする。
閲覧者が攻撃用ページをWebブラウザに表示させると、下側にある攻撃用ページの内容しか見えないため、これを操作しようとしてボタンやリンクのクリック等の操作を行うが、実際には上に覆いかぶさっている透明な外部サイトの一部をクリックしてしまい、当該サイトで意図しない操作を実行させられてしまう。
標的サイトの登録利用者がログイン状態にある場合に重大な設定変更(投稿の公開範囲の変更、アカウントの削除等)を行うよう誘導する設計になっていることが多く、その場合は閲覧者が当該サイトに登録していないかログアウト状態であれば影響は受けない。
閲覧者側の操作や設定で完全に遮断することは難しいが、Webサイト側では攻撃に悪用されないようHTTPヘッダの「X-Frame-Options」を必ず指定するようにして、外部サイトのiframe内に表示させないといった対策はできる。また、単純なクリック操作で重大な操作が完結しないよう、操作にキー入力などを組み合わせたり、重要な変更の直前に改めて利用者認証を求めるといった対策もある。
ドライブバイダウンロード 【DBD攻撃】 ⭐⭐
不正アクセスの手法の一つで、Webサイトなどに不正なソフトウェアを隠しておき、閲覧者がアクセスすると気づかないうちに自動でダウンロードして実行する攻撃手法。
攻撃者はコンピュータウイルスや遠隔操作ソフトなどのマルウェア(悪意のあるソフトウェア)を細工されたWebページに関連付けておく。閲覧者がページを開くとWebブラウザの不具合などを利用して自動的に不正なプログラムが起動し、マルウェアがダウンロードされて実行されたりコンピュータに導入(インストール)される。
閲覧者のコンピュータで起動することに成功したマルウェアは、ストレージに保管されたデータやプログラムを破壊したり、秘密の情報を不正に取得・送信したり、他のコンピュータへのウイルス感染や不正アクセスの踏み台にしたり、攻撃者からの任意の遠隔操作を受け付けるバックドアとして潜伏したりする。
攻撃に利用されるサイトは攻撃者が用意したサイトとは限らず、通常のサイトが不正アクセスやウイルス感染によって運営者が気づかないうちにマルウェアや攻撃者のサイトへ誘導するスクリプトなどを仕込まれてしまい、何も知らずに普段通りアクセスした閲覧者が被害に合う事例もある。
SQLインジェクション 【SQL injection】
データベースと連動したWebアプリケーションなどに対する攻撃手法の一つで、検索文字列など外部から指定するパラメータの一部にSQL文の断片などを混入させ不正な操作を行うもの。また、そのような攻撃を可能にする脆弱性。
データベースを利用するWebサイトの中には閲覧者の求めに応じて動的にプログラムを起動し、データベース管理システム(DBMS)へデータの検索や更新などを依頼するものがあるが、その際に「SQL」(Structured Query Language)と呼ばれる問い合わせ言語が標準的に利用される。
検索機能などを実装するために、閲覧者がフォームなどに入力した文字列をプログラムが受け取り、あらかじめ用意されたSELECT文などの一部に埋め込んでDBMSへ渡し、検索と該当データの抽出を依頼する処理がよく行われる。
その際、悪意のある攻撃者が検索文字列として引用符や条件式などを組み合わせたSQL文の断片を渡すことにより、開発者が想定していないSQL文が生成・実行され、本来得られないはずのデータを出力してしまったり、保存されたデータが破壊・改竄されることがある。“injection” は「注入」の意。
SQLインジェクションの被害で最も多いのは個人情報などデータベースに保存された重要なデータや機密データの漏洩で、過去に名簿やアカウントリストなどの流出事件が様々なサイトで発生している。また、Webサイトの改竄に悪用された場合、Webページ上にWebブラウザを攻撃するコードなどを埋め込まれる場合もあり、サイトを訪れた閲覧者に二次被害が広がってしまう。
対策としては、単純な文字列連結で動的にSQL文を生成するのをやめてプレースホルダ(バインド機構)やプリペアードクエリ(プリペアードステートメント)のような仕組みを活用したり、渡された入力値を入念にチェックして特定の文字を適切にエスケープ(無害な文字に置換)するといった手法がよく知られ、これら複数の手法を組みわせることも推奨されている。
ディレクトリトラバーサル 【パストラバーサル】
コンピュータシステムへの攻撃手法の一つで、ファイル名を扱うようなプログラムに対して特殊な文字列を送信することにより、通常はアクセスできないファイルやディレクトリ(フォルダ)の内容を取得する手法。
Webアプリケーションなどで、パラメータとして外部からファイル名などの指定を受け付けるような場合に、その文字列の取り扱いに問題があると攻撃対象となる。
オペレーティングシステム(OS)の多くはファイルやディレクトリの所在を記述するパス(path)の記法の一部として、現在のディレクトリ(UNIX系OSやWindowsなどでは「.」)や一階層上の親ディレクトリ(同「..」)、最上位ディレクトリ(先頭に「/」や「¥」)などを意味する特殊な記号の組み合わせが定められている。
攻撃者はこれを悪用し、プログラムに対してディレクトリ階層を移動するようなパスを与えることにより、開発者の想定外の場所にあるファイルやディレクトリへのアクセスを行う。パスワードや個人情報など秘匿されるべき情報が詐取されたり、システム設定の記録されたファイルが改竄・削除されシステム環境が破壊されることもある。
バッファオーバーフロー 【バッファオーバーラン】 ⭐⭐
コンピュータプログラムの動作異常の一つで、あるデータの受け取りや保管のために用意された領域(バッファ)に想定以上の長さのデータを書き込んでしまい、溢れたデータが隣接する領域を不正に書き換えてしまうこと。また、溢れたデータによって引き起こされる予期しない動作。
プログラムがメモリに書き込もうとするデータ長や領域の終端のチェックを怠ると、あらかじめ確保した領域の端を超えて隣接する別のデータのための領域を溢れたデータ断片で上書きしてしまう。上書きされた領域は本来想定されていない内容に変更されてしまうため、プログラムが異常終了する等の悪影響が及ぶ。ネットワークを通じた外部からの攻撃に悪用できるため、典型的なソフトウェア脆弱性の一つとして広く知られる。
C言語やC++言語など、ポインタのような低レベル(ハードウェア寄り)の操作が可能で言語仕様レベルでの安全対策などがあまり無いプログラミング言語のプログラムに発生しやすい。いわゆるスクリプト言語のような開発者に直接的なメモリ操作をさせない仕様の言語では(言語処理系自体のバグを除いて)発生しにくい。
これまでに数多くのソフトウェアにバッファオーバーフロー攻撃の不具合が発見され、修正プログラムが発行されている。抜本的な対策としてはプログラム中にバッファを溢れさせるコードを作成しないようにするしかなく、既存の不具合は発見次第修正するしかない。x86系プロセッサのXDビット(NXビット)のようにCPUやOSなどのレベルで対策する手法もいくつか考案されたが、既存の不具合を完全に無効化しながら実行に支障がないようにすることは難しい。
バッファオーバーフロー攻撃 (バッファオーバーラン攻撃)
ソフトウェアに存在するバッファオーバーフローを引き起こすコードを悪用し、外部からわざと想定より長いデータを与えることでプログラムを異常終了させたり、攻撃用のコードを送り込んで実行させたりする攻撃手法があり、バッファオーバーフロー攻撃(バッファオーバーラン攻撃)と呼ばれる。
攻撃者が任意の攻撃を実行できる手法もあり、コンピュータウイルス感染に悪用されたり、最悪の場合は管理者権限を乗っ取られて外部から遠隔操作され、重要なデータの漏洩、改竄、削除や、外部の別のシステムへの攻撃の踏み台にされることもある。
中間者攻撃 【MITM攻撃】
通信を行う二者の間に割り込んで、両者が送受信する情報を自分が用意したものとすりかえることにより、気付かれることなく盗聴したり、通信内容に介入したりする攻撃手法。インターネットなど信頼できない通信経路を利用することで被害に遭うことがある。
攻撃者Xは、通信を行うAとBのやり取りをすべて中継することができる拠点を用意する。これは例えば、公衆Wi-Fiスポットを装った不正なアクセスポイントを設置して、知らずに接続したスマートフォン利用者と、その関係先の通信を取り次ぐといった形で行われる。
AがBに自ら公開鍵を渡して公開鍵暗号による通信を行うとすると、XはAがBに送った公開鍵を取得し、Bには代わりに自らの公開鍵をAのものと偽って送信する。Bは(Aのものと思い込んでいる)Xの公開鍵で暗号化したデータをAに送信する。
Xはこれを横取りして自らの秘密鍵で復号し、Aの公開鍵で暗号化してAに送付する。Aは自らの秘密鍵でデータを復号することができ、Bから安全に送られてきたデータだと思い込む。この過程でXは両者のやり取りを覗き見たり改竄したりすることができるが、AもBもそのことには気付かない。
公開鍵暗号で電子署名や鍵交換などを行うには、中間者攻撃で公開鍵がすり替えられないようしなければならない。AとBが共通して信頼している認証局(CA)が発行したデジタル証明書(公開鍵証明書)を利用して、公開鍵が確かに相手方のものであると確かめる必要がある。
中間者攻撃は公開鍵暗号だけでなく、一般的なWebサービス、電子メール、DNS(Domain Name System)などを標的に行われることがある。万能の解決策はなく、認証方式などを工夫して利用者やクライアントがサーバなどの接続先を本物であると確認できる手段や手順を用意する必要がある。
MITB攻撃 【Man-In-The-Browser】 ⭐
ネットワークを通じた攻撃手法の一つで、攻撃対象の利用するコンピュータにトロイの木馬など悪意のあるソフトウェアを潜り込ませ、Webブラウザなどの通信を監視して通信内容を改ざんしたり操作を乗っ取る手法。
よく知られた手口として、オンラインバンキングの操作を乗っ取って利用者の預金を詐取する手法がある。攻撃者は標的のコンピュータに何らかの方法でトロイの木馬を送り込み、Webブラウザの通信をすべて中継して監視するプロキシとして動作させる。
監視中に利用者が正規の認証情報を入力して金融機関のサービスにログインしたのを検知すると、通信に介入して送受信情報の改竄を行い、振込先などの情報を不正に書き換えて攻撃者の指定した口座に預金を振り込ませてしまう。
これは、利用者から見ると不正な偽サイトに誘導されたわけではなく、正規のサービスを利用して正しく操作が完了したように見える(データの改竄は画面上ではなく送信のタイミングで行われる)ため対策が難しい。
銀行側から見ても、正規の利用者がいつものコンピュータから正規の手続きに則って認証を行い、正しく送金指示を行っているように見えるため、やはり対策を取りにくい。両者とも単独で改竄に気付くのは困難なため、送信時に送金情報に応じて変化するワンタイムパスワードを付加して受信側で検証するトランザクション署名などの仕組みが必要となる。
オープンリレー 【第三者中継】
メール送信サーバ(SMTPサーバ)が、外部からの送信依頼を受け付けること。特に、何の制限も無く誰でも自由にメールを送信できるよう開放していること。迷惑メールやウイルスメールの送信に悪用されるため好ましくないとされる。
利用者からメールを受け取って宛先の受信サーバに届けるSMTPサーバは、インターネットサービスプロバイダ(ISP)なら加入者のみが、企業などの組織であれば従業員のみが利用できるよう、依頼を受け付けるIPアドレスやメールアドレスなどを限定する運用が一般的となっている。
一方、第三者中継設定のサーバは特にそのような制限を設けず、インターネット上の誰からでも送信依頼を受け付ける。これは悪質な広告業者がスパムメールを無差別にばら撒いたり、攻撃者がウイルスメールを送信したりする「踏み台」として使われてしまう危険性があるため、適切な制限を設けることが推奨されている。
インターネット上にある第三者中継状態のサーバを調べてリストの形で公開している団体もあり、受信側が自衛手段としてリストに掲載されたメールサーバからのメールの受け取りを自動的に拒否するよう設定している場合もある。
最近では一般の家庭でもパソコンを高速な回線で常時接続することが一般的になってきたため、感染すると第三者中継サーバとして機能するコンピュータウイルスなども登場している。このようなウイルスに感染すると利用者は気付かないうちに迷惑メール送信の踏み台にされてしまう。
IPスプーフィング 【IP address spoofing】 ⭐
TCP/IPネットワークを通じた攻撃手法の一つで、IPパケットの送信元として虚偽のIPアドレスを書き入れてそのアドレスになりすます手法。不正侵入にもDoS攻撃にも悪用される。
IP(Internet Protocol)の仕様では、パケットのヘッダにある送信元IPアドレスの欄は送信側の自己申告であるため、悪意を持って別のIPアドレスを書き込んでそのアドレスからの送信であるかのように偽装することができる。
企業などのネットワークでは、内部ネットワークのアドレスからの接続を許可し、外部アドレスからの接続を拒否するといった接続設定でセキュリティを確保している場合がある。そのようなネットワークへ攻撃者が内部アドレスを送信元とするパケットを送信すると、内部からの接続と誤認して許可してしまう。攻撃者は自身のアドレスをどこにも残していないため、ログ(通信記録)を調べても真の送信元がどこかは分からない。
IPスプーフィングによる通信は一方通行であり、攻撃対象からの応答は送信元として偽装されたIPアドレスへ送られ、攻撃者が応答を受信して内容を確認することはできない。また、偽装されたアドレスの本来の持ち主が稼働している場合、応答に反応して正しいパケットを送信することがあり、攻撃が成立しない場合がある。こうした制約があるため、不正侵入などに用いるには他の手法と併用されることが多い。
IPスプーフィングは古典的な攻撃手法であり、不正侵入やデータ漏洩などを防止する対策が広まっている。近年では攻撃対象に大量のデータや接続要求を送信して正常な動作を妨げるDoS攻撃(特にDDoS攻撃)と併用されることが多く、攻撃者の身元の秘匿やアクセス制限対象のアドレスの撹乱などに用いられる。
DNSキャッシュポイズニング 【DNS cache poisoning】 ⭐⭐
インターネット上のIPアドレスとドメイン名(ホスト名)を対応付けるDNS(Domain Name System)に対する攻撃手法の一つで、DNS情報の探索を行うキャッシュサーバに不正な手段で嘘の情報を覚えさせ、利用者からの問い合わせに答えさせる手法。
DNSキャッシュサーバは利用者からのドメイン名などの問い合わせを受け付け、そのドメインを管理する権威DNSサーバへの問い合わせを代行し、問い合わせ結果を一定期間保存して利用者に応答することで権威サーバの負荷を低減する役割を果たしている。
本来、キャッシュサーバが保存する情報は各々のドメインの情報を管理・配信する権威DNSサーバから受信したものだが、古いDNSサーバソフトウェアなどでは権威サーバへの問い合わせに対する応答が本当にその権威サーバからのものであるかのチェックが甘い設計のものがある。
攻撃者はこの弱点を悪用し、あるドメインの権威DNSサーバになりすましてキャッシュサーバに虚偽のDNS情報を与え、これを保存させて利用者への応答に使わせる。利用者がそのキャッシュサーバに当該ドメインについての問い合わせを行うと、攻撃者が用意した虚偽の内容を応答するようになってしまう。
これにより、利用者は正規のドメイン名にアクセスしているはずなのに攻撃者の用意した有害なサイトのIPアドレスへ誘導されて攻撃を受けたり、気づかないうちに通信内容の盗み見や改竄をされたり、特定のドメインへアクセスできない状態に陥ったりしてしまう。
利用者が操作しているソフトウェアの操作画面などに表示されるドメイン名やホスト名などの情報は正規のものであるため、虚偽の情報を流されていることを利用者側では気が付きにくいという特徴がある。
セッションハイジャック
ネットワーク上で一対の機器間で交わされる一連の通信(セッション)を途中で乗っ取り、片方になりすましてもう一方から不正にデータを詐取したり操作を行なう攻撃。
コンピュータや通信機器の間の通信は多くの場合、人が電話をかけるときのように、通信開始の手続き、データのやり取り、通信終了の手続き、が一定の手順に則って一連の流れとして行われ、これをセッションという。
セッションハイジャックはこの一連のやり取りに不正に介入する攻撃で、偽造したデータを送りつけるなどの手法によりセッションを結んでいる片方になりすまし、もう一方と通信を行なう。これにより、本来の相手にしか開示されない秘密の情報を詐取したり、パスワードの変更などの重要な操作を不正に実行することができるようになる。
Web上のセッションハイジャック
単にセッションハイジャックという場合はWebアプリケーションにおけるWebサーバとクライアント(Webブラウザなど)の通信に介入してセッションを乗っ取る攻撃を指すことが多い。
Webのデータ転送に用いられるHTTP自体にはセッション管理のための仕様が存在しないため、アプリケーション側にセッション確立のための仕組みが組み込まれている。その設計に不備があるとセッションハイジャックを可能とする脆弱性が生じる。
よく用いられる手法として、セッションIDに規則性がある場合にこれを推定して割り出す手法や、IDが記録・伝送される途上で盗み見る手法、攻撃者の用意したIDに不正にすり替える手法(セッションフィクセーション攻撃)などがある。
DoS攻撃 【Denial of Services attack】 ⭐⭐⭐
通信ネットワークを通じてコンピュータや通信機器などに行われる攻撃手法の一つで、大量のデータや不正なデータを送りつけて相手方のシステムを正常に稼働できない状態に追い込むこと。
標的となる機器やネットワークなどを機能不全に陥らせる攻撃で、機密情報の漏洩や不正な遠隔操作などの被害は起きないが、システムに保安上の欠陥・弱点(脆弱性)が存在しなくても攻撃が成立する危険があるという特徴がある。
大量のデータを送りつけて通信容量や処理能力を飽和状態にして応答できないようにする手法(フラッド攻撃)と、ソフトウェアの脆弱性などを顕在化させるような不正なデータを送り込み、システムを応答不能にしたりソフトウェアを異常終了させてしまう手法がある。
フラッド攻撃は必ずしもセキュリティ上の弱点が存在しなくても実行でき、悪用する通信方式(プロトコル)などにより、SYNフラッド攻撃、ICMPフラッド攻撃(Pingフラッド攻撃)、UDPフラッド攻撃、F5アタックなどの種類がある。
不正に乗っ取った端末などに遠隔から指示して標的に一斉にアクセスを行う分散型の攻撃手法を「DDoS攻撃」(分散DoS攻撃)という。送信元アドレスを標的のものに偽装したパケットをネット中にばら撒いて、標的に(身に覚えのない)応答を集中させる手法は「DRDoS攻撃」(DoSリフレクション攻撃)という。
通常のDoS攻撃は処理能力や通信能力を飽和状態に追い込むことを目的とするが、標的が従量課金制のクラウドサービスなどを利用している場合に、無駄なデータ伝送や処理を大量に行わせて経済的な破滅を狙う攻撃手法もあり、「EDoS攻撃」(Economic DoS attack)と呼ばれる。
DDoS攻撃 【Distributed Denial of Service attack】 ⭐⭐
インターネット上の多数の機器から特定のネットワークやコンピュータに一斉に接続要求を送信し、過剰な負荷をかけて機能不全に追い込む攻撃手法。
攻撃対象が正常に稼働できないよう妨害するDoS攻撃(Denial of Service)の一種で、ネットワーク上に分散した多数の端末が連携して攻撃を行うことがからこのように呼ばれる。
攻撃の首謀者がSNSなどで参加者を募り、多数の実行犯が自らコンピュータを操作して攻撃に参加する場合と、攻撃者がコンピュータウイルスなどを用いて事前に乗っ取った多数の端末を遠隔操作して一斉に攻撃させる場合がある。
攻撃が開始されると標的のシステムには短時間に大量のアクセス要求が押し寄せ、サーバの処理能力や通信回線の伝送容量などを使い尽くし、機能を停止したり外部からのアクセスが困難になる。
同じ送信元から多数の接続要求を行う場合に比べ、一件一件のアクセス要求は通常のアクセスと見分けがつきにくく、攻撃のみを機械的に判別して遮断することが難しい。標的側のセキュリティ対策だけで対応するのは限界があり、大手ネット企業などもしばしば被害にあう。
クリプトジャッキング ⭐
ネットワークを通じて遠隔から行われる攻撃の一種で、標的のコンピュータにマルウェアを送り込み、攻撃者が利益を得るための仮想通貨のマイニング処理を勝手に行うこと。
仮想通貨の多くは取引記録の改竄を防ぐため、暗号技術を応用して取引データを基に特殊な値を算出し、データと一緒に記録する。この値の算出には膨大な回数の計算を行って候補を絞り込む必要があり、算出に成功すると報酬として一定額の当該通貨が授与される。この仕組みを、鉱山から希少な金属を掘り出すことになぞらえて「マイニング」(mining:採掘)と呼ぶ。
クリプトジャッキングでは標的のソフトウェアの脆弱性を悪用して不正にプログラムを実行させたり、何らかの有用なソフトウェアであるように装う(トロイの木馬)などの手法を使い、仮想通貨マイニング用のソフトウェアを送り込んで利用者に気付かれないよう実行させる。得られた報酬の仮想通貨が攻撃者の利益となる。
標的上では大量の計算が行われるため、ソフトウェアの実行速度が低下したり、電力消費量(電気代)が増えるといった被害が発生する。マイクロプロセッサ(CPU)など内部の電子回路が常時フル稼働状態となるため、排熱が追いつかなくなり挙動が不安定になったり機能が停止(熱暴走)する場合もある。
一般的にはコンピュータ上にソフトウェアを送り込むなどして利用者の操作とは無関係に勝手に動作する種類のものをクリプトジャッキングというが、Webサイトの運営者が広告を掲載する代わりに閲覧者がページを表示している間だけ自動的にマイニングを行うスクリプトを設置するケースもあり、これを広告表示と同等に問題なしと考えるか一種のクリプトジャッキングとみなすかについては見解が分かれる。
標的型攻撃 【スピア型攻撃】 ⭐
特定の個人や組織、情報を狙ったサイバー攻撃のこと。企業や国家の機密情報を盗み取る目的で行われることが多い。
コンピュータウイルスやトロイの木馬などの不正なプログラム(マルウェア)、システム利用者のアカウントの乗っ取り、システムへの不正侵入・遠隔操作などの手法が用いられ、個人情報や機密情報、営業秘密、知的財産などの窃取、特定のシステムの破壊、Webサイトの改竄などが行われる。
無差別に行われる攻撃とは異なり、事前に調査した対象の組織や個人に固有の情報を積極的に利用するソーシャルエンジニアリング的な手法がよく用いられる。例えば、ウイルスを添付したメールの件名や本文、偽装された送信元、添付ファイル名などに、対象と関わりのある実在の組織名や人物名、組織内でのみ通用する符丁などを記し、対象者の油断を誘ってファイルを開かせ感染させるといった手法が用いられる。
また、ウイルスやバックドア(遠隔操作用の潜伏ソフト)などは無差別にばら撒かれるものとは異なり、対象のシステムに合わせてオーダーメイドで開発され、一般的なアンチウイルスソフトや迷惑メールフィルタなどでの検知・排除が困難なことが多い。攻撃が発覚しにくいよう痕跡を消去したり、侵入に成功したシステムに長期間潜伏し、繰り返し情報を窃取する場合もある。
標的型攻撃のうち、高度に組織化された集団により多角的で継続的な攻撃が行われるものを「APT攻撃」(Advanced Persistent Threats)と呼ぶことがある。不正侵入後に数ヶ月から数年に渡って継続的に活動し、高度な国家機密にアクセスしたり、国防や社会インフラに関わる重要な施設やシステムに打撃を与えるといった活動が該当する。
APT攻撃 【Advanced Persistent Threats】
サイバー攻撃の一種で、特定の組織や個人を狙い、様々な手段を組み合わせて継続的に行われるもの。いわゆる標的型攻撃の一種で、攻撃が多角的で継続性があるものを指す。
特定の個人や組織を執拗に狙い撃ちするのが特徴で、一般的なアンチウイルスソフトでは捕捉できないオーダーメイドのコンピュータウイルスを新たに開発して送り込んだり、事前に調査した内部情報から組織内の符牒や固有名詞などをメッセージに記載して警戒心を緩ませるといった手法が用いられる。
また、不正侵入などに成功しても数ヶ月から数年に渡って「潜伏」し、情報収集や攻撃の準備などを入念に行い、単発の攻撃では実現できない深刻な損害を与えたり、高度な機密情報を盗み出したりする。
特定のコンピュータシステムへの侵入やその破壊、機密情報の詐取などを目指していると思われる事例が多く、金銭的な利益や愉快犯的な動機からではなく、産業スパイや国家機関(軍や情報機関)による諜報活動の一環として行われているものと考えられている。
APT攻撃の例として、2010年にイランの核施設でドイツ製の産業機械がスタックスネット(Stuxnet)と呼ばれるウイルスにより乗っ取られ、設備が深刻な打撃を受けた事件が有名である。
水飲み場型攻撃 【ウォータリングホール攻撃】
特定の組織や個人を狙う標的型攻撃の手法の一つで、標的がよく利用すると思われるWebサイトを改竄し、コンピュータウイルスなどの感染を試みる手法。
Webサイトに不正なコードを埋め込み、利用者に気付かれずにウイルスなどをダウンロードさせる「ドライブバイダウンロード」(drive-by download)攻撃を標的型攻撃に応用したもので、肉食獣が水場の周囲で待ち伏せし、水を飲みに現れた草食獣を狙い撃ちにする様子になぞらえている。
攻撃者は標的が日常的に利用していると推測されるネットサービスやWebサイトに絞って攻撃を仕掛け、標的のシステムにのみ感染するウイルスなどを仕込む。攻撃に成功すると、標的の情報システムを遠隔操作して破壊したり、外部の攻撃への踏み台にしたり、機密情報を盗み出したりする。
インターネット利用者を無差別に攻撃する通常のドライブバイダウンロード攻撃に比べ、標的以外の利用者がサイトにアクセスしても攻撃は発動しないため、攻撃が発覚しにくいという特徴がある。
標的が頻繁に利用するWebサイトの割り出しは、標的の業種などから推測したサイトをリストアップし、実際に侵入してアクセスログなどから標的のアクセスが多いかどうかを調べているのではないかと言われている。不正侵入されたWebサイトから水飲み場型攻撃の準備段階と思われる徴候(アクセスログが読み出された以外何もされなかった等)が発見された例もある。
やり取り型攻撃
特定の相手を狙う標的型攻撃の一種で、電子メールなどで何度か無害なやり取りを行い、標的の気が緩んだどころを狙って添付ファイルによるマルウェア感染や不正なサイトへのアクセスを誘導する手法。
攻撃者はまず企業などの組織の特定の相手(問い合わせ窓口に連絡し応対した担当者を狙う場合もある)に対し、取引先や何らかの関係者、一般の問い合わせなどを装って連絡を試みる。標的から応答があったら、質問や確認などを装って何度か無害なやり取りを行う。
標的が不審がっていなさそうであると判断したら、「質問を文書ファイルにまとめたので見てほしい」などともっともらしい理由を付けて、不正な添付ファイルや攻撃用WebサイトのURLなどを載せたメッセージを送る。担当者がファイルやリンクを開いてしまうと、コンピュータがマルウェアに感染するなどして、遠隔操作や重要な情報の盗み出し等の被害を受ける。
不特定多数の相手にいきなり不正な添付ファイルやWebリンクを仕込んだメールを送り付ける「ばらまき型」の攻撃に比べ、受信者が「外部の関係者との通常のメッセージのやり取りの一環である」と錯覚し、添付ファイルやWebリンクへの警戒を怠ってしまいがちであるとされる。
対策としては、外部とメッセージ送受信が可能な従業員への攻撃手口の周知、身元の不確かな相手からファイル等を受け取ったらセキュリティ部門へ一報するなど社内の関連手順の見直し、不審なファイル等を安全に確認する体制の整備(社内システムから隔離した専用の環境を用意する等)が挙げられる。
フィッシング 【フィッシング詐欺】 ⭐⭐⭐
金融機関などからの正規のメールやWebサイトを装い、暗証番号やクレジットカード番号などを詐取する詐欺。利用者を騙して重要な情報を入力させることを狙う。
「釣り」を意味する “fishing” が語源で、釣り針の先に付けた餌やルアーに獲物が食いつく様子を釣りに例えた表現だが、偽装の手法が洗練されている(sophisticated)ことから “phishing” と綴るようになったとする説がある。
フィッシングの代表的な手口は以下のとおり。メールの送信者名を金融機関の窓口などのアドレスにしたメールを無差別に送りつけ、本文には個人情報を入力するよう促す案内文とWebページへのリンクが載っている。
リンクをクリックするとその金融機関の正規のWebサイトと、個人情報入力用のポップアップウィンドウが表示される。メインウィンドウに表示されるサイトは「本物」で、ポップアップページは「偽者」である。本物を見て安心した利用者がポップアップに表示された入力フォームに暗証番号やパスワード、クレジットカード番号などの秘密を入力・送信すると、犯人に情報が送信される。
フィッシング攻撃者は、URLに使用される特殊な書式を利用してあたかも本物のドメインにリンクしているかのように見せたり、ポップアップウィンドウのアドレスバーを非表示にするなど非常に巧妙な手口を利用しており、「釣られる」被害者が続出している。
フィッシングへの対応策としては、送信者欄を信用しない、フォームの送受信にSSLが利用されているか確認する、メールに示された連絡方法(リンクなど)以外の正規のものと確認できている電話番号やURLなどから案内が本物かどうかを確認する、などが挙げられる。
スピアフィッシング (spear phishing)
特定の人物を狙い、偽のメールを送ったりウイルスを仕込んだりしてパスワードや個人情報などを詐取する詐欺。もとは魚釣りの用語で、銛(もり)や水中銃で魚を突き刺す釣り方のこと。
大手銀行のオンラインバンキングなど有名なサービスの不特定多数の利用者を狙う通常のフィッシングとは異なり、対象の素性を調査した上で、その個人に合わせた手法が個別に考案されるのが特徴である。
例えば、大企業の支店に勤務する社員に「本社の情報システム部の者だが調査に必要なのであなたのパスワードを教えてほしい」といったメールを送り、だまされた社員から聞き出したパスワードを使ってその企業のネットワークに不正侵入するといった手が使われる。他にも、上司や取引先に成りすまして業務上の機密情報や知的財産を詐取するといった事例が報告されている。
ファーミング詐欺 (pharming)
有名な金融機関やオンラインショップのサイトをそっくりに真似た偽のサイトを作り、DNSサーバの情報を書き換えることで利用者を誘導し、暗証番号やクレジットカード番号などを詐取する詐欺。フィッシング詐欺の手口の一つ。
通常、Webサイトにアクセスするにはドメイン名を含んだURLを入力するが、ドメイン名は通信事業者などが管理するDNSサーバによってIPアドレスに変換され、対応するIPアドレスを持ったサーバにアクセスすることになる。
ファーミングを行う攻撃者は、このDNSサーバの管理するドメインとアドレスの対応表を不正に書き換え(DNSキャッシュポイズニング)、利用者がドメインを問い合わせると偽のアドレスを返すよう細工する。
利用者は自分の利用している金融機関などの正しいURLにアクセスしているつもりで、攻撃者の運用するそっくりな偽のサイトに誘導され、不正に情報を詐取される。なお、パソコンの中にもドメインとアドレスを対応付けるhostsファイルというファイルが保存されており、ウイルスなどを使ってこれを書き換えることで偽のサイトに誘導する手法もある。
フィッシング詐欺は偽の案内メールなどで利用者を「一本釣り」にする手法だが、DNSサーバに不正な情報を流すことでそのサーバを利用する利用者を丸ごと偽のサイトに誘導する様子を農業(farming)に例え、ファーミングと名付けられた。綴りが本来の "farming" ではなく "pharming" なのはフィッシング詐欺を "phishing" と綴るのを踏襲したもので、"sophisticated" (洗練された) が語源と言われている。
ワンクリック詐欺 【ワンクリック料金請求】
インターネットを通じて行われる不当料金請求の手口の一つで、Webページを開くといきなり料金請求の画面が表示される方式。
無差別に大量に送信される勧誘メールなどからサイトにアクセスすると、ページを開いただけで「登録が完了しました」「料金をお支払いください」などのメッセージが突然表示され、金額や振込先などが表示される。
請求画面には、アクセスした人のIPアドレスや端末の機種名(スマートフォンなどの場合)、Webブラウザやオペレーティングシステム(OS)の種類、位置情報サービスなどから割り出した大まかな現在地の情報などが表示されることが多い。
これらの情報は普段からブラウザがサーバ側に提供しているものであり、これを元に氏名や住所、電話番号などの個人情報を割り出すことはできない。「個人情報を取得したので支払いが無い場合は法的措置を取る」といった恫喝的なメッセージが記載されることもある。
サイトにアクセスしただけで、あるいは十分な契約についての説明と明確な意思表示なしに契約が成立することはないので、このような請求は法的に無効であり、料金を支払う必要はない。また、自らサイト側に申告しない限り、個人情報が業者の手に渡ってしつこい督促に会うということもないので、このような画面に出くわしても無視してページを閉じて良い。
ゼロデイアタック 【ゼロデイ攻撃】 ⭐⭐
ソフトウェアなどにセキュリティ上の脆弱性が発見されたときに、問題の存在や対策法が広く周知される前に行われる攻撃。一般の利用者は対処する術がない。
コンピュータシステムを外部からの攻撃から守るには、メーカーや開発者が公開する修正プログラム(セキュリティパッチ)を公開後即座に適用するのが基本だが、ゼロデイ攻撃の場合は対応策が公表される前に攻撃が行われるため、このような対策では防ぎきれない。
実際、開発者が対応を取る前に、発見された脆弱性の情報がクラッカーコミュニティで流通したり、攻撃用ツールが配布されたりする事例が報告されており、この「時間差」が問題となっている。攻撃可能か既に実行されているが有効な対策が提供されていない脆弱性を「ゼロデイ脆弱性」という。
攻撃に使用される通信の特徴を分析し、発見されていない脆弱性を利用した攻撃を認識して遮断するソフトウェアの研究も行われているが、有効で万能な解決策は今のところない。
フットプリンティング
サイバー攻撃に先立ち、攻撃者が標的の弱点などを探るために行う下調べ。外部から調べられる情報を収集する活動で、攻撃手法などを検討するために行われる。
攻撃対象となるネットワークやコンピュータ、Webサイトなどについて、攻撃にならない範囲でアクセスを試みるなどして、システムの構成や状態を探る。Web検索エンジンやWHOISデータベースなど外部の情報源を利用して標的に関連する情報を収集することもある。
調査対象は標的や攻撃の種類により異なるが、例えば、使用しているドメイン名やIPアドレス、アクセス可能なポート番号、稼働しているオペレーティングシステム(OS)や各種のサーバソフトウェアなどの種類やバージョン、Webサイトのディレクトリ構成や公開ページからリンクされていないページなどが対象となることが多い。
このような事前調査により、例えば外部からの遠隔操作を可能にする保安上の欠陥(脆弱性)の存在が知られているソフトウェアがアップデートされずにそのまま使用されているといった情報が手に入ることがあり、これを足掛かりに不正アクセスを行うといった計画を立てることができる。
ポートスキャン 【ポートスキャニング】
ネットワークに接続された機器のTCPやUDPの様々なポート番号に接続を試み、応答を調べること。攻撃者が標的のシステムを調べ、攻撃に使えそうな脆弱性のあるポートがないか探すために行われる。
インターネットなどで標準的に用いられるプロトコル(通信規約)であるIP(Internet Protocol)では、トランスポート層のプロトコルとしてTCP(Transmission Control Protocol)やUDP(User Datagram Protocol)などを用いるが、様々なアプリケーションが同時に通信できるよう、0番から65535番までの番号で識別される「ポート」(port)と呼ばれる接続窓口が用意されている。
ポートスキャンは攻撃の前段階の調査として行われるもので、当該コンピュータの各ポートへ接続開始を要請するデータを送り、どのような反応を返すかを確かめる。主要な、あるいはすべてのポートを対象として次々に連続的にアクセスし、各ポートの状態を網羅的に調べあげることが多い。
これにより、アクセスを受け付けているポートが何番か、どのソフトウェアのどのバージョンが使用されているか、ソフトウェアの設定や状態がどのようになっているかなどを外部からある程度知ることができ、攻撃に利用可能な設定の不備やソフトウェアの脆弱性などがないかを調べる。
ポートスキャン自体は相手方に損害を与える攻撃そのものではないが、知らない相手に無許諾で行えば攻撃のための準備であると疑われることがある。攻撃者が標的システムに対して行う場合のほかに、コンピュータやネットワークの管理者などが自らが管理・運用するコンピュータにセキュリティ上の問題がないか調べるために実行することもある。ポートスキャンを行うための専門的なソフトウェアもあり「ポートスキャナ」(port scanner)という。
リスクマネジメント 【リスク管理】 ⭐⭐⭐
企業などの事業活動に伴って想定される有害な事象への備えや対処を、業務として組織的に取り組むこと。様々なリスクへの対処方針の策定、実際に生じたリスクへの対処を継続的に行う。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。特に、全く偶発的に外部からもたらされる災禍ではなく、組織や個人の何らかの行動や意思決定、あるいはその欠如によって起こり得るものを指すことが多い。
リスクマネジメントとは、将来のリスクを考えうる限り想定し、それぞれについて事前に対処方針を定め、実際にリスクが顕在化した際に方針に則って対処するという一連の行動を、組織内の仕組みとして明確なプロセスの元に実施することを意味する。
一般的な流れとしては、まずリスク特定、リスク分析、リスク評価からなる「リスクアセスメント」(risk assessment)を実施してリスクの洗い出しと対処方針の策定を行う。その後、事業を遂行する中で実際に遭遇した事象に対してリスク対応を行う。一定の期間が経過したら、記録を元に振り返り(レビュー)を行い、対処方針の改善などを行う。これを一つのサイクルとして、事業年度ごとなどの単位で繰り返し実施する。
リスクアセスメント 【RA】 ⭐⭐⭐
企業などで組織的に取り組む、将来のリスクに備えるための準備活動。一般的にはリスク特定、リスク分析、リスク評価の各工程からなる一連のプロセスとされる。
事業の遂行などに伴って将来起こりうる悪い出来事やその確率、損害の程度を「リスク」(risk)という。企業などの組織体、あるいはプロジェクトチームなどの集団が、将来のリスクを予見して備えるために行う活動がリスクアセスメントである。
リスクアセスメントでは、まずどのようなリスクが想定されるか洗い出し(リスク特定)、それぞれについてその性質や発生確率、損害の大きさなどを特定・推定し(リスク分析)、一定の基準に基いて各リスクへの対応・行動の必要性の有無や優先順位を判断・決定する(リスク評価)。
リスクアセスメントはリスクが顕在化する前にこれに備えるために行われる行動・活動の総体であり、事業やプロジェクトなどの実施前、計画段階で実施される。企業の通常業務など定常的な活動についてのリスクアセスメントは一定期間ごとに実施されることが多い。
リスクアセスメントを含む、リスクに対する組織的な取り組みの総体を「リスクマネジメント」(risk management)という。最初にリスクアセスメントを行い、事業を遂行する中で実際に遭遇した事象に対してリスク対応を行う。年度末など一定期間ごとに振り返り(レビュー)を行い、対処方針の改善などを行う。これを一つのサイクルとして、事業年度ごとなどの単位で繰り返し実施する。
リスク分析 ⭐⭐⭐
事業に見込まれる様々なリスクについて、その性質や発生確率、損害の大きさなどを見積もること。リスクアセスメントの一環として行われる。
事業の遂行などに伴って将来起こりうる悪い出来事やその確率、損害の程度を「リスク」(risk)という。企業などの組織体、あるいはプロジェクトチームなどの集団は、リスクに備え、あるいは対応するために「リスクマネジメント」(risk management)などの活動を行う。
ある事業や業務、プロジェクトなどについて想定される様々なリスクについて、詳細を調べる工程をリスク分析という。事象が生起する可能性(確率や頻度、周期など)の大きさ、実際に生起した際に生じ得る事態や状況、引き起こされる影響や損害、損失の大きさなどを見積もる。
リスク分析に先立って、考えられるリスクを洗い出し、列挙する工程を「リスク特定」という。また、リスク分析の後に、一定の基準に基いて各リスクへの対応・行動の必要性の有無や優先順位を判断・決定する工程を「リスク評価」という。これらの3つの工程を合わせて「リスクアセスメント」(risk assessment)という。
リスク対応 ⭐⭐
事業に見込まれる様々なリスクについて、その対応策を決定して実施すること。リスクマネジメントの一環としてリスクアセスメントの後に行われる。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。特に、全く偶発的に外部からもたらされる災禍ではなく、組織や個人の何らかの行動や意思決定、あるいはその欠如によって起こり得るものを指すことが多い。
リスク対応では、リスクアセスメントによって特定、分析、評価したリスクについて、それぞれのリスクの性質に基づいてどのように対処するかを決定する。施策の実施が必要なものについては導入計画の策定や実施なども行う。
対応策はいくつかの類型に分類することができる。主な類型として、リスク要因を除去する「リスク回避」、リスクの発生率や影響度を下げる「リスク低減」(リスク軽減)、リスクを外部と共有する「リスク共有」(リスク分散)、リスクを外部へ移す「リスク転嫁」(リスク移転)、リスクを甘んじて受容する「リスク保有」(リスク許容/リスク受容)がある。
リスク回避 ⭐
企業などが組織的に行うリスク対応の類型の一つで、リスクのある事業を中止するといったように、当該リスクがそもそも発生しない状態にすること。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。組織のリスクマネジメントでは、想定される様々なリスクを洗い出し、それぞれついてどのような対策を行うか検討する。
リスク回避はリスク対応の方策の一つで、リスクを伴う活動自体の中止や、リスクを引き起こす要因の根本的な排除などを指す。例えば、投資の引き揚げ、製品の生産終了、取得した個人情報の破棄などが該当する。
リスク共有 【リスク分散】 ⭐⭐
企業などが組織的に行うリスク対応の類型の一つで、他者と一定の合意や契約のもとで当該リスクを分かち合うこと。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。組織のリスクマネジメントでは、想定される様々なリスクを洗い出し、それぞれついてどのような対策を行うか検討する。
リスク共有はリスク対応の方策の一つで、利益の分配や対価の支払いなどを条件に、リスクの一部を事業パートナーなど他者に引き受けてもらう方策を指す。例えば、合弁や共同出資、施設の共同利用、アウトソーシング、クラウドサービスの利用などが該当する。
なお、「リスク共有」は保険への加入なども含め「リスク転嫁」「リスク移転」と同義とすることもある。また、「リスク分散」は施設の分散配置のように、引き受け主体ではなくリスク要因の方を分割する「リスク低減」「リスク軽減」を指す場合もある。
リスク転嫁 【リスク移転】 ⭐⭐
企業などが組織的に行うリスク対応の類型の一つで、一定の合意のもとで他者に当該リスクを(全面的に)移すこと。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。組織のリスクマネジメントでは、想定される様々なリスクを洗い出し、それぞれついてどのような対策を行うか検討する。
リスク移転はリスク対応の方策の一つで、契約などを結んで他者にリスクを移転する手法を指す。典型的なリスク移転策は保険への加入で、一定の対価を支払うことでリスクが顕現した際の損失を保険会社に引き受けさせることができる。アウトソーシングなど部分的なリスクの移転を含め「リスク共有」と同義とすることもある。
リスク共有 【リスク分散】 ⭐⭐
企業などが組織的に行うリスク対応の類型の一つで、他者と一定の合意や契約のもとで当該リスクを分かち合うこと。
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。組織のリスクマネジメントでは、想定される様々なリスクを洗い出し、それぞれついてどのような対策を行うか検討する。
リスク分散はリスク対応の方策の一つで、利益の分配や対価の支払いなどを条件に、リスクの一部を事業パートナーなど他者に引き受けてもらう方策を指す。例えば、合弁や共同出資、施設の共同利用、アウトソーシング、クラウドサービスの利用などが該当する。
なお、「リスク共有」は保険への加入なども含め「リスク転嫁」「リスク移転」と同義とすることもある。また、「リスク分散」は施設の分散配置のように、引き受け主体ではなくリスク要因の方を分割する「リスク低減」「リスク軽減」を指す場合もある。
リスク保有 【リスク許容】 ⭐⭐
企業などが組織的に行うリスク対応の類型の一つで、当該リスクを認識した上で、あえて措置を講じず甘んじて受け入れること
リスク(risk)とは将来起こりうる悪い出来事、および、その確率や損害の程度のことを指す。組織のリスクマネジメントでは、想定される様々なリスクを洗い出し、それぞれついてどのような対策を行うか検討する。
リスク保有はリスク対応の方策の一つで、事前に特に手を打たず、顕在化した場合の損失を丸ごと引き受けることを指す。そもそも他の対応策が極めて困難あるいは不可能な場合(戦争や政変など)や、発生確率や頻度、損害が極めて小さい場合、どの対応策を選んでもコストが想定損害額を上回ると試算される場合などに選択されることがある。
ISMS 【Information Security Management System】 ⭐⭐⭐
組織内での情報の取り扱いについて、機密性、完全性、可用性を一定の水準で確保するための仕組み。特に、ISO/IEC 27001などの標準規格に基づいて整備された組織的なセキュリティ管理体制。
組織の管理の一環として、取り扱う情報の種類などから確保すべきセキュリティの水準を定め、計画や規約を整備して情報システムの運用などに反映させる取り組みの総体を指す。具体的には、国際規格であるISO/IEC 27001および同等の国内規格JIS Q 27001に定められた要求事項を満たし、体制を整備して継続的に実施することが求められる。
組織がどのような情報をどのように取り扱うかを特定し、情報の適切な保護・管理についての基本方針や対策基準(情報セキュリティポリシー)、実施手順などを定め、担当部門だけでなく全社的な取り組みとして周知・実施を図る。
また、情報セキュリティ上のリスクについて、アセスメント(特定・分析・評価)を行って対応方針を決め、実際に現場で起きる様々なリスクへ対応し、一定期間状況を監視・記録(モニタリング)して検証(レビュー)し、結果を元に再度アセスメントから一連のプロセスを繰り返すというサイクルを継続的に実施することが求められる。
情報セキュリティマネジメントシステムの起源はBSI(イギリス規格協会)が1995年に策定したイギリス国内規格であるBS 7799で、これを元に2000年に国際規格のISO/IEC 17799が策定され、2005年にISO/IEC 27001および27002に改番された。日本ではほぼ同様の内容が国内規格として2006年にJIS Q 27001/27002として標準化された。
日本ではJIPDEC(日本情報経済社会推進協会)の情報マネジメントシステム認定センターが主導して情報セキュリティマネジメントシステム適合性評価制度を運用しており、審査を経て認定を受けることにより情報セキュリティマネジメントシステムが適切に整備されていることを内外に示すことができる。
情報セキュリティポリシー ⭐⭐⭐
企業などの組織が取り扱う情報やコンピュータシステムを安全に保つための基本方針や対策基準などを定めたもの。広義には、具体的な規約や実施手順、管理規定などを含む場合がある。
情報部門などの提案や助言などを得ながら経営層が策定し、全社に周知すべきものとされる。基本方針など一部は、その組織の情報管理についての考え方や取り組み方を表明する文書として外部や一般にも公開される。
基本方針には、ポリシーの適用範囲、対象となる情報資産、実施体制、各員・部門の役割や責務、実施・策定すべき施策や規約、遵守する法令や指針などが記述される。これに基づき、組織内に存在する人員や部門、情報などに合わせて具体的に何をどのような脅威から守るのか、誰が何をすべき・すべきでないか、誰に何を許可する・許可しないか、といった方針をセキュリティ対策基準として策定する。
基本方針のみ、あるいは対策基準までをポリシーの範囲とする場合が多く、これらに基づいて実施手順や運用規約、社内規定など個別具体的なルールが定められる。内部の人員にはこれら具体的な規約が手順書やマニュアルなどの形で周知・徹底される。
情報セキュリティポリシーは技術的な対策や専門家、専任スタッフだけでは適切な情報資産の管理に限界があることを踏まえ、全社の人や組織がどのように情報やシステムを安全に運用していくか観点で策定される。このため、作成しただけで具体的な行動に反映されなければ意味がなく、また、施行後も運用状況や外部環境の変化などに合わせて繰り返し見直しや改善を行うことが重要とされる。
機密性 ⭐⭐⭐
情報セキュリティの基本的な概念の一つで、正当な権限を持った者だけが情報に触れることができる状態。また、そのような状態を確保・維持すること。
正規に許可を得た人だけが、認められた範囲内で情報に触れることができ、故意や誤りによる情報の漏洩や改竄、削除などを引き起こすことができない状態を表す。
機密性を確保するには、利用者の識別や認証、所属や権限に応じた情報や機能へのアクセス制御、情報の閲覧や複製、移動に関する履歴の記録や監査などが適切に行われる必要がある。
「完全性」(Integrity)「可用性」(Availability)と合わせて、情報セキュリティの三要素、または、それぞれの英単語の頭文字を取って「C.I.A.」と呼ばれることがある。
インテグリティ 【完全性】 ⭐⭐⭐
誠実、正直、完全(性)、全体性、整合性、統合性、などの意味を持つ英単語。ITの分野では、システムやデータの整合性、無矛盾性、一貫性などの意味で用いられることが多い。
データインテグリティ (data integrity/データ完全性)
データの処理・読み込み・書き込み・保管・転送などに際して、目的のデータが常に揃っていて、内容に誤りや欠けが無いこと(および、それが保証されていること)をデータの完全性という。日本語で「完全性」の訳語が当てられることもある。
データベースにおける正規化や制約の設定などが不十分でデータ間の関係に矛盾が生じたり、装置の障害やソフトウェアのバグによって内容の欠損や変質が起きたり、外部の攻撃者によって改竄されたりすると、完全性が損なわれることになる。
可用性 【アベイラビリティ】 ⭐⭐⭐
システムなどが使用できる状態を維持し続ける能力。利用者などから見て、必要なときに使用可能な状態が継続されている度合いを表したもの。
可用性の高さは、使用可能であるべき時間のうち実際に使用可能であった時間の割合(稼働率)で示されることが多い。例えば、24時間365日の稼働が求められるシステムの稼働率が99.9999%であるとすると、年間平均で約31.5秒間使用不能な時間が生じることを意味する。
重要な業務システムなどに用いるため、装置の二重化や複数のコンピュータによるクラスタリングなどの措置を講じ、装置の故障やメンテナンスがあってもシステムが提供する機能やサービスが停止・中断しない状態を「高可用性」(HA:High Availability)という。
似た概念に「信頼性」(reliablity)があるが、これは機器などの故障、破損、障害の起きにくさ、停止しにくさを指す。定量的には、単位期間あたりに故障が起きる確率である故障率や、故障から次の故障までの平均期間である平均故障間隔(MTBF)などで表される。
ある一つの装置などについては可用性の高さと信頼性の高さは一致することもあるが、複雑・大規模なシステムでは、装置やシステムを複数用意して一つが停止しても全体が停止しないようにすることで、低い信頼性の要素を組み合わせて高い可用性を確保することもできる。
情報システムに求められる特性として、可用性、信頼性、保守性(整備や修理のしやすさ)の3つの頭文字を繋げた「RAS」(Reliability Availability Serviceability)や、さらに完全性(Integrity)、機密性(Security)の2つを追加した「RASIS」の概念がよく用いられる。
真正性 ⭐
ある対象(人やモノ、データ、記録など)が、それが何であるかの記述や主張の通り、本物であること。また、本物であることを確実にしたり証明できる性質。
人物についての真正性という場合、ある識別名(氏名やIDなど)を名乗り出た人が、なりすました他人ではなく確かに本人であると確かめられる性質を指す。契約や公的手続きなどの現場では、押印や署名、公的な証明書の提示などで真正性を確保することが多い。
情報システムなどで、正当な利用権を持つ利用者の真正性を担保するには、あらかじめ本人の識別名と本人しか提示できない情報(パスワードや体の特徴など)を登録し、利用時に秘密の情報を提示してもらう「ユーザー認証」(user authentication)を行う必要がある。
一方、記録やデータについての真正性という場合、作成者や送信者に偽りや誤りがなく、作成や送信が行われて以降、システムの誤作動や何者かの悪意ある操作などで内容が消去、改竄、すり替えなどされていない状態を指す。
記録やデータの真正性を担保する仕組みには様々なものがあるが、電子署名(デジタル署名)による発信者や作成者の検証、ハッシュ値やメッセージ認証などによる改竄検知、記憶媒体や伝送路の暗号化による盗み取りや改竄の防止などの技術を組み合わせて用いることが多い。
責任追跡性 【責任追及性】
情報システムの操作や情報の閲覧、編集などについて、誰がいつどのような操作を行ったか遡って追跡できる性質のこと。
何らかの好ましくない事象(インシデント)が生じたときに、誰に責任があるのかを追跡することができる性質や状態を指す。システムに対する時系列の操作記録(ログ)を消去や改竄が困難な方法で記録し、後から参照できるようにするなどの手法で高めることができる。
サイバーセキュリティでは主に外部の攻撃者からの防御や攻撃の記録が重視されるが、責任追跡性を確保・維持することで、正規の権限を持った内部犯による不正行為などにも対処しやすくなる。責任追跡性を確保することで本人が後から行為を否認することができないようにすることを「否認防止」(non-repudiation)という。
否認防止 【否認不可】 ⭐
ある人物がある行為を行なったことを、後になって否定できないようにすること。確かに本人が行なったと証明できる証拠を、改竄できない方法で保管するなどの方法で実現する。
ここで言う「否認」とは、契約や取引、メッセージや指示の伝達など、ある人が行った行為について、後から都合が悪くなり「やっていない」「やったのは私ではない」と言い出すことを指す。これを防ぐことができるようなシステムなどの持つ性質、および、そのためにあらかじめ行う予防的な措置のことを否認防止という。
ITの分野では、情報セキュリティに求められる特性の一つとしてよく挙げられ、情報システムの利用や操作、データの送信などに関連して、確かにある特定の人物が行なったことを後から証明できるようにする仕組みや技術などを表す。
例えば、操作や通信のログ(記録)を消去・改竄できない方法で残したり、タイムスタンプ技術を用いて、ある時点における文書などのデータの存在や内容の証明を行なったり、デジタル署名により本人がその行為を行なったことを証明することなどが否認防止の概念に含まれる。
信頼性 【リライアビリティ】 ⭐⭐
一定の条件下で安定して期待された役割を果たすことができる能力。機械やシステムの場合は故障など能力の発揮を妨げる事象の起こりにくさ。日常的には「情報の信頼性」というように、信憑性や信用性に近い意味合いでも用いられる。
人工物について信頼性という場合、定められた条件(製造元の指定する定格値など)下で一定の期間(耐用年数など)、期待される機能を提供し続けることができる性質を表す。
修理不能な製品の場合は故障や破損のしにくさがそのまま信頼性とみなされ、平均故障率(FIT:Failure In Time)や平均故障時間(MTTF:Mean Time To Failure)などの指標が用いられる。修理可能な製品では平均故障間隔(MTBF:Mean Time Between Failures)などで表され、保守性(maintainability/serviceability)を含んだ概念となる。
信頼性にいくつかの性質を加えて、システムが期待された機能・性能を安定して発揮できるか否かを検証するための評価項目として用いる場合がある。よく知られるのは信頼性に可用性(Availability)と保守性(Serviceability)を加えた「RAS」で、これに完全性(Integrity)と機密性(Security)を加えたものは「RASIS」という。
セキュリティインシデント 【情報セキュリティインシデント】
コンピュータの利用や情報管理、情報システム運用に関して保安(セキュリティ)上の脅威となる事象のこと。システムの機能不全や乗っ取り、データ漏洩、改竄などが含まれる。
情報セキュリティを脅かす事件や事故、およびセキュリティ上好ましくない事象・事態のことで、コンピュータウイルスなどのマルウェア感染、不正アクセス、アカウント乗っ取り(なりすまし)、Webサイトの改竄、機密情報の漏洩、迷惑メール送信、サービス拒否攻撃(DoS攻撃)、情報機器や記憶媒体の紛失や盗難などが含まれる。
システムの機能停止などの事象は悪意による意図的な行為だけでなく偶発的な故障や事故、不手際などでも引き起こされるため、原因を調べたら結果的にセキュリティ(保安)上の問題ではなかったことが明らかになる場合もある。
情報セキュリティインシデントが発生した際に、発見者や被害者からの報告を受け、事態の情報収集や公表、関係者への通知や対処依頼、有害事象の抑止や被害拡大の防止、再発防止策の策定などを行う一連の活動のことを「情報セキュリティインシデントレスポンス」(情報セキュリティインシデント対応)あるいは略して「インシデントレスポンス」(インシデント対応)という。
企業や官公庁などの組織内でインシデントレスポンスを担当し、利用部門や外部との窓口となる部署を「CSIRT」(Computer Security Incident Response Team)あるいは「CIRT」(Computer Incident Response Team)「SIRT」(Security Incident Response Team)などという。
PDCAサイクル 【Plan-Do-Check-Act cycle】 ⭐⭐⭐
業務プロセスなどを管理・改善する手法の一つで、計画→実行→評価→改善という4段階の活動を繰り返し行なうことで、継続的にプロセスを改善・最適化していく手法。
PDCAは4つのステップから成る。“Plan” (計画)では、目標を設定してそれを達成するための行動計画を作成する。“Do” (実行)では、策定した計画に沿って実際に業務を遂行する。“Check” (評価)では、実施した結果についての情報を集めて整理し、当初の目標や以前のサイクルの結果などと比較するなどして評価を行う。
“Act” (「行動」「処置」の意だが改善と訳されることが多い)は “Adjust” (調整)とも呼ばれ、評価を受けて問題点の洗い出しや成功・失敗の要因を分析し、プロセスや計画の調整、実施体制の見直しなどの処置を行なう。
“Act” まで一通りの活動が終わると、その結果を反映して再び “Plan” から一連の活動を行う。このP→D→C→Aの流れを継続的に繰り返すことを「PDCAを回す」などと言い、螺旋を描くようにプロセスの改善が行われることが期待される。
PDSサイクル (Plan-Do-See cycle)
循環的なプロセスの改善手法として、“Plan” (計画)→ “Do” (実行)→ “See” (評価)の3段階とする場合もあり、PDSサイクルという。
ISMSクラウドセキュリティ認証 ⭐⭐
クラウドサービスを提供あるいは利用する事業者が適切なセキュリティ管理を行っていることを認証する制度。情報マネジメントシステム認定センター(ISMS-AC)が運用している。
事業者が適切なセキュリティ管理を行っていることを認証する制度として、従来から「情報セキュリティマネジメントシステム(ISMS)適合性評価制度」があり、JIS Q 27001(および元になったISO/IEC 27001)に基づいて審査が行われている。
ISMSクラウドセキュリティ認証はこれに追加で与えられる認証で、通常のISMS認証を得た組織が外部のクラウドサービスを利用したり、自らがクラウド事業者としてサービス提供を行う場合に、クラウド特有のセキュリティ管理を適切に行なっていることを認証する。
審査はクラウドサービスに関するセキュリティ基準を定めた国際標準のISO/IEC 27017に基づいて行われる。認証を受ける事業者が満たすべき要求事項として、JIPDEC(日本情報経済社会推進協会)が「ISMSクラウドセキュリティ認証に関する要求事項」(JIP-ISMS517)を策定し、公表している。
認証を受けたい事業者はISMS-ACが認定する認証機関に審査を申請し、認証機関が審査を行う。審査に合格するとISMS-ACにより認証が与えられる。認証機関としては企業や非営利法人など約20の組織が認定されており、ISMS-ACが一覧を公表している。審査に合格し認証を受けた事業者もISMS-ACが公開している。
個人情報 【PII】 ⭐⭐⭐
ある特定の生存する個人を識別することができる情報。また、他の情報と容易に照合することができ、それにより特定の個人を識別できるような情報。
主な個人情報としては、氏名や性別、住所、電話番号、電子メールアドレス、勤務先、生年月日、顔写真、SNSやネットサービスなどのユーザー名、クレジットカード番号や銀行の口座番号、日本のマイナンバー(個人番号)や米国の社会保障番号(SSN)など行政が個人に割り当てた識別番号などがある。
ただし、名簿のように複数の項目が個人に結び付けられて列挙されていたり、そのような情報と容易に組み合わせられるような形態になっている必要があり、例えば、「0から始まるランダムな11桁の番号1万個のリスト」は、その中にたまたま誰かの電話番号が含まれるかもしれないが、それ自体は個人情報とは言えない。
一方、特定の個人に属する情報でも、人物の識別・同定に直接は繋がらないようなものは「パーソナルデータ」(personal data)と呼ばれ区別される。例えば、携帯端末の位置情報、商品の購入履歴などが含まれる。
これらは(狭義の)個人情報そのものとはみなされないが、複数の情報源からのデータを突き合わせることなどにより個人の特定や捕捉に利用できる場合があるため、個人のプライバシーの一種として個人情報に準じる適切な管理や保護を行う必要がある。
プライバシーマーク 【Pマーク】 ⭐⭐
個人情報の適切な取り扱いについて一定の基準を満たしている団体を認定する制度。また、同認定を取得していることを示すマーク。日本情報経済社会推進協会(JIPDEC)が制度を運営している。
認定を受けるには日本工業規格(JIS)に定められたJIS Q 15001(個人情報保護マネジメントシステム要求事項)に適合した組織や事業の運営体制が整っていることを証明することが求められる。申請はJIPDECに直接、あるいは国内に約20団体ある指定審査機関に対して行い、書類や立ち会いによる審査を経て認定される。
対象は国内に拠点を持つ事業者で、原則として法人を単位に認定されるが、医療法人と学校法人については法人全体ではなく病院や学校などの組織が認定される。有効期間は2年で、申請により2年単位で更新することができる。
認定を受けると「たいせつにしますプライバシー」のキャッチコピーと「i」「P」の文字をかたどった専用のロゴマーク(プライバシーマーク本体)を使用することができ、店頭や広告、名刺、Webサイト、パンフレットなどに掲載することができる。JIPDECではWebサイトなどを通じて付与事業者や認定取り消し・一時停止事業者を公表しており、消費者などが認定状況を確認できるようになっている。
プライバシーマーク制度は1998年に創設され、個人情報を取得・利用する消費者向け事業を行う企業や、学校・病院など機微情報を取り扱う機関で取得が広まっているほか、政府機関や地方公共団体の中には情報処理関連の委託事業などで入札の参加資格にマークの取得を義務付けている場合もある。
プライバシーポリシー 【プラポリ】
Webサイトやネットサービスなどが利用者に告知する、個人情報やパーソナルデータの収集・利用に関する方針をまとめた文書。加入制のサービスでは登録時や利用開始時などに提示して同意を求めることが多い。
そのサービスが利用者や端末から入手する情報の種類や取得方法、利用目的や利用方法、第三者への提供の有無や相手方、第三者による利用目的や方法、保管や廃棄の規定などの方針が記述されている。「プライバシーについて」「個人情報について」「個人情報保護方針」などの題目で掲示されている場合もある。
プライバシーポリシーを策定する目的として、利用者から個人情報を取得してサービスに反映させることについて本人に理解を促し納得を得ることがある。また、個人情報保護法では個人情報を取得する際に目的を告知する義務や、取得した情報を第三者に提供する際に同意を得る義務が規定されており、これを遵守するためにも必要となる。
サイバー保険 ⭐⭐
企業向けの損害保険の一つで、サイバー攻撃などにより損害賠償責任などが生じた際にこれを補償する保険。損害保険会社などが提供している。
外部からの不正アクセスやウイルス感染、自社システムを「踏み台」とする外部への攻撃、内部犯による機密情報の漏洩といった事故が生じた際に、被害者などから請求される損害賠償、見舞金の支払い、係争費用などを補償する。
これに付随して、影響範囲の調査や原状復帰、再発防止策の実施、コールセンターなどによる被害者対応業務といった事故対応や事後処理にかかる費用もカバーする契約が多い。情報システムや業務の停止に伴う(自社の)損害や逸失利益の補償はオプションや特約として追加する方式が多い。
社会におけるITシステムの利用拡大に伴い、大勢の一般消費者が損害を被る顧客名簿の流出事件や、一社のサイバー攻撃被害を起点にサプライチェーン全体の業務が停止してしまう大規模事案が起きるようになり、サイバー事故リスクに備える保険の重要性が認識されるようになった。
CSIRT 【Computer Security Incident Response Team】 ⭐⭐
企業や行政機関などに設置される組織の一種で、コンピュータシステムやネットワークに保安上の問題に繋がる事象が発生した際に対応する組織。
社内の情報システムや通信ネットワークでウイルス感染や不正アクセス、サービス拒否攻撃(DoS攻撃)などセキュリティ上の脅威となる現象や行為が発生した際に、組織内の対応窓口となって被害の拡大防止や関連情報の収集・告知、再発防止策の策定などの活動を行う。また、外部のCSIRTと連携して事件・事故の被害情報やシステムの脆弱性についての情報を共有したり、一般利用者へ情報セキュリティに関する教育や啓発、広報などの活動を行うこともある。
大きな組織では常設の機関として専任の人員を置く場合もあるが、普段は情報システム関連の業務を行なうスタッフが事象発生時に集まって対応するという形態もある。インターネット全体、あるいは、ある国のインターネット全体を対象に活動するCSIRTもあり、アメリカのCERT/CCや日本のJPCERT/CCがよく知られている。
CERT/CC (Computer Emergency Response Team/Coordination Center)
コンピュータやインターネットのセキュリティに関する研究や情報発信を行なっているアメリカの研究機関。広く普及しているソフトウェアの保安上の弱点(セキュリティ脆弱性)についての分析情報を配信する活動でよく知られる。
1988年にインターネット上でワームの大規模感染事件が発生したのを契機に米国防高等研究計画局(DAPRA)が中心となって設立したもので、カーネギーメロン大学ソフトウェア工学研究所内に設置されている。現在様々な組織に設置されているCSIRTの草分け的な存在とされ、CERT/CCをモデルに設立された機関の中には「CERT」の名称を冠したものも存在するが、これらはCERT/CCと直接的な繋がりがあるわけではない。
ちなみに、現在「CERT」はCERT/CCの登録商標であり、CERT/CC類似組織の総称として用いたり、他の組織が許諾なく名乗ることはできない。また、「CERT」は現在は公式には何の略称でもないとされている。
セキュリティオペレーションセンター 【SOC】
企業などが運用する情報システムの状態を24時間365日監視し、外部からの攻撃などのセキュリティ事象の発生に備える組織。
通信機器のログなどをリアルタイムに取得して分析し、インターネットなどを通じた外部の攻撃者による不正アクセス、ウイルス感染、外部への機密情報の漏洩などが疑われる不審な通信を検知すると管理者に通知する。
セキュリティ状態の監視を目的とするため、発生した事象への介入や対応、対策の実施などはCSIRTなど別の組織が行うのが原則だが、組織やサービスの形態によっては応急的な措置の実施や対応策のアドバイス等を行う機能を持つ場合もある。
自社内の部署としてSOCを設ける場合を「プライベートSOC」、専門の事業者が顧客に対する商用サービスとしてSOCの機能を(遠隔から)提供する場合を「パブリックSOC」、自社内の部署が機器の設置や設定を行い、監視活動は事業者に外注する場合などを「ハイブリッドSOC」という。
機器やソフトウェア、データの管理権限や機密情報の取り扱いなどの関係上、パブリックSOCが監視するのはネットワーク境界のセキュリティ機器に限られることが多い。プライベートSOCはこれに加えてシステム内部の個別のサーバやネットワーク機器、OS、データベースなどを監視対象とすることもある(ディープSOC)。
ISMAP 【Information system Security Management and Assessment Program】
日本の政府機関が構築・運用する情報システムに求められるセキュリティ要件を満たしたクラウドサービスを認定・登録する制度。内閣サイバーセキュリティセンター(NISC)、デジタル庁、総務省、経済産業省が共同で運用しており、実務は情報処理推進機構(IPA)が担当している。
政府では行政機関の情報システムの運用基盤として、民間事業者によるIaaS型やPaaS型のクラウドサービスの利用を推進(クラウドバイデフォルト原則)しているが、従来は各官庁が個別にセキュリティ基準などを定めてサービスの選定を行っていた。
政府として統一されたセキュリティ対策の元でシステムを運用するため、2020年にNISC、デジタル庁、総務省、経産省が共同でISMAP制度を立ち上げ、事業者から申請のあったクラウドサービスについて審査および外部機関による監査を行っている。審査を通過したサービスは登録リストに記載され、Webサイト等を通じて公表される。
仮想化されたサーバやアプリケーション実行基盤を貸し出すIaaS/PaaSとしては、民間でもすでに広く利用されている米アマゾンドットコム(Amazon.com)社の「Amazon Web Services」や米マイクロソフト(Microsoft)社の「Microsoft Azure」、米グーグル(Google)社の「Google Cloud Platform」、米オラクル(Oracle)社の「Oracle Cloud Infrastructure」などの世界的な大手サービスのほか、NTTデータや野村総研、日立、NEC、富士通、KDDI、ソフトバンク、IIJ、サイボウズ、さくらインターネットなど国内勢のサービスも登録されている。
個別用途のアプリケーションをクラウドで提供するSaaS型のサービスも登録されている。オフィスソフトの「Microsoft 365」や「Google Workspace」、オンラインストレージの「Box」、ビジネスチャットの「Slack」、ビデオ会議の「Webex」、ERPパッケージの「COMPANY」などである。
サイバー情報共有イニシアティブ 【J-CSIP】
国内の企業などの間でサイバー攻撃に関する情報を迅速に共有する制度。情報処理推進機構(IPA)が主催し、業界ごとに分科会を設けて活動している。
社会インフラを担う企業やインフラで使用される機器のメーカーなど、サイバー攻撃を受けると社会に深刻な被害を及ぼす恐れのある業界を中心に、業界ごとに参加企業が「SIG」(Special Interest Group)を構成し、情報を共有する。
参加企業はサイバー攻撃を受けるとIPAへ通報し、IPAは業界内の他の企業にも状況や詳細を通知する。各企業とIPAは事前にNDA(秘密保持契約)を結んでおり、攻撃の詳細に関して外部に公開、共有したくない部分については秘匿したり、匿名化することができる。
JPCERT/CCや、内閣サイバーセキュリティセンター(NISC)の「標的型攻撃に関する情報共有体制」(C4TAP)などとも連携し、ソフトウェアの開発元など関係者との連絡や情報の共有、一般へ注意喚起を促す広報活動など、脅威に対処する様々な活動も行う。
2012年に5業界39組織の体制で発足し、初年度は情報提供246件だったが、年々参加組織や報告数が増大し、2020年には13業界262組織、SIGとは別の情報連絡体制が2業界(医療業界、水道業界)、情報提供6000件を超えるまでに取り組みが拡大している。
サイバーレスキュー隊 【J-CRAT】 ⭐
サイバー攻撃を受けた企業や公的機関などからの相談を受け付け、被害の拡大防止のための支援活動を行う機関。情報処理推進機構(IPA)内の部局として運営されている。
主に標的型攻撃によりシステムへの不正アクセスやマルウェア感染、情報漏洩、外部へのサイバー攻撃の「踏み台」利用などの被害を受けた組織や個人を対象に、専用窓口による相談を受け付けている。
相談内容に応じて、被害状況の把握や被害拡大の防止のために必要な様々な支援活動を行う。支援内容はケースバイケースだが、被害箇所や範囲の正確な把握、手口やマルウェア検体の解析、外部の専門機関(JPCERT/CCやアンチウイルスソフトの開発元など)との連携、攻撃の遮断や外部への連鎖的な被害拡大を阻止するための対策の助言などを行う。
相談者と連絡を取り合って情報収集や情報提供、対応手段の助言などを行うリモート支援が基本だが、現地に出向いて直に調査や対応を行うオンサイト支援に出動する事例もある。2014年に活動を開始し、ここ数年は相談件数が年間400件前後、リモート支援が100件台、オンサイト支援が20~30件前後で推移している。
SECURITY ACTION ⭐
中小企業が情報セキュリティ対策に自ら取り組んでいることを宣言する制度。「一つ星」「二つ星」の2段階があり、情報処理推進機構(IPA)がガイドラインを公表している。
コンピュータシステムや重要なデータを守る情報セキュリティについて、専門家でなくても取り組むことができる施策について一定のガイドラインを設け、専任のセキュリティ部門を設置するのが難しい中小規模の事業者が自ら取り組んでいることを宣言する制度である。
二段階の取り組み目標が設けられており、それぞれ「一つ星」「二つ星」としてロゴマークが用意されている。示された対策に取り組み、IPAに申請を行うとロゴマークの使用許諾が発行され、自社のWebサイトや印刷物、名刺、封筒などに掲示することができる。
一つ星
SECURITY ACTION「一つ星」(★)の目標は、IPAの提唱する「情報セキュリティ5か条」を実施することである。「OSやソフトウェアは常に最新の状態にしよう!」「ウイルス対策ソフトを導入しよう!」「パスワードを強化しよう!」「共有設定を見直そう!」「脅威や攻撃の手口を知ろう!」の5つの項目に取り組むことが求められる。
二つ星
SECURITY ACTION「二つ星」(★★)の目標は、IPAの提唱する「5分でできる!情報セキュリティ自己診断」の実施と、情報セキュリティ基本方針の策定である。自己診断は「基本的対策」「従業員としての対策」「組織としての対策」の3領域、25問の質問から構成され、回答を採点して点数に応じて対策を行なうことが求められる。
また、IPAでは「中小企業の情報セキュリティ対策ガイドライン」を公開しており、これに準拠した自社の情報セキュリティ基本方針の策定と実施が求められる。ガイドラインでは汎用的な雛形も公開しており、これを自社向けに適宜編集して作成することもできるようになっている。
システム管理基準 ⭐⭐
経済産業省が公開している、企業などの情報システムを適切に管理するためのガイドライン。組織体の経営陣がITガバナンスを確立するために必要となる基本的な事項を体系的に示している。
同省は以前からシステム監査を行う際のガイドラインである「システム監査基準」を公開していたが、その「実施基準」の主要部分を抜き出し、システム管理者が実践すべき規範をまとめる形で2004年に初版が公開された。
前文では基準の主旨を「どのような組織体においても情報システムの管理において共通して留意すべき基本的事項を体系化・一般化したもの」と定義しており、すべての項目を網羅的に適用するのはなく、業種や業態、自社の組織やシステムの現況に照らして取捨選択や改変、追加を行うべきとしている。
まず全体の枠組みとしてITガバナンスの定義や原則、モデル、前提条件などを定義し、続いて「ITガバナンス」「企画フェーズ」「開発フェーズ」「アジャイル開発」「運用・利用フェーズ」「保守フェーズ」「外部サービス管理」「事業継続管理」「人的資源管理」「ドキュメント管理」の各段階・分野に分けて個別の管理項目を列挙している。
すべての項目には基準を示す本文に加えて、詳細を説明する「主旨」と、考慮すべき具体的な内容の例示などを行う「着眼点」が付記されており、各組織が自らの状況に即して具体的な基準に読み替えることができるよう配慮されている。
サイバーセキュリティ経営ガイドライン ⭐
経済産業省が企業向けに発行しているガイドラインの一つで、経営者が経営課題としてサイバーセキュリティ施策に取り組む際に認識すべき事柄をまとめた指針。
企業などの経営者が自らのリーダーシップの下、経営上のリスクマネジメントの一貫として組織的にサイバーセキュリティ対策に取り組む際の指針を示している。必ずしもITやセキュリティの専門家とは限らない企業経営者に向け、セキュリティ対策の意義や必要性、経営上の位置づけなどから説き起こしている。
ガイドラインではまず「経営者が認識すべき3原則」として「経営者は、サイバーセキュリティリスクが自社のリスクマネジメントにおける重要課題であることを認識し、自らのリーダーシップのもとで対策を進めることが必要」などの3つの原則を示し、それぞれについて詳述している。
次に、「サイバーセキュリティ経営の重要10項目」を挙げている。これは経営者の視点から社内のセキュリティ担当者や担当部署への指示の形式で書かれており、「指示1:サイバーセキュリティリスクの認識、組織全体での対応方針の策定」といった項目が10個並んでいる。
付録として、対策を進める上で有用なチェックシートや参考情報、他のガイドラインや標準規格などとの関係、用語集、組織体制の確立や人材確保を行うための手引きなどが用意されている。初版は2015年に発表され、第2版(Ver2.0)は2017年に、第3版(Ver3.0)は2023年に公表された。
情報セキュリティ管理基準
経済産業省が公開している、組織体が情報セキュリティ管理を適切に遂行するためのガイドライン。企業などが情報資産やこれを管理するITシステムの安全を確保する体制を構築・運用するための実践的な規範を示している。
情報セキュリティ管理に関する国際規格のISO/IEC 27000シリーズ、およびこれを国内規格化したJIS Q 27000シリーズに準拠したガイドラインで、同規格に基づいて運用されるISMS適合性評価制度の基準とも整合するよう調整されている。
ISMS認証の基準を示したISO/IEC 27001およびJIS Q 27001に基づく「マネジメント基準」と、情報セキュリティ管理のベストプラクティスを示したISO/IEC 27002およびJIS Q 27002に基づく「管理策基準」で構成される。章立てなどもこれらの規格に沿った構成になっているが一部に異なる部分がある。
マネジメント基準は組織体が経営上の仕組みとして情報セキュリティマネジメントシステムを組み入れ、管理体制を組織し業務として運用するための指針を示したもので、原則すべて実施すべきとされる。管理策基準は実際の運用に際して実施する施策の選択肢を示したもので、組織体の実情に合わせて取捨選択すべきとされる。
2003年に初版が公開され、参照している標準規格の改訂に合わせて随時改訂が行われている。最新版はJIS Q 27001:2014等に準拠した平成28年版(2016年公開)である。なお、同省が公開している「情報セキュリティ監査基準」に基づいて監査を行う際には、原則として情報セキュリティ管理基準を判断の尺度として用いられることと定められている。
PCI DSS 【Payment Card Industry Data Security Standard】 ⭐⭐
クレジットカード情報を安全に取り扱うために事業者に求められるセキュリティ基準を定めた規格の一つ。VISA、MasterCardなど国際的なクレジットカード大手の参加する業界団体が策定したもので、2004年12月に最初の規格が発行された。
カード発行会社(イシュアー)や加盟店管理会社(アクワイアラー)、加盟店、銀行、決済代行業者など、クレジットカード情報を取り扱うすべての事業者を対象としたもので、情報システムや情報管理についての詳細で具体的な要件を定めている。カード業界以外でもセキュリティ基準の標準として利用されることがある。
PCI DSSでは、「安全なネットワークの構築と維持」「カード会員データの保護」「脆弱性管理プログラムの整備」「強固なアクセス制御手法の導入」「ネットワークの定期的な監視およびテスト」「情報セキュリティポリシーの整備」の6つの目的のために12の要件を定めており、これらはさらに約200の具体的な項目に細分化されている。
米ビザ(VISA)、米マスターカード(MasterCard)、米ディスカバー(Discover)、米アメリカン・エクスプレス(American Express)、JCBの国際カードブランド大手5社が管理団体「PCI SSC」(Payment Card Industry Security Standards Council)を運営しており、基準の策定や改定、審査機関の認定などを行っている。
一般の加盟店など、取り扱うカード情報の規模が小さい事業者は、準拠すべき要件をチェックリスト形式でまとめた自己診断を行い、すべての項目を満たせば良い。カード発行会社など取り扱い規模が大きい事業者はQSA(Qualified Security Assessor)呼ばれる認定審査機関による訪問審査などが行われる。
アクセス権 ⭐⭐⭐
システムの登録利用者や利用者のグループに対して設定される、そのシステムの管理する資源を使用する権限のこと。アクセス権を設定し、これに基づいて資源の利用を許可したり拒否することをアクセス制御という。
何に対するどんな権限を設定できるかはシステムの種類によって様々だが、単にアクセス権といった場合はOSのアカウント管理システムやファイルシステムなどを通じて設定される、ストレージ(外部記憶装置)内のファイルやフォルダ、周辺機器などに対する利用権限を指すことが多い。
多くのOSでは、ファイルやフォルダに対しては「読み込み」「書き込み」「作成」「削除」などの動作について、また、実行可能ファイルはこれに加えて「実行」について可否を設定できるようになっている。
アクセス権は特定のユーザーアカウントやアカウントのグループを単位に設定するようになっていることが多いが、「管理者」「全員」「システム」「作成者」など特別な組み込みアカウントやグループを指名できる場合もある。
アクセス権を変更する権限を持つのは一般に管理者や管理者グループに属するユーザーで、一般の利用者は与えられたアクセス権に従って資源を使用するのみになっていることが多い。
情報セキュリティポリシー ⭐⭐⭐
企業などの組織が取り扱う情報やコンピュータシステムを安全に保つための基本方針や対策基準などを定めたもの。広義には、具体的な規約や実施手順、管理規定などを含む場合がある。
情報部門などの提案や助言などを得ながら経営層が策定し、全社に周知すべきものとされる。基本方針など一部は、その組織の情報管理についての考え方や取り組み方を表明する文書として外部や一般にも公開される。
基本方針には、ポリシーの適用範囲、対象となる情報資産、実施体制、各員・部門の役割や責務、実施・策定すべき施策や規約、遵守する法令や指針などが記述される。これに基づき、組織内に存在する人員や部門、情報などに合わせて具体的に何をどのような脅威から守るのか、誰が何をすべき・すべきでないか、誰に何を許可する・許可しないか、といった方針をセキュリティ対策基準として策定する。
基本方針のみ、あるいは対策基準までをポリシーの範囲とする場合が多く、これらに基づいて実施手順や運用規約、社内規定など個別具体的なルールが定められる。内部の人員にはこれら具体的な規約が手順書やマニュアルなどの形で周知・徹底される。
情報セキュリティポリシーは技術的な対策や専門家、専任スタッフだけでは適切な情報資産の管理に限界があることを踏まえ、全社の人や組織がどのように情報やシステムを安全に運用していくか観点で策定される。このため、作成しただけで具体的な行動に反映されなければ意味がなく、また、施行後も運用状況や外部環境の変化などに合わせて繰り返し見直しや改善を行うことが重要とされる。
コールバック
コンピュータプログラム中で、ある関数などを呼び出す際に別の関数などを途中で実行するよう指定する手法のこと。呼び出し側の用意した関数などを、呼び出し先のコードが「呼び出し返す」ように登録する。
コールバックを受け付ける関数などは、他の関数を引数などの形で受け取って内部で呼び出す仕組みがあらかじめ実装されている。プログラマは自らが記述した関数を用意して引き渡すことで、その関数から呼び出して実行することができる。コールバックされる関数のことを「コールバック関数」という。
コールバックの仕組みは汎用的・抽象的なコードの一部を、開発者が自らが必要とする個別的・具体的な処理で置き換えるためによく利用され、ライブラリやフレームワークを利用したソフトウェア開発で多用される。
例えば、あるプログラミング言語の標準ライブラリが高速で汎用的な並べ替え(ソート)関数を提供する場合に、二つの変数の比較を行う関数をコールバック関数に指定できるようにしておけば、開発者は二数を比較して結果を返す関数を記述するだけで、独自のデータ構造や複雑な比較処理に基づくソート関数を実装することができる。実際、C言語のqsort関数やJavaScriptのArray.sortメソッドは、比較を行うコールバック関数を渡すことができるようになっている。
コールバックの具体的な実装はプログラミング言語の仕様により異なり、C言語のように関数へのポインタを渡す方式や、関数オブジェクトやクロージャを渡す方式がよく知られる。
通信におけるコールバック接続
アナログ電話回線やISDN回線など呼び出し(call)を伴う通信回線で、相手先を一旦呼び出し、すぐに相手側から発信し返して接続を確立する方式をコールバック接続という。
通常の発信・接続と違うのは(本来の)着信側が通話料・通信料を負担する点で、異なる地方や国の間の通話で着信側から掛けたほうが通話料金が安い場合や、業務上の理由などで着信側へ課金させたい場合(社員の自宅から会社へのリモートアクセスなど)に利用される。
最初の発呼時に短時間接続して掛け返す電話番号などを通知してすぐ切断してコールバックする方式(課金方式)と、通信事業者の提供する番号通知サービスなどを利用して指示を行い、最初の発呼時には接続せずにコールバックする方式(無課金方式)がある。
アクセス制御 【アクセスコントロール】 ⭐⭐⭐
情報システムが利用者などを識別して、あらかじめ設定された権限に基づいて対象への接触や操作を許可あるいは禁止する仕組み。
何らかの主体(人間や機器、ソフトウェアなど)が、システムの管理下にある対象(装置や回線、データ、プログラム、ファイルなど)に対して、どのような操作が許されているかを登録・管理し、権限外の操作を実行しようとした時にはこれを拒否する。
例えば、ファイルシステムによるアクセス制御であれば、各ユーザーアカウントやユーザーのグループに対して、ファイルやディレクトリに対する読み込み、書き込み、削除、プログラムファイルの実行といった権限を付与し、操作主体と権限を確認して許可や拒否を行う。
認証・認可・監査
アクセス制御は「認証」(authentication)、「認可」(aurhorization)、「監査」(audit)といったプロセスから成る。認証は主体を識別して本物であることを確認するプロセスで、利用者にアカウント名を入力させ、パスワードなどの確認手段で本院であることを確かめる活動などが該当する。
認可は権限に基づいて操作の可否を判断するプロセスで、アカウント情報や管理者の定義したポリシー設定、アクセス制御リスト(ACL)などを参照して対象者の資格や権限を確認し、対象者が行おうとしている操作を許可したり拒絶したりする。
監査は、認証や認可、および利用主体による対象へのアクセスの履歴(ログ)を記録・蓄積し、後から「いつ誰が何を試みて結果がどうなったか」を管理者が追跡できるようにするプロセスである。システムやデータの安全を脅かす不審な試みや、不正な行為による被害などを確かめることができるようにする。
モデル
アクセス制御を適用する手法にはいくつかの典型的なモデルがあり、実際のシステムはモデルに基づいてアクセス制御の仕組みを実装している。
古くからありよく知られるのは、操作対象(オブジェクト)の所有者がアクセス許可の指定を行う「任意アクセス制御」(DAC:Discretionary Access Control)で、一般的なオペレーティングシステム(OS)のセキュリティ機能などで採用されている。
これに対して、「強制アクセス制御」(MAC:Mandatory Access Control)は管理者およびシステムが権限を設定し、所有者と言えどこれを変更できない仕組みである。軍用システムなど高度なセキュリティが要求される一部のシステムで実装されている。
他にも、利用者の役割(ロール)ごとに権限を設定する「ロールベースアクセス制御」(RBAC:Role-Based Access Control)や、利用者や操作対象の持つ様々な属性情報を収集し、どの属性のユーザーがどの環境でどの対象にアクセス可能かといった設定を記述していく「属性ベースアクセス制御」(ABAC:Attribute-Based Access Control)などの手法も提唱されている。
ファイアウォール ⭐⭐⭐
ネットワークの境界などに設置され、内外の通信を中継・監視し、外部の攻撃から内部を保護するためのソフトウェアや機器、システムなどのこと。
原義は「防火壁」で、外部から攻撃のために送り込まれるデータに対する防御を、火事の炎を遮断して延焼を防ぐことになぞらえている。「FW」「F/W」などの略号で示されることもある。
一般的な構成では、ファイアウォールに内部ネットワーク(LAN)の回線とインターネットなど外部ネットワーク(WAN)の回線を両方つなぎ、内部と外部の境界をまたぐ通信が必ずファイアウォールを通過するようにして、一定の基準に従って不正と判断した通信を遮断する。
サーバコンピュータ上でソフトウェアとして動作するものと、専用の通信機器(アプライアンス)として提供されるもの、ルータなどのネットワーク機器の機能の一つとして統合されているものがあり、防御対象や規模などに応じて選択する。パソコン向けのセキュリティソフトやオペレーティングシステム(OS)にはファイアウォール機能が含まれることもある。
パケットフィルタリング方式
ファイアウォールが通信の可否を判断する方式には様々なものがあるが、最も一般的なのは「パケットフィルタリング」(packet filtering)と呼ばれる方式で、内外を通過するパケットの制御情報(ヘッダ)を読み取り、あらかじめ指定された条件に基づいて通過か破棄かの判定を行う。
よく用いられる条件として、送信元IPアドレス、宛先IPアドレス、プロトコルの種類(ICMP/UDP/TCP)、送信元ポート番号、宛先ポート番号、通信の方向(内部→外部/外部→内部)などがあり、これらの組み合わせによって可否を指定することができる。
形式的な判定だけでなく、TCPコネクションの状態などを一定の過去まで記録しておき、過去の通信と辻褄の合わない奇妙な制御情報が記載されたパケットが届くと攻撃の試みであるとみなして拒絶する「ステートフルパケットインスペクション」(SPI)など、高度な判断が可能な製品もある。
他の方式
パケットフィルタ方式は原則としてIP(Internet Protocol)の制御情報を利用するが、トランスポート層のTCP(Transmission Control Protocol)やUDP(User Datagram Protocol)のレベルで通信の中継を行うものを「サーキットレベルゲートウェイ」という。SOCKSなどが該当し、通過や遮断の制御だけでなく、NATのようにプライベートIPアドレスとグローバルIPアドレスの変換なども行う。
また、さらに上位のHTTPなど個別のアプリケーション層のプロトコルの制御情報を用いて通信制御を行うものは「アプリケーションレベルゲートウェイ」という。プロキシサーバなどが該当し、アドレス変換やコンテンツのキャッシュ、ウイルスチェックなどの機能も合わせて提供される。
パーソナルファイアウォール
家庭などでパソコンに導入する個人向けの製品は「パーソナルファイアウォール」(PFW:Personal Firewall)と呼ばれる。パソコンと外部の機器とのネットワーク通信を監視し、あらかじめ指定された条件に基づいて許可された通信以外を遮断する。
単体の製品やフリーソフトウェアがあるほか、セキュリティソフトウェア企業などでは、アンチウイルスソフトなどと共に統合セキュリティソフトウェア(「○○インターネットセキュリティ」といった製品)の機能の一部として提供している場合がある。Windowsでは標準で内蔵されている「Windows Defender」にパーソナルファイアウォール機能が組み込まれている。
WAF 【Web Application Firewall】 ⭐
Webサーバへの外部からの攻撃を検知、防御するシステム。Webサーバとインターネットなど外部との中間に設置され、サーバと外部との通信を監視して、攻撃とみなしたアクセスをブロックする。
Webサーバ上で運用されるWebアプリケーションには保安上の弱点(脆弱性)が存在する場合があり、外部の攻撃者がこれを悪用して遠隔操作や秘密の情報の詐取などの不正アクセスを行う場合がある。本来はサーバ側のソフトウェアの監視や修正に努め、脆弱性をすみやかに排除することが望ましいが、様々な事情から即時に対応できない場合がある。
WAFはWebサーバへの通信を常に監視し、時系列の通信記録(ログ)として保管する。また、あらかじめ登録された不審なアクセスのパターンを検知したり、送受信されるデータ中に特定のパターン(個人情報に似た形式のデータなど)を発見すると、通信に介入してアクセスをブロックする。
WAFは専用のハードウェアとして実装されたものと、ゲートウェイなどのサーバ上で動作させるソフトウェア、また、Webサーバ自体に組み込むモジュールの形になっているものがある。Webサーバと別になっているタイプの製品はネットワークの入り口付近に設置して複数のWebサーバを守ることもできる。
動作モードとしては、リバースプロキシとして動作するものとアクセスを透過させるものに分かれる。SSL/TLSで通信が暗号化されていると通信内容を解析することができないため、WAF自身がTLS通信の終端となって暗号化を解除してWebサーバへ取り次ぐような動作設定にしたり、SSLアクセラレータとWebサーバの中間に設置する必要がある。
IDS 【Intrusion Detection System】 ⭐
サーバやネットワークの外部との通信を監視し、攻撃や侵入の試みなど不正なアクセスを検知して管理者に画面通知やメールなどで通報するシステム。
防御の対象により、ネットワーク全体を一括して監視する「ネットワーク型IDS」(NIDS:Network-based IDS)と、一台の機器を監視する「ホスト型IDS」(HIDS:Host-based IDS)に大別される。
検知・通報に留まらず、アクセスを遮断する等の防御措置を取る機能を持ったシステムのことは「IPS」(Intrusion Prevention System:侵入防止システム)という。
ネットワーク型IDS (NIDS:Network-based IDS)
NIDSはネットワークを流れる通信をリアルタイムに監視し、不正の兆しのある通信を発見すると記録をとって管理者に知らせる。
必ずしもネットワーク境界に設置する必要はなく、プロミスキャスモード(ステルスモード)と呼ばれる特殊な通信モードでネットワーク上のすべての通信を捕捉するようになっている製品が多い。
汎用のサーバ機で動作するソフトウェアとして実装された製品と、専用の通信機器(アプライアンス)として提供される製品がある。HIDSのように対象の個々のコンピュータにソフトウェアの導入や設定などを行う必要がなく、ネットワーク上のすべての機器に対する攻撃を一台でまとめて監視できる。
ホスト型IDS (HIDS:Host-based IDS)
HIDSはサーバに常駐して動作するソフトウェアで、そのサーバと他の機器との通信を監視して、攻撃の徴候とみなされるアクセスを検知するとサーバの管理者に知らせる。
外部からそのコンピュータへアクセスするための通信内容を取得・解析し、異常がないかを監視する。通信経路上でデータが暗号化されたアクセスも検知でき、不正アクセス等によってコンピュータ内部で生じた異常も監視することができる。
ソフトウェアの動作状況などをOSレベルで詳細に解析することができ、ネットワーク型では検知が難しい攻撃にも対処できる場合がある。ただし、HIDSが動作しているコンピュータしか監視できず、コンピュータごとに個別に導入・設定が必要となる。
シグネチャ検知とアノマリ検知
不正な通信の検知手法には主に二つの方式がある。「シグネチャ検知」(不正検出)と呼ばれる方式は、既知の攻撃手法について特徴的なパターンを登録したデータベースを用意し、パターンに一致するデータを含むパケットが見つかると攻撃の徴候として検出する。誤検知の可能性は低いが未知の手法による攻撃は見過ごしてしまう場合もある。
もう一つは「アノマリ検知」(異常検出)と呼ばれる方式で、普段とは大きく異なる事態や通常はありえない行動などを検知する手法である。いつもと異なる使い方などをすると攻撃と誤認識してしまうこともあるが、未知の手法による攻撃にもある程度対応できる長所がある。
侵入検知サービス (intrusion detection service)
ネットワークやサーバを監視し、外部から不正アクセスがあると管理者に通知してくれるサービスを侵入検知サービスという。
設定された条件に従って単純にパケットを選別するファイアウォールとは違って、ネットワークを通過するパケットをリアルタイムに監視し、ポートスキャンやセキュリティホールに対する攻撃、ブルートフォースなどパスワードに対する攻撃などを検知すると管理者に報告する。侵入検知サービス自体は不正アクセスを防御するわけではないが、不正アクセスや未遂の記録をとることによって効率的にネットワークのセキュリティを強化することが可能になる。
IPS 【Intrusion Prevention System】
サーバやネットワークの外部との通信を監視し、侵入の試みなど不正なアクセスを検知して攻撃を未然に防ぐシステム。一定の基準に基づいて不正な通信を検知したら、相手方との通信を遮断して管理者に知らせる。
防御の対象によって、複数の機器で構成されるネットワークを保護する「ネットワーク型IPS」(NIPS:Network-based IPS)と、外部に公開しているサーバなど特定の一台の機器を保護する「ホスト型IPS」(HIPS:Host-based IPS)に大別される。
ネットワーク型IPS (NIPS)
NIPSはネットワーク境界などに設置され、内外の通信をリアルタイムに監視する。不正の兆しのある通信を発見すると記録をとって管理者に知らせ、当該アドレスからのアクセスを遮断するなどの防御措置を発動する。
ゲートウェイサーバなどの機能の一つとしてIPSの役割を持たせる場合と、専用の通信機器(アプライアンス)を用いる場合がある。対象の個々のコンピュータにソフトウェアの導入や設定の変更などを行う必要がなく、ネットワーク上のすべてのコンピュータに対する攻撃を一台でまとめて監視できる。
ホスト型IPS (HIPS)
HIPSはサーバに常駐して動作するソフトウェアで、そのサーバと別のコンピュータの通信を監視する。NIPSと同じように攻撃を検知すると通信を遮断するなどの措置を取り、通信記録の保全や管理者へ通報などを行う。
ソフトウェアの脆弱性や異常動作を悪用した攻撃をOSレベルで防いだり、一般利用者のアカウントによる管理者権限の取得を禁止したり、アクセスログの改竄を防いだりといった、ネットワーク型では難しい機能も提供する。HIPSが動作しているコンピュータに対する攻撃しか対処できないため、コンピュータごとに個別に導入・設定を行う必要がある。
検知手法
不正な通信の検知手法には主に二つの方式がある。「シグネチャ検知」(不正検出)と呼ばれる方式は、既知の攻撃手法について特徴的なパターンを登録したデータベースを用意し、パターンに一致するデータを含むパケットが見つかると攻撃の徴候として検出する手法である。誤検知の可能性は低いが未知の手法による攻撃は見過ごしてしまう場合もある。
もう一つは「アノマリ検知」(異常検出)と呼ばれる方式で、普段とは大きく異なる事態や通常はありえない行動などを検知する手法である。いつもと異なる使い方などをすると攻撃と誤認識してしまうこともあるが、未知の手法による攻撃にもある程度対応できる長所がある。
IDSとの違い
IPSは不正な通信の遮断など防御のための操作を行うが、防御は行わずに通信を監視して異常を検知すると管理者に知らせるシステムのことは「IDS」(Intrusion Detection System:侵入検知システム)という。両者を合わせて「IDS/IPS」「IDPS」(Intrusion Detection and Prevention System)のように総称することもある。
EDR 【Endpoint Detection and Response】
コンピュータなどのセキュリティ対策システムの一種で、端末の処理を常時監視して不審な挙動をいち早く検知し、記録を取って管理者に通報するもの。
情報システムのネットワーク末端(エンドポイント)に存在するパソコンやサーバ、モバイル端末などに導入し、システム上に常に常駐してアプリケーションの振る舞いや内外のデータ送受信、システムへ加えられた変更などを監視する。
セキュリティ上問題のある行為や通常の利用状況から大きく外れる不審な挙動を検知すると、マルウェア感染や攻撃者による遠隔操作などを疑い、動作ログなどの記録と共にシステム管理者に通知を行う。管理者はEDRから通報をもとに当該端末の隔離や周囲の被害状況の確認などの対処を行うことができる。
従来のセキュリティ対策では、インターネット境界にファイアウォールや侵入検知・防止システム(IDS/IPS)などを設置して脅威を水際で防ぐ「境界防御」が重視されてきたが、リモートやモバイル、クラウドなどの普及で境界が流動化し、標的型攻撃で乗っ取られた内部の端末から攻撃が行われるといった情勢の変化に対処しきれなくなっていた。
EDRは攻撃を受けることを前提に、組織としての被害を最小限に抑える「エンドポイントセキュリティ」(endpoint security)の考え方に基づく製品で、内部の端末同士でも互いに無条件に信用しない「ゼロトラスト」の実現に貢献する。エンドポイントにおけるセキュリティ対策としてはEDR以外にも、端末へのマルウェア感染防止や検知、駆除を行う「EPP」(Endpoint Protection Platform)がある。
DLP 【Data Loss Prevention】
企業や官庁などの情報システムで、機密情報の紛失や外部への漏洩を防止・阻止すること。また、そのための装置やソフトウェア、システム、仕組みなどのこと。
一般的な情報漏洩対策やシステムと異なる点は、データ自体に着目してその操作や複製、移動を補足する点と、外部からの攻撃・侵入だけでなく組織内部の正規利用者の行動も監視や制限の対象とする点である。
DLPシステムは企業の情報システムに保管されているデータの機密性や重要性を認識・識別し、従業員がコンピュータを操作する際に当該データを扱っているかどうかを常に監視している。
誤操作や不正な動機からネットワークを通じて外部へ送信しようとしたり、USBメモリなどにコピーして持ち出そうとすると、管理者に警報を発したり、その操作を自動的にキャンセルする。
SIEM 【Security Information and Event Management】
セキュリティソフトの一つで、様々な機器やソフトウェアの動作状況の記録(ログ)を一元的に蓄積・管理し、保安上の脅威となる事象をいち早く検知・分析するもの。
企業などの情報システムを構成する様々なサーバやネットワーク機器、セキュリティ機器などからリアルタイムにログを取得し、外部からの侵入の試みやマルウェアの感染、機密情報の流出などが疑われる状況を察知して管理者に知らせる。
情報収集の対象となる機器はルータやスイッチ、無線アクセスポイントなどのネットワーク機器、Webサーバやメールサーバ、プロキシサーバなど各種サーバ、ファイアウォールやIDS/IPS、アンチウイルスゲートウェイなどのセキュリティ機器で、これらの上で動作するソフトウェアも対象となる。
単体の機器の記録だけでは気付かない異状を複数の機器の記録を突き合わせて割り出したり、一回一回は正常な操作やアクセスの記録を時系列に並べることで不審な試みが行われていることを把握し、管理者に警告を発するといった動作も可能である。
過去に起きた事象について記録を解析して原因や被害状況を調べたり、被害や手口の証拠を得るのに用いることもあるが、今起きている事象を即座に把握して被害の拡大を抑えることが主な役割となる。企業などが自社のシステムで運用するだけでなく、セキュリティサービス企業が顧客のシステム監視に用いる場合もある。
検疫ネットワーク ⭐
外部から持ち込んだパソコンや携帯情報端末などを接続し、ウイルスなどに感染していないか検査する、他から隔離されたネットワーク領域。
コンピュータウイルスなどの中には、ネットワークに接続するとすぐに別のコンピュータへの侵入や感染を試みるものがあるため、社内の業務用のネットワークから隔離された検疫ネットワークに一旦接続し、不審な点がないか検査する。
既知のマルウェア感染の有無や、ウイルス対策ソフトやオペレーティングシステム(OS)が最新の状態になっているか、社内規定に違反する不審なソフトウェアが入っていないかといった点を調べる。
検査で問題が見つからなければ社内ネットワークへのアクセスが許可され、他の端末やサーバなどと通信が可能になる。問題が発見されると専門のサーバがソフトウェアのアップデートなど「治療」を行い、問題が解消されれば接続が許可される。
対象の隔離にはいくつかの方式があるが、ネットワークスイッチが検疫ネットワークと通常ネットワークにVLANを設定して分離し、問題が無い端末に通常側のVLANへの接続を許可する認証スイッチ方式がよく用いられる。他にゲートウェイ方式やDHCP認証方式、パーソナルファイアウォール方式が知られる。
DMZ 【DeMilitarized Zone】 ⭐⭐⭐
インターネットなどに接続されたネットワークで、ファイアウォールなどの機器を用いて外部と内部の両ネットワークの中間に設けられたネットワーク領域のこと。もとは軍事用語で、紛争地域の軍事境界線付近に設定された軍事活動の禁じられた地域のことを指す。
内部ネットワークの一部を分離して外部からファイアウォールを通して接続可能にした領域で、外部からのアクセスを受け付ける必要があるWebサーバやDNSサーバ、メールサーバなどを運用するために設定されることが多い。DMZよりも内側へは外部から接続を確立することはできない。
DMZと内部側、外部側の両方のネットワーク境界にファイアウォールなどの通信管理のための機器が設置されており、DMZ内の機器には内外の両方からアクセス可能な一方、DMZ内から内部ネットワークに向けて接続を試みることはできないよう設定される。これにより、外部からの攻撃によりDMZ内のサーバなどが乗っ取りやマルウェア感染などの被害に遭っても、そこを踏み台に内部ネットワークの機器へ被害が拡大することを防ぐことができる。
外部側と内部側、両境界のファイアウォールにそれぞれ別の機器を用いる構成と、単一のファイアウォールを結節点として外部・DMZ・内部の3つを分離する構成がある。また、DMZの奥にさらにファイアウォールで仕切られた領域を設け、手前のDMZ内からの接続しか受け付けない(外部から直接接続できない)よう設定し、バックエンド処理を担当するサーバなどを設置する場合もある。
一方、内部ネットワークのうちファイアウォールなどによって保護されておらず、むき出しの状態で外部に接続されている領域は「バリアセグメント」という。外部からの通信回線を直接接続するルータやネットワークスイッチなどが置かれるが、ここに公開サーバなどを置く場合もある。
簡易DMZ
なお、家庭向けのブロードバンドルータ(ホームルータ)などの製品の中には、内部ネットワーク側の特定の一台に外部からの接続要求を取り次ぐ機能を「簡易DMZ」「DMZホスト」などの名称で提供している場合がある。
本来は外部側から接続を確立できないプライベートネットワーク上の特定のコンピュータの特定のポート番号に外部から接続できるようにする機能で、サーバを運用したり外部側からの接続が必要なオンラインゲームなどを利用するのに必要となる。
外部から接続可能な領域を作り出すという意味ではDMZに似ていなくもないが、接続を許可したコンピュータと他の内部側の機器は隔離されていないため、セキュリティ上はDMZとしての役割を果たすことはできない。
SSL 【Secure Sockets Layer】 ⭐⭐⭐
インターネットなどのIPネットワークでデータを暗号化して送受信するプロトコル(通信手順)の一つ。データを送受信する一対の機器間で通信を暗号化し、中継装置などネットワーク上の他の機器から通信内容を覗き見たりすり替えたりできないようにする。
SSLは公開鍵暗号を応用したデジタル証明書による通信相手の認証(一般的にはサーバの認証)と、共通鍵暗号(秘密鍵暗号)による通信の暗号化、ハッシュ関数による改竄検知などの機能を提供する。Webアクセスに使われるHTTPと組み合わせ、Webサイトで認証情報や個人情報、決済情報などの送受信を安全に行う手段として広く普及している。
認証局と証明書
SSLでは、一対の秘密鍵と公開鍵を組み合わせて用いる「公開鍵暗号」により通信相手の確認や通信の暗号化に用いる暗号鍵の交換を行う。そのためには相手方(クライアント側ソフトウェアにとってサーバ側)の公開鍵をすり替えや改竄ができない方法で入手する必要がある。
SSLを利用するクライアント(Webブラウザなど)が、アクセス先のすべてのサーバの公開鍵を個別に安全に入手することは現実的ではないため、信頼できる「認証局」(CA:Certificate Authority)と呼ばれる機関が発行したデジタル証明書によって公開鍵の受け渡しを行う。
Webブラウザなどには著名な大手CAの公開鍵が記録された「ルート証明書」があらかじめ格納されており、これを用いてサーバから送られてきた証明書を検証することにより、途中ですり替えや改竄が行われていないことを確認することができる。この仕組みを「PKI」(Public Key Infrastructure:公開鍵基盤)という。
サーバ側ではSSLに対応するために大手CAやその認証を受けた下位CAの発行(通常は販売)する証明書を導入する必要がある。仕組みの上ではCAなど外部機関の認証を受けず自らが発行した証明書を使うこともできるが、クライアント側では「発行元の検証ができない」警告メッセージが表示される。
プロトコルとポート番号
SSLはプロトコル階層ではIP(Internet Protocol)の一段階上位で、TCPやUDPと同じトランスポート層のプロトコルである。TCPの代替として利用することができるため、HTTPに限らず様々な上位層(アプリケーション層)のプロトコルと組み合わせて使用され、インターネットにおける汎用的な通信の暗号化方式として定着している。
組み合わせるプロトコル応じて「○○ over SSL」(○○S)という名称で呼ばれ、HTTPであれば「HTTPS」、SMTPであれば「SMTPS」、POP3であれば「POP3S」などと呼ばれる。これらは元のプロトコルとは別に標準のポート番号が与えられており、HTTPは標準ではTCPの80番を使用するが、HTTPSは443番を使う。同様にSMTPSは465番(SMTPは25番)、POP3Sは995番(POP3は110番)が割り当てられている。
SSLとTLS
初期のSSLの仕様は1990年代半ばに当時のWebブラウザ大手、米ネットスケープ・コミュニケーションズ(Netscape Communications)社が開発した。SSL 1.0は欠陥が見つかったため公式発表前に破棄され、最初に公開されたのは1994年のSSL 2.0である。翌1995年にSSL 3.0が発表された。これらは現在では深刻な脆弱性が発見されており、利用を中止して後継版へ移行することが推奨されている。
SSL 3.0の次のバージョンから名称が「TLS」(Transport Layer Security)に変更されたため、現在広く利用されているのは正確にはTLSの方だが、「SSL」という名称が既に広く定着していたため、実際にはTLSを指していてもSSLと表記したり、「SSL/TLS」「TLS/SSL」などと両者を併記することが多い。
TLS 【Transport Layer Security】 ⭐⭐⭐
インターネットなどのIPネットワークでデータを暗号化して送受信するプロトコル(通信手順)の一つ。送受信データの暗号化による盗み見の防止、相手方の認証による真正性の確認(なりすまし防止)、経路途上での改竄検知などを行うことができる。
TLSはデジタル証明書(公開鍵証明書)による通信相手の認証(一般的にはサーバの認証)を行い、中継装置などネットワーク上の他の機器によるなりすましを防止する。また、共通鍵暗号(秘密鍵暗号)によって通信を暗号化し、ハッシュ関数を応用してデータの改竄を検知することができる。
Webコンテンツの送受信に使われるHTTPと組み合わせた「HTTPS」(HTTP over SSL/TLS)が特によく知られ、Webサイトと閲覧者のWebブラウザの間で認証情報や個人情報、決済情報などの送受信を安全に行う手段として広く普及している。
TLSはTCPやUDPと同じ、いわゆるトランスポート層のプロトコルで、TCPの代替として利用することができるため、HTTPに限らず様々な上位層のプロトコルと組み合わせて使用され、インターネットにおける汎用的な通信の暗号化方式として定着している。UDPと組み合わせることができる派生仕様もあり「DTLS」(Datagram TLS)という。
デジタル証明書の運用
TLSでは公開鍵暗号を利用するため、サーバ側に認証局(CA:Certificate Authority)によって署名されたデジタル証明書(SSLサーバ証明書)が、クライアント側に同じ認証局の証明書か最上位認証局(ルート認証局)のルート証明書が必要となる。
実際の運用では、サーバは著名なルート認証局により認証された中間認証局から得た証明書を提示することが多い。Webブラウザなどのクライアントソフトには著名ルート認証局の証明書があらかじめ同梱されており、通信相手ごとにいちいち利用者が証明書の取り寄せなどを行う必要はない。
SSLとの関係
当初の標準規格は「SSL」(Secure Socket Layer)と呼ばれ、SSL 3.0が改訂される際に同時に名称が改められて「TLS 1.0」が生まれたが、SSLという名称が既に広く定着していたため、実際にはTLSを指していてもSSLと表記したり、「SSL/TLS」「TLS/SSL」などと両者を併記することが多い。
現在実際に使われているのはほとんどがTLSである。SSLの最終版であるSSL 3.0には保安上の弱点(脆弱性)が発見されており、もはや十分に安全とは言えない状況になっているため、インターネット上で運用されるサーバは早急なTLSへの移行とSSL旧バージョンの無効化が推奨されている。
VPN 【Virtual Private Network】 ⭐⭐⭐
通信事業者の公衆回線を経由して構築された仮想的な組織内ネットワーク。また、そのようなネットワークを構築できる通信サービス。企業内ネットワークの拠点間接続などに使われ、あたかも自社ネットワーク内部の通信のように遠隔地の拠点との通信が行える。
古くは電話回線(音声通話サービス)で提供されていたもので、全国に拠点を持つ大企業の内線電話などを公衆網を中継して接続するサービスだった。最近ではもっぱらデータ通信の拠点間接続サービスのことを指し、企業内LANを通信キャリアの持つバックボーンネットワークを通じて相互に接続するサービスをいう。
かつては各拠点の間に専用線を導入して直接通信していたが、キャリアのバックボーンに「相乗り」することにより低コストで拠点間接続が可能となる。バックボーンでは様々な企業のデータが混在して流れることになるが、データは認証や暗号化で厳重に保護・管理されるため、混信や漏洩、盗聴などの危険性は低い。
最近ではバックボーンにインターネットを利用する「インターネットVPN」も登場しており、通常のVPNサービスよりもさらに低コストでの利用が可能だが、インターネットの特性上、セキュリティや通信品質の確保はキャリアの通信網を利用するよりも難しくなる。
VPNルータ (VPN router)
インターネットなどの通信の中継を行うルータ製品の分類の一つで、VPN(Virtual Private Network:仮想専用ネットワーク)構築のための機能を持ったもののこと。
IPネットワーク上で経路選択やパケットの中継・転送を行う通常のルータとしての機能の他にVPNゲートウェイとしての機能を持ち、ネットワークを介して他のVPN機器との間で暗号化された専用の通信路を形成することができる。
プライベートネットワークとインターネットなどの広域通信網の境界に設置すれば、遠隔にある他のネットワークとの間でVPNを構築することができる。製品により対応している暗号化プロトコルなどに違いがあり、同じプロトコルに対応しているもの同士の間でしかVPNを構築することはできない。
IP-VPN 【Internet Protocol Virtual Private Network】 ⭐⭐
地理的に離れた構内ネットワーク(LAN)同士を接続して一体的に運用するVPNの方式の一つで、通信事業者の運用するIPベースの閉域網を経由して拠点間を接続するもの。インターネットを経由しないため安全性が高い。
企業などの組織内で運用される複数の構内ネットワークを広域回線網(WAN)で相互に結び、あたかも一つの大きなネットワークであるかのように運用する技術やサービスを「VPN」(Virtual Private Network:仮想専用ネットワーク)という。
IP-VPNはインターネットと同じIP(Internet Protocol)で通信するネットワークを経由してLAN同士を結びつけるが、通信事業者が単独で構築・運用する閉じられた回線網を利用する。インターネットのように複数の事業者の機器や回線を経由することはなく、セキュリティの確保や品質制御などでは格段に優れている。
専用線を借り受けて拠点間を接続する方式に比べ低コストで導入・利用できるが、複数の契約者のデータが同じネットワークに流れるため、通信速度の保証などは行われないことが多い。同じIPを用いて構築するVPNでも、拠点間の接続にインターネットを経由するVPNのことは「インターネットVPN」という。
MDM 【Mobile Device Management】 ⭐⭐
企業などで社員に支給するスマートフォンなどの携帯情報端末のシステム設定などを統合的・効率的に管理する手法。また、それを実現するソフトウェアや情報システムなどのこと。
MDMでは、社員が使用する端末の設定などを管理部門で一元的に管理し、社の方針に沿ったセキュリティ設定を施したり、使用するソフトウェアの種類やバージョンを揃えたり、利用できる機能に制限を加えたり、勝手に私用のソフトやデータを導入できないようにする。
端末の紛失・盗難時に重要なデータが漏洩したり社内システムに侵入されないよう、遠隔からデータを消去したり(リモートワイプ)、操作できないようロックをかけたり(リモートロック)、一定回数のログイン試行失敗で消去したり(ローカルワイプ)、GPS機能で端末の場所を把握できる製品などもある。
これに対し、携帯端末のアプリケーションを集中的に管理すること、およびそのようなシステムを「MAM」(モバイルアプリケーション管理)、端末で利用するデータや情報を集中的に管理すること、およびそのようなシステムを「MCM」(モバイルコンテンツ管理)という。
また、これらすべてを統合・発展させ、端末のハードウェアやシステム、アプリケーション、データを集中的に管理する手法および制御システムを「EMM」(Enterprise Mobility Management:エンタープライズモビリティ管理)という。
電子透かし 【デジタルウォーターマーク】 ⭐
画像や動画、音声などのデータに、関連する情報を人には知覚できない形で埋め込む技術のこと。専用のソフトウェアなどを用いることで埋め込まれた情報を検出することができる。
一見何も描かれていないように見える部分から光の加減で像が浮き上がる「透かし」技術は紙幣の偽造防止などのために使われているが、電子透かしはこれと同じように人間にはほとんど分からない形でメディアデータ中に情報を埋め込むことができる。
静止画や映像、音声への埋め込み技術がよく知られ、データの編集や切り取り、再圧縮、再符号化などによって失われないよう偏在させる手法が提案されている。また、文字(テキスト)情報やコンピュータプログラム、印刷物へ埋め込む技術も研究されている。
著作権の保護や不正コピーの検知のために用いられることが多く、その場合は著作権者やロゴ、使用許諾先、コピーの可否や回数、コンテンツのID、課金情報などが埋め込まれる。著作権関連の用途以外にも、画像にWebサイトのURLを埋め込んで閲覧者を誘導するサービスやシステムなどが開発されている。
電子透かしの元になった技術で、メディアデータなどの中に情報を人間に知覚できないように埋め込む技術を「ステガノグラフィ」(steganography)という。これは暗号のように情報を秘匿して伝達するための技術で、埋め込まれる画像などと伝達する内容には必ずしも関連がない。
デジタルフォレンジック 【コンピュータフォレンジック】 ⭐⭐
犯罪捜査や法的紛争などで、コンピュータなどの電子機器に残る記録を収集・分析し、その法的な証拠性を明らかにする手段や技術の総称。デジタル版の鑑識活動。
“forensics” には「法医学」「科学捜査」「鑑識」といった意味があり、分かりやすく意訳すれば「デジタル鑑識」となる。事件の関係先の機器を押収して記憶装置から証拠となるデータを抽出したり、サーバや通信機器などに蓄積された通信記録から違法行為の証拠となる活動記録を割り出したり、破壊・消去された記憶装置を復元して証拠となるデータを割り出すといった技術や活動が該当する。
対象となるのはパソコンや周辺機器、記憶媒体、ネットワーク機器、スマートフォン、タブレット端末、情報家電などデジタルデータを扱う機器全般で、契約先や関係先のネットサービス上のサーバに記録されたデータなどが対象となる場合もある。
また、コピーや消去、改ざんが容易であるというデジタルデータの性質に対応して、データが捏造されたものかどうかを検証する技術や、記録の段階でデータが改ざんできないよう工夫したり、ハッシュ値やデジタル署名などで同一性を保全する技術なども含まれる。
不正アクセスや機密情報漏洩など、コンピュータや通信ネットワークに直接関係する犯罪における捜査手法として注目されたが、社会へのITの普及・浸透に伴って、SNSやメッセンジャー、スマートフォンなどが関係する一般の刑事事件でも捜査や立証に活用されるようになってきている。
ペネトレーションテスト 【侵入テスト】 ⭐⭐
通信ネットワークで外部と接続されたコンピュータシステムの安全性を調査するテスト手法の一つで、既に知られている手法を用いて実際に侵入や攻撃を試みる方式。
実際に運用している、あるいはその予定のシステムに対し、専門の技術者が様々な手法を駆使してサイバー攻撃を実施し、攻撃の可否や想定される被害や影響の範囲や程度を調べる。結果はレポートなどの形にまとめて報告される。
対象のシステムの種類や構成、運用形態などによっても異なるが、ソフトウェアの保安上の弱点(脆弱性)や設定の不備などを利用して、外部からのアクセスにより乗っ取りやサービス停止、非公開の情報の取得などができるかどうかを調べる。
大量の接続要求などで処理性能や通信容量を使い切り稼働停止を狙うDoS攻撃(サービス拒否攻撃)にどれくらい耐えられるかを調べたり、侵入された際にそこを踏み台にして他のコンピュータや外部のネットワークを攻撃できるかなどを調べる場合もある。
コンピュータセキュリティ関連企業には専門のエンジニアによるペネトレーションテストを実施するサービスを提供しているところもある。特定の種類の機器やソフトウェアを対象にある程度自動的にテストと診断を行うことができるツールが公開されており、これを利用して社内の担当部門が実施する場合もある。
攻撃手法や脆弱性は新たに発見されることがあり、システムの状態や構成、要素の追加や入れ替えなどによっても安全性は変化することがあるため、一度のテストで安全と診断されても定期的あるいは状況が変化した際などに受け直すのが望ましいとされる。
ブロックチェーン ⭐⭐
一定の形式や内容のデータの塊を改竄困難な形で時系列に連結していく技術。内容が随時追加されていくデータ群を複数の独立した対等な主体の間で安全に共有することができる。仮想通貨(暗号通貨/暗号資産)の開発を通じて誕生し、他の用途へも応用されている。
ブロックチェーンを用いて記録されたデータはインターネットなどを通じて参加者間で複製、共有されるが、途中の一部を改竄しても全体を整合性のある状態にすることは困難な性質があり、特定の管理者や管理システムが存在しなくても真正なデータを共有することができる。
この性質を応用し、ネットワークに参加する二者間の取引を記録した台帳データを参加者間で共有しつつ、取引の発生に応じて追記していく分散型台帳を実現することができる。この台帳によって値の移動を追跡、検証可能な方法で記録したものを一種の通貨として利用する試みを暗号通貨という。
ハッシュ値とPoW(Proof of Work)
各ブロックには記録されるデータと共に、一つ前のブロックのデータから算出したハッシュ値が添付される。ハッシュ値はデータの長さによらず固定長の短いデータで、元になるデータが少しでも変化すると規則性なくまったく異なる値になるという性質がある。
これにより、チェーンの途中にあるブロックの内容を改変すると、次のブロックに記録されたハッシュ値と一致しなくなる。これを整合するように改変しても、今度はその次のブロックのハッシュ値と一致しなくなるため、後続のすべてのブロックを連結し直さなければならない。
単にハッシュ計算をやり直して連結し直すだけならばデータ量によってはすぐにできる場合もあるが、多くのブロックチェーン技術ではハッシュ値が特定の条件を満たすようブロックに短いデータ(nonce:ナンスという)を追加する。適切なナンス値を発見するには多数の候補値を用意して条件を満たすまで何度も繰り返しハッシュ値を算出し直す膨大な総当り計算が必要となる。
あるブロックのハッシュ値が条件を満たすことができるナンス値が発見されると、ようやくブロックを閉じて連結することができる。この工程を「PoW」(Proof of Work)と呼び、ビットコインなどのシステムではナンス値を算出した利用者に報酬として新たに暗号通貨を発行する仕組みになっている(コインのマイニングと呼ばれる)。
算出に時間がかかるナンス値が各ブロック毎に用意されていることにより、攻撃者が途中のブロックを改竄しても、後続のすべてのブロックのナンス値の割り出しをやり直さなければ正しいチェーンを得ることができず、改竄を極めて困難にすることができる。システムによってはPoWの代わりにPoS(Proof of State)など別の仕組みを用いる場合もある。
歴史
2008年に「Satoshi Nakamoto」(サトシ・ナカモト)という日本人風の名を名乗る匿名の人物(身元が分からず個人なのか集団や機関なのかも不明)が暗号通貨ネットワークの「ビットコイン」(Bitcoin)を立ち上げ、同時に公開された論文の中でその原理をブロックチェーンの語で紹介したのが最初である。
その後、ビットコインを模した暗号通貨が数多く作られ、インターネット上の交換所を通じて現金との間で、あるいは暗号通貨間で活発に取引が行われている。現在は主に投資用の資産として売買されており、通貨としての機能、すなわちモノやサービスの売買の決済、支払い手段としてはほとんど普及していない。
台帳に取引記録以外の情報を載せることで様々な仕組みを構築することもでき、ある種のプログラムを搭載して条件に応じて自動的に実行する「スマートコントラクト」などが提唱されている。2015年頃からブロックチェーンを金融取引などへ適用する試験的な取り組みなどが活発になっているが、今のところ暗号通貨のように既存の技術や制度では実現できない、あるいは決定的に優位性のある用途は見つかっていない。
耐タンパー性 【タンパーレジスタンス】 ⭐⭐
機器や装置、ソフトウェアなどが、外部から内部構造や記録されたデータなどを解析、読み取り、改竄されにくいようになっている状態。また、その度合いや強度。機密情報や暗号化処理などを取り扱うICチップなどが備えている。
外部からの観測や解析により暗号鍵などの機密情報や情報の処理過程、プログラムなどを抜き取ったり、動作に干渉してデータやプログラムを改竄されることを防ぐために様々な防護策が施される。このような非正規な手段による解析や干渉に耐えられる強さを耐タンパ性という。
耐タンパ性を高める手法は、外部から干渉されにくいよう守りを固める方法と、干渉を受けると内部が破壊され動作や読み取りが不可能になる方法の二種類に大別される。また、ソフトウェア上の処理によって対策を講じる論理的な手法と、ハードウェアの構造や仕組みによって対策する物理的な手法に分類することもある。
ICチップなどの場合、特殊なパッケージに封入して開けると内部が破壊される仕組みにしたり、空気や光を検知して自動的に内容が消去される半導体メモリを使用したり、消費電力や処理時間の変動を観測して動作を解析されることを防ぐためにこれらを一定に保つ仕組みを導入したりといった対策がよく知られる。
ソフトウェアの場合には、プログラムを暗号化して正規の実行時のみ復号して実行するような仕組みにしたり、リバースエンジニアリングで動作を解析されにくいようプログラムを難読化したり、ハッシュ値などを利用した改竄検知の仕組みを導入したりといった手法が知られる。
セキュアブート 【トラステッドブート】 ⭐
コンピュータ起動時の安全性を確保するため、デジタル署名で起動するソフトウェアを検証する機能。UEFI(BIOS)の機能として提供され、攻撃者に仕込まれた悪意あるソフトウェアが起動するのを防止する。
パソコンなどの主基板(マザーボード)に内蔵されたUEFIの機能の一つで、オペレーティングシステム(OS)側の対応が必要だが、OSの種類によらず利用できる。対応製品には出荷時にあらかじめ信頼できる認証局(CA:Certificate Authority)が発行したデジタル証明書が組み込まれている。
コンピュータの起動時に実行されるブートローダやOSのカーネル(中核プログラム)、デバイスドライバなどに付されたデジタル署名をUEFIが自身の証明書を用いて検証する。署名が無い場合はハッシュ値で代用し、あらかじめ登録された有効なハッシュのリストと照合する。
検証の結果、署名が無効であると判断された場合には、ブートローダやOSなどが外部の攻撃者やマルウェアによって不正に改竄されたり差し替えられた偽物である危険性があるため、起動を拒否してエラーメッセージを表示する。
2013年に策定されたUEFI 2.3.1に盛り込まれた仕様で、主に米マイクロソフト(Microsoft)社のWindows 8以降に対応するコンピュータに導入されている。WindowsだけでなくVMware製ハイパーバイザや著名なLinuxディストリビューションなども対応している。UEFIの設定画面で有効と無効を切り替えることができる。
TPM 【Trusted Platform Module】 ⭐
コンピュータのマザーボードなどに装着される、セキュリティ関連の処理機能を実装した半導体チップ。業界団体のTrusted Computing Group(TCG)が標準仕様を策定しており、パソコンやサーバなどに搭載されている。
RSA方式による暗号化や復号、公開鍵と暗号鍵のペアの生成、SHA-1方式のハッシュ値の計算、デジタル署名の生成・検証、(疑似ではない)真性乱数(物理乱数)の生成などを行なうことができ、内部の不揮発メモリに生成した値などを保存しておくことができる。
バージョン2.0ではAES(Advanced Encryption Standard)方式の暗号や楕円曲線DSA(ECDSA)によるデジタル署名、SHA-2(SHA-256)方式のハッシュ計算などの処理が追加されている。
これらの機能により、ソフトウェアの改竄検知、なりすましが困難な個体識別や端末認証、ハードディスクなどのストレージの安全な暗号化などを実装することができる。
単にTPMといった場合は単体のICチップとして実装された「ディスクリートTPM」(discrete TPM)を指すが、チップセットなど他のチップの内部に機能を統合した「統合TPM」(integrated TPM)、ファームウェアとして実装した「ファームウェアTPM」、ソフトウェアとして実装した「ソフトウェアTPM」(脆弱なため開発時のテストなどで使用)、ハイパーバイザーが仮想マシンに提供する「仮想TPM」(virtual TPM)などの形態も存在する。
ディスクリートTPMのICパッケージは耐タンパー性を有するため、内部を解析して保存された暗号鍵などを読み取ろうとしても物理的に破損してしまい読み出すことができない。コンピュータが盗難された場合でも暗号化や認証を回避して中のデータを読み取ることはできないようになっている。
アンチウイルスソフト 【ウイルス対策ソフト】 ⭐⭐
コンピュータ内部に忍び込んだコンピュータウイルスを検知、除去するソフトウェア。狭義のウイルスに限らず、スパイウェアやトロイの木馬などマルウェア全般を対象とするシステムが一般的である。
コンピュータの外部記憶装置(ストレージ)に保存された実行可能ファイルなどの一部として感染したウイルスや、メモリ上で実行されているウイルスを探し出し、機能を停止して取り除く。感染したファイルからはウイルス部分の除去を試み、成功すれば感染前の正常な状態に戻すが、除去が不可能な場合は感染が広まらないよう隔離する。
トロイの木馬、ワーム、スパイウェアなどウイルス以外の悪意のあるソフトウェア(マルウェア)を検知、除去する機能や、外部との通信やソフトウェアの実行状況を監視するなどしてウイルスの侵入、感染を直前に察知して防御、遮断する機能を持ったものもある。
ウイルス検知手法
マルウェア対策ソフトがウイルスを検知する手法には大きく分けて二つの手法がある。一つはパターンマッチング法で、これまでに発見されたウイルスについて、そのプログラムコードの特徴的な一部を採取、登録したデータベース(パターンファイル、ウイルス定義ファイルなどと呼ばれる)を用意する。
これに該当するパターンが含まれていないか、実行ファイルなどをしらみつぶしに調べていく手法である。パターンファイルはインターネットなどを通じてメーカーから定期的に最新のものが送られてきて更新されるようになっている製品が多い。
もう一つはヒューリスティック法で、一般的なプログラムではありえないようなウイルスに特徴的な異常な挙動(重要なシステムファイルを書き換えようとする等)の有無を調べる。一部の特殊なシステムファイルなどをウイルスと誤認することもあるが、パターンマッチング法の苦手な未知のウイルスや、既存のウイルスの一部が改変された亜種などにも対応できる。
提供形態・動作形態
一般によく利用されるのは、パソコンにアプリケーションとして導入され、そのパソコンに保存されたデータを監視するソフトウェアだが、近年では総合的なセキュリティソフトの機能の一部として統合されて提供されることが多い。
サーバ上で動作してネットワークを通じて送受信するデータを監視するシステムもある。中継機器上でネットワーク内外を通過するデータを対象に監視やウイルス除去を行うのに特化した製品は「アンチウイルスゲートウェイ」と呼ばれる。
ウイルス定義ファイル 【パターンファイル】 ⭐
既知のコンピュータウイルスに特有・固有のデータ出現パターンを登録したデータファイル。アンチウイルスソフト(ワクチンソフト、ウイルス対策ソフト)がコンピュータに保存されたファイルからウイルスを検出するのに使用する。
マルウェア定義ファイルにはウイルスのプログラムコードの一部分を抽出したデータなど、ウイルスに特有のパターンが大量に登録されており、検査対象のファイルと照合してパターンが一致すると、そのファイルは感染しているとみなされる。
稀に、正常なファイル中に偶然ウイルスのパターンに一致する箇所があり、誤って感染を検知することもある。(狭義の)ウイルス以外にもワームやトロイの木馬、スパイウェアなど各種のマルウェア(悪意のあるソフトウェア)のパターンが登録されていることもある。
マルウェア定義ファイルはアンチウイルスソフトによりデータ形式や登録されているウイルスの種類などが異なり、それぞれ専用のものが必要となる。次々に現れる新種や既存のウイルスの亜種に対応するため、各メーカーは定期的あるいは頻繁に追加・更新データを配布している。
アンチウイルスソフトはインターネットなどを通じてこれを自動的に取得・更新するようになっており、利用者は一定期間(1年程度)毎にメーカーに料金を支払い、最新データを入手する権利を取得・更新する仕組みになっていることが多い。
シグネチャコード (signature code)
コンピュータプログラムの識別・同定を行なうための断片的なプログラムコードを「シグネチャコード」(signature code)という。コンピュータのストレージやメインメモリに紛れ込んだコンピュータウイルスなどの検知・識別に用いられる。
既存のプログラムの短い断片で、そのプログラムに固有であるか、何らかの特徴的なパターンを持つ部分が選ばれる。マルウェア定義ファイルには過去に発見されたウイルスなどのマルウェアのシグネチャコードが大量に登録されており、メモリやファイルの内容と照合することで、潜んでいるマルウェアを検知することができる。
多くのウイルス対策ソフトは、開発元が新たに発見したウイルスなどのシグネチャコードをインターネットなどを通じて取得して定義ファイルを更新し、新しいマルウェアに対応できるようになっている。
3-2-1ルール
データをバックアップする際に推奨される運用ルールの一つ。3つの複製を用意し、2つの異なる媒体に保存し、1つは地理的に離れた場所に保存する。
組織がデータをバックアップする仕組みを作る際の指針で、データは本体と2つの複製の3つを常に用意しておき、これを物理的に2つ以上の装置や媒体に分けて保存する。1つは他の2つと地理的に離れた場所(オフサイト)にある設備に保管する。
複製が3つあることで、2つを喪失しても残りの1つから復旧できる可能性が高まる。複数の媒体に分けて保管することで、媒体が物理的に破損しても別の媒体にデータが残る。地理的に離れた場所にも複製を置くことで、施設が丸ごと被災する災害やサイバー攻撃などにも対処できる。
2009年に米写真家のピーター・クロー(Peter Krogh)氏が著書 “The DAM Book - Digital Asset Management for Photographers” (写真家のためのデジタル資産管理)で提唱したのが初出とされ、米国政府やUS-CERTなどのセキュリティ機関が推奨したことで広まった。現代では「別の媒体」「離れた場所」はクラウドサービスにより満たすことができる。
ワーム 【コンピュータワーム】 ⭐
有害な動作を行うソフトウェアの一種で、インターネットなどを通じてコンピュータに侵入し、さらに他のコンピュータへの自身の複製を試みるもの。
ソフトウェアの保安上の弱点(脆弱性)や利用者の誤認などを悪用してコンピュータ内に自身を複製して感染する。自己増殖機能を有し、自身が感染した経路や手段を繰り返し用いて次々に他のコンピュータへの感染を試みる。
“worm” の原義はミミズや芋虫のような線形の虫や動物のこと。世間一般にはコンピュータウイルスの一種とみなされるが、一般的なウイルスと異なり宿主・寄生先となる他のソフトウェアやファイルがなく単体で侵入・活動するため、専門的な分類ではウイルスとは区別されることが多い。
主な感染経路
感染経路として最も一般的なのは電子メールの添付ファイルを悪用したもので、何か有用なファイルが添付されているように偽装したメールを無差別に大量送信し、受信者がWORMと気付かず添付ファイルを開いてしまうと実行ファイルが起動して感染するというものである。
他に、WebサーバやWebブラウザの脆弱性を利用してWebページの閲覧などを介して感染するものや、ファイル共有やUSBメモリなどを介して感染するものがよく知られる。
感染後の活動
感染したコンピュータで自身が起動時に自動的に実行されるようシステム設定を改竄することが多く、利用者が気付かないうちに常時稼働状態となって他のコンピュータへの感染などの動作を繰り返し行う。
感染したシステムに対する有害な動作として、ストレージ(外部記憶装置)内のファイルなどの外部への漏洩や改竄、削除、システムを破壊し起動不能にするといった活動を行う場合がある。
また、外部の他のコンピュータへの攻撃・妨害活動を自動的に行ったり、外部の攻撃者がインターネットを通じて遠隔から操作できる窓口(バックドア)を設置することもある。WORMを介して特定の攻撃者からの指令を受け、一斉に攻撃などを行うよう組織されたコンピュータ群を「ボットネット」(botnet)という。
コンテンツフィルタリング
インターネットを通じて端末に流入する情報を監視し、あらかじめ設定された条件に合致したものを排除・遮断する技術。主にWebページの内容に基づいて閲覧の可否を判定する仕組みを指す。
ネットワークやコンピュータの管理者が利用者にとって望ましくないWebコンテンツやサービスを排除するために用いるもので、利用者が直接操作する端末などに設定される場合と、ネットワークの出入口にある通信機器など(ルータやファイアウォール、プロキシサーバなど)で一括して行われる場合がある。
前者は保護者が子どもにパソコンなどを使わせる際に不適切なサイトへアクセスしないよう制限するために実施されることが多く、後者は企業などで従業員が業務と無関係なサイトを閲覧したり、ウイルス感染や情報漏洩することを防ぐために実施することが多い。
主な実装方式として、実際に送られてくるデータをリアルタイムに監視し、特定の語句が含まれていないかなどを基準に制限を行う「動的コンテンツフィルタリング」と、接続しようとしているサイトのアドレス(URL/URI)を元に制限を行う「URLフィルタリング」がある。
URLに基いて判断する方式には、接続可能なURLを列挙し、それ以外への接続を遮断するホワイトリスト方式と、遮断するURLを列挙し、それ以外への接続を許可するブラックリスト方式がある。
コンテンツフィルタリング
インターネットを通じて端末に流入する情報を監視し、あらかじめ設定された条件に合致したものを排除・遮断する技術。主にWebページの内容に基づいて閲覧の可否を判定する仕組みを指す。
ネットワークやコンピュータの管理者が利用者にとって望ましくないWebコンテンツやサービスを排除するために用いるもので、利用者が直接操作する端末などに設定される場合と、ネットワークの出入口にある通信機器など(ルータやファイアウォール、プロキシサーバなど)で一括して行われる場合がある。
前者は保護者が子どもにパソコンなどを使わせる際に不適切なサイトへアクセスしないよう制限するために実施されることが多く、後者は企業などで従業員が業務と無関係なサイトを閲覧したり、ウイルス感染や情報漏洩することを防ぐために実施することが多い。
主な実装方式として、実際に送られてくるデータをリアルタイムに監視し、特定の語句が含まれていないかなどを基準に制限を行う「動的コンテンツフィルタリング」と、接続しようとしているサイトのアドレス(URL/URI)を元に制限を行う「URLフィルタリング」がある。
URLに基いて判断する方式には、接続可能なURLを列挙し、それ以外への接続を遮断するホワイトリスト方式と、遮断するURLを列挙し、それ以外への接続を許可するブラックリスト方式がある。
MACアドレスフィルタリング 【MAC address filtering】 ⭐⭐⭐
無線LANルータ(Wi-Fiルータ)などが備える機能の一つで、特定の機器からしか接続できないようにする機能。端末を物理的に識別して、あらかじめ登録された端末からのみアクセス可能にすることができる。
無線LAN(Wi-Fi)のネットワークは電波の届く範囲からなら物理的にはどこからでも接続できるため、正規の利用者以外は利用できないようにする必要がある。
MACアドレスフィルタリングはそのためのアクセス制限方式の一つで、端末(正確には内部のネットワークインターフェース)ごとに固有のMACアドレスを無線アクセスポイントや無線ルータに登録することで、無関係の人が外部から接続できないようにすることができる。
ただし、MACアドレス自体は秘匿されるような情報ではないため、外部からの継続的な通信の傍受などでアクセス可能なMACアドレスを割り出される可能性がある。また、通常の機材を通常の方法で使用する限りMACアドレスの書き換えや偽装はできないが、技術力のある攻撃者はMACアドレス偽装などを行うことが可能である。
このため、本格的なセキュリティ対策や利用者認証のつもりでMACアドレスフィルタリングを用いるのは危険であり、あくまでもWi-Fiアクセスポイントの「ただ乗り」、内部ネットワークの覗き見といったカジュアルな不正を防止する簡易な対策であるとの認識が必要である。
ペアレンタルコントロール 【ペアレンタルロック】
保護者が子どもの情報機器の使用やコンテンツの視聴の一部を制限するための機能やサービス。主に成人向けに提供されているコンテンツやサービスに子どもがみだりに接触しないようにするために用いられる。
パソコンやゲーム機、スマートフォン、タブレット端末などの機器や、それらの上で利用されるソフトウェアやオンラインサービスなどで提供される使用制限機能で、親があらかじめ設定した条件に従って、子どもが使用・視聴する際に一部の機能や内容を制限・封鎖する。子どもが自分で解除できないよう、親がパスワードや暗証番号を設定することができるようになっていることが多い。
制限の具体的な内容や方式は機器やサービスなどによって異なるが、成人向けに制作された性描写や暴力表現などを含む映像やゲームなどを利用できないようにしたり、機器を使用可能な時間(連続使用時間や時間帯)を制限することが多い。子どもが使っている時の操作や利用の記録を取り、親が後から確認できるようにするシステムもある。
携帯機器やネット接続された機器では、オンラインでの料金の支払いや、写真や位置情報などプライバシーに繋がる情報の送信、SNSなど特定のアプリの使用、アカウント情報の変更など、特定の機能や操作をブロックすることができるようになっている場合もある。
ゲーム作品や映像作品などでは業界団体などが作品の審査を行い、「成人向け」「15歳以上向け」「全年齢可」などいくつかの段階を設けて視聴・プレイ可能な年齢の格付け(レーティング)を行っていることがある。DVDプレーヤーや家庭用ゲーム機などでは、この情報をコンテンツの一部として記録しておき、機器側の制限情報と照らし合わせて自動的に再生や起動を制限する仕組みも提供されている。
なお、“parental” は本来「パレンタル」に近い発音だが、日本では “parent” (ペアレント)の発音に引きずられて「ペアレンタル」という表記が定着している。
セキュリティパッチ ⭐⭐
ソフトウェアに保安上の弱点(脆弱性)が発見された際に利用者に配布される修正プログラム。現代ではインターネットを通じて配信するのが一般的となっている。
ソフトウェアには公開・出荷後に問題が見つかる場合があり、本来できないはずの操作が可能になるなど、外部の攻撃者やマルウェア(悪意のあるプログラム)が悪用すると安全が脅かされるものもある。
セキュリティパッチはそのような脆弱性の含まれるプログラムファイルや設定ファイルなどを上書きし、問題が修正された最新版に置き換える。同時期に複数の問題が見つかった場合は、それらを同時に置き換えるプログラムが発行される場合もある。
パッチの適用
問題の深刻さや悪用のしやすさ、利用者側での使用環境などにもよるが、公表された脆弱性はそれを応用した攻撃に晒されやすくなるため、セキュリティパッチの配布が開始されたら速やかに入手して適用すべきであるとされる。
パッチの適用によって仕様や設定などが変わり、ソフトウェアが今まで通りに動作しなくなったり、稀にパッチが別の問題を引き起こすこともあるため、法人ユーザーなどではシステム管理部門が自社システムで正しく動作するか検証してから各機器へ配信を開始するいった対応を行うことが多い。
提供方式
一般消費者の利用するオペレーティングシステム(OS)製品では、利用者が必ずしもコンピュータに詳しくないため、開発元の運用するサーバコンピュータから自動的に修正プログラムを入手して適用する仕組みが設けられていることが多い。Windowsを修正する「Windows Update」などがよく知られる。
有名で利用者の多い製品や大規模なソフトウェアでは、さほど深刻ではない細かい問題点が頻繁に見つかることがあるため、更新プログラムを月に一度など定期的に配布し、前回の配布以降に見つかった問題をまとめて修正するようになっている場合もある。
物理セキュリティ 【物理的対策】 ⭐⭐
情報セキュリティのうち、施設や設備、機材などに対する物理的な干渉に備える対策のこと。施設や区画の入退室管理、盗難対策などが該当する。
通信ネットワークなどサイバー領域のセキュリティ対策をいくら固めても、重要な情報を保管した施設へ誰でも立ち入ることができ、簡単に機器の操作や持ち去りなどができてしまうのであれば攻撃を防ぐことはできない。
物理的セキュリティ対策は正規の権限がない者が施設や機材に物理的にアプローチするのを防ぐための施策で、生体認証などを用いた重要施設の入構管理や重要区画の入退室管理、共連れ・すれ違い防止(インターロックゲート)、一人入室禁止(TPMOR)、不正入退場防止(アンチパスバック)、監視カメラの設置、鍵付き筐体やセキュリティワイヤーなどによる持ち出し阻止などがある。
なお、同じ物理世界における対策でも、人間の行動に関するものは人的なセキュリティ対策(人的対策)として区別されることが多い。例えば、パスワードをメモに残さない、離席時に画面を操作可能なままにしない、機密情報をUSBメモリなどで持ち出さない、といった事柄である。
アンチパスバック ⭐⭐
入退室管理システムの機能の一つで、入室記録のない者の退室、入室済みの者の再入室など、記録と矛盾した行動を阻止するもの。
入退室時にIDカードなどを用いて入室や退室など記録し、システム側の把握する現在の状態に矛盾する入室や退室を行おうとするとゲートを閉鎖して警報を発したり警備部門に通報するなどの対応を行う。
これにより、例えば正規の入室者に密着して非正規に入室(共連れ)した入室記録のない人物が退室しようとしたり、入室済みのはずの人物が(外にいる人物に自分のIDカードを渡すなどして)再び入室しようとしたり、退室済みのはずの人物が退室しようとするなど、入退室記録と整合しない矛盾した行動を阻止する。
インターロック
機械の安全装置などの仕組みの一つで、設計時に決められた複数の条件がすべて揃わないと機能が有効にならないよう制御する方式。
装置の始動や動作の継続に複数の異なる条件が紐付けられており、すべて満たされなければ起動しないようにしたり、動作中に条件が欠けたら安全に停止するようにしておく。
不用意な使用法や人為ミス、装置の誤作動などがあっても壊滅的な事態に発展したり人身に危険が及ばないようにする「フールプルーフ」または「フェイルセーフ」を実現する機構として用意される。
例えば、鉄道車両やバス、エレベーター、電子レンジなどは扉の開閉状況を検知するセンサーが駆動装置に繋がれており、すべての扉が閉まっていなければ始動できないようになっている。作動中に意図せず開いてしまった場合には自動的に緊急停止するよう制御される場合もある。
また、「インターロックゲート」(interlock gate)という場合には、入退室管理システムの一種で、同時に開かない二重扉を用いる機構を指す。外部と居室の間に二重の扉と両者に挟まれた空間を設け、片方が開いているときにはもう一方は開かないよう制御する。一人ずつしか入室あるいは退室できないよう制限し、共連れやすれ違い逆行を防止する。
クリアデスク ⭐
情報セキュリティに関する行動指針の一つで、自席の机の上に情報を記録したものを放置したまま離席しないことを求めるもの。攻撃者が重要な情報に物理的に接することを防ぐ。
機密情報やその入手の助けになる情報の漏洩を防ぐための行動規範で、食事やトイレ、会議などで自席や居室を離れるときは、書類やデータの記録媒体(DVDやUSBメモリなど)、コンピュータ本体などを机の上や周辺に放置しないよう求めている。「クリアデスクポリシー」「クリアデスク方針」などとも呼ばれる。
自席でコンピュータを使う場合は据置型(デスクトップ型やタワー型、ディスプレイ一体型など)ではなくノートパソコンやタブレット端末など持ち運べる機器を使い、退勤から出勤までの夜間などは施錠できる安全な場所に保管することが推奨される。
一方、離席時にコンピュータの操作画面をロックして第三者が操作や盗み見できないよう求める行動規範は「クリアスクリーン」(clear screen)と呼ばれ、クリアデスクとセットで導入されることが多い。
クリアデスクは、BSI(英国規格協会)が策定した企業・団体向け情報システムセキュリティ管理ガイドラインであるBS 7799の一部として定められ、これを元に策定されたISO/IEC 27001(日本ではJIS Q 27001およびISMS)やPCI DSSなどの各種セキュリティ規格にも採用されている。
クリアスクリーン
情報セキュリティに関する行動指針の一つで、自席のコンピュータを意図せず第三者に操作されたり画面を盗み見されたりしないよう対策を求めるもの。攻撃者が物理的に接触することを防ぐ。
機密情報やその入手の助けになる情報の漏洩を防ぐための行動規範で、食事やトイレ、会議などで自席や居室を離れるときは、必ずコンピュータのログアウト(ログオフ)やスクリーンロックを行うことを求める。「クリアスクリーンポリシー」「クリアスクリーン方針」などとも呼ばれる。
近くにいる第三者が本人の利用権限でコンピュータを操作したり、画面を盗み見たりできないようにするために行われる。画面の周辺にパスワードなどアクセスに必要な情報を掲示するといった行為も認められない。
一方、離席時に書類や記録メディア、コンピュータ本体などを机の上や周辺に放置しないよう求める行動規範は「クリアデスク」(clear desk)と呼ばれ、クリアスクリーンとセットで導入されることが多い。
クリアスクリーンは、BSI(英国規格協会)が策定した企業・団体向け情報システムセキュリティ管理ガイドラインであるBS 7799の一部として定められ、これを元に策定されたISO/IEC 27001(日本ではJIS Q 27001およびISMS)やPCI DSSなどの各種セキュリティ規格にも採用されている。
セキュリティワイヤー 【ケンジントンロック】 ⭐
コンピュータの盗難や不正な持ち出し、ケーブルや周辺機器の不正な差し込みなどを防止するための金属線でできた固定器具。
金属製のワイヤーでコンピュータ本体を机や什器に固定するための器具で、シリンダ錠やダイヤル錠などで鍵をかけることができる。店頭などオープンな場所に置かれた機器の盗難や不正使用を防止するために用いられる。
複数の機器をまとめて固定したり、筐体(ケース)を開けることができないよう封印したり、接続された周辺機器の取り外しを防いだり、逆に、空いているコネクタ(ポート)を塞いでケーブルなどを接続できないようにする機能を持った製品もある。
セキュリティケーブルが必要な状況では大量の機器をまとめて設置・管理している場合も多いため、多数のロックを単一のマスターキーで施錠・解錠できるようにした製品も用意されている。
リモートバックアップ 【遠隔バックアップ】
コンピュータのストレージ(外部記憶装置)に保存されたデータを他の装置に複製するバックアップの一種で、地理的に離れた場所にある装置に複製すること。主に災害対策などの一貫として行われる。
通常のバックアップは同じ居室や施設内の別の機器や記憶媒体にデータを複製することが多く、機器や媒体の破損や盗難、誤操作による消去、不正アクセスによる改竄など、個別の装置に対する脅威に備えるために行われる。
一方、遠隔バックアップではシステムが稼働している施設から離れた場所に用意した施設や、別の地域や国で操業している専門の事業者などにインターネットや広域通信回線を通じてデータを送信したり、データを複製した記憶媒体を運搬して保管する。
通常の方式だと自然災害や火災などで施設全体が被災するとバックアップされたデータも同時に失われる危険性があるが、遠隔バックアップであれば余程のことがない限り複製先も同時に壊滅することは避けられる。通常よりもコストや時間が余計にかかるため、通常のバックアップとは別に低い頻度で行ったり、最重要のデータのみに絞って実施したりすることが多い。
Secure Erase 【セキュア消去】 ⭐
SATA接続のSSDなどが備えるデータ消去機能。ストレージ装置側のハードウェアに内蔵された消去機能で記憶媒体のデータを完全に消去することができる。
SSDやハードディスクなどのストレージ装置に実装されたデータ消去機能で、コンピュータ側からの指示で起動されると、内部のすべての記憶素子に「0」を書き込んで元の内容を破棄する。主にSSDのデータ消去のために用いられる。
SSDではメモリセルの記録回数に上限(書き換え寿命)があるため、内部の各セルの書き込み回数がなるべく均等になるようにデータの記録位置を動的に変化させる「ウェアレベリング」という機能がある。ソフトウェア側からは同じファイルを更新しているつもりでも、実際の装置内での記録位置は知らないうちに移動を繰り返している。
このため、オペレーティングシステム(OS)などからの指示で装置内のすべての領域に「0」の書き込みを指示しても、ハードディスクなどとは異なり実際の記憶素子すべてに「0」が書き込まれるとは限らず、以前にファイルとして記録した内容が残留したままのメモリセルが残ってしまう場合がある。
Secure Erase機能はウェアレベリングを一旦オフにして文字通りすべてのセルに「0」を書き込むため、このようなソフトウェア側からは把握できない消去漏れを防ぐことができる。SATA仕様に規定された機能であるためハードディスクなどにも実装されており使用することができるが、こうした事情からSSDのデータ消去のために用いられることが多い。
Enhanced Secure Erase
通常の動作モードに加え、「Enhanced Secure Erase」(SE+)という拡張機能を選択できる製品もある。上書きに一律に「0」を用いるのではなく、メーカー指定の値を利用し、異なる値を複数回書き込んで元のデータの痕跡を念入りに打ち消す。また、通常のSecure Eraseでは対象外となる代替処理された不良セクタも消去の対象となる。
SSIDステルス 【SSID stealth】 ⭐⭐
無線LAN(Wi-Fi)ルータやアクセスポイントのセキュリティ機能の一つで、自身のSSID(ESSID)を周囲に知らせるビーコン信号の発信を停止すること。
無線アクセスポイント(AP)は近くにある他のAPとの区別のため、それぞれ固有のSSID(実際にはESSID)が設定されている。通常の設定では、周囲にある端末がAPを容易に見つけ出せるようにSSIDを含むビーコン信号を一定時間ごとに発信するが、これは電波の届く範囲にいれば誰でも受信することができ、組織の内部ネットワークの存在や接続先を無関係な第三者に知らせてしまうリスクがある。
SSIDステルスをオンにすればビーコン信号は発信されなくなり、自身のSSIDを知らない端末が近隣でWi-Fiネットワークを探索しても、AP一覧に自身が登場することはなくなる。正規の利用者の端末には無線接続の設定にSSIDを直に書き入れることにより、通常と同じように接続・通信することができる。
SSIDステルス機能はあくまでSSIDの能動的な周囲への広報をやめるだけであり、Wi-Fi通信に用いる無線電波は通常と同じように送受信されているため、悪意のある攻撃者の不正接続の試みを直接阻害する効果は期待できない。端末の認証や通信の暗号化など、他のセキュリティ機能と併用することが望ましいとされる。
暗号
ある情報を特定の決まった人しか読めないように一定の手順に基づいて無意味な文字や符号の列に置き換えたもの。情報の伝送や記録、保存の際、第三者に盗み見られたり改竄されないようにするために作成される。
通信や記録の内容を秘匿する手法には様々な種類があり、内容を記録した媒体の存在自体を隠す方法などもあるが、暗号は記録内容が読み取られても何が書かれているのか分からないようにする手法を指す。
歴史的には、暗号表などを事前に作成・共有し、単語やフレーズ単位で無関係な別の文字などに置き換える「コード」(code)と、文字単位で置き換えや位置の入れ替えを行う「サイファー」(cipher)に分類される。現代のコンピュータなどが利用する暗号は後者の一種とみなされる。
暗号にまつわる用語
暗号によって秘匿したい情報のことを「平文」(ひらぶん/plain text)、これを暗号に変換する操作を「暗号化」(encryption)、出来上がった無意味な符号列を「暗号文」(cipher text)という。現代のコンピュータによる暗号化は一定の数学的な計算手順「暗号アルゴリズム」(encryption algorithm)によってビット列を操作することによって行われる。
同じ平文を同じアルゴリズムで暗号化しても毎回異なる暗号文が得られるように、平文の他に毎回異なる「暗号鍵」(cipher key)を生成し、計算手順に加える。平文が同じでも暗号鍵が異なれば暗号文も異なり、アルゴリズムが分かっていても暗号鍵が分からなければ読み解くことはできない。
正規の権限を持つ人が、暗号鍵を用いて暗号文を平文に戻すことを「復号」(decryption / decode / decipher)、権限の無い第三者が内容を盗み見るため暗号鍵の割り出しや他の方法による平文の復元を試みることを「解読」(cryptanalysis)あるいは「攻撃」(attack)という。
共通鍵暗号と公開鍵暗号
暗号化と復号に同じ暗号鍵を用いる暗号方式を「共通鍵暗号」(common key cryptosystem/共有鍵暗号)あるいは「秘密鍵暗号」(secret key cryptosystem)という。情報の送信者と受信者は安全な方法で鍵を共有する必要がある。
一方、対になる二つの鍵を用いて片方で暗号化、もう一方で復号を行う方式を「公開鍵暗号」(public key cryptosystem)という。暗号化に用いた鍵では復号できず、一方の鍵からもう一方を割り出すことも困難という性質があり、片方は所有者の元で秘匿され、対になるもう片方は公開されるためこのように呼ばれる。
暗号に似た変換処理
暗号は平文への復元を前提とした(情報の欠損を伴わない)変換を行う手法を指すが、情報を秘匿するために行われる変換処理の中には、元の状態に戻せない不可逆な変換を行う手法もある。データのハッシュ化やプログラムコードの難読化などである。逆に、映像伝送のスクランブル化などは伝送符号を乱雑化するが、情報を秘匿する目的は無いため一定の手順で誰でも元の情報を復元できる(暗号化を兼ねる場合もある)。
暗号化 【エンクリプション】 ⭐⭐⭐
情報を第三者に盗み見られずに伝達あるいは保存するため、特定の手順に基づいて元の状態が容易に推定できない形式に変換すること。現代では、コンピュータを用いて特定の計算手順と秘密の情報に基づいてデータを変換することを指す。
伝達・保存したいデータそのものである「平文」(cleartext)と、これとは別に用意された短い秘密の符号である「暗号鍵」(cipher key)を組み合わせ、あらかじめ定められた手順によりデータの演算、加工を行い、一見すると意味が分からない符号の羅列である「暗号文」(ciphertext/cryptogram)に置き換える操作を指す。
暗号文を正規の暗号鍵を用いて平文に戻す処理を「復号」(decipher/decryption)という。正規の鍵が分からない状態で暗号鍵または平文を割り出そうとすることを「攻撃」(attack)、実際に割り出すことを「解読」(crack)という。
共通鍵暗号と公開鍵暗号
暗号化と復号に同じ暗号鍵を用いる暗号方式を「共通鍵暗号」(common key cryptosystem)「共有鍵暗号」あるいは「秘密鍵暗号」(secret key cryptosystem)という。公開鍵暗号が発明される以前はこの方式しかなかった。
一方、対(ペア)になる二つの鍵を用いて、片方で暗号化、もう一方で復号を行う方式を「公開鍵暗号」(public key cryptosystem)という。鍵ペアのうち片方は公開し、片方は秘匿した状態で運用される。暗号化に用いた鍵では復号できず、一方の鍵からもう一方を割り出すことも困難という性質があり、デジタル署名などにも応用される。
慣用的な用法
厳密には暗号化とは言えないが、目的や手法が似ているために慣用的に暗号化と呼ばれることがある変換手法がいくつかある。例えば、原文から一定の計算手順で特徴的な固定長のデータを算出する「ハッシュ関数」(hash function)および「ハッシュ化」(hashing)は、計算後のハッシュ値から元のデータに戻すことは原理的にできないため暗号化とは区別されるが、原文を秘匿する目的に使われることがあるため、そのような文脈では分かりやすさを優先して慣用的に暗号化と呼ばれることがある。
また、暗号鍵に相当する秘密の情報を用いずにデータを一定の手順で乱雑化する「スクランブル化」(scrambling)や、コンピュータプログラムのソースコードなどをコンピュータが解釈・実行できる状態を保ったまま人が容易に読み下せない形式に変換する「難読化」(obfuscation)なども、慣用的に暗号化と呼ばれることがある。
復号 【復号化】
暗号化やデータ圧縮など何らかの変換処理によって得られた符号列から、元のデータを復元すること。
データや信号などを、何らかの目的のために符号化(encode)することがある。盗聴を防ぐための暗号化やデータ量を削減するための圧縮、伝送中の信号の誤りに備えた誤り訂正符号の付与などである。
このように元の状態から変換された符号列から、符号化とは逆方向の変換処理を行い、元のデータに復元する処理や工程を復号という。暗号の場合には、暗号化に用いた秘密の情報(暗号鍵)を用いて元のデータを得ることを意味し、これを用いずに元の情報を復元することは「解読」という。
「暗号」が暗号文の意味を持ち、変換過程のことを「暗号化」というため、同じように「復号化」と表記する例も見られるが、一般には符号の逆変換工程のことを「復号」と呼び、得られたデータを「復号」とは呼ばないため、復号化という表記は誤りであるとみなされることが多い。
英語では “decode” (動詞) “decoding” (名詞)というが、特に暗号の復号のことは “decrypt” / “decryption” あるいは “decipher” ということが多い。(暗号鍵を用いない)解読のことは “attack” “break” “crack” などのように表現することが多い。
暗号アルゴリズム 【暗号化アルゴリズム】
データの暗号化や復号を行うための計算や操作の手順を定めた規則。文脈によっては暗号化の手順のみを指す場合もある(復号の手順を分けて考える場合)。
最も単純な暗号アルゴリズムとして、例えば「アルファベット順で指定した数だけ前後にずらす(ただしAの後はZ、Zの前はA)」という文字の置き換えルールを考える。これは古代ローマで実際に使われていたとされる「シーザー暗号」と呼ばれる暗号方式である。
このアルゴリズムに「ABC」というアルファベット文字列と、ずらす字数として「2」という値を与えると、「A」は後ろに2文字ずれて「C」に、「B」は「D」に、「C」は「E」になり、「CDE」となる。このとき元になる「ABC」を「平文」(cleartext)、「2」を「暗号鍵」(cipher key)、「CDE」を「暗号文」(ciphertext)という。
復号時には暗号化と逆の手順で「C」「D」「E」をそれぞれ2文字ずつ前にずらすことで、平文「ABC」を復元することができる。手順と平文が同じでも、暗号鍵が「1」であれば暗号文は「BCD」に、「-1」ならば「ZAB」となり、鍵次第で得られる暗号文は異なる。また、手順と暗号文を入手しても、鍵が分からなければ何文字ずらしたのか分からないため復号できない。
コンピュータによる計算が普及する以前は、暗号アルゴリズム自体を秘匿して「どのような手順で作られた暗号文なのか分からない」ことで解読の困難さを高めることもあったが、現在ではアルゴリズムは標準化された公知のものを用いる前提で、鍵の割り出しにくさを暗号強度の根拠とするのが一般的となっている。
共通鍵暗号と公開鍵暗号
古代から最近まで、暗号アルゴリズムといえば暗号化と復号に同じ暗号鍵を用いる「共通鍵暗号」(秘密鍵暗号)しかなかった。この方式で通信を暗号化するには、送り手と受け手があらかじめ同じ暗号鍵(生成や利用の規則の形を取ることもある)を共有しておかなければならないという制約がある。計算が高速であるなど利点もあるため現代でも通信文の暗号化などのために大いに利用されており、AES方式が標準として広く普及している。
一方、1970年代に考案された「公開鍵暗号」では、対になる二つの鍵をセットで生成し、一方で暗号化を、もう片方で復号を行う。暗号化に用いる鍵は公開して誰でも使えるようにしておくため「公開鍵」、対になる復号用の鍵は所有者のもとで秘匿して管理されるため「秘密鍵」と呼ぶ。
鍵の所有者に秘密を伝えたい人は、その人の公開鍵を入手して暗号文を作成して送信する。所有者は対になる秘密鍵を知っているため復号して平文に戻すことができるが、本人以外は秘密鍵を持っていないため復号できない。公開鍵から秘密鍵を割り出せないよう、巨大な整数の素因数分解など数学上の問題が利用されている。
公開鍵暗号は暗号化の方式としてだけでなくデジタル署名(電子署名)を実現する要素技術としても広く普及しており、RSA暗号やElGamal暗号、楕円曲線暗号などがよく知られている。
暗号強度
暗号の破られにくさのこと。正しい暗号鍵を持たない者が暗号文を解読する困難さの度合いで、一般的には暗号鍵の長さ(ビット数)で表される。
現代の暗号方式では原文(平文)を計算・加工して暗号文を求める手順(暗号アルゴリズム)自体は秘匿できない前提で設計されており、計算時に暗号鍵(cipher key)と呼ばれる一定の長さの秘密のデータを用いることにより解読を困難にしている。
暗号鍵を持たない攻撃者が暗号を解読する場合、最も単純な方法として、鍵の候補を順番に総当たりで計算してみれば、いつかは正しい鍵を見つけ出すことができる。
このとき、例えば鍵が16ビット(実用上はこんな短い鍵は使わないが)ならば候補は65,536(216)通りだが、これを32ビットに伸ばせば約42億(232)通りとなり、解読の試行にかかる時間は65,536(232-16)倍に増大する。
実際には、鍵に適したビットパターンがより限定されていたり、暗号方式によっては総当たりより効率的な探索方式が考案されている場合もあるため、このように単純には行かないが、鍵長を増やせば指数関数的に安全性を高めることができる。
また、暗号方式ごとの計算手順の違いによる探索効率の違いなどから、同じ鍵長でも方式が異なれば強度に差が生じることが知られている。例えば、同じ公開鍵暗号方式でも、楕円曲線暗号はRSA暗号よりも同じ鍵長でより高い安全性を得られるとされる。
ただし、鍵長を伸ばすほど暗号化や復号にかかる処理時間や装置への負荷は増大するため、実用上は必要な安全性と処理負荷のバランスを取って鍵の長さが決定される。
共通鍵暗号 【秘密鍵暗号】 ⭐⭐⭐
暗号化と復号に同じ暗号鍵を用いる暗号方式。暗号文の送信者と受信者で同じ鍵を共有する必要があり、あらかじめ安全な経路で鍵を共有しなければならない。
暗号化の対象となる平文と、単一の暗号鍵を用いて、特定の計算手順(暗号アルゴリズム)により暗号文を得る。平文と鍵のいずれかが異なれば暗号文も異なる。暗号文を元の平文に戻すには、暗号化に用いた鍵によって暗号化時と逆方向の変換を行う。
古代より換字表を鍵としたものなど様々な方式が利用されてきたが、現代では、数十から数百ビット程度の規則性のないデータを鍵として、任意の長さの平文をコンピュータによる計算により暗号化する方式が普及している。アルゴリズムは公開を原則とし、暗号鍵の推測しにくさ(特に、鍵の長さ)によって安全性を確保する。
暗号化を行うデータの区切り方の違いにより、一定の長さごとのブロック単位で暗号化を行うものを「ブロック暗号」(block cipher)、1ビット単位で処理するものを「ストリーム暗号」(stream cipher)という。ブロック暗号は64ビットや128ビット、長いものでは256ビットなどの単位ごとにデータを区切り、それぞれの塊ごとに暗号化と復号を行う。
鍵が分かれば暗号文を平文に戻すことができるため、送信者と受信者の間で鍵を安全に受け渡して共有する必要がある。多数の相手との間で暗号を利用する場合、全員に同じ鍵を渡せば漏洩の危険が高まり、すべて別の鍵にすれば鍵の生成や受け渡し、暗号化のコストが増大するというジレンマがある。
代表的な共通鍵暗号方式として、1977年に米IBM社が開発し米政府標準に採用された「DES」(Data Encryption Standard)や、その後継として2000年に米政府標準となった「AES」(Advanced Encryption Standard/暗号アルゴリズムとしてはRijndael)、ストリーム暗号の標準的な方式として広く普及している「RC4」(ARCFOUR)などがよく知られる。
公開鍵暗号との違い
一方、対になる2つの鍵ペアを生成し、一方で暗号化を、もう一方で復号を行う暗号方式を「公開鍵暗号」(public key encryption)という。片方の鍵は共通鍵暗号の鍵のように第三者に知られないよう秘匿する秘密鍵だが、相手方に送る方の鍵は人に知られてもよいため「公開鍵」と呼ばれる。
1970年代に公開鍵暗号が考案されるまでは暗号といえば共通鍵暗号のことだった。現代でも、暗号化や復号の処理速度は共通鍵暗号の方が優れているため、両方式を組み合わせ、共通鍵暗号の鍵交換のために公開鍵暗号を用い、データ本体は共通鍵暗号で暗号化する「ハイブリッド暗号」がSSL/TLSなどの形で広く利用されている。
公開鍵暗号 【非対称鍵暗号】 ⭐⭐⭐
対になる2つの鍵を使ってデータの暗号化・復号を行う暗号方式。暗号化に用いる鍵は公開され、復号に用いる鍵は秘匿される。公開鍵から効率よく暗号鍵を割り出すことはできないようになっている。
1976年にウィットフィールド・ディフィー(Whitfield Diffie)氏とマーティン・ヘルマン(Martin E. Hellman)氏によって基本原理が考案された。具体的な暗号方式として世界で初めて公表されたのは、1977年にロナルド・リベスト(Ronald L. Rivest)氏、アディ・シャミア(Adi Shamir)氏、レオナルド・エーデルマン(Leonard M. Adleman)氏が考案したRSA暗号である。
暗号化に用いる暗号鍵は誰に知られてもよいため公開鍵(public key)と呼ばれ、復号に用いる鍵は本人しか知らないよう管理する必要があるため秘密鍵(secret key)と呼ばれる。ある相手に暗号文を渡したいときにはその人の公開鍵を入手して暗号化することで、秘密鍵を知る本人しか復号できない暗号文を得ることができる。
最もよく知られるRSA暗号ではこれとは逆に、秘密鍵で暗号化して公開鍵で復号することも可能だが、これはほとんどの公開鍵暗号方式ではできない珍しい性質で、一般的な特徴ではない。
共有鍵暗号と公開鍵暗号
公開鍵暗号が発明される以前の暗号は単一の暗号鍵で暗号化と復号の両方を行うものしかなかったが、現在ではこのような暗号は「共通鍵暗号」(共有鍵暗号/秘密鍵暗号/対称鍵暗号)と呼ばれる。
公開鍵暗号は復号のための鍵を完全に秘匿したまま運用でき、共有鍵で必要となる鍵を安全に相手に配送するために高コストの手段(人が訪ねて手渡しする等)を用意する必要がなく、配送途上で盗み取られて解読される危険もないという利点がある。
一方、共有鍵暗号より暗号化や復号の処理が複雑で、同程度の暗号強度を得るのにより多くの計算資源や計算時間を必要とする。両者の特徴を組み合わせ、通信データの暗号化自体は共有鍵暗号を利用し、共有鍵を安全に受け渡す手段として公開鍵暗号を利用する「ハイブリッド暗号」もよく用いられる。
秘密鍵解読の困難性
秘密鍵と公開鍵の鍵ペアを生成するのは容易な一方、公開鍵から秘密鍵を推測したり割り出したりするのはコンピュータによる解析でも極めて困難になるよう設計されている。
この困難さは数学上の問題を背景にしており、例えばRSA暗号は数十桁もある巨大な2つの素数をかけ合わせた数を素因数分解する効率的な手法は発見されていないことを利用する。素数を元に秘密鍵を、素数の積を元に公開鍵を生成すれば、現代の技術では現実的な計算資源や時間で効率よく公開鍵から秘密鍵を割り出すことはできない。
同様に、ElGamal暗号やDiffie-Hellman鍵交換、DSA(デジタル署名アルゴリズム)では離散対数問題と呼ばれる数学上の問題を、楕円曲線暗号では楕円曲線上の離散対数問題と呼ばれる問題を秘密鍵解読の困難性の担保としている。
公開鍵暗号とデジタル署名
公開鍵暗号の原理(必ずしも公開鍵暗号そのものとは限らない)と暗号学的ハッシュ関数を組み合わせ、文書やメッセージにすり替えや改竄が行われていないことや、確かに作成者・送信者本人のものであると証明する短いデータを生成することができる。文書データの末尾などに添付され、サインや印鑑のような働きをするため「デジタル署名」(digital signature)と呼ばれる。
メッセージの送信者は本人しか知らない秘密鍵と本文を元に一定の手順で算出した固定長の暗号データをメッセージに添付し、相手方に送る。受信者は受け取った本文と、送信者の公開鍵などを用いて一定の手順で同様のデータの算出を試み、添付されたものと照合する。両者が一致すれば、メッセージが確かに送信者本人のものであり、かつ伝送途上で第三者による改竄やすり替えが行われていないことが確認できる。
公開鍵証明書とPKI
公開鍵暗号は共有鍵のように復号のための鍵を盗み取られる危険は少ないが、暗号化のために相手の公開鍵を入手する際、信用できない経路を用いることで悪意のある第三者によって偽物にすり替えられる別の危険性がある。
確実に相手の公開鍵を入手するには共有鍵のように安全な別の経路で共有するのも一つの手段だが、それでは結局同じように高いコストがかかってしまう。危険な経路でも安全に鍵を受け渡すため、公開鍵に信頼できる第三者がデジタル署名した「デジタル証明書」(公開鍵証明書)を渡し、鍵の真正性を確認できるようにするという方式が考案された。
証明書を検証するには発行者(認証局という)の公開鍵が必要となるため、受信者は送信者が利用する認証局の公開鍵を安全に入手しなければならない。しかし、世の中のすべての認証局の公開鍵をあらかじめ揃えておくことは現実的ではない。
このため、実際にはWebブラウザなど公開鍵暗号を利用するソフトウェアには世界的に有力な大手商用認証局や政府機関の認証局の公開鍵が安全な方法であらかじめ組み込まれており、各認証局は自らの公開鍵をそれら最上位の認証局(ルート認証局)が発行した証明書として提供している。このように、インターネットのみで公開鍵暗号を安全に運用できるようにするために築かれた社会的基盤のことをPKI(Public Key Infrastructure:公開鍵基盤)という。
ハイブリッド暗号 ⭐
公開鍵暗号と共通鍵暗号(秘密鍵暗号)を組み合わせた暗号方式。公開鍵暗号によって共通鍵暗号の鍵を配送し、共通鍵暗号で伝送内容本体の暗号化を行なう。Webの暗号化などで広く普及しているSSL/TLSなどで用いられている。
共通鍵暗号は暗号化や復号を高速に行うことができるが、事前に安全な手段で鍵を共有する必要がある。公開鍵暗号は事前に鍵を共有しなくて良いが、暗号化や復号が遅い。このように両者は互いに相反する特徴を持っている。
ハイブリッド暗号は両者を組み合わせ、互いの長所を活かして短所を補い合う方式である。通信開始時に公開鍵暗号で共通鍵暗号の暗号鍵(あるいはその元になる共有情報)を暗号化して共有し、以降の通信には共有した鍵を元に共有鍵暗号で暗号化したデータを送受信する。
Web通信の暗号化に用いられるSSL(Secure Socket Layer)および後継のTLS(Transport Layer Security)はハイブリッド暗号となっており、接続確立時に公開鍵暗号のRSAやDiffie-Hellman鍵交換などで共有鍵の交換を行い、共有鍵暗号のAESやCamelliaを用いてコンテンツ本体の暗号化を行う。
ハッシュ関数 【ハッシュアルゴリズム】 ⭐
入力データに一定の手順で計算を行い、データの長さによらずあらかじめ決められた固定長の出力値を得る関数。暗号技術の一部などとして応用されている。
ハッシュ関数は同じ入力からは必ず同じ値が得られ、どのような長さの入力からも同じ長さの値を得る。得られた値は「ハッシュ値」(hash value)と呼ばれる。値の長さは実用上は数バイトから数十バイト程度とすることが多い。計算過程で情報の一部が欠落するため、出力値(だけ)を元に入力データの候補を推測することはできても、完全に元通りに復元することはできない。
ハッシュ値は元のデータの特徴を表す短い符号として利用することができ、データの比較や検索を高速化することができる。例えば、複数の大きな容量のファイルの内容が同一であるかを比較する際に、端から順にすべてのデータを照合すれば時間が掛かるが、それぞれハッシュ値を計算しておけば一瞬で比較が完了する。用途や特性により様々な計算手法があり、データの改竄や破損の検知、類似データの探索などにも応用される。
暗号学的ハッシュ関数 (一方向性ハッシュ関数)
ハッシュ関数のうち、暗号や電子署名などセキュリティ上の用途に適した性質を持つものを「暗号学的ハッシュ関数」あるいは「一方向性ハッシュ関数」という。
これは入力データと出力値の間に規則性がなく、入力が少しでも異なれば類推不能なまったく異なる出力値となる。ある特定の出力値が得られるような入力を効率よく求めることができない「弱衝突耐性」や、同じ出力値となる別の入力を容易には見つけられない「強衝突耐性」などの性質を備えている。
これらの性質により、パスワードなどの秘密の情報をハッシュ値として伝送あるいは保管すれば、認証などで入力値と登録値が一致するかどうかは元の情報が無くても検証できる一方、攻撃者がハッシュ値を盗み取っても元の情報に復元することはできない。また、デジタル署名が施されたメッセージを改竄して同一の署名を付け直すといった攻撃も阻止できる。
標準規格として1990年代に考案された「MD5」(Message Digest 5)や「SHA-1」(Secure Hash Algorithm 1)がよく知られ、長年に渡り様々な分野で利用されてきた。これらは2010年代にはハッシュ値の短さ(MD5は128ビット、SHA-1は160ビット)や攻撃手法の研究が進んだことからセキュリティ用途としては十分安全とは言えない状況になっており、「SHA-2」や「SHA-3」など新しい規格への移行が推奨されている。
ディスク暗号化 【ストレージ暗号化】 ⭐
ハードディスクやSSDなどの記録内容を丸ごと暗号化すること。破棄や盗難、紛失などで第三者の手に渡ったストレージ装置から重要なデータが抜き取られるのを防ぐことができる。
コンピュータに内蔵あるいは外付けされたハードディスクやSSDなどのストレージ装置を、装置全体あるいはドライブ、ボリューム、パーティションなどの管理単位ごとに丸ごと暗号化する。通常の用途ではリムーバブルメディアは対象外だが、「BitLocker To Go」のようにUSBメモリなど容易に着脱可能な装置を対象とするシステムもある。
書き込み時の暗号化、読み込み時の復号はオペレーティングシステム(OS)や装置内に組み込まれた専用のソフトウェアによって自動的に行われ、一度設定を行えば利用者は毎回個別に操作する必要はない。アプリケーション側もデータの書き込みをOSに依頼すれば暗号化され、読み込みを依頼すれば復号済みのデータが得られるため、特に対応する必要はない。
OSから独立した専用の暗号化ソフトを導入する場合には、起動時にOSとは別にIDとパスワードの入力を求め、これにパスするとOSの起動とデータの利用が可能になる。ストレージ装置を本体から取り外して起動可能なコンピュータに繋いでも内容は暗号化されており読み取ることはできない。
Windowsの「BitLocker」のようにOSに暗号化ツールが付属する場合もあり、OSのユーザー認証プロセスを経てストレージの読み書きが可能になる。業務用のポータブルハードディスクや外付けハードディスクなどの製品にはディスク装置側に暗号化機能が実装されているものもある。暗号化・復号の処理をストレージ側で行うためコンピュータ本体の負荷が軽いという利点がある。
WPA2 【Wi-Fi Protected Access 2】 ⭐⭐⭐
無線LAN(Wi-Fi)上で通信を暗号化して保護するための技術規格の一つで、WPAの後継。また、通信機器などが同規格に準拠していることを認定する認証制度。業界団体のWi-Fi Allianceが運用している。
旧版のWPAは無線LANのセキュリティについて定めた国際標準である「IEEE 802.11i」のドラフト(標準案)を元に策定されたが、WPA2は同規格の完成版を元にしている。WPA2対応製品同士はメーカーや機種の違いによらず共通の方法で暗号化機能を利用できる。
暗号化の方式として新たに「AES」(Advanced Encryption Standard)暗号を用いた「CCMP」(Counter mode with CBC-MAC Protocol)を採用している。この通信モードは「WPA2-AES」と呼ばれ、最長256ビット(AES256)までの強力な暗号鍵を利用できる。
WPA同様、事前共有鍵(PSK:Pre-Shared Key)を用いる個人・家庭・小規模事業所向けの「WPA2 Personal」(パーソナルモード/WPA2-PSK)と、IEEE 802.1X標準に基づくRADIUS認証サーバにより利用者や端末の認証を行う、大規模事業所向けの「WPA2 Enterprise」(エンタープライズモード)の二つを選択できる。
歴史
2004年9月にWi-Fi Allianceが発表した規格で、2002年に発表された初代のWPA規格とほとんどの仕様は共通となっている。TKIPなどWPAの仕様をそのまま用いる互換モードも用意されているため、WPA2対応機器は古いWPA対応の機器とも通信することができる。
2006年からはWPA2に対応しなければ無線LAN機器の「Wi-Fi CERTIFIED」認証を得られないようになっており、以降のすべての認定機器が対応している。2017年には「KRACK」と呼ばれる攻撃手法が発見され、各社は脆弱性を修正するファームウェアの更新などで対応している。2018年には後継の「WPA3」規格が発表され、新しい機種で移行が進みつつある。
認証
対象の正当性や真正性を確かめること。ITの分野では、システム利用などに際して相手が名乗った通りの本人であると何らかの手段により確かめる手続きのことを認証ということが多い。
相手が本物か確かめるという相手認証の他に、メッセージ認証のようにデータが改竄されていないか確かめたり、時刻認証のようにデータの属性が真正であることを確認することを指す場合もある。
二者間認証/相手認証 (authentication/オーセンティケーション)
二者が相対で相手方の真正性などを確かめることを「相手認証」あるいは「二者間認証」と呼び、英語では “authentication” (オーセンティケーション、動詞は “authenticate” )という。
例えば、ある利用者がコンピュータに自分のアカウント名を名乗り、そのアカウント名の正しいパスワードを入力できれば、確かにその利用者がアカウント名の本人であることが確認できる。日常的にも、金融機関のATM(現金自動預け払い機)などで、キャッシュカードを提示したのが本人であることを確認するために暗証番号を入力させる、といった場面で利用されている。
三者間認証/第三者認証 (certification/サーティフィケーション)
第三者に問い合わせて相手方の正当性を確かめることを「三者間認証」あるいは「第三者認証」と呼び、英語では “certification” (サーティフィケーション、動詞は “certify” )という。
例えば、通信経路を暗号化する際などに、相手方から提示されたデジタル証明書を発行元(認証局/CA:Certificate Authority)に照会すれば、身元を確認することができる。日常的には、資格や行政機関の認証制度、クレジットカードを使用する際に加盟店が発行元に信用照会する仕組みなどが該当する。
認証方法の分類 (WYK/WYH/WYA)
認証を行う二者の間で事前に秘密の情報を共有し、認証時に正しく入力できれば本人であるとみなす方式をWYK(What You Know)認証という。パスワードやパスフレーズ、暗証番号などが該当する。何らかの方法で本人から詐取したり、入力時の覗き見や通信時の盗み見などで秘密の情報を入手されると、認証が突破され第三者によるなりすましが可能となる。
認証元が本人に発行した物理的なモノを提示・接続することにより本人であることを確認する方式をWYH(What You Have)認証という。セキュリティトークン(USBトークンなど)や暗号鍵などを格納したICカードを手元の機器の端子に接続したり、本人に発行した乱数表の指定位置の文字・数字を入力させるといった手法が知られる。モノを盗まれるとなりすましの危険がある。
認証元に登録された本人の身体に固有のパターンにより本人確認する方式をWYA(What You Are)認証あるいは生体認証(バイオメトリクス認証/biometrics authentication)という。指紋認証や静脈認証(掌の静脈のパターンを用いる)、虹彩認証(瞳の黒目部分にある虹彩の模様を用いる)、声紋認証、顔認証などが知られる。
他の方式より他人による(特定の個人への故意の)なりすましは最も難しいとされるが、方式によってはパターン識別システムの認識精度を100%にすることは難しく、本人を拒否してしまったり、他人と取り違えてしまうといった誤検知の問題がある。
認証と認可
認証済みの利用者に対し、アクセス権の設定などを参照して本人に与えられた適切な権限による操作を許可する(権限外の利用を拒否する)ことを「認可」と呼び、英語では “authorization” (オーソライゼーション、動詞は “authorize” )という。
認証の次の段階で行われる権限の付与のことを指すが、単純なシステムでは認証と同時に認可も済んでしまうことも多く、字面も似ており、日常的な語彙としては似た意味合いであるため、しばしば混同される。認証向けの技術を認可に用いるといった不適切な事例も起きている。
英語でも “authentication” と “authorization” は日常語彙としては意味も綴りも似ており、日本語の場合と事情は近い。さらに、方式名や製品名に使用する際などに、どちらも “auth” と略されることがあるため、余計に混同しやすいという事情があり、近年では認証を “authn” 、認可を “authz” として別の略号を用いることが提唱されている。
電子署名 【デジタル署名】 ⭐⭐⭐
文書やメッセージなどのデータの真正性を証明するために付加される短いデータ。作成者を証明し、改竄やすり替えが行われていないことを保証する。欧米で紙の文書に記されるサイン(signature)に似た働きをするためこのように呼ばれる。
対になる2つの暗号鍵を用いる公開鍵暗号の原理と暗号学的ハッシュ関数を組み合わせた仕組みで、メッセージの送信者は本人しか知らない秘密鍵と本文を元に一定の手順で算出した固定長の符号をメッセージに添付し、相手方に送る。
受信者は受け取った本文と、秘密鍵と対になる送信者の公開鍵などを用いて一定の手順で同様の符号の算出を試み、添付されたものと照合する。両者が一致すれば、メッセージが確かに送信者本人のものであり、かつ伝送途上で第三者による改竄やすり替えが行われていないことが確認できる。
デジタル署名はインターネットなど信頼できない経路を通じたメッセージの送受信でよく用いられるが、文書の安全な保管などにも用いられる。作成者が後になって自分が作成したことを否定するのを防ぐ(否認防止)証拠として用いられる場合もある。
公開鍵証明書とPKI
受信者が署名を検証するには送信者の公開鍵が必要だが、インターネットなど信頼できない経路で伝送すると攻撃者によるすり替えの危険があるため、公開鍵データに送信者と受信者の双方が信用する第三者のデジタル署名を添付するという手法が考案された。これをデジタル証明書(公開鍵証明書)と呼び、信頼できる第三者を認証局(CA:Certificate Authority)という。
証明書の真正性を確認するには認証局の公開鍵が必要であり、これは上位の認証局によって署名されたデジタル証明書によって配布される。このような信頼の連鎖の起点となる最上位の認証局はルート認証局(Root CA)と呼ばれ、実用上は送信者と受信者が同じルート認証局の証明書(ルート証明書)を持っていれば、それに連なる任意の認証局の証明書を用いて鍵を配送することができる。
このような安全な公開鍵配送のための社会的なインフラのことをPKI(Public Key Infrastructure)と呼び、インターネットなどで電子署名を利用するソフトウェアにはあらかじめ世界的に有力なルート認証局の証明書が組み込まれている。
電子署名とデジタル署名の違い
「電子署名」(electoronic signature)とは本来、紙の文書における押印やサインに相当する証明手段を電子的な手段で実現したもの全般を表す総称であり、「デジタル署名」(digital signature)は公開鍵暗号の原理に基づく電子署名の一方式である。
電子署名の方式としては他に、ペン型の入力機器で文書にサインを書き入れる電子サインなどがあるが、最も有力で普及しているデジタル署名を電子署名の同義語のように用いることが多い。
電子署名法
電子署名と認証業務に関する規定を定め、電子署名が手書き署名や押印と同等に通用することを定めた日本の法律。2000(平成12)年5月成立、2001年4月施行。正式名称は「電子署名及び認証業務に関する法律」。
有効な電子署名について一定の要件を定め、これを満たす電子署名が付された電子データに対して紙の文書に署名・捺印されたものと同等の法的な証拠性を認めている。具体的な技術要件は総務省・経済産業省・法務省が共同で告示しており、1024ビットRSAや1024ビットDSA、160ビットECDSAが挙げられている。このうちRSAについては危殆化の懸念から2019年までに2048ビットへの移行が予定され、同時にこれらの署名方式に用いるハッシュ関数もSHA-1からSHA-2へ移行される。
また、署名が本人のものであることを証明する認証業務について、一定の基準を満たした認証局がデジタル証明書を発行する業務を特定認証業務としている。その中で、さらに厳しい基準を満たし、国や指定検査機関の審査を経て認定された認証局の業務を認定認証業務という。認定認証局は全国で十社程度が認定されている。
署名鍵
公開鍵暗号を応用した電子署名(デジタル署名)で、一対の鍵のうち署名を作成するための鍵。公開鍵暗号における秘密鍵が該当し、署名者が手元で管理し秘匿する。
公開鍵暗号は数学的に簡単に解けない問題を利用して一対の値のペアを作成し、片方で暗号化、もう一方で復号する暗号方式である。鍵の持ち主は暗号化に用いる鍵は公開して相手方に渡し、復号に用いる鍵は誰にも知られないよう手元で秘匿して保管する。前者を「公開鍵」、後者を「秘密鍵」という。
デジタル署名ではこの公開鍵暗号の原理を応用し、鍵ペアの持ち主(送信者)は手元の署名鍵(秘密鍵)を用いてメッセージから一定の計算手順で署名データを作成する。メッセージに署名を添付して送ることで、内容は送信者が作成し、第三者が改ざんやすり替えを行っていないことを証明できる。
署名を受け取った検証者は、送信者が公開している検証鍵(公開鍵)をデジタル証明書などの形で取り寄せ、受信したメッセージの内容から所定の計算手順で署名データを算出する。これがメッセージに添付された送信者の署名に一致すれば、その署名は確かに送信者しか知らない署名鍵で作成され、内容も変わっていないと確認できる。
署名鍵と検証鍵は巨大な素数同士の積など数学的に関連した値のペアとなっており、ある署名鍵で作成された署名が、ペアの検証鍵以外の値で検証されることはない。また、受信したメッセージや署名、公開されている検証鍵をもとに、対になる署名鍵を算出する効率的な方法は見つかっておらず、現実的な時間で署名鍵を割り出すことはできないようになっている。
検証鍵
公開鍵暗号を応用した電子署名(デジタル署名)で、一対の鍵のうち署名を検証するための鍵。公開鍵暗号における公開鍵が該当し、署名者がデジタル証明書などの形で公開したり、相手方へ提供する。
公開鍵暗号は数学的に簡単に解けない問題を利用して一対の値のペアを作成し、片方で暗号化、もう一方で復号する暗号方式である。鍵の持ち主は暗号化に用いる鍵は公開して相手方に渡し、復号に用いる鍵は誰にも知られないよう手元で秘匿して保管する。前者を「公開鍵」、後者を「秘密鍵」という。
デジタル署名ではこの公開鍵暗号の原理を応用し、鍵ペアの持ち主(送信者)は手元の署名鍵(秘密鍵)を用いてメッセージから一定の計算手順で署名データを作成する。メッセージに署名を添付して送ることで、内容は送信者が作成し、第三者が改ざんやすり替えを行っていないことを証明できる。
署名を受け取った検証者は、送信者が公開している検証鍵(公開鍵)をデジタル証明書などの形で取り寄せ、受信したメッセージの内容から所定の計算手順で署名データを算出する。これがメッセージに添付された送信者の署名に一致すれば、その署名は確かに送信者しか知らない署名鍵で作成され、内容も変わっていないと確認できる。
署名鍵と検証鍵は巨大な素数同士の積など数学的に関連した値のペアとなっており、ある署名鍵で作成された署名が、ペアの検証鍵以外の値で検証されることはない。また、受信したメッセージや署名、公開されている検証鍵をもとに、対になる署名鍵を算出する効率的な方法は見つかっておらず、現実的な時間で署名鍵を割り出すことはできないようになっている。
時刻認証 【タイムスタンプ】
ある電子文書がある時点で存在し、それ以降内容が改変されていないことを第三者が保証する仕組み。電子文書の証拠性を高めることができる。
コンピュータ上のデータとして表現された文書は複製や編集が容易であるため、紙の書籍に比べ証拠性が低いとみなされ、契約書や証書類などの作成や保管の電子化の妨げとなってきた。時刻認証を利用することで、電子文書の真正性を第三者によって証明することができる。
タイムスタンプは「TSA」(Time Stamping Authority:時刻認証局/タイムスタンプ局)と呼ばれる事業者が提供する時刻認証サービスを利用して作成する。文書の所有者が申請した日時に確かに文書が存在し、その内容がそれ以降変更されていないことを時刻情報とハッシュ値を利用して証明することができる。
電子署名方式
有力な方式が二つあり、その一つはデジタル署名を応用した電子署名方式である。これはTSAが文書データのハッシュ値と現在時刻を含む「タイムスタンプトークン」を作成し、自らのデジタル証明書(公開鍵証明書)で署名して申請者に提供する。
トークンは申請者が保管し、証明が必要になったときはTSAの証明書を用いていつでも検証することができる。保管と検証にTSAが関与しないため、公開する文書の証明などに適しているが、デジタル証明書には有効期限(数年から長くても10年程度)があるため、長期保管には向かない。
アーカイビング方式
もう一つの方式はアーカイビング方式で、申請に基づき作成されたタイムスタンプトークンを申請者とTSAの両者が保管する。証明が必要なときにはTSAに問い合わせを行い、申請者側にあるトークンと内容が一致することを証明してもらう。
サービスが継続する限りいつまでも検証することができるが、検証にTSAへの問い合わせが必要で、誰でも検証できるわけではない(申請者に限定している場合が多い)。TSA側に保管されたデータの真正性は誰も検証できないため、一定期間ごとに全保管データから算出したハッシュ値を公開している事業者もある。
リスクベース認証 【アダプティブ多要素認証】
システムの利用者を認証するユーザー認証の手法の一つで、利用者が普段と違う行動を取った場合のみ追加の認証を要求する方式。利用者の負担を抑えつつパスワードなど秘密の情報の漏洩によるなりすましを防止することができる。
一般的なユーザー認証では、ID(アカウント名などの識別名)とパスワードを入力し、システム側に登録されたものに一致すれば本人であると認めるパスワード認証が用いられることが多い。この方式では本人以外がIDとパスワードを入手し、本人になりすましてログインする被害が問題となる。
リスクベース認証では、一般的な認証方式によるログインを許可するが、その際に利用者の使用している端末の情報やアクセス元のIPアドレス、位置情報、曜日や時間帯などの行動パターンを記録する。認証時これらの情報を過去の行動履歴に照らし合わせ、普段のパターンから著しく外れた不審な相手に対しては、パスワードが合致していてもなりすましを疑い追加の認証を要求する。
追加の認証方式はシステムへの利用者登録時などにパスワードとは別に用意しておく必要がある。一般的には、いわゆる「秘密の質問」(本人しか知らないプライベートな事柄に関する質問と回答をシステム登録しておく)や、SMSや暗号表、専用の装置によるワンタイムパスワード(OTP)の生成と入力が利用されることが多い。
利用者は普段の行動パターンに沿ってシステムを利用する限り単純なパスワード認証しか必要なく、ログイン時に必ず二段階認証を求める方式より負担感を減らすことができる。攻撃者はパスワードなどの奪取に成功しても端末の識別情報や位置情報、利用時間帯などまで含めて偽装しなければならず、効果的になりすまし被害を防止することができる。
ログイン 【ログオン】
システムに自分の身元を示す登録情報を入力し、接続や利用開始を申請すること。本人であると確認されれば操作画面が表示され、利用を開始することができる。
利用者はユーザー名(ID/アカウント名)など自身の識別情報と、パスワードなど本人であることを証明できる秘密の情報をシステムに入力し、システム側に保管されているものと照合する。あらかじめ登録してある利用者の情報に一致すればシステムの使用が許可される。この過程を「ユーザー認証」(user authentication)という。
ログイン前の操作画面には資格情報の入力を促すフォームなどが表示され、システム自体の操作や利用は受け付けない「ログイン画面」になっている。ログインに成功して操作を行った後、操作を終了するログオフ手続きを行うと再びログイン画面に戻り、再度ログインしなければ操作できなくなる。ログインからログオフまでの操作可能な期間を「セッション」(session)という。
ログイン手続きはシステムを誰が使用するのか、正当な権限がある者が使用しているか、どのような操作を行ったかなどを記録に残し、権限のない者による不正な操作を防ぐために行われる。コンピュータやソフトウェアの起動、利用や登録の手続き(アカウント作成/ユーザー登録)とは独立した概念である。
ログインとは逆に、接続を切ったり利用を終了する操作を「ログオフ」(logoff)あるいは「ログアウト」(logout)という。明示的に終了しなくても、一定時間通信や操作が無い場合は自動的に終了手続きが行われる場合があり「タイムアウト」(timeout)という。
認証方式
本人であることの証明には、パスワードや暗証番号など秘密の情報の入力だけでなく、指紋の照合など人体の特徴を使用した生体認証(バイオメトリクス認証)、事前に発行した文字盤による入力やUSBトークンの差し込みなど持ち物による確認が用いられることもある。
また、自らは資格情報を保管せず、外部の別のシステムやネットサービスなどに認証を依頼し、手続きの成否と識別情報を報告してもらうログイン方式もあり、「ID連携」(ID federation)「ソーシャルログイン」(social login)などと呼ばれる。著名SNSのアカウントがあればユーザー登録しなくてもすぐに使用を開始できるネットサービスなどで活用されている。
呼称の違い
「ログイン」と「ログオン」は一般的にはほぼ同義語とみなされ、システムごとの仕様や挙動の違いはあれど語義レベルでの明確な差異や区別はない。前置詞の対応関係から、「ログイン」に対応する操作終了の手続きは「ログアウト」、「ログオン」の場合は「ログオフ」となる。
歴史的には、インターネット関連やUNIX系システムなどでは「ログイン」という表現が好まれ、米マイクロソフト(Microsoft)社の製品(Windowsなど)では「ログオン」がよく使われてきたため、それらの影響を受けたシステムではそれぞれの表現が用いられる傾向にある。
近年では、ネットサービスなどで「サインイン」(sign-in)「サインオン」(sign-on)と呼ばれることが増えており、Windowsなど著名な製品でも「サインイン」を採用する事例が見られる。様々なシステムのログイン手続きを一か所に集約する技術を「シングルサインオン」(SSO:Single Sign-On)という。
UID 【User Identifier】
複数の利用者を一意に識別するための識別子。または、一意の識別子。具体的な仕様や規約はシステムの種類によって異なる。
アカウントのUID
システムやサービスに利用者登録(アカウント作成)を行う際に設定する利用者名(ユーザー名/アカウント名)のことをユーザーIDということがある。氏名やメールアドレス、ニックネーム、本人が任意に設定する英数字の組み合わせなどが使われることが多い。
UNIXのUID
UNIX系OSで登録利用者を一意に識別するために割り振られた識別番号をUIDあるいは「ユーザー識別子」という。16ビットあるいは32ビットの整数値が用いられ、0は必ずスーパーユーザー(rootユーザー)を表し、1から100(OSによって異なる)はシステムによって予約されている。
携帯電話のUID
携帯電話事業者が個々の契約者に割り当てた契約者固有識別子や、個々の端末に割り当てた端末固有識別子などをUIDということがある。
文脈により、SIMカードなどに記録された契約者ごとに固有の識別番号(端末が変わっても引き継がれる)などを指す場合と、端末内部に記録された個体ごとに固有の製造番号(利用者が変わっても引き継がれる)などを指す場合がある。
パスワード ⭐⭐⭐
利用者が名乗った本人であるか確認する際などに用いられる秘密の合言葉。事前に登録したものと、認証時に入力したものが一致すれば本人であるとみなされる。
利用者の登録・識別を必要とするシステムでは、利用者の登録(アカウント作成など)の際に識別名(ユーザーID/アカウント名)とセットでパスワードを登録する。その識別名を名乗る利用者が使用開始(ログイン)を申請すると、システムはパスワードの入力を求め、登録されたものと一致すれば本人とみなして使用を許可する。
利用できる文字の種類や長さは個々のシステムによって定められているが、(半角の)ラテンアルファベット(大文字・小文字の区別あり)、数字、一部の記号の組み合わせで8文字以上と規定されている場合が多い。
パスワードと同じ秘密の情報を入力させる仕組みのものには、数桁の数字を入力させる暗証番号(PIN:Personal Identification Number)や、いくつかの単語の組み合わせを入力させるパスフレーズ(passphrase)などがある。
パスワードの割り出し
パスワードを他人に知られてしまうと自分になりすましてシステムを利用されてしまうため、誰にも知らせてはならない。ただし、攻撃者が不正にシステムを利用するためにパスワードの割り出しを試みる場合があり、直接知られなくても入手されてしまうことがある。
パスワードへの攻撃は、何らかの手法で候補を大量に生成し、実際にログインを試みることにより行われることが多い。主な手法として、すべての文字の組み合わせを片っ端から試す「総当たり攻撃」(ブルートフォースアタック)や、人間が覚えやすい既存の単語や文字の並びのリストを作り、それらを組み合わせて候補を作成する「辞書攻撃」(ディクショナリアタック)などがある。
これらの攻撃手法では短く覚えやすいものほど割り出しやすいため、パスワードは覚えられる範囲でなるべく長く、様々な文字種(大文字・小文字・数字・記号)を組み合わせて作成し、意味のある単語や覚えやすい単純な文字の並び(「password」「123456」など)などは避けるべきとされる。
また、本人や家族の氏名、生年月日、電話番号、居住地、出身地など、何らかの方法で入手した本人についての様々な情報から候補を作成する手法もあるため、自分や家族に関連する単語や番号などは含めないことが望ましい。
PIN 【Personal Identification Number】 ⭐
情報システムが利用者の本人確認のために用いる秘密の番号。4桁が一般的で、金融機関での本人確認やオペレーティングシステム(OS)へのログインなどで用いられる。
本人がシステムにあらかじめ数桁の番号を登録し、システムの利用時に入力することで、利用しようとする人物が本人であることを確かめる。他人に知られると成りすまして悪用される恐れがあるため、他の人に教えたり紙に書き留めたりせずに暗誦しなければならない。
1960年代に金融機関のATM(現金自動預け払い機)が発明された際に本人確認の手段として導入されたもので、現在でもキャッシュカードやクレジットカードなどの本人確認手段としてよく利用される。当初導入されたシステムで4桁のPIN(0000から9999までのいずれか)が採用されたことから4桁のシステムが多い
4桁の番号は1万通りの組み合わせがあるが、覚えやすいように自分や近親者の誕生日、記念日などの日付を設定する人もおり、その場合は「0101」から「1231」まで366通りに絞られる。本人に関連する番号は容易に推測されてしまうため望ましくないとされる。
手作業で1万回の番号入力を試すのは時間がかかるため窓口などでの利用には十分安全と言えるが、現代ではシステムの種類や方式によってはコンピュータなどを用いて1万回の試行を繰り返して容易に割り出すことができる場合があるため、より長い桁数を用いたり、他の確認手段の補助として用いるべきとする考えもある。
一方、コンピュータシステムでは8桁程度かそれ以上の長さの英数字・記号の組み合わせからなる「パスワード」(password)を本人確認のための秘密の情報として用いることが多いが、近年では携帯端末のロック解除コードやワンタイムパスワード、パスワードリセット時の認証コードなど、補助的な役割でPINが利用されることもある。
ICカード 【IC card】 ⭐
プラスチック製カードに極めて薄い半導体集積回路を埋め込み、データの記録や処理、外部との入出力などをできるようにしたもの。外部との入出力方式の違いにより接触式と非接触式がある。
カード内に半導体メモリを内蔵し、数KB(キロバイト)から1MB(メガバイト)程度のデータを記録することができる。内蔵メモリ素子が読み出し専用のROMチップの場合は書き換えできないが、フラッシュメモリを採用したものは専用の装置で記憶内容の追加や上書き、消去ができる。簡易なCPU(処理装置)を内蔵して暗号化などの処理が可能なものもある。
記録や通信の暗号化、認証やアクセス制御によりデータの不正な読み取りや改ざんを防ぐことができるため、磁気ストライプ式などに比べ偽造や変造が困難で安全性が高いとされる。記憶容量が大きいため単純な識別番号などの他に様々な情報を記録・送受信することができ、一枚のカードに複数の機能を持たせる汎用カードを作ることもできる。
日本では「ICカード」の呼称が広く浸透しているが、英語圏では “IC card” という表記はほとんど用いられず、 “integrated circuit card” とICを略さずに記すか、“smart card” (スマートカード)あるいは “chip card” (チップカード)の呼称の方が一般的である。
接触式ICカード
接触式ICカードはカード表面に平たい金属端子を備え、読み取り装置側の端子に接触させることにより通電し、回路駆動用の電力供給と信号の送受信を行う。
端子の物理仕様などの基礎的な技術仕様はISO/IEC 7816として標準化されており、これに基づいて各業界がデータの記録や送受信などに関する個別の標準規格を定めている。主に従来の磁気ストライプカードに代わってクレジットカードやキャッシュカードなどに用いられるほか、携帯電話のSIMカード(UIMカード)や、日本ではETCカードやデジタル放送の受信者識別カード(B-CASカード)にも採用されている。
非接触ICカード
非接触ICカードはコイル状のアンテナを内蔵し、読み取り装置からの無線電波による電磁誘導で電力を発生させ、電波で無線通信を行う。
ソニーなどが推進する日本のFeliCa(フェリカ)、蘭フィリップス(Philips)社(現NXPセミコンダクターズ)などが推進する欧州のMifare(マイフェア)が早くから浸透しており、両者を併記したNFC(Near Field Communications)がISO/IEC 18092として標準化され、広く採用されている。
カードと機器を接触・固定する必要がないため、交通機関のICカード乗車券やカード型電子マネーなど、極めて短時間での処理や手続きが求められる用途でよく用いられる。日本では運転免許証(ICカード免許証)、個人番号カード(マイナンバーカード/接触式端子と併用)、パスポート(IC日本国旅券)などにも採用されている。
ワンタイムパスワード 【OTP】 ⭐⭐⭐
利用者の本人確認などに用いる秘密の文字列として、短時間のみ有効な、その場限りの文字列を生成して用いる方式。専用の携帯端末やSMSで通知する方式がよく用いられる。
従来の固定的なパスワードは同じものが長期間繰り返し使われるため、攻撃者が長い時間をかけて何度も試行を行うなどして割り出したり、何度も送受信しているうちに通信途上で盗み取られるリスクがある。ワンタイムパスワードはその場限り有効な「使い捨て」のパスワードを認証ごとに毎回生成して使用するため、こうした危険を回避しやすい。
ワンタイムパスワードを利用する際は利用者と認証者の間であらかじめ生成方法を共有しておき、認証時には利用者がその場限り有効なパスワードを生成して送信、同時に認証者が生成したものと一致すれば認証成功となる。生成されたワンタイムパスワードは短い時間(数十秒から数分)が経過したり一度認証に成功すると破棄され、同じものは使えない。
パスワードの生成・共有方法にはいくつか方式があるが、よく用いられるのは携帯電話のSMSを用いる方式、時刻同期方式、チャレンジ/レスポンス方式、マトリクス認証などである。
SMSを用いる方式
SMS(ショートメッセージ)を用いる方式は、利用者の携帯電話の番号をあらかじめ登録しておき、利用時に認証サーバからSMSでワンタイムパスワードを通知、その場で入力してもらう方式である。認証に成功したり短時間(用途により数分から数時間程度まで)が経過すると無効となる。
時刻同期方式
時刻同期方式は、認証サーバと時刻を同期させた小型の専用の装置(セキュリティトークン、ハードウェアトークンなどと呼ばれる)などを用い、現在時刻を元にあらかじめ決められた算出方式に従ってパスワードを生成・表示する。パスワードは短い時間(通常1分前後)ごとに切り替わり、次々に新しいものが表示される。パソコンやスマートフォンのソフトウェアとして実装された製品もある。
チャレンジ/レスポンス方式
チャレンジ/レスポンス方式は、認証時にサーバから利用者にチャレンジと呼ばれるランダムなデータなどが送信され、利用者(側のソフトウェア)がパスワードとチャレンジから一定の手順で計算を行い、計算結果を送り返す。これをレスポンスという。サーバ側では手元のパスワードで同様の計算を行い、一致すれば相手も同じパスワードを共有していることが確認できる。
マトリクス認証 (マトリックス認証)
マトリクス認証方式は、文字や数字そのものではなく、「右から3番目の上から2番目」といった表の中の位置をパスワードの代用とする方式である。
利用者には認証ごとに、文字や数字が毎回異なる配置にシャッフルされた碁盤目状の表が提示される。その中から、事前に設定した位置にある文字を入力し、ワンタイムパスワードとして送信する。
一文字や二文字では簡単に破られてしまうため、「左上からV字をなぞるように8文字」といった形で複数の位置を利用するのが一般的である。利用者は毎回表中の同じ位置に出現した文字を入力するが、表の配列は入れ替えられているため、毎回異なる文字列がパスワードとなる。
多要素認証 【MFA】
利用者の本人確認などを行う認証手順において、複数の異なる原理の認証手段を組み合わせて用いることにより、精度と安全性を高める手法。実用上は二つの要素を用いる方式がよく用いられる。
認証方式は何によって認証を行うかにより、パスワードや暗証番号など本人しか知らないはずの情報を用いる「WYK」(What You Know)認証、乱数表やUSBトークンなど本人しか持っていないはずの物品(モノ)を用いる「WYH」(What You Have)認証、指紋や虹彩など人体の特徴を用いる「WYA」(What You Are)認証の三つに分類できる。
多要素認証はパスワードとUSBトークン、指紋と暗証番号など、この三方式から異なる複数の方式を選んで組み合わせ、連続的に実施することにより認証を行う。これにより、いずれか一つが盗まれたり偽造されるなどして攻撃者に突破されても、他の方式も同時に突破しなければ本人になりすますことはできず、セキュリティを高めることができる。
実用上よく用いられるのは、三つの要素のうち二つを組み合わせる「二要素認証」(2FA:2-Factor Authentication)で、パスワード(WYK認証)とSMSなどで送信されるワンタイムパスワード(本人のスマートフォン所持を確認するWYH認証)の組み合わせや、パスワードと乱数表の指定位置の情報入力(WYH認証)、パスワード認証と専用の機器による指紋認証や静脈認証などの生体認証(WYA認証)の組み合わせなどである。
金融機関などで古くから用いられている、キャッシュカードや預金通帳(WYH認証)を機械に差し込み、暗証番号(WYK認証)を入力する方式や、クレジットカード(WYH認証)を支払い端末に差し込んでPINコード(WYK認証)を入力する方式なども、ある種の多要素認証であると考えることができる。
一方、認証を何段階も連続して行うことを「多段階認証」(マルチステップ認証)と呼ぶ。これには多要素認証だけでなく、同じ種類の認証方式を複数回組み合わせる手法も含まれる。例えば、パスワードと秘密の質問の答えを入力させるなど、異なる情報のWYK認証を複数組み合わせるといった方法である。
SMS認証 【SMS authentication】
システムやサービスの利用者認証の方式の一つで、携帯電話のショートメッセージサービス(SMS)で認証コードを送り、これをその場ですぐに入力させることで本人確認を行う認証方式。
利用者はアカウント登録時などに自分の普段使っているスマートフォンなどの電話番号を申告しておく。ログイン時にはシステムがランダムな短い番号やコード(ワンタイムパスワード)を生成し、登録された番号へSMSのメッセージとして送信する。利用者がこれを正しく入力できれば、確かに電話機を所持する本人であると確認される。
本人が所持している持ち物を利用する「WYH」(What You Have)型の認証方式であり、同じ原理の方式として乱数表などのカードを利用する手法、USBトークンやハードウェアトークンなどの装置を用いる手法が知られている。
現代ではほとんどの人がスマートフォンなどの個人所有の携帯電話機でSMSの送受信が可能なため、ネットサービスなどの認証方式として広く普及している。物理的な盗難に弱いため単体で用いることは稀で、パスワード認証など本人しか知り得ない情報を用いる「WYK」(What You Know)型の認証方式と組わせて二要素認証(二段階認証)を構成することが多い。
シングルサインオン 【SSO】 ⭐⭐⭐
一度の利用者認証で複数のコンピュータやソフトウェア、サービスなどを利用できるようにすること。また、認証システムなどが提供するそのような機能。
企業の情報システムなどで複数のコンピュータやソフトウェアが個別に認証情報を管理していると、手元のコンピュータのOSにログインするために認証を行い、業務システムにアクセスするために認証を行い、別のサーバに保存されたデータが必要になり認証を行い…というように何度も認証手続きが必要になり、利用者の負担が大きくなる。
このような状況は手間の増大や業務効率の低下だけでなく、パスワードの使いまわしやメモ書きなど、セキュリティ上好ましくない習慣を誘発することもある。負担軽減のために認証不要のシステムを増やしたり利用者に過大なアクセス権限を与えるなど、本末転倒な状況に陥ることもある。
シングルサインオンでは、複数のシステムから横断して利用できる認証基盤を用意し、利用者は一度の認証作業で連携するすべてのシステムにアクセスできるようにする。統合された「唯一の」IDには非常に強力なアクセス権が与えられることになるため、2段階認証やワンタイムパスワードなど、単純なパスワード認証よりも厳密な認証を求めるようにすることが多い。
ID統合を利用する方式
企業内の複数の情報システムなどでシングルサインオンを行う場合、単一のアカウント管理システムに認証機能を集約し、他のシステムはそのシステムに接続するという方式がよく用いられる。
Webアプリケーションの場合には、利用者がプロキシサーバを介して各システムに接続し、プロキシが認証サーバと連携して認証を行うリバースプロキシ型、各Webサーバ側に認証サーバと連携するモジュールを埋め込むエージェント型がよく用いられる。
Windowsシステムの場合には、Active Directoryにアカウント情報を集約し、Kerberos認証や統合Windows認証などを利用することも多い。
ID連携を利用する方式
ネットサービス間の連携など、統合されたアカウント管理システムなどを用意できない環境の場合には、ID連携を利用した方法がよく用いられる。
利用者のアカウント情報を持つシステムがIdP(IDプロバイダ)となり、認証機能の利用を希望する外部のシステム(SP:サービスプロバイダ)からの問い合わせを受け付ける。SPは利用者からログインの申請があるとIdPへ問い合わせを行う(利用者側のWebブラウザなどを経由して間接的に行う場合もある)。
利用者がそのIdPにアカウントを持っており、その場でログイン手続きをするか既にログイン済みであれば、IdPはSPに対しそれは確かに当該アカウントの所有者本人であると回答し、SPでのログインが完了する。
一連のやり取りの過程でIdPはSPにパスワードなど利用者の秘密の情報そのものは提供しないため、SP側の情報管理に問題があってもアカウント情報が漏洩することはなく、また、悪意のあるSPがIdPに干渉してアカウント情報を盗み取ったり改竄などをすることもできない。
具体的なID連携の技術規格としてSAMLやOpenID(OpenID Connect)などがある。ID連携を用いて「Googleアカウントでログイン」「Facebookアカウントでログイン」といったように大手ネットサービスのアカウントを流用できるようにしているネットサービスが多数存在する。
バイオメトリクス認証 【生体認証】 ⭐⭐⭐
指紋など固有性の高い人間の身体的特徴をデータ化して本人確認に用いる認証方式。暗証番号のように本人の記憶を用いる方式に比べ、原理的に他人による「なりすまし」が難しいが、生体は状態が安定しないことがあり本人の認識に失敗する場合がある。
古来より指紋は本人固有の生体的特徴として利用されてきたが、コンピュータによる指紋認証ではセンサーで表面の模様を読み取って一定の手順で図形的な特徴を符号化し、記録された本人のものと照合する。
指紋以外にも、眼球の黒目部分の皺の模様を用いる虹彩認証や、手のひらや指先の静脈の形状を赤外線センサーなどで読み取る静脈認証、声の特徴を用いる音声認証(声紋認証/声認証)、顔の特徴を用いる顔認証などが実用化されている。ペン型の入力機器で署名させ、その形状や筆圧、速度の変化などを符号化して照合する電子サインも生体認証の一種と言える。
パスワードなど単純な文字列や数字の比較に比べ、センサーを備えた特殊な機器が必要だったり、画像処理などで大量の計算をしなければならないなど仕組みが大掛かりなため、出入国管理や金融機関など業務用の機器やシステムから普及が始まった。
2010年代には装置の小型化やコンピュータの性能向上などが進み、スマートフォンやノートパソコンなどの携帯情報端末での利用者認証などにも利用が広がっている。パスワードなどと組み合わせて二段階認証を構成し、より高いセキュリティを実現する用途にも用いられる。
静脈認証 【手のひら認証】
人体の固有の特徴を利用して本人確認を行う生体認証(バイオメトリクス認証)の一種で、手のひらや指先の静脈のパターンを利用する方式。専用のセンサーに手をかざして照合する。
手のひらや指先をセンサーにかざして赤外線などを照射し、透過した光を元に静脈の形状パターンを読み取り、あらかじめ登録された本人のものと照合して認証を行う。センサー面に手を触れない非接触方式も開発されており、衛生的に認証を行うことができる。
静脈のパターンは個人ごとの固有性が高く、一卵性双生児でも異なる形状となる。また、大きさ以外は成長や老化などに関わらず生涯ほとんど変化せず、身体内部の情報であるため不正に読み取ったり偽造するのは困難である。
指紋のようにケガや摩耗、薬品などの影響で薄れたり消えることもなく、触れたものに残った跡から複製するといったこともできない。顔や筆跡、声紋など他の生体的特徴に比べ環境や体調などの変化による条件の振れ幅も小さく、他人受入率も小さいことが知られている。
静脈認証は高精度の生体認証方式として銀行の現金自動預け払い機(ATM)や入退室管理システムなどに採用され、暗証番号などと組み合わせて二段階認証を構成することもある。赤外線の照射のために専用の装置が必要なシステムがほとんどだったが、近年では可視光を用いる方式も開発されており、カメラを内蔵した一般的な携帯機器でも利用できるようになっている。
虹彩認証 【アイリス認証】 ⭐⭐
人体の固有の特徴を利用して本人確認を行う生体認証(バイオメトリクス認証)の一種で、眼球の黒目部分に現れる特徴的な模様を利用する方式。専用のカメラで撮影して照合する。
眼球には瞳孔の外側に虹彩(iris)と呼ばれる環状の部分があり、瞳孔を開いたり絞ったりする筋肉がある。胎児の頃に眼球が形成される過程で皺が寄り、2~3歳で成長が止まり以後は生涯に渡って変化しないことが知られている。皺の形状は遺伝とは無関係にランダムに決まるため一卵性双生児でも異なる模様になる。
虹彩認証ではカメラで目を撮影し、虹彩部分の像から画像処理や数学的な計算を行って固有のパターンを抽出し、あらかじめ登録してある本人のパターンを照合して本人確認を行う。撮影は少し離れた場所(実用上は数メートル程度)からでも可能なため、衛生的で心理的な負担が少ない。人によっては虹彩がまぶたなどで隠れないように目を大きく見開かなければならない場合もある。
指紋のように身体表面のパターンではないため摩耗などで変化・消失することもなく、触れたものに残った跡から複製することもできない。顔などに比べ成長や老化、体調や体型の変化などの影響もなく、意図的に変形や切除などすることもできないため、長期間安定的に利用できる。
現在実用化されている照合方式は様々な生体認証の中でも飛び抜けて認識精度が高いことが知られ、別人を本人と取り違える誤判定が起きた事例は未だに確認されていない。
ただし、画像に写った虹彩が本当に生体の一部であるかどうかの確認が難しく、他人の虹彩の画像を高解像度で印刷したものをセンサーに提示することで認証を突破できてしまうシステムがあることが知られている。このため、主に撮影状況に人が立ち会える用途で使用されており、無人化された自動入退室管理システムなどには向かない。
虹彩認証は出入国管理や住民登録、病院の患者識別システム、学校の出席管理システムなどに採用例がある。カメラがあれば特殊な機材は不要なため、スマートフォンのカメラと連動した利用者認証システムに用いられたこともある。
音声認証 【声紋認証】
人体の固有の特徴を利用して本人確認を行う生体認証(バイオメトリクス認証)の一種で、声の特徴を利用する方式。マイクにある程度の長さの言葉を話しかけ、これを解析する。
人の声は様々な周波数の音波の組み合わせでできており、同じ言葉を発しても人によって周波数成分の強度の分布や時間による変化の仕方に固有の特徴が現れる。声を収録した音声データに一定の計算を行い個人ごとの特徴量を抽出したものを声紋(voiceprints)と呼び、これを照合することで本人確認を行うことができる。
マイクに向かってある程度の長さの言葉を話すことにより認証を行うため、電話越しやビデオ通話越しなど、通信回線を通して遠隔で認証することもできる。また、カメラやセンサーを用いる他の生体認証と異なり体の部位をスキャンする必要がないため、人によっては心理的な負担や圧迫感を軽減できる。認識精度はあまり高くないため、単独で保安上の用途に用いることはほとんどない。
よく用いられる認証システムでは、あらかじめ決められた短い言葉(1秒以下から数秒程度)を話して解析する方式と、どのような内容でもいいので比較的長い時間(十数秒程度)話して解析する方式があり、両者を選択できるようになっている製品も多い。後者の方式は、会話をしながらその音声を用いて並行して認証を行うといった他の方式では難しい認証方法が可能である。
顔認証
人体の固有の特徴を利用して本人確認を行う生体認証(バイオメトリクス認証)の一種で、顔の特徴を利用する方式。カメラで撮影した顔の画像から一定の計算により特徴量のセットを抽出し、あらかじめ登録された本人のものと照合する。
よく知られている手法では、目の中心や唇の端といった特徴点の位置関係や距離の比、顎の形状などを元に特徴を表す短い符号に変換し、比較や照合を行う。初期にはカメラの正面に立ち静止した状態で撮影する必要があったが、近年ではある程度の動きや傾きなどがあっても補正できるようになっており、サングラスで目を覆ってもかなりの精度で認識できる製品も登場している。。
人の顔は髪型や化粧、表情、成長や老化、病気やケガ、体調や体型の変化などで大きく変わるが、なるべくこれらの影響を受けにくい特徴を用いるよう工夫されている。ただし、整形や特殊メイクのように人間にも分からないほど意図的に大きく改変した場合は同定できず、一卵性双生児の識別も難しい。
他の生体認証方式に比べ離れた場所から撮影した画像で認証でき、カメラと専用のソフトウェアがあれば特殊な機材は不要というメリットがある。航空機の搭乗手続きやコンサートのチケット転売防止などで採用例があり、ノートパソコンやスマートフォンなど情報機器の利用者認証に用いられたこともある。
網膜認証
人体の固有の特徴を利用して本人確認を行う生体認証(バイオメトリクス認証)の一種で、眼球の奥にある網膜の静脈パターンを利用する方式。専用のセンサーに目を近付けてパターンを読み取る。
眼球の最も奥には網膜という膜状の組織があり、外から差し込む光の刺激を電気信号に変換して脳に繋がる視神経に伝達する働きをしている。網膜には毛細血管が張り巡らされており、その形状のパターンは一人ひとり異なっており生涯変わることがない。
網膜認証はこの網膜の微細な静脈の形状をセンサーで読み取って登録済みのパターンと照合する認証方式で、眼球に外から微弱な近赤外線を照射して、その反射を読み取る。網膜は目の奥にあり、光学画像を使わないため偽装がしにくいという利点があるが、装置が大掛かり、センサーを目に近接させなければならない、白内障患者などは利用できないなどの難点もある。
同じ眼球の特徴を用いる生体認証方式に「虹彩認証」(iris authentication)がある。これは瞳孔の外側にある虹彩と呼ばれる環状の部分のパターンをカメラで読み取る方式で、撮影が容易で実装しやすい利点があるが、実装方式や運用方式によっては本人の眼球の写った高解像度の画像で偽装できてしまう場合もある。
本人拒否率 【FRR】 ⭐
生体認証(バイオメトリクス認証)システムなどの精度を表す指標の一つで、本人が認証を試みているのに本人であると認識できず拒否してしまう割合。
生体認証では指紋など一人ひとり異なる身体的特徴をあらかじめ登録しておき、認証を試みた人物の特徴が本人のものに一致するか照合する。その際、本人が認証を試みているのに本人であると認識できず、他人であるとして拒否してしまう割合のことを本人拒否率という。
例えば、本人による認証を1000回繰り返し、999回が成功、1回が失敗となったら、本人拒否率は1000分の1で0.1%となる。この値は具体的な製品の実装によって異なるが、認証に用いる身体的特徴の種類によっても傾向が異なっている。
これに対し、他人のことを本人であると誤認して受け入れてしまう割合のことを「他人受入率」(FAR:False Acceptance Rate)という。本人拒否率も他人受入率も共に低いシステムが識別精度の高いシステムだが、ほとんどの方式で両者はトレードオフの関係にある。
一方を改善しようとするともう一方は劣化してしまいがちだが、認証システムの性質として誤って他人を受け入れてしまうほうが損害が大きいため、本人拒否率を多少犠牲にしても他人受入率を下げるよう調整されていることが多い。
他人受入率 【FAR】 ⭐
生体認証(バイオメトリクス認証)システムなどの精度を表す指標の一つで、他人が認証を試みたときに本人であると誤認してしまう割合。
生体認証では指紋など一人ひとり異なる身体的特徴をあらかじめ登録しておき、認証を試みた人物の特徴が本人のものに一致するか照合する。その際、他人が本人になりすまして認証を試みているのに、他人であると認識できず本人として通してしまう割合のことを他人受入率という。
例えば、他人による認証の試みを1000回繰り返し、誤って通過してしまう事象が1回発生すれば、他人受入率は1000分の1で0.1%となる。この値は具体的な製品の実装によって異なるが、認証に用いる身体的特徴の種類によっても傾向が異なっている。
これに対し、本人が認証しているのに本人であると認識できず拒否してしまう割合のことを「本人拒否率」(FRR:False Rejection Rate)という。他人受入率も本人拒否率も共に低いシステムが識別精度の高いシステムだが、ほとんどの方式で両者はトレードオフの関係にある。
一方を改善しようとするともう一方は劣化してしまいがちだが、認証システムの性質として誤って他人を受け入れてしまうほうが損害が大きいため、本人拒否率を多少犠牲にしても他人受入率を下げるよう調整されていることが多い。
PKI 【Public Key Infrastructure】 ⭐⭐⭐
公開鍵暗号やデジタル署名をインターネットによる通信のみで安全に運用するために築かれた社会的基盤。公開鍵暗号を利用するソフトウェアに組み込まれたルート証明書を起点とする認証局間の信頼の連鎖により、公開鍵を安全に配送する。
公開鍵暗号やデジタル署名を利用するには通信の相手方の公開鍵を安全に入手する必要があるが、インターネットなど信用できない経路を利用すると途中で悪意の第三者にすり替えられる危険がある。このため、送信者と受信者の双方が信頼する第三者のデジタル署名を添付した「デジタル証明書」(公開鍵証明書)の形で配達し、受信側が鍵の真正性を確かめられるようにするという方法が考案された。
デジタル証明書を署名して発行する第三者を認証局(CA:Certificate Authority)というが、受信者が証明書を検証するには送信者が利用した認証局の公開鍵をあらかじめ安全に入手しておかなければならない。特定の相手としか通信しないなら、ある認証局から一度だけ鍵を取り寄せれば済むが、インターネットで様々な相手と暗号通信を利用するには世の中のすべての認証局の公開鍵を揃えなければならず、これは現実的ではない。
そこで、公開鍵暗号を利用するソフトウェア開発者などが信用するに足りると判断した認証局が自らの秘密鍵で署名したデジタル証明書をあらかじめ組み込んでおき、他の認証局は上位の認証局が署名した証明書によって公開鍵を提供するという仕組みが生まれた。その際、信用の起点となる最上位の認証局を「ルート認証局」(Root CA)と呼び、その発行する自らの証明書を「ルート証明書」という。
Webブラウザなど公開鍵暗号を利用するソフトウェアには、国際的な大手商用認証局や各国の政府機関が運用する認証局などのルート証明書が組み込まれており、一般に利用される世界のほとんどの認証局をカバーすることができるようになっている。カバーされない認証局を利用する場合には、利用者が自ら安全な方法で証明書を取り寄せてルート証明書として登録することもできる。
このようなルート認証局を頂点とする木構造の信用の連鎖によって、インターネットのみで安全に公開鍵技術を利用できるように構築された社会的基盤のことをPKIという。
デジタル証明書 【電子証明書】 ⭐⭐⭐
暗号化やデジタル署名に用いる公開鍵暗号の公開鍵を配送する際に、受信者が鍵の所有者を確認するために添付される一連のデータセットのこと。一般的には認証局(CA:Certificate Authority)と呼ばれる機関が発行する。
公開鍵暗号では一対の暗号鍵の組を用い、一方は自分しか知らない秘密鍵として、もう一方は通信の相手方に渡して使ってもらう公開鍵として用いる。相手と安全な受け渡し手段がある場合は事前に公開鍵を渡しておくことができるが、そうでない場合はインターネットなど信用できない経路を含む通信手段で鍵を配送しなければならない。
そこで、公開鍵が通信途上で攻撃者による改竄・すり替えに遭っておらず、確かに送信者本人のものであると受信者が確認できるようにするために、公開鍵データに送信者と受信者の双方が信用する第三者(認証局)のデジタル署名を添付するという手法が考案された。
送信者は認証局に自らの識別(身元)情報や公開鍵を申請し、認証局の秘密鍵でデジタル署名されたデジタル証明書を作成してもらい、これを受信者に渡す。受信者は証明書から公開鍵を取り出し署名を検証することで、認証局がその公開鍵が送信者本人のものであると主張していることを確かめることができる。
現在広く普及しているデジタル証明書の規格はITU-Tの定めたX.509で、公開鍵自体の他に、証明書発行者(認証局など)の識別情報、証明書の識別情報(シリアル番号など)、証明書の有効期間(開始日・終了日)、鍵の所有者の識別情報、公開鍵の暗号アルゴリズムの種類、発行者によるデジタル署名などの情報が記載される。
認証局の鍵配送問題とルート認証局
証明書のデジタル署名を検証するには認証局の公開鍵が必要となるため、受信者は送信者が利用する認証局の公開鍵を安全に入手しなければならない。しかし、世の中のすべての認証局の公開鍵をあらかじめ揃えておくことは現実的ではなく、また、インターネットなどで公開鍵をそのまま配送するのは送信者の鍵を送る場合と同じ危険がある。
この問題を回避するため、Webブラウザなど公開鍵暗号を利用するソフトウェアには世界的に有力な少数の認証局の公開鍵が安全な方法であらかじめ組み込まれており、そのような認証局をルート認証局(ルートCA)という。
各認証局は自らの公開鍵を上位の認証局に署名してもらって公開し、上位認証局はさらに上位の認証局に署名してもらって鍵を公開し…というプロセスを繰り返し、最終的にルート認証局の署名が得られれば、利用者は安全に各認証局の公開鍵を入手することができる。ルート認証局は利用者側でも追加できるようになっているため、必ずしも著名な機関を頂点とする証明書しか使用できないわけではない。
ルート証明書
デジタル証明書を発行する認証局が自らの正当性を証明するために自ら署名して発行した自己署名証明書のうち、公開鍵暗号を利用するソフトウェアに直に組み込まれたもの。そのソフトウェアの開発者や利用者が信用する認証局の証明書であり、デジタル署名を検証する際の信用の起点として用いられる。
通信に公開鍵暗号を利用するには暗号文の送信者の公開鍵を受信者が安全に入手する必要があり、送信者が公開鍵に第三者のデジタル署名を付したデジタル証明書を受信者に渡すという方法がよく用いられる。デジタル証明書を発行する第三者を認証局(CA:Certificate Authority)というが、その署名が信用できるか確かめるには認証局の公開鍵を安全に入手して検証しなければならない。
そのためには上位の認証局が署名して発行した認証局自身のデジタル証明書を入手すればよいが、その署名が信用できるか確かめるにはさらに上位の認証局の発行した証明書を入手して…という具合に、限りなく上位の認証局をたどっていかなければならなくなってしまう。
このため、Webブラウザなど公開鍵暗号を利用するソフトウェアの開発者は、世界的に有力な大手の商用認証局や政府機関の認証局など、信頼するに足ると思う機関が自ら発行する証明書を事前に入手して組み込んでおき、証明書を上位にたどっていった結果その機関の証明書に行き当たったら正しく検証されたと判断するようにしている。
この信用の連鎖により安全に公開鍵暗号を運用する社会的な基盤のことをPKI(Public Key Infrastructure/公開鍵基盤)と呼び、その最上位に位置する機関をルート認証局(ルートCA)、その発行する自らのデジタル証明書をルート証明書という。
通常はソフトウェアの開発時にあらかじめ組み込まれたものを指すが、利用者が安全に入手した証明書をソフトウェアに登録してルート証明書とすることもできるようになっている場合もある。特定の国や企業の内部で通用するルート証明書などは利用者側で導入して有効にする場合がある。
SSLサーバ証明書 【SSL server certificate】 ⭐⭐
Webサイトの身元の証明やSSL/TLSによる暗号通信の暗号鍵の配送に用いられるデジタル証明書。公開鍵暗号の公開鍵が確かにサイト運営者本人のものであることを証明する。
Web通信の暗号化に用いられるSSLや後継のTLSでは、接続手順の一部に公開鍵暗号を用いる。公開鍵暗号は公開鍵と秘密鍵という対になる2つの暗号鍵を利用する方式で、サーバの公開鍵をWebブラウザなどのクライアントに渡す必要がある。
インターネットのような信用できない経路で単に公開鍵をそのまま送ると改竄やすり替え、偽物のなりすましなどの危険があるため、サーバは事前に「認証局」(CA:Certificate Authority)という第三者にデジタル証明書の作成を申請し、クライアントにはこの証明書を送信する。
証明書を受け取ったクライアントは認証局に問い合わせることで、サーバが事前に申請した公開鍵であることを確かめることができる。証明書にはサーバの公開鍵以外にも、CAによるデジタル署名、サーバの身元に関する情報(ドメイン名や組織名など)が記載されている。
DV/OV/EV証明書の違い
サーバ証明書はCAが申請者の情報をどこまで確認したかによっていくつかの種類に分かれる。最も簡易な「DV証明書」(Domain-Validated certificate)は証明書の発行時にサーバのドメイン名を確認するもので、クライアントは「確かにそのドメイン名に対して発行された証明書である」ことを検証できる。
「OV証明書」(Organization-Validated certificate)は発行時に法人登記などで申請者の実在性を確かめ、公開された連絡先などから申請確認を行って「なりすまし」でないことを確かめる。ドメイン名の所有権が申請者にあることも確認する。クライアントは実在の特定の法人や人物に発行されたものであることを検証できる。
最も厳しい「EV証明書」(Extended Validation certificate)はOV証明書の手続きをより厳格にしたもので、実在性の確認だけでなく事業の運営実態の確認や、担当者や責任者の明確化と申請手続きの執行を裏付ける書面の提出などを行う。確認プロセスは規格化されており、CA側も適切に審査を行っているか業界団体から監査を受ける。接続先がEV証明書を利用していることはブラウザ上の表示で見分けられるようになっている。
クライアント証明書
サーバやネットワークにアクセスするコンピュータやその利用者の認証を行うためのデジタル証明書。サーバなどに接続を試みたクライアントが登録済みのものと同一かどうか確かめる。
クライアント証明書はサーバ側の証明書と同じように認証局(CA:Certificate Authority)が発行し、取得者が操作するコンピュータのソフトウェア(Webブラウザや電子メールソフトなど)に登録される。
サーバにアクセスする際に証明書を提示することにより、パスワードなどを入力しなくても利用者の認証を行って本人であることを確かめたり、所属組織を確認することができる。デジタル署名やメッセージの暗号化に使用するソフトウェアもある。
単にクライアント証明書といった場合は利用者の個人に紐付いたユーザー証明書を指すことが多いが、これとは別に、コンピュータの個体識別と認証のために発行されるコンピュータ証明書を用いるシステム(IEEE 802.1XのEAP-TLS認証など)もある。
認証局 【CA】 ⭐⭐⭐
電子商取引事業者などに、暗号通信などで必要となるデジタル証明書を発行する機関。信頼の起点となる「ルート認証局」(root CA)と、証明書の発行を担う「中間認証局」(intermediate CA)がある。
ルート認証局は上位の認証局による認証を受けず、自分の正当性を自ら証明する。他の認証局に対してデジタル証明書を発行し、認証局に対する信頼の拠り所となる。ルート証明書の信頼性は、厳しい監査を受けることや、認証業務運用規程(CPS)を公開すること、運用実績や知名度など、デジタル証明書以外の方法で示される。
ルート認証局以外の認証局が中間認証局で、上位の認証局からデジタル証明書を発行してもらうことで、自らの正当性を証明する。中間認証局の多くは一般にデジタル証明書を販売する事業者で、Webサーバに導入するSSLサーバ証明書などはここから購入する。
通常、Webブラウザなどデジタル証明書を利用するソフトウェアには、ソフトウェアの発行元や利用者が信頼できるルート認証局の証明書が同梱されている。Webサイトなどに接続した時に、相手の提示した証明書が信用できるかどうかは、発行元の認証局を調べ、さらにその認証局を認証している上位局を調べ…といった具合に辿っていき、最終的に自分の手元にあるルート証明書に一致するルート認証局にたどり着けば、信用できると確認できる。
なお、商用認証局から証明書の交付を受けるには費用がかかるため、Webサイトなどの中には、自らがルート認証局となって証明書を発行し、暗号化通信などを利用するサイトもある。そのようなサイトの場合、あらかじめ同梱されたルート認証局の認証は受けていないことになるため、Webブラウザなどがその旨警告するようになっている。
登録局 (RA:Registration Authority)
デジタル証明書の発行申請を受け付け、本人確認を行い、認証局(CA:Certificate Authority)に発行を申請する機関を登録局(RA:Registration Authority)という。主に大規模なPKI(公開鍵認証基盤)で設置されるもので、自らは証明書を発行する機能・権限はなく、末端の利用者に対して発行や失効の手続きを受け付ける窓口となる機関である。
登録局から申請に応じて証明書を発行するのはCAの役割だが、登録局からの要請に基いて(自らは本人確認など登録局が行う業務は行わず)証明書の発行のみを行うCAのことを発行局(IA:Issuing Authority)ということがある。
検証局 (VA:Validation Authority)
デジタル証明書の失効リスト(CRL)を集中管理して、証明書の有効性をチェックする機関を検証局(VA:Validation Authority)という。認証局(CA)と違い、デジタル証明書の発行は行わず、検証機能に特化しているためこのように呼ばれる。クライアントからの問い合わせに応じて、CAの公開鍵で署名の正当性を検証したり、証明書の有効期限を確認したりする。
CRL 【Certificate Revocation List】
何らかの理由で有効期限前に失効させられたデジタル証明書(公開鍵証明書)のリスト。証明書の発行元の認証局(CA)が管理・公開しており、定期的に更新される。
誤発行や秘密鍵の漏洩などが判明し、悪用の可能性があると判断された証明書は有効期間が残っていてもCAの判断で効力が停止される。無効になった証明書を周知するための手段として、CAはCRLに証明書のシリアル番号を記載して公開し、使用しないよう呼びかける。
効力の停止は厳密には二種類あり、恒久的に無効化される失効(revoke)と、調査のため一時的に無効化される停止(hold)に分かれる。停止された証明書は秘密鍵の状態などを調べ、安全だと判断されればCRLから削除され効力が復活する場合もある。
提示された証明書が有効かどうかを利用者側でチェックするには、CAから最新のCRLをダウンロードして証明書のシリアル番号が含まれていないか照合する方法が最も単純だが、CRLの容量が大きい場合は通信帯域にかかる負担が大きく、最新の情報を入手するためチェックする度に毎回ダウンロードし直さなければならないという問題がある。
このため、検証局(VA:Validation Authority)と呼ばれる機関でCRLを集中的に管理し、利用者側からはOCSP(Online Certificate Status Protocol)などのプロトコル(通信規約)でVAに問い合わせを行う方式がよく用いられる。CRL全体を入手しなくても特定の証明書の状態だけをリアルタイムに知ることできる。
セキュリティバイデザイン 【SbD】 ⭐
情報システムのセキュリティ対策を、その企画や設計の段階から取り入れていく考え方。低コストで安全性の高いシステムを構築することができる。
従来のセキュリティ対策の多くは、すでに完成し稼働しているシステムを前提として、後付けで安全性を向上させるための機器やソフトウェアを追加したり、発見された危険性に対処するという考え方が基本だった。
これに対し、セキュリティバイデザインに基づく開発手法では、システムやソフトウェアの企画や仕様策定、設計(英語では design という)など開発の初期段階からセキュリティを確保するための要件や仕様を盛り込んでいき、あらかじめ安全なシステムとして開発を進める。
後から改修や対策を行う場合よりも効果的かつ効率的にセキュリティを確保でき、運用やメンテナンスなども含めセキュリティ対策の総コストの軽減が見込める。また、完成後には変更できない箇所についてもセキュリティを考慮した仕様や設計を組み込むことができ、この点はIoTデバイス等で重要となる。
一方、システム自体や扱う情報などに関して、想定される脅威の種類や程度、および何をどの程度保護すべきかは自明ではなく、機能や性能、利便性とどのように両立するか、セキュリティ確保のための「作り込み」をどの程度行うかなどについて開発初期に難しい検討が必要となる。
プライバシーバイデザイン 【PbD】
製品やサービス、情報システムなどで利用者のプライバシーを保護する施策を、その企画・設計の段階から組み入れていく設計原則。
従来、情報を扱う製品やサービスなどのプライバシー保護は、製品の完成後に規約や運用の側面から検討されることが多かった。プライバシーバイデザインでは、設計段階からプライバシーを考慮した情報の取り扱いや、プライバシー保護のための仕組みを取り入れ、認識不足による法令違反などが生じないようにする。
プライバシーバイデザインの概念は1990年代にカナダのアン・カブキアン(Ann Cavoukian)博士が提唱したもので、以下の7つの基本原則で構成される。
- 事後ではなく事前、救済的ではなく予防的 (Proactive not reactive; preventive not remedial)
- 初期設定としてのプライバシー (Privacy as the default setting)
- 設計に組み込まれたプライバシー (Privacy embedded into design)
- 機能を犠牲にしない - ゼロサムではなくポジティブサムに (Full functionality - positive-sum, not zero-sum)
- エンドツーエンドのセキュリティ - ライフサイクル全体に渡る保護 (End-to-end security - full lifecycle protection)
- 可視性と透明性 - オープンにし続ける (Visibility and transparency - keep it open)
- 利用者のプライバシー尊重 - 利用者中心主義を維持 (Respect for user privacy - keep it user-centric)
クロスサイトスクリプティング 【XSS】 ⭐⭐⭐
利用者が入力した内容を表示するような構成のWebサイトに存在する欠陥を悪用して、攻撃者が用意した悪意のあるスクリプトを利用者の元に送り込んで実行させる攻撃手法。
SNSやECサイトのように閲覧者が送信したデータを何らかの形でコンテンツの一部として表示する機能を含むWebサイトが標的となる。入力内容のチェックが甘い場合に、攻撃者の仕掛けたスクリプト(Webページ上で実行される簡易プログラム)が閲覧者のコンピュータで実行される。
典型的な攻撃例は以下の通りである。まず、標的サイトには入力フォームがあり、閲覧者の入力を受け付けてサイト内の別のページに表示する。入力内容が「Hello World」の場合「http://標的サイト/message.cgi?text=Hello+World」というURLでアクセスするものとする。
フォームの受け付けプログラムには入力内容のチェックに不備(XSS脆弱性)があり、「Hello+World」の部分が実行可能なJavaScriptのコード断片であってもそのままブラウザへ送り返し、内容を表示した閲覧者のコンピュータ上で実行されてしまう。
攻撃者はこのサイトの利用者に向けて攻撃用のサイトを用意し、標的サイトに向けてリンクを作成する。リンク先のURLには「http://標的サイト/message.cgi?text=%3Cscript%3Ealert%28%22Hello+World%22%29%3B%3C%2Fscript%3E」のように、スクリプトとして解釈・実行される文字列を含ませておく。
閲覧者が攻撃用サイトのリンクを経由して標的サイトを訪れると、攻撃者によって仕込まれていたスクリプトが標的サイト上のものとして動作し、様々な攻撃が実行される。サイトをまたいでスクリプトが移転・実行されることが「クロスサイト」の名称の由来となっている。
この攻撃により、閲覧者は標的サイトの発行したCookieデータなどを攻撃者に盗み取られたり、攻撃者の用意した偽サイトに誘導されて個人情報やアカウント情報などを攻撃者に送信してしまったり、標的サイト上で意図せず自動的に特定の操作を実行させられてしまうなどの被害を受ける。
現在では様々な攻撃のバリエーションが知られており、必ずしも攻撃者がサイトを用意する必要はなくなっている。攻撃者が用意したスクリプトを標的サイトのものとして実行させられてしまう攻撃全般をクロスサイトスクリプティングと呼んでいる。
SQLインジェクション 【SQL injection】
データベースと連動したWebアプリケーションなどに対する攻撃手法の一つで、検索文字列など外部から指定するパラメータの一部にSQL文の断片などを混入させ不正な操作を行うもの。また、そのような攻撃を可能にする脆弱性。
データベースを利用するWebサイトの中には閲覧者の求めに応じて動的にプログラムを起動し、データベース管理システム(DBMS)へデータの検索や更新などを依頼するものがあるが、その際に「SQL」(Structured Query Language)と呼ばれる問い合わせ言語が標準的に利用される。
検索機能などを実装するために、閲覧者がフォームなどに入力した文字列をプログラムが受け取り、あらかじめ用意されたSELECT文などの一部に埋め込んでDBMSへ渡し、検索と該当データの抽出を依頼する処理がよく行われる。
その際、悪意のある攻撃者が検索文字列として引用符や条件式などを組み合わせたSQL文の断片を渡すことにより、開発者が想定していないSQL文が生成・実行され、本来得られないはずのデータを出力してしまったり、保存されたデータが破壊・改竄されることがある。“injection” は「注入」の意。
SQLインジェクションの被害で最も多いのは個人情報などデータベースに保存された重要なデータや機密データの漏洩で、過去に名簿やアカウントリストなどの流出事件が様々なサイトで発生している。また、Webサイトの改竄に悪用された場合、Webページ上にWebブラウザを攻撃するコードなどを埋め込まれる場合もあり、サイトを訪れた閲覧者に二次被害が広がってしまう。
対策としては、単純な文字列連結で動的にSQL文を生成するのをやめてプレースホルダ(バインド機構)やプリペアードクエリ(プリペアードステートメント)のような仕組みを活用したり、渡された入力値を入念にチェックして特定の文字を適切にエスケープ(無害な文字に置換)するといった手法がよく知られ、これら複数の手法を組みわせることも推奨されている。