情報セキュリティコラム

サイバー攻撃の手法~情報セキュリティの基礎知識~

セキュリティを考える上で、実際攻撃がどのように仕掛けられるかはご存知でしょうか。
また、IPアドレスとは?と聞かれたときにきちんと説明できますか?

IPアドレスなどの基礎知識から侵入の手口などを理解して、どのように攻撃されるか具体的に知識を得ることで、
より具体的にどう対応するのが自社にとって最適か、考えてみましょう。

ネットワーク

IPアドレスとは?

インターネットをお使いの場合によくIPアドレスという言葉を聞かれると思います。
パソコンを自宅とするなら、IPアドレスとは住所にあたります。

ただし、実際にIPパケット(通信用の電文)を受け取るためにはポストが必要になり、これが複数あってそれぞれにポート番号というのがふられています。
部屋ごとに郵便ポストがあるような感じです。
どのポート番号が開いているかを調べることをポートスキャンと言いますが、不要なポートを開けているとそこに悪意のあるIPパケットが届くことになります。

映画やドラマでハッカーがインターネット経由でどこかのサーバーに侵入するといった場合、どこかのサーバーのポートが開いていないと遠隔で乗っ取ることはできません。
そのため外部からの不正なアクセスを防ぐため、外部から組織内のポート番号が見えないようにしています。

もう少し細かい話をすると、IPとはインターネットプロトコルの略で、コンピュータ間の通信を行う場合は手順通りに通信を行わないと通信が成立しません。
そのため、インターネットでも通信の手順が決まっており、よくTCP/IPと呼ばれていますが、いくつかの層に分けた通信手順が規格化されており、
 ・物理層(ケーブルや端子、電気、光等の規格)
 ・データリンク層(イーサネット、PPPなど)
 ・ネットワーク層(ここがIP)
 ・トランスポート層(TCPやUDP)
 ・セッション層(HTTPなど)
 ・プレゼンテーション層
 ・アプリケーション層
と7階層になっています。

インターネットに接続する際には、LANケーブルでの有線接続でもWi-Fiでの無線接続でもWebサイトへのアクセスは同様に行えると思いますが、
それは物理層とデータリンク層の違いだけで、ネットワーク層から上は同じだからなのです。

なぜ悪意のある攻撃者に侵入されるのか

侵入の手口はいくつかあります。

最も技術的なコストを必要としないのは、内部犯行です。
正常なアクセス権限を持つユーザーがコンピュータに入り込むのは当たり前なのでこれは防ぎようがありません(犯行を見つけることはできます)。

攻撃者に内部協力者が居ない場合、メールにマルウェアやURLを添付して送りつけます。
またはVPNゲートウェイやWebサーバーなど外部との入口になっている箇所の脆弱性を狙って侵入します。
メールを使った手段は皆さんよくご存じかと思いますが、ワードやエクセルの添付ファイルのマクロに悪意のあるスクリプトが書かれているとか、
添付ファイルそのものがマルウェアであるとか、メールに記載されているURLにアクセスするとマルウェアがダウンロードされるとかいくつか手法があります。

そのパソコン上で実行されたマルウェアやスクリプトが外部と通信(中から外への通信は比較的容易)し、パソコンの情報を流出させたり、
新しいマルウェアをダウンロードしたりして侵入が成功します。

笑えない例としては、情報セキュリティ対策ソフトの社内サーバーが脆弱性を突かれて侵入され、マルウェアを社内に拡散したという実例もあります。

TCP/IPではサーバー/クライアントと呼ばれる通信上の役割があります。
物理的なWebサーバーやファイルサーバーもそうですが、サーバープロセスはサービスを提供する側、クライアントプロセスはサービスを要求する側です。

通常、サーバープロセスはIPアドレスとポートが紐づけられているソケットを常時開けています。
クライアントから接続要求、複数の異なるIPアドレスのクライアントから同じIPアドレスとポート番号宛に届きますので、
ソケットと呼ばれているメモリ空間を複製していきます。
サーバープロセス側でクライアント毎にソケットを分けないと、どのクライアントと通信しているのか混乱しますよね。

閑話休題、つまり、侵入される場合ポートを開けて待っているサーバープロセスが存在しないとネットワーク経由では侵入されません。
パソコンでもそういうプロセスが存在していますので、余計なサービスは停止するといったことが推奨されます。

侵入したマルウェアが外部のC&C(コントロール&コマンド)サーバーと通信する場合が多いのですが、その場合に使われる通信プロトコルはHTTPSがよく用いられます。
HTTPSであれば普通に使われているので怪しまれることは少ないと思います。

マルウェアって何?

悪意のある行為を行うので他のソフトウェアと区別してマルウェアと呼ばれていますが、作り方は他のアプリケーションプログラムと同じです。

その他にはDLLと呼ばれるライブラリ形式の場合もあります。
Windowsに環境変数というのがありますが、この中のPathを書き換えたりして同じ名前の不正なDLLをダウンロードすると、アプリケーションは不正なDLLをロードして利用します。

DLL形式の場合は正常なDLLを書き換えさせないとか環境変数を書き換えさせないといった対策で対応できます。
またデバイスドライバといって、周辺機器のI/O制御用のプログラムに潜んでいる場合もあります。

最近有名になったのが、USBメモリの形式なのにキーボードデバイスとしてOSから認識されて、悪意のある入力を行うという仕組みです。
わからないUSBメモリが落ちてるけど、中身何かなとパソコンに挿してみると、裏でC&Cサーバーへの通信が行われてマルウェアをダウンロードしているという目視ではわからない動作をしたりするそうです。

EXE形式の場合は、そもそも起動させないのが一番です。
コンピュータウィルスに感染したという場合、ウィルスのファイルがパソコンに存在しているだけではなく、それが起動され動作していることを指します。
さて、Windows中心の話でしたが、Webアプリ、Linux、Javaなど様々なプラットフォーム対応のマルウェアが存在しています。

さいごに、本コラムでは悪意のあるハッキングを推奨しておりません。ちょっとマルウェアを実行してみようという場合には、閉域ネットワーク内の仮想環境上でお試しください。

PRODUCT

関連情報

  • まずは手軽に簡単に「ゼロトラスト環境に」
    エンドポイントセキュリティ

    「侵入されても発症しない新世代セキュリティ」

    製品を見る
  • PC上の様々なログを収集、脅威分析システムにかけ ホワイトハッカーにて分析・解析するなら

    ゼロトラストEPP+脅威解析システムによる解析+ホワイトハッカーによる分析

    製品を見る
  • AIを使ったNDR(監視/検知)で、
    あらゆるデジタル環境で脅威を
    リアルタイムに検知・可視化する

    「従来の手法で発見できなかったあらゆる脅威を検知」

    製品を見る

ABOUT CLC

シー・エル・シーとは

1980年から培った解決力
システムの最適化を提案するエキスパート

CLCはさまざまな業種のお客様からシステムについてのご相談をいただき、そのつど問題の的確な解決に努力してまいりました。
システムに関する豊富な経験とノウハウを活かした実績が評価され、システムの最適化をご提案するエキスパートとして、お客様から厚い信頼を頂いています。