ネットワーク -セキュリティの基礎知識 –
はじめに
みなさんが気軽に使っているインターネット、ほとんどの人が毎日使っていると思います。
例えば、出先からスマホで、家やオフィスからパソコンで、インターネットに触れない日はほとんどないと言っても過言ではないでしょう。
しかし、インターネットを使用している時に自分の個人情報が漏洩している、と意識する人は少ないでしょう。
個人情報の漏洩はシステムのセキュリティが甘い、と考える方もいらっしゃるかもしれませんが、それ以外にも個人情報が漏洩する要因はあります。
システムエンジニア以外でも知っておくべきネットワークとセキュリティについての紹介をしていきます。
ネットワークとは
複数台のコンピュータをケーブルや電波などで、接続して、相互に情報をやりとりする仕組みをネットワークといいます。
インターネットやLAN (Local Area Network)、WAN (Wide Area Network)のことです。
今回はメインのインターネットで説明していきます。
インターネットとは、世界中の全てのネットワークを相互接続したコンピュータネットワークのことです。全体を統括するコンピュータは存在せずに、全世界のコンピュータが少しづつサービスを提供することで成り立っています。
ちなみにLANは、同じ建物内のコンピュータやプリンタ、サーバなどを接続してデータを通信するネットワークのことです。
WANは地理的に離れた場所にあるコンピュータなどを接続して、データを通信するネットワークのことです。
ネットワークは毎日の生活で当たり前に使われています。
朝起きてからの行動で考えると、ニュースやSNSの確認、ウェブサイトの閲覧、スマートスピーカーに話しかけたり、スマート家電を操作するのもネットワークを使っています。コンビニでランチを買う時に使う電子決済や、社内のクラウドでのファイルの共有、ChatworkやSlackでのチャット、帰宅後のYouTubeやオンラインゲームなどなど、今やネットワークは意識しなくても使われており、人々の生活になくてはならない存在となりました。
インターネットにより家やオフィスのPC、スマホやタブレットで世界中の情報にアクセスできるようになりました。しかし、通信できるということは、悪意のある人からアクセスされる可能性があると言うことも認識しておくべきです
情報セキュリティの3要素
情報セキュリティは重厚にすればいい、と言うものではありません。セキュリティを重厚にするということは、それだけ自身やユーザーの使い勝手も、悪くなってしまいます。また、システムがダウンしないようにしたり、データが改善されないようにしたりするということは、その分コストもかかってきます。安全性と利便性、または、コストはトレードオフであると言えるでしょう。
例えば、金銭を扱うシステムであれば、2段階認証を取り入れているところも多いと思います。しかし、2段階認証をすると、スマホで別のアプリを立ち上げて確認したり、電話番号やEメールで送られてくるメッセージを確認するなど、一手間増えることになり、UXは低下してしまいます。また、システムが止まらないように、冗長化すればするほどコストは増大していきます。
情報セキュリティで考えるべき点は3つあります。
・機密性 (Confidentiality)
情報漏洩しないようにすることを指します。
データベースには社内外の機密情報が保存されているでしょう。そのデータが漏洩してしまえば、企業の信用は地に堕ちてしまします。
機密性を高めるのであれば、IDやパスワードでログインさせ、データにアクセスできる人を制限することから始めるべきでしょう。パスワードの設定の際に一定以上複雑であるように制限したり、一定期間を超えるとパスワードの変更を促したりすると、さらに高めることができます。
・完全性 (Integrity)
情報が完全な状態を保っていることを指します。
すなわち、改竄されたりしていないことです。完全性が失われるということは、データを分析して経営指針を決定することができず、混乱が生じる可能性があります。また、保存されているデータが顧客のものであれば、企業の信用を失いかねません。
機密性と同様に、データにアクセスできる人を制限するとともに、アクセスした人の動きを記録して、後からでも確認できるようにしましょう。定期的にデータベースのバックアップを取得して、改竄されても元に戻せるようにすることも大切です。
・可用性 (Availability)
データをいつでも安全に利用できることを確保することを指します。
どんなシステムであっても、システムダウンの可能性は拭えません。システムを冗長化して、一つのシステムがダウンしても、もう一つのシステムが継続して動いたり、多くのアクセスがありサーバに負担がかかる場合は自動でもう一つのサーバが立ち上がるなどの対策が必要です。
システムをダウンしないようにするだけでなく、システムがダウンしても、素早く復旧できるように設計することも重要だと言えます。
不正アクセスの手法
不正アクセスの手法は様々です。代表的なものを紹介していきます。
・ブルートフォース攻撃
特定のIDに対して、パスワードを片っ端から試す手法です。
時間はかかりますが、絶対にいずれパスワードにたどり着かれる、力づくの手法です。
スマホでもパスワードの入力を三回間違うとロックされるなどあるように、パスワードの入力の回数制限はシステムでも導入されていることが多いです。ロックされるとユーザーにメッセージが送信され、ユーザーは自身のアカウントが狙われていることを知ることができます。
・リバースブルートフォース攻撃
上記のブルートフォース攻撃とは逆に、特定のパスワードに対して、IDを片っ端から試す手法です。
2段階認証やパスワードの複雑化を促すことで対策が打てます。
・パスワードリスト攻撃
入手したパスワードとIDのリストを使って、他のサイトのログインを試す手法です。
同じIDやパスワードをいろんなサイトで利用しているユーザーは多く、意外と狙われやすいものの一つです。
システム側でできる対策としては、一定期間ごとにパスワードの変更を促すことです。この時に過去に使用したパスワードを使用させないようにすることも重要です。2つのパスワードを繰り返し使うユーザーは多く存在します。
・レインボー攻撃
データベースに保存されている暗号化されたパスワードの解析する手法です。攻撃者は事前にデータをたくさん入れる必要があり、その上、比較にするのに時間がかかります。
パスワードを長くして、英数字、大文字、可能であれば記号も組み合わせることで推測しにくくなります。
・SQLインジェクション
ユーザーの入力する値をデータベースに送り、処理を行うシステムを狙った手法で、入力フォームに悪意ある文字列やコードを入れて、送信することで、データベースのデータを不正に取得したり、改竄したりする手法です。
事前にシステム側で、SQLインジェクションをテストして防ぐ必要があります。
・DNSキャッシュポイズニング
DNSサーバの脆弱性を利用して偽の情報をDNSサーバへ記憶させ、 ユーザーに対して影響を与える手法です。
偽装WEBサイトへ移動し、そこにある入力フォームにIDやパスワードを入力することで、ユーザーデータが漏洩してしまいます。
SSL通信やDNSSECで、対策を打つ必要がありますが、いろんな方法で対策を回避されており、現状はユーザーが細心の注意を払う必要があります。
・rootkit
rootkitとは、不正アクセスに成功した攻撃者が、侵入後にリモート制御するために必要なソフトウェア一式をまとめたパッケージです。中には、侵入の痕跡を隠すログ改竄ツールや、侵入を容易にするバックドアツールなどが含まれています。
rootkitはそれ自体が悪さをするものではありませんが、攻撃者は痕跡を残さずにそのコンピュータを利用できるようになり、そのコンピュータがサイバー攻撃に使用される可能性もあります。
rootkit検出ツールなどを用いて、rootkitが入っていないかを定期的に確認するようにしましょう。
セキュリティポリシーの設定
前述の攻撃以外にもソーシャルエンジニアリングが存在します。
ソーシャルエンジニアリングとは、システムとは無関係のところで、人の不注意をついて情報資産を盗み出す行為です。
例えば、隣のデスクの人のパスワードを盗み見たり、ゴミ箱などから情報を盗み出したり、などがあります。
ソーシャルエンジニアリングから守る方法はただ一つです。
セキュリティポリシーの設定です。企業として情報をどのように取り扱うのかを周知・徹底することです。
世間的には、下記の1と2を合わせて、セキュリティポリシーと言います。
1,基本方針
基本方針は組織における、情報セキュリティ対策に対する根本的な考え方を表すものを指します。
どのような情報資産を、どのような脅威から、なぜ保護するのか、を明らかにして、組織の情報セキュリティに対する取り組み姿勢を示すものです。
2,対策基準
対策基準は基本方針で定められた情報セキュリティを確保するために尊守するべき行為や判断などの基準のことを指します。
基本方針を実現するために具体的にすべきことを示すものです。
3,実施手順
ポリシーには含まれないが、対策基準に定められた内容を具体的な情報システムまたは業務において、どのような手順に従っていくのかを示すマニュアルなどです。
セキュリティポリシーはすぐに決まるものではなく、PDCAを繰り返して、企業ごとに選定していく必要があります。
まとめ
今回はSE以外でも知っておくべき情報セキュリティの基礎について説明しました。
情報セキュリティの3要素は以下です。
・情報漏洩をしない機密性
・正しい情報を保ち、改竄されても正しい状態に戻す完全性
・システムダウンをしない、しても素早い復旧ができる可用性
先日、GitHubに某銀行のソースコードが流出するという事件が発覚しましたが、原因は人でした。セキュリティに対する意識が低いと、企業が大きな損失を受ける可能性があります。
まずは人がしっかりとセキュリティを意識しておく必要があること、企業がセキュリティに対する教育をきちんとしておく必要があることを覚えておきましょう。
中小企業をがっつりサポート!
当社では
など、企業のIT化のサポート・DX事業のサポートを行っています。
まずはお気軽にお問い合わせしてください。