JP2024038784A - Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program - Google Patents
Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program Download PDFInfo
- Publication number
- JP2024038784A JP2024038784A JP2022143060A JP2022143060A JP2024038784A JP 2024038784 A JP2024038784 A JP 2024038784A JP 2022143060 A JP2022143060 A JP 2022143060A JP 2022143060 A JP2022143060 A JP 2022143060A JP 2024038784 A JP2024038784 A JP 2024038784A
- Authority
- JP
- Japan
- Prior art keywords
- information
- packet
- client terminal
- terminal device
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000010365 information processing Effects 0.000 title claims abstract description 36
- 230000005540 biological transmission Effects 0.000 claims abstract description 7
- 239000000284 extract Substances 0.000 claims abstract description 3
- 238000012545 processing Methods 0.000 claims description 25
- 241000700605 Viruses Species 0.000 claims description 15
- 238000000605 extraction Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims 2
- 238000004891 communication Methods 0.000 abstract description 30
- 230000008569 process Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- UDYLZILYVRMCJW-UHFFFAOYSA-L disodium;oxido carbonate Chemical compound [Na+].[Na+].[O-]OC([O-])=O UDYLZILYVRMCJW-UHFFFAOYSA-L 0.000 description 13
- 238000007726 management method Methods 0.000 description 10
- 229920006706 PC-C Polymers 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 238000002955 isolation Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002155 anti-virotic effect Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、情報処理システム、サーバ装置、サーバ装置の制御方法、クライアント端末装置、クライアント端末装置の制御方法およびプログラムに関する。 The present invention relates to an information processing system, a server device, a method of controlling a server device, a client terminal device, a method of controlling a client terminal device, and a program.
マルウェアの中には、C&C(command and control)サーバなどの危険な接続先と通信を行い、ハッカーからの指示を受けたり、盗み出した機密情報を送信したりするものがある。これに対して、予め危険な接続先の接続先情報(URLやIPアドレスなど)をリストアップしておき、リスト上にある宛先への通信を遮断することで、マルウェアによる被害を防ぐといった対策が取られている。この方法によれば、マルウェアによる直接的な被害を防ぐことはできるが、クライアント側に残っているマルウェアに対しては対策が打てないという問題がある。そのため、通信の送信元を特定し、対策を打つことが必要となる。 Some malware communicates with dangerous connections, such as command and control (C&C) servers, to receive instructions from hackers or send stolen confidential information. To deal with this, countermeasures can be taken such as making a list of connection destination information (URLs, IP addresses, etc.) of dangerous connection destinations in advance and blocking communication to the destinations on the list to prevent damage caused by malware. It has been taken. Although this method can prevent direct damage caused by malware, there is a problem in that it cannot take measures against malware remaining on the client side. Therefore, it is necessary to identify the source of the communication and take countermeasures.
そこで、ネットワーク通信の送信元を特定する手法としては、イーサネット(登録商標)フレームにおけるMACアドレスを参照するという技術がある。ただし、MACアドレスは同一セグメント内でのみ伝達可能な情報であるため、送信元のクライアントと特定を行うネットワーク機器との間に、別のネットワーク機器が存在しないことが前提となる。しかし、企業や官公庁内における一般的なネットワーク構成の場合、ネットワークの途中にはルータやファイアウォールなど様々な外部機器が存在する。そのため、そういった環境においては、ネットワーク通信の送信元が外部機器のMACアドレスとなってしまい、クライアントを特定することができない。また、外部機器にてネットワーク通信の送信元を管理する方法もあるが、管理が煩雑となる。 Therefore, as a method for identifying the source of network communication, there is a technique of referring to the MAC address in the Ethernet (registered trademark) frame. However, since the MAC address is information that can be transmitted only within the same segment, it is assumed that no other network device exists between the source client and the network device that performs the identification. However, in the case of a typical network configuration within a company or government office, various external devices such as routers and firewalls exist along the network. Therefore, in such an environment, the source of network communication becomes the MAC address of the external device, making it impossible to identify the client. There is also a method of managing the transmission source of network communication using an external device, but the management becomes complicated.
また、別の手法として、送信元IPアドレスを参照するという技術がある。しかし、IPアドレスは1つのコンピュータに常に固定されているわけではないため、たとえば1か月前の通信に関して、IPアドレスからコンピュータ名を特定しようとしても、既にIPアドレスが変更されてしまっており、特定できない場合が多い。そこで、先行技術文献1には、リクエストURL内にクライアントの情報を埋め込むことで、送信元であるクライアントを特定するという技術が開示されている。 Another technique is to refer to the source IP address. However, IP addresses are not always fixed to one computer, so if you try to identify the computer name from the IP address regarding a communication from a month ago, for example, you will find that the IP address has already changed. Often cannot be identified. Therefore, Prior Art Document 1 discloses a technique of specifying the client that is the sender by embedding client information in the request URL.
しかし、先行技術文献1では、URLを解析する場所をWebサーバとしているため、ユーザや管理者が管理できない範囲となり、管理外の通信に関しては適用できない。たとえば、マルウェアが利用するC&Cサーバは、サイバー犯罪者が設置・管理しているため、この技術は適用できない。そこで、本発明は、簡便かつ正確に通信の送信元を特定することを目的とする。 However, in Prior Art Document 1, since the location where the URL is analyzed is a Web server, the scope is beyond the control of the user or administrator, and it cannot be applied to unmanaged communications. For example, this technology cannot be applied to C&C servers used by malware because they are installed and managed by cybercriminals. Therefore, an object of the present invention is to easily and accurately identify the source of communication.
本発明は、たとえば、情報処理システムであって、
クライアント端末装置と、情報機器と、サーバ装置とを有し、
前記サーバ装置は、
前記情報機器を介して前記クライアント端末装置からリクエストパケットを受信する第一の受信手段と、
前記第一の受信手段にて受信したリクエストパケットに、特定のパケットの宛先を示す情報が含まれるか否かを判定する第一の判定手段と、
前記第一の判定手段にて特定のパケットの宛先を示す情報が含まれると判定された場合、特定の情報を付加したパケットを、前記情報機器を介して前記クライアント端末装置に送信する第一の送信手段と
を備え、
前記クライアント端末装置は、
前記情報機器を介して前記サーバ装置からパケットを受信する第二の受信手段と、
前記第二の受信手段にて受信したパケットに、前記特定の情報が含まれるか否かを判定する第二の判定手段と、
前記第二の判定手段にて特定の情報が含まれると判定された場合、パケットにクライアント固有の情報を付加して、前記サーバ装置に前記情報機器を介して送信する第二の送信手段と
を備え、
前記サーバ装置は、さらに、
前記情報機器を介して前記クライアント端末から送信されたパケットを受信する第三の受信手段と、
前記第三の受信手段にて受信したパケットから、前記クライアント固有の情報を抽出する抽出手段と
を備えることを特徴とする。
The present invention is, for example, an information processing system that includes:
It has a client terminal device, an information device, and a server device,
The server device includes:
first receiving means for receiving a request packet from the client terminal device via the information device;
first determining means for determining whether the request packet received by the first receiving means includes information indicating a destination of a specific packet;
If the first determining means determines that information indicating the destination of the specific packet is included, the first determining means transmits the packet with the specific information added to the client terminal device via the information device. and a transmission means,
The client terminal device includes:
second receiving means for receiving packets from the server device via the information device;
a second determining means for determining whether or not the specific information is included in the packet received by the second receiving means;
If the second determining means determines that specific information is included, a second transmitting means adds client-specific information to the packet and transmits the packet to the server device via the information device. Prepare,
The server device further includes:
third receiving means for receiving packets transmitted from the client terminal via the information device;
The present invention is characterized by comprising an extraction means for extracting information specific to the client from the packet received by the third reception means.
本発明によれば、簡便に通信の送信元を特定することができる。 According to the present invention, it is possible to easily specify the source of communication.
[第一の実施形態]
<システム構成図>
先ず、本実施形態に係る情報処理システム構成について、図1のシステム構成図を用いて説明する。図1に示す如く、本実施形態に係る情報処理システムは、コンピュータすなわち情報処理装置10、20、50を有しており、それぞれの情報処理装置はLANやインターネットなどのネットワーク30に接続されている。以下、情報処理装置10をクライアント端末装置、情報処理装置20を、クライアント端末装置10を管理するサーバ装置(たとえば、プロキシサーバ)、情報処理装置50を情報機器(たとえば、ルータ、ファイアウォールなど)と呼称する。なお、クライアント端末装置10、情報機器50は複数でもよい。また、クライアント端末装置10、サーバ装置20、情報機器50は、PC・携帯端末装置などの情報処理装置が行うものとして後述する各処理を実行可能な装置であれば、如何なる装置であっても構わない。
[First embodiment]
<System configuration diagram>
First, the information processing system configuration according to this embodiment will be explained using the system configuration diagram of FIG. 1. As shown in FIG. 1, the information processing system according to the present embodiment includes computers, that is, information processing devices 10, 20, and 50, and each information processing device is connected to a network 30 such as a LAN or the Internet. . Hereinafter, the information processing device 10 will be referred to as a client terminal device, the information processing device 20 will be referred to as a server device (for example, a proxy server) that manages the client terminal device 10, and the information processing device 50 will be referred to as an information device (for example, a router, a firewall, etc.). do. Note that there may be a plurality of client terminal devices 10 and information devices 50. Further, the client terminal device 10, the server device 20, and the information device 50 may be any device as long as it is capable of executing each process described later as being performed by an information processing device such as a PC or a mobile terminal device. do not have.
<クライアント端末装置>
クライアント端末装置10において、演算装置10Cはプロセッサ(CPU)である。演算装置10Cは、メモリ10EのROMに格納されたBIOSなどのブートプログラムに従い、記憶装置10Bに格納されたオペレーティングシステム(OS)を起動し、さらにOSまたはユーザの操作に従い各種のプログラムを起動する。この記憶装置10Bには、OSや本装置が行うものとして後述する各処理を演算装置10Cに実行させるためのコンピュータプログラムやデータが保存されている。このコンピュータプログラムには、クライアントプログラム10F、ブラウザ10Gが含まれている。
<Client terminal device>
In the client terminal device 10, the
クライアントプログラム10Fは、クライアント端末装置10のデータやプログラムなどを管理するためのプログラムであり、たとえば、パケットを監視する、パケットのHTTPリクエストのメッセージヘッダにクライアント固有の情報(たとえば、コンピュータ名、パケットを送信したプログラム名など)を付加する、パケットを送信する機能を有する。また、クライアントプログラム10Fは、ネットワークI/F10Dを介してサーバ装置20から受け取ったリクエストパケットを、HTTPリクエストのメッセージヘッダごとに分割して、サーバ装置20上のサーバプログラム20Fが、後述の方法によってパケットの内部に記録した情報を抽出する。また、クライアントプログラム10Fは、クライアント端末装置10の操作を操作履歴として記憶装置10Bに記憶する機能、サーバ装置20からの命令(たとえば、修正プログラムの適用命令、ウイルススキャン命令、隔離命令など)に従う制御機能を有していてもよい。
The client program 10F is a program for managing data and programs of the client terminal device 10. For example, the client program 10F is a program for managing data, programs, etc. of the client terminal device 10. It has a function to send packets by adding a name (such as the name of the program that was sent). Further, the client program 10F divides the request packet received from the server device 20 via the network I/F 10D into each message header of the HTTP request, and the server program 20F on the server device 20 divides the request packet into packets by the method described below. Extract the information recorded inside. The client program 10F also has a function of storing the operations of the client terminal device 10 as an operation history in the
図9は、操作履歴の一例を示す図である。この図では、クライアント端末装置10から、何らかの通信リクエストがなされた際に、リクエストを行った日付や時刻、ログインしていたユーザー名、リクエスト先のURLなどが記録されている。例えば、レコード901には、2020/08/10の14:00:00に、userAがログインしていたPC-Aから、「http://aaa.com」に対して通信のリクエストが発せられたことを表している。なお、記録される情報としては、この図に限定されるものではない。記憶装置10Bに保存されているコンピュータプログラムやデータは、演算装置10Cによる制御に従って適宜メモリ10EのRAMにロードされ、演算装置10Cによる処理対象となる。また、OSはたとえばWindows(登録商標)、MacOS(登録商標)、Linux(登録商標)、iOS(登録商標)、Android(登録商標)などである。
FIG. 9 is a diagram showing an example of an operation history. In this figure, when a communication request is made from the client terminal device 10, the date and time of the request, the name of the logged-in user, the URL of the request destination, etc. are recorded. For example, in
記憶装置10Bは、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などであり、OSのほかにクライアント端末装置10上で稼働するクライアントプログラム10Fなどを格納する。I/Oデバイス10Aは、ポインティングデバイス(マウスなど)やキーボードに接続するための入出力インタフェース(I/F)、または、タッチパネルを組み込んだディスプレイなどである。なお、キーボードはソフトウェアキーボードでもよい。また、I/Oデバイス10Aは、入力された操作者の音声を音声認識機能によって認識し、認識した音声を演算装置10Cへ伝達する、マイク等を含む音声式入力部でもよい。また、I/Oデバイス10Aは、情報を表示するためのユーザインタフェース(UI)としても機能する。
The
ネットワークI/F10Dは、ネットワーク30とのインタフェースであり、他の情報処理装置(たとえば、Webサーバなど)と通信するための通信回路である。演算装置10Cは、ネットワークI/F10Dを介して、ブラウザ10Gなどのプログラムから発せられるリクエストパケットを宛先である他の情報処理装置(たとえば、Webサーバなど)に送信する。
The network I/F 10D is an interface with the network 30, and is a communication circuit for communicating with other information processing devices (for example, a web server, etc.). The
<サーバ装置>
サーバ装置のハードウェア構成は、図1に示す如く、上記で説明したクライアント端末装置10のハードウェア構成と同様であるとする。即ち、サーバ装置20の演算装置20Cは、サーバ装置20の記憶装置20Bに保存されているコンピュータプログラムやデータを用いて、サーバ装置20のネットワークI/F20Dを介して、他の情報処理装置とのデータ通信を行うと共に、サーバ装置20が行うものとして後述する各処理を実行する。また、サーバ装置20の記憶装置20Bには、サーバプログラム20Fが保存されている。
<Server device>
As shown in FIG. 1, the hardware configuration of the server device is assumed to be similar to the hardware configuration of the client terminal device 10 described above. That is, the
サーバ装置20において、演算装置20Cはマイクロプロセッサ(CPU)である。演算装置20Cは、メモリ20EのROMに格納されたBIOSなどのブートプログラムに従い記憶装置20Bに格納されたOSを起動する。そして、ネットワーク30を介して接続されたクライアント端末装置10からのリクエストパケットを受信し、インターネット上にある宛先である他の情報処理装置(たとえば、Webサーバなど)にリクエストパケットを送信する。
In the server device 20, the
記憶装置20Bは、HDDやSSDなどであり、サーバ装置20上で稼働するサーバプログラム20Fを格納する。ネットワークI/F20Dは、ネットワーク30とのインタフェースであり、クライアント端末装置10など他の情報処理装置と通信するための通信回路である。
The
サーバプログラム20Fは、ネットワークI/F20Dを介して複数のクライアント端末装置10から受け取ったリクエストパケットを、HTTPリクエストのメッセージヘッダごとに分割して、クライアント端末装置10上のクライアントプログラム10Fによって付加されたクライアント端末装置10の情報を抽出する。また、クライアント端末装置10からのリクエストを拒否した場合、その理由を返答パケット内に付加する。 The server program 20F divides the request packets received from the plurality of client terminal devices 10 via the network I/F 20D into each message header of the HTTP request, and divides the request packets into the client packets added by the client program 10F on the client terminal device 10. Information on the terminal device 10 is extracted. Furthermore, when a request from the client terminal device 10 is rejected, the reason is added to the reply packet.
また、ネットワーク30を介して接続されたクライアント端末装置10から送信されるクライアント端末装置10の操作履歴を記憶装置20Bに記憶させ、管理することもできるし、クライアント端末装置10に対して修正プログラムの適用命令、ウイルススキャン命令、隔離命令などを送信することもできる。
Further, the operation history of the client terminal device 10 transmitted from the client terminal device 10 connected via the network 30 can be stored and managed in the
データベース20Gは、クライアント端末装置10からのリクエストを拒否した場合に、同端末から送信されてくるクライアント固有の情報を蓄積する。
The
サーバ装置20は、クライアント端末装置10側のネットワーク30とインターネット40との境界上に設置されている。この構成をとることにより、ネットワーク30内とインターネット40の間でやりとりされるすべてのパケットをサーバ装置20経由にすることができ、やりとりされるすべてのパケットに対して本発明を適用することができる。
The server device 20 is installed on the boundary between the network 30 on the client terminal device 10 side and the
また、サーバ装置20とクライアント端末装置10は、図1では共にLANの内部に設置されているが、サーバ装置20は、クライアント端末装置10とネットワーク30を介して接続可能であれば、インターネット40上に設置してもよい。 Furthermore, although the server device 20 and the client terminal device 10 are both installed inside the LAN in FIG. It may be installed in
<情報機器>
企業や官公庁などの一般的なネットワーク環境においては、クライアント端末装置10とサーバ装置20との間に、情報機器50が設置される。情報機器50は、クライアント端末装置10からサーバ装置20への通信を中継する機器であり、例えば、ルータ、ファイアウォール、UTM(Unified Threat Management)など、他のネットワーク機器である。なお、図1の構成の場合、情報機器50とサーバ装置20との間でやり取りされるイーサネット(登録商標)フレームのパケットの場合、送信元MACアドレスが情報機器50のものになるため、MACアドレスを用いた送信元クライアントの特定は不可能になる。
<Information equipment>
In a general network environment such as a company or a government office, an information device 50 is installed between a client terminal device 10 and a server device 20. The information device 50 is a device that relays communication from the client terminal device 10 to the server device 20, and is, for example, another network device such as a router, a firewall, or a UTM (Unified Threat Management). In the case of the configuration shown in FIG. 1, in the case of an Ethernet (registered trademark) frame packet exchanged between the information device 50 and the server device 20, the source MAC address is that of the information device 50, so the MAC address It becomes impossible to identify the source client using
<サーバ装置の付加処理>
図2は、本実施形態に係るサーバ装置20が行う付加処理のフローチャートである。
<Additional processing of server device>
FIG. 2 is a flowchart of additional processing performed by the server device 20 according to the present embodiment.
サーバ装置20の演算装置20Cは、ネットワーク30によって接続されたクライアント端末装置10から、リクエストパケットが送信されてくるのを監視している(S-201)。
The
クライアント端末装置10からリクエストパケットが送信されると、インターネット40に到達する前に、情報機器50を介して、サーバ装置20にパケットが到達する。サーバ装置20にパケットが到達すると、演算装置20Cは、受信したパケットが危険なWebサイトへのリクエストか否か(遮断対象か否か)を判定する(S-202)。なお、パケットが危険なWebサイトへのアクセスのものかどうかの判断は、記憶装置20Bに予め記憶されている危険なWebサイトのホスト名のリストと、HTTPリクエストヘッダの標準ヘッダに含まれる「Host」とを、比較して判断する。なお、「Host」は一例であって、「Referer」など、危険なWebサイトへのアクセスがわかれば、これに限定されない。
When a request packet is transmitted from the client terminal device 10, the packet reaches the server device 20 via the information device 50 before reaching the
演算装置20Cによって、接続先が危険なwebサイトであると判断された場合(S-202のYES)、リクエストパケットを破棄する等して、接続を拒否する(S-204)。危険なwebサイトではないと判断した場合(S-202のNO)、そのリクエストを通過させ、webサイトへの接続を許可する(S-203)。
If the
これにより、クライアント端末装置10が危険なwebサイトに接続することを防ぐことができ、コンピュータウィルスに感染するなどの被害を防ぐ効果を得ることができる。しかし、パケットを破棄した場合、クライアント端末装置10では、単純に接続ができない状態になるのみであり、接続できない理由を知ることができない。そのため、演算装置20Cは、返答パケットのヘッダ部分に、接続を拒否した理由(「危険なwebサイトに接続した」等)を付加して(S-205)、クライアント端末10に送信する(S-206)。これにより、クライアント端末装置10において、接続が拒否された理由を知ることができる。
Thereby, the client terminal device 10 can be prevented from connecting to a dangerous website, and it is possible to obtain the effect of preventing damage such as being infected with a computer virus. However, if the packet is discarded, the client terminal device 10 simply becomes unable to connect, and cannot know the reason why the connection is not possible. Therefore, the
図5は、パケットの一例を示す図であり、演算装置20Cによって編集されたパケット内のHTTPレスポンスのメッセージヘッダの一例である。この例では、Content-Typeなどの通常のヘッダのほかに、演算装置20Cによって付加された「DenyReason」ヘッダがあり、その中には接続を拒否した理由「malicious web site」が記録されている。
FIG. 5 is a diagram showing an example of a packet, and is an example of a message header of an HTTP response in the packet edited by the
演算装置20Cによって付加される情報は、接続を拒否した理由(特定の情報)に限定されず、例えば、クライアント端末装置10に対するウィルススキャン命令や、返答パケットを他のコンピュータへ転送する命令などを付加してもよい。
The information added by the
また、演算装置20Cが情報を付加する箇所についても、HTTPリクエストのメッセージヘッダに限定されず、例えばTCPパケットのヘッダ部やデータ部などを用いてもよい。
Furthermore, the location where the
<クライアント端末装置の処理>
図3は、本実施形態に係るおよびクライアント端末装置10が行う処理のフローチャートである。サーバ装置20から送信されたパケットがクライアント端末装置10に到達すると、演算装置10Cが、パケットを受信する(S-301)。
<Processing of client terminal device>
FIG. 3 is a flowchart of processing performed by the client terminal device 10 according to this embodiment. When the packet transmitted from the server device 20 reaches the client terminal device 10, the
演算装置10Cは、受け取った全てのパケットに対して、その接続リクエストが拒否されたかどうかを判定する。具体的には、受け取った全てのパケットに対して、以下の処理を行う。
The
演算装置10Cは、パケット内のHTTPリクエストのメッセージヘッダのデータを、ヘッダ名単位に分割する(S-302)。次に、演算装置10Cは、返答パケットに、遮断されたことを示す情報があるか否かを判定する(S-303)。すなわち、分割したヘッダの中に、サーバ装置20のサーバプログラム20F(演算装置20C)が追記したヘッダ名が存在するかどうかを判定する。判定は、ヘッダ名が、サーバプログラム20F(演算装置20C)が付加する固有のものかどうかなど、予め記憶装置10Bに記憶されているテーブルを用いて判定を行う。
The
リクエストが拒否されたかどうかの判定方法は、上記のような独自ヘッダとして記述された部分を用いる方法に限定されず、例えばサーバ装置20が返答パケットを返す際のレスポンスコードを独自のものに変更するなどの方法を用いてもよい。また、サーバ装置20をプロキシサーバとした場合、プロキシサーバの性質上、SSL等の暗号化通信の場合は、基本的にはHTTPパケットのヘッダ部やデータ部を参照できないため、そのような問題を回避するために、TCPパケットのヘッダ部分などに情報を記録してもよい。 The method for determining whether a request has been rejected is not limited to the method using the part described as a unique header as described above; for example, the response code used when the server device 20 returns a reply packet is changed to a unique one. You may also use a method such as In addition, when the server device 20 is used as a proxy server, due to the nature of the proxy server, in the case of encrypted communication such as SSL, it is basically not possible to refer to the header part and data part of the HTTP packet, so such problems can be avoided. To avoid this, information may be recorded in the header of the TCP packet.
図5に示すように、パケットには「DenyReason」など、接続を拒否した理由が記録されている。また、前記の「DenyReason」は、RFC(Request For Comments)で規定されたHTTPの標準ヘッダではないため、受信パケットに該当ヘッダを残したまま、ブラウザ等のアプリケーションへ該当パケットを渡したとすると、アプリケーション側が該当ヘッダを読み取れず、エラーが発生する危険性がある。そのため、演算装置10Cは、該当ヘッダを削除してから、リクエスト元のアプリケーションに該当パケットを渡す(S-304)。
As shown in FIG. 5, the reason for refusing the connection, such as "DenyReason", is recorded in the packet. In addition, the above-mentioned "DenyReason" is not a standard HTTP header specified by RFC (Request For Comments), so if the received packet is passed to an application such as a browser with the relevant header left in the received packet, the application There is a risk that the other side will not be able to read the relevant header and an error will occur. Therefore, the
上述した処理によって、接続を拒否されたことが分かった場合、演算装置10Cは、前記の「DenyReason」に記録された理由をもとに、クライアント端末装置10に適切な処置(ネットワーク遮断等)を行う(S-305)。例えば、拒否理由が危険なwebサイトへのアクセスを行ったためであった場合、クライアント端末装置10はマルウェアに感染している危険性が高いといえる。そのため、演算装置10Cは、マルウェアが拡散しないようにするために、クライアント端末装置10をネットワークから遮断する。
When it is determined that the connection has been refused through the above-described process, the
サーバ装置20に対して送信するパケットを作成し(S-306)、該当パケットに、クライアント端末装置10の情報を示すクライアント固有の情報および、該当パケットがクライアント固有の情報を伝達する目的で送信されたことを表す識別情報を付加して(S-307)、該当パケットをサーバ装置20へ送信する(S-308)。 A packet to be sent to the server device 20 is created (S-306), and the corresponding packet includes client-specific information indicating information about the client terminal device 10, and the packet is sent for the purpose of transmitting client-specific information. It adds identification information indicating that the packet has been sent (S-307), and transmits the corresponding packet to the server device 20 (S-308).
クライアント固有の情報とは、たとえば、クライアント端末装置を示す情報(コンピュータ名、ユーザ名など)、パケットを送信したプログラムを示す情報(リクエストを行ったプログラム名、プロセス名など)である。これらの情報は、パケット内の任意の箇所に記述する。例えば、パケットのヘッダ部分に記述してもよいし、POSTパケットのデータ部分に記述するような形をとってもよい。 The client-specific information is, for example, information indicating the client terminal device (computer name, user name, etc.) and information indicating the program that sent the packet (program name that made the request, process name, etc.). These pieces of information are written anywhere within the packet. For example, it may be written in the header part of the packet, or it may be written in the data part of the POST packet.
一例として、パケットのヘッダ部分にクライアント固有の情報および、クライアント固有の情報を伝達する目的で送信されたことを表す識別情報を記述する方法を説明する。図6は、パケットの一例を示す図であり、演算装置10Cによって編集されたパケット内のHTTPリクエストのメッセージヘッダの一例である。この例では、User-Agentなどの通常のヘッダのほかに、クライアントプログラム10Fによって付加された「ADDHEADER」ヘッダがあり、その中にはクライアント端末装置10のコンピュータ名「TestPCNAME.test.com」と、リクエストを行ったプログラム名「iexplore.exe」が記録されている。なお、リクエストパケットを送信したプログラム名と宛先URLとを特定する方法は、公知の技術(たとえば、特開2012-185799号公報)であるため説明を省略する。
As an example, a method will be described in which client-specific information and identification information indicating that the packet was sent for the purpose of transmitting the client-specific information are written in the header portion of the packet. FIG. 6 is a diagram showing an example of a packet, and is an example of a message header of an HTTP request in the packet edited by the
また、図6に示すパケットには「IsBlock」ヘッダがあるが、このヘッダが、クライアント固有の情報を伝達する目的で送信されたことを表す識別情報となる。パケットに該当情報を付加した後、演算装置10Cはサーバ装置20へパケットを送信する。
Furthermore, the packet shown in FIG. 6 has an "IsBlock" header, which serves as identification information indicating that the packet was sent for the purpose of transmitting client-specific information. After adding the relevant information to the packet, the
<サーバ装置の抽出処理>
図4は、本実施形態に係るサーバ装置20が行う抽出処理のフローチャートである。演算装置10Cから送信されたパケットがサーバ装置20に到達すると、演算装置20Cは、パケットを受信する(S-401)。
<Server device extraction process>
FIG. 4 is a flowchart of the extraction process performed by the server device 20 according to this embodiment. When the packet transmitted from the
次に、演算装置20Cは、該当パケットがクライアント固有の情報を伝達する目的で送信されたものであるか否かを判定し、また、そうであれば送信元のクライアント固有の情報を抽出しようと試みる。具体的には、該当パケットに対して、以下の処理を行う。演算装置20Cは、パケット内のHTTPリクエストのメッセージヘッダのデータを、ヘッダ名単位に分割する(S-402)。次に、分割したヘッダの中に、クライアント端末装置10のクライアントプログラム10F(演算装置10C)が付加した、クライアント固有の情報を伝達する目的で送信されたことを示す識別情報が存在するかどうかを判定する(S-403)。
Next, the
存在する場合は(S-403のYES)、分割したヘッダの中から、クライアント固有の情報(コンピュータ名、プログラム名など)を表すヘッダがあるかどうかを探し、ヘッダの値に記録された文字列を、該当のクライアント固有の情報として抽出する(S-404)。 If it exists (YES in S-403), search for a header that represents client-specific information (computer name, program name, etc.) among the divided headers, and check the string recorded in the header value. is extracted as information specific to the relevant client (S-404).
図6を用いて具体的に説明する。たとえば、図6に示されるようなパケットをサーバプログラム20Fが受け取った場合、まずヘッダ名単位に分割する。ヘッダの中には、クライアントプログラム10Fが付加した「IsBlock」ヘッダが存在するので、このパケットは、クライアント固有の情報を伝達する目的で送信されたものであると判断できる。また、「ADDHEADER」ヘッダが存在するので、その内容の文字列「TestPCNAME.test.co;iexplore.exe」を取得し、セミコロンで分割する。すると、送信元のコンピュータ名が「TestPCNAME.test.co」であることがわかり、かつパケットの送信を行ったプログラム名が「iexplore.exe」であることがわかる。 This will be explained in detail using FIG. 6. For example, when the server program 20F receives a packet as shown in FIG. 6, it first divides it into header names. Since the "IsBlock" header added by the client program 10F is present in the header, it can be determined that this packet was sent for the purpose of transmitting client-specific information. Also, since the "ADDHEADER" header exists, the character string "TestPCNAME.test.co; iexplore.exe" containing the contents is obtained and divided by semicolons. Then, it is found that the sender's computer name is "TestPCNAME.test.co", and the name of the program that sent the packet is "iexplore.exe".
この結果、危険なWebサイトへのリクエストパケットを送信したクライアントの情報をサーバ装置上で特定することができる(S-405)。次に、演算装置20Cは、該当のクライアントがリクエストを拒否されたという情報をデータベース20Gに記録する(S-406)。
As a result, information about the client that sent the request packet to the dangerous website can be identified on the server device (S-405). Next, the
また、図7に、データベース20Gに記録する情報の例を示す。ここでは、アクセスを試みた時刻、コンピュータ名、プロセス名、ユーザ名などが記録されており、例えば日付をキーにして集計すれば、日別のアクセス数を、コンピュータ名をキーにして集計すれば、危険なアクセスを試みたコンピュータのランキングを算出することなどが可能になる。
Further, FIG. 7 shows an example of information recorded in the
なお、クライアントプログラム10Fが付加するヘッダ名およびヘッダのフォーマットに関しては、予めサーバプログラム20Fと、クライアントプログラム10Fの間で取り決めておき、記憶装置10B、20Bに各々記憶しておく。
Note that the header name and header format added by the client program 10F are agreed upon in advance between the server program 20F and the client program 10F, and stored in the
上述したように、本発明においては、パケットを解析する場所(例えば、通信の送信元を特定する場所)を通信経路の終端(Webサーバなど)ではなく、通信経路の途中かつ管理者が管理できる場所(プロキシサーバなど)に設置する。これにより、通信の宛先に影響されることなく、全てのパケットの解析を行い、簡便かつ正確に通信の送信元を特定することができる。 As described above, in the present invention, the place where packets are analyzed (for example, the place where the source of communication is identified) is not located at the end of the communication path (such as a web server), but is located somewhere along the communication path and can be managed by the administrator. place (such as a proxy server). As a result, all packets can be analyzed without being affected by the destination of the communication, and the source of the communication can be easily and accurately identified.
また、クライアントの情報を特定することにより、例えば、危険な接続先への通信を遮断してマルウェアによる被害を防ぐ場合に、クライアント端末装置に残っているマルウェアに対しても対策を打つことができる。また、データベース20Gに記録された情報を参照することで、例えば頻繁に危険なサイトにアクセスを試みている端末を特定することができ、セキュリティ監査などの際に有効なデータを提供することができる。
In addition, by identifying client information, for example, when preventing damage caused by malware by blocking communication to a dangerous connection destination, it is possible to take measures against malware remaining on the client terminal device. . In addition, by referring to the information recorded in the
[第二の実施形態]
パケットの送信元クライアントを特定することにより、たとえば、以下のような効果を得ることができる。受信したパケットに付加されたクライアント固有の情報から、危険なWebサイトへアクセスリクエストを行ったコンピュータおよびプログラムを特定することができる。以下では、パケットの送信元クライアントとプログラムをサーバ装置にて特定した後の処理について説明する。なお、本実施形態の動作の大部分が第一の実施形態の動作と共通するため、ここでは、第一の実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。
[Second embodiment]
By identifying the source client of the packet, the following effects can be obtained, for example. The computer and program that made the access request to the dangerous website can be identified from the client-specific information added to the received packet. In the following, processing after the server device identifies the source client and program of the packet will be described. Note that since most of the operations of this embodiment are the same as those of the first embodiment, only the operations that are different from the first embodiment will be explained here, and the explanation of the common operations will be omitted.
図8は、サーバ装置20の処理を示すフローチャートである。演算装置20Cは、受信したパケットが危険なWebサイトへのリクエストか否かを判定する(S-801)。なお、パケットが危険なWebサイトへのアクセスのものかどうかの判断は、HTTPリクエストヘッダの標準ヘッダに含まれる「Host」と、記憶装置20Bに予め記憶されている危険なWebサイトのホスト名のリストとを比較して判断する。危険なWebサイトではないと判定された場合(S-801のNO)、パケットを宛先に送信し処理を終了する。なお、上述した説明では、サーバ装置20にて受信したパケットが危険なWebサイトへのリクエストか否かを判定しているが、ネットワーク30に接続されている不図示の装置(たとえば、UTM)にて判定を行ってもよい。その場合、ステップS-801は省略される。
FIG. 8 is a flowchart showing the processing of the server device 20. The
また、危険なWebサイトへのアクセスだと判断された場合(S-801のYES)、クライアント装置10およびサーバ装置20は、図2のS-204~S-206、図3のS-301~S-208、および図4のS-401~S-406に記載の処理を行い、クライアントの特定(コンピュータ名、プログラム名など)を行う(S-802)。これらの処理は実施形態1に記述されているため、本実施形態での記述は省略する。 Furthermore, if it is determined that the access is to a dangerous website (YES in S-801), the client device 10 and server device 20 will The processes described in S-208 and S-401 to S-406 in FIG. 4 are performed to identify the client (computer name, program name, etc.) (S-802). Since these processes are described in the first embodiment, their description in this embodiment will be omitted.
演算装置20Cは、S-802にて特定したプログラムが、Webブラウザか否かを判定する(S-803)。Webブラウザか否かの判定は、記憶装置20Bに予め記憶されているWebブラウザを示すプログラム情報に基づいて判定される。特定したプログラムがWebブラウザである場合、たとえば、フィッシングメールに記載されている危険なURLからジャンプしたことが推測できる。そこで、Webブラウザと判定された場合(S-803のYES)、演算装置20Cは、クライアントのメールの設定を変更する(S-804)。たとえば、フィッシングメールが届かないようにするために、ステップS-803にて特定したクライアントの操作履歴からフィッシングメールを送信した宛先を調べ、その宛先からのメールを受信しない設定にする。なお、メール設定は、サーバ装置20に記憶されていてもよいし、クライアント端末装置10、不図示のメールサーバに記憶されてもよい。
The
演算装置20Cは、特定したプログラムが、一般的なアプリケーションか否かを判定する(S-805)。一般的なアプリケーションか否かの判定は、記憶装置20Bに予め記憶されている一般的なアプリケーションを示すプログラム情報に基づいて判定される。一般的なアプリケーション(たとえば、表計算ソフト、文書作成ソフトなど)である場合、一般的なアプリケーションの脆弱性を利用したリクエストと推測される。そこで、一般的なアプリケーションと判定された場合(S-805のYES)、演算装置20Cは、クライアント端末装置10に脆弱性を修正する修正プログラムを適用する(S-806)。なお、一般的なアプリケーションと修正プログラムの取得先(ダウンロードサーバ)を対応付けて記憶装置20Bに予め記憶しておき、該当する取得先にアクセスして修正プログラムを取得し、クライアント端末装置10に修正プログラムを適用してもよい。また、修正プログラムを一般的なアプリケーションと対応付けて記憶装置20Bに予め記憶していてもよい。
The
演算装置20Cは、特定したプログラムが一般的なアプリケーションではないと判定された場合(S-805のNO)、ウイルススキャンまたは隔離命令をクライアント端末装置10に送信する(S-807)。特定したプログラムがWebブラウザや一般的なアプリケーションではない場合、マルウェア自身がC&Cサーバなど危険な接続先と通信していることが推測できる。そこで、クライアント端末装置10内のウイルススキャンを行ったり、ネットワークから隔離したり、感染が拡大しないようにするといった対策が必要である。なお、ステップS-803やステップS-805にて、判定基準とした所定のプログラムであるWebブラウザや一般的なアプリケーションは一例であって、これに限定されない。
If it is determined that the identified program is not a general application (NO in S-805), the
上述したように、クライアント固有の情報(クライアント情報)を付加することで、通常のパケットだけではわからない、クライアント端末装置側の状況を把握でき、かつ即座に適切な対策を講じることができる。 As described above, by adding client-specific information (client information), it is possible to grasp the situation on the client terminal device side, which cannot be understood from ordinary packets alone, and to take appropriate measures immediately.
[第三の実施形態]
本実施形態では、操作履歴を用いることによって、一見無害であるWebサイトからの被害を発見して対処する処理について説明する。なお、本実施形態の動作の大部分が第一の実施形態および第二の実施形態の動作と共通するため、ここでは、第一の実施形態および第二の実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。
[Third embodiment]
In this embodiment, a process of discovering and dealing with damage from seemingly harmless websites by using operation history will be described. Note that most of the operations of this embodiment are the same as those of the first embodiment and the second embodiment, so only the operations that are different from the first and second embodiments will be explained here. , description of common operations will be omitted.
図9は、操作履歴の一例を示す図である。図9の操作履歴を参照すると、レコード902にて、日付「2020/11/18」、時刻「11:00:00」に、ユーザ名「userC」がPC名「PC-C」において、「http://aaa.com」というURLにアクセスしたことが記録されている。もし、「http://aaa.com」が危険なWebサイトであると判明した場合、まずは該当のURL「http://aaa.com」にアクセスした「PC-C」に対してウイルススキャンをかける、または、該当のURLへのアクセスを禁止にするなどの処置を行うことが必要となる。
FIG. 9 is a diagram showing an example of an operation history. Referring to the operation history in Figure 9, in
ただ、危険なWebサイトは、全て悪意のある者によって作られたわけではなく、通常のWebサイトであったURLが、悪意ある第三者に乗っ取られ、マルウェアを配布するなどの危険な動きをするように改ざんされるという場合もある。また、該当のURLが危険かどうかの判定は、アンチウィルスベンダーによる調査が行われた後に行われるので、Webサイトが改ざんされた瞬間ではなく、しばらく時間が経過した後になる。そのため、無害であると判定されている時期でも、実際にはすでに危険なWebサイトに改ざんされている可能性があるので、危険であると判定される以前に該当のURLにアクセスしたPCに対しても、ウイルススキャンなどの処置を行う必要がある。 However, not all dangerous websites are created by malicious parties; instead, the URL of a normal website is hijacked by a malicious third party and performs dangerous activities such as distributing malware. In some cases, it may be falsified. Furthermore, since the determination as to whether the URL is dangerous or not is made after an investigation by the antivirus vendor, it is not determined at the moment when the website is tampered with, but after some time has elapsed. Therefore, even if the website is determined to be harmless, there is a possibility that it has already been modified into a dangerous website, so please be aware that the website may not be able to be accessed on any PC that accessed the URL before it was determined to be dangerous. However, it is necessary to take measures such as virus scanning.
図10は、サーバ装置20の処理を示すフローチャートである。なお、図10のフローチャートにおいて図8に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、この処理ステップに係る説明は省略する。 FIG. 10 is a flowchart showing the processing of the server device 20. Note that in the flowchart of FIG. 10, the same processing steps as those shown in FIG. 8 are given the same step numbers, and a description of these processing steps will be omitted.
まず、ステップS-801において、演算装置20Cが、あるクライアント端末装置10(たとえば、「PC-C」)がアクセスしようとしたURL(たとえば、「http://aaa.com」)が危険であると判定したとする。その後、演算装置20Cは、記憶装置20Bに記録されている全てのクライアント端末装置10にて記録された操作履歴を参照する(S-1001)。次に、演算装置20Cは、危険であると判定されたURLに対して、ステップS-801において検出されたパケットを発信したクライアント端末装置10(たとえば、「PC-C」)以外からのアクセスが、操作履歴に存在するかどうかを判定する(S-1002)。
First, in step S-801, the
図9の操作履歴を参照すると、レコード901にて、URL「http://aaa.com」に対しては、日付「2020/08/10」、時刻「14:00:00」にも、PC名「PC-A」がアクセスしていることがわかる。演算装置20Cは、他のクライアント端末装置10によるアクセスが確認されない場合(S-1002のNO)、何もせずに処理をステップS-803へ移行する。アクセスが確認された場合(S-1002のYES)、演算装置20Cは、該当クライアント端末装置10(たとえば、「PC-A」)に対して、ウイルススキャンまたは隔離命令を送信する(S-1003)。たとえば、図9の操作履歴の場合、「PC-A」による該当URL「http://aaa.com」へのアクセスが確認されたため、演算装置20Cは、「PC-A」に対してウイルススキャンなどの命令を発行する。
Referring to the operation history in Figure 9, in
上述したように、操作履歴を参照することで、一見無害であるWebサイトからの被害を発見し、その対処を行うことができる。 As described above, by referring to the operation history, damage caused by seemingly harmless websites can be discovered and countermeasures can be taken.
[第四の実施形態]
本実施形態では、クライアント端末装置10においてローカル時刻が変更された場合でも、Webサイトからの被害を発見して対処する処理について説明する。
[Fourth embodiment]
In this embodiment, a process for discovering and dealing with damage from a website even when the local time is changed on the client terminal device 10 will be described.
第三の実施形態では、演算装置20Cが操作履歴を参照することによって、危険なURLに対して、過去に他のクライアント端末装置10からのアクセスが存在したかどうかを判定する処理を行っていた。しかし、操作履歴の「時刻」を、クライアント端末装置10のローカルの時刻を基に記録している場合、ローカル時刻を基の時刻から変更してしまうと、操作履歴の時刻も変わってしまう。
In the third embodiment, the
ローカル時刻の変更自体を禁止すれば、上述した問題の発生を防止することができるが、プログラムのテスト等、悪意のない目的での時刻変更を阻害し、利便性を損なうことにもなるため、一概に時刻の変更を禁止することは適切ではない。そのため、ローカル時刻の変更を許容しつつ、操作履歴の正しい時刻を取得できるような手段が必要となる。そこで、クライアント端末装置10のローカル時刻が変更された際、演算装置10Cは、変更前と変更後の時間差を記憶して、その差(オフセット)を操作履歴に記録しておく。時間差(オフセット)を操作履歴に記録する例を、図11に示す。図11は、操作履歴の一例を示す図である。
Prohibiting changes to the local time itself can prevent the above-mentioned problems from occurring, but it also prevents time changes for non-malicious purposes, such as program testing, and impairs convenience. It is not appropriate to prohibit time changes in general. Therefore, there is a need for a means that can obtain the correct time in the operation history while allowing the local time to be changed. Therefore, when the local time of the client terminal device 10 is changed, the
図12は、サーバ装置20の処理を示すフローチャートである。なお、図12のフローチャートにおいて図8に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、この処理ステップに係る説明は省略する。 FIG. 12 is a flowchart showing the processing of the server device 20. Note that in the flowchart of FIG. 12, the same processing steps as those shown in FIG. 8 are given the same step numbers, and a description of these processing steps will be omitted.
ステップS-801において、日付「2020/11/18」、時刻「11:00:00」に、PC名「PC-C」がアクセスしたURL「http://aaa.com」が、演算装置20Cによって危険であるWebサイトであると判定したとする。演算装置20Cは、以前に他のクライアント端末装置10にて同一のURL「http://aaa.com」にアクセスしたかどうかを判定するために、記憶装置20Bに記憶されている全てのクライアント端末装置10にて記録された操作履歴を参照する(S-1201)。
In step S-801, the URL "http://aaa.com" accessed by the PC name "PC-C" on the date "2020/11/18" and the time "11:00:00" is Assume that the website is determined to be dangerous. The
演算装置20Cは、オフセットの値を用いた時刻の再計算を行う(S-1202)。たとえば、図11のレコード1101には、「PC-A」が日付「2020/11/19」時刻「14:00:00」に「http://aaa.com」へアクセスした操作履歴が存在するが、時刻のオフセットには、この操作履歴が本来の時刻から48時間進んだものであることが記録されているため、オフセットを加味して時刻を再計算すると、日付「2020/11/17」、時刻「14:00:00」となる。
The
演算装置20Cは、ステップS-1202にて再計算された時刻を適用し、過去に該当のURL「http://aaa.com」にアクセスした履歴があるか否かを判定する(S-1203)。たとえば、図11のレコード1101は、ステップS-1202にて再計算された日付「2020/11/17」、時刻「14:00:00」に、「PC-A」において、「http://aaa.com」にアクセスがあったことが確認できる。
The
演算装置20Cは、他のクライアント端末装置10によるアクセスが確認されない場合(S-1203のNO)、何もせずに処理をステップS-803へ移行する。アクセスが確認された場合(S-1203のYES)、演算装置20Cは、該当クライアント端末装置10(たとえば、「PC-A」)に対して、ウイルススキャンまたは隔離命令を送信する(S-1204)。
If access by another client terminal device 10 is not confirmed (NO in S-1203), the
たとえば、図11の操作履歴の場合、「PC-A」による該当URL「http://aaa.com」へのアクセスが確認されたため、演算装置20Cは、「PC-A」に対してウイルススキャンなどの命令を発行する。従って、「PC-A」に対しても、ウイルススキャン命令を出すなどの対処を行うことができる。
For example, in the case of the operation history in FIG. 11, since access to the corresponding URL "http://aaa.com" by "PC-A" has been confirmed, the
上述したように、クライアント端末装置10においてローカル時刻が変更された場合でも、変更された時刻のオフセットの値を操作履歴に記録しておくことで、第三の実施形態と同様な対処を行うことができる。 As described above, even if the local time is changed in the client terminal device 10, the same measures as in the third embodiment can be taken by recording the offset value of the changed time in the operation history. Can be done.
[第五の実施形態]
本実施形態では、ハッシュ値を用いることによって、潜伏しているマルウェアが存在するクライアント端末装置を発見して対処する処理について説明する。なお、本実施形態の動作の大部分が第一の実施形態ないし第四の実施形態の動作と共通するため、ここでは、第一の実施形態ないし第四の実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。
[Fifth embodiment]
In this embodiment, a process of discovering and dealing with a client terminal device in which latent malware exists by using a hash value will be described. Note that since most of the operations of this embodiment are the same as those of the first to fourth embodiments, only the operations that are different from the first to fourth embodiments will be explained here. , description of common operations will be omitted.
第三及び第四の実施形態では、演算装置20Cが操作履歴を参照することによって、危険なWebサイトに対して、過去に他のクライアント端末装置10からのアクセスが存在したかどうかを判定する処理を行っていた。本実施形態では、クライアント端末装置10からパケットを送信したプログラム(クライアント端末装置10上で動作し、ネットワークI/F10Dおよびネットワーク30を介して、リクエストパケットを外部に送信するプログラムのハッシュ値を、クライアント固有の情報として、図3に示すS-306~S-308の操作にて作成する、クライアント固有の情報を伝達するパケットを介して、クライアント端末装置10からサーバ装置20へ伝達する。また、操作履歴に、パケットを送信したプログラム(通信のリクエストを行ったプログラム)のハッシュ値を記録する。
In the third and fourth embodiments, the
操作履歴にハッシュ値を付加した例として、図13を示す。図13は、操作履歴の一例を示す図である。図9および図11に表される操作履歴と同様の意味を持つが、図11に加えて、通信のリクエストを行ったプログラムのハッシュ値が記録されている。ハッシュ値は、クライアントプログラム10Fによって、プログラムのバイナリの値をキーとして、SHA-1やSHA-256といったアルゴリズムによって算出され、その後操作履歴として記憶装置10Bに記録される。
FIG. 13 shows an example in which a hash value is added to the operation history. FIG. 13 is a diagram showing an example of an operation history. It has the same meaning as the operation history shown in FIGS. 9 and 11, but in addition to FIG. 11, the hash value of the program that made the communication request is recorded. The hash value is calculated by the client program 10F using an algorithm such as SHA-1 or SHA-256 using the binary value of the program as a key, and is then recorded in the
レコード1301には、ハッシュ値として「AAAAAA...」という値が記録されているが、これは、ハッシュ値「 AAAAAA...」のプログラムが通信リクエストを行ったことを表している。また、レコード1301とレコード1302のハッシュの値が「 AAAAAA...」で一致しているが、これは、2つの通信リクエストが、別々のクライアント端末装置10(PC-A、PC-C)から発せられているにも拘らず、全く同一のプログラムから行われたことを表している。
In the
図14は、サーバ装置20の処理を示すフローチャートである。以下では、一例として、図13に示す操作履歴が記録されているものとして説明を行う。 FIG. 14 is a flowchart showing the processing of the server device 20. The following description will be made assuming that the operation history shown in FIG. 13 is recorded as an example.
まず、ステップS-801において、演算装置20Cが、あるクライアント端末装置10がアクセスしようとしたURL(たとえば、「http://01234.com」)が危険であると判定したとする。以下では、日付「2020/11/21」時刻「16:00:00」に、「PC-X」から、ハッシュ値「AAAAAA...」のプログラムが、「http://01234.com」というURLに対してアクセスを行ったものとして説明する。
First, assume that in step S-801, the
その後、演算装置20Cは、記憶装置20Bに記録されている全てのクライアント端末装置10にて記録された操作履歴を参照する(S-1401)。
After that, the
次に、クライアント装置10およびサーバ装置20は、図3および図4の処理を行い、クライアントの特定(ハッシュ値)を行う(S-802)。次に、演算装置20Cは、ステップS-1401にて参照した操作履歴の中から、S-802で取得したハッシュ値と同一のハッシュ値を持つプログラムによる通信が存在するかどうかを判定する(S-1402)。
Next, the client device 10 and the server device 20 perform the processes shown in FIGS. 3 and 4 to identify the client (hash value) (S-802). Next, the
過去に同一のハッシュ値を持つプログラムによる通信が存在する場合(ステップS-1402のYES)、危険なURL(「http://01234.com)へアクセスしたものと全く同一のプログラムが存在するということになる。図13に示す操作履歴の場合、URL「http://01234.com」に対しては過去にアクセスした痕跡が無いが、ハッシュ値「AAAAAA...」による通信は、操作履歴のレコード1301とレコード1302の2件が該当する。
If there has been communication by a program with the same hash value in the past (YES in step S-1402), it is determined that there is a program that is exactly the same as the one that accessed the dangerous URL ("http://01234.com"). In the case of the operation history shown in Figure 13, there is no trace of the URL "http://01234.com" being accessed in the past, but the communication using the hash value "AAAAAA..." Two records,
仮に、ハッシュ値「 AAAAAA...」のプログラムがマルウェアである場合、操作履歴に記憶されているURL「http://aaa.com」および「http://ddd.com」が危険ではないと判定されていたとしても、これらは未知のC&Cサーバなどの危険なサイトである可能性が高い。従って、PC名「PC-A」とPC名「PC-C」にも、既に同じマルウェアが侵入していることがわかるため、演算装置20Cから、これらのクライアント端末装置10に対して、ウイルススキャンまたは隔離命令を送信する(S-1403)。
If the program with the hash value "AAAAAA..." is malware, even if the URLs "http://aaa.com" and "http://ddd.com" stored in the operation history are determined to be not dangerous, there is a high possibility that they are dangerous sites such as unknown C&C servers. Therefore, since it is clear that the same malware has already infiltrated PCs named "PC-A" and "PC-C," the
上述したように、ハッシュ値を用いることで、危険なURLにアクセスすることなく潜伏しているマルウェアが存在するクライアント端末装置を発見し、そのクライアント端末装置に対しても対処を行うことができる。 As described above, by using the hash value, it is possible to discover a client terminal device that has hidden malware without accessing a dangerous URL, and take countermeasures against that client terminal device.
[第六の実施形態]
本実施形態では、ユーザアカウントを用いることによって、危険なWebサイトへアクセスを行おうとした同一ユーザによる、他のクライアント端末装置でのログインを制限する処理について説明する。
[Sixth embodiment]
In this embodiment, a process will be described in which, by using a user account, the same user who attempts to access a dangerous website is restricted from logging in on another client terminal device.
第一の実施形態では、クライアント端末装置10から送信されるHTTPリクエストのメッセージヘッダに、クライアント固有の情報として、クライアント端末装置10のコンピュータ名を付加することで、危険なWebサイトへのアクセスを行おうとしたクライアント端末装置10を特定し、ネットワークから隔離する等の処置を行った。しかし、クライアント端末装置10に対して何らかの処置を施したとしても、そのクライアント端末装置10を使用したユーザが別のクライアント端末装置10を使用した場合、同じような危険なWebサイトに接続を試みる可能性がある。そこで、本実施形態では、演算装置10Cが、クライアント固有の情報として、ログインしているユーザを示す情報である、ユーザアカウント(ユーザ名)を付加することにより、サーバ装置20は、危険なWebサイトへのアクセス時にクライアント端末装置10にログインしていたユーザアカウントを特定でき、特定したユーザアカウントを用いて、同一のユーザによるクライアント端末装置10へのログインを制限することができる。
In the first embodiment, the computer name of the client terminal device 10 is added as client-specific information to the message header of the HTTP request sent from the client terminal device 10, thereby allowing access to a dangerous website. The client terminal device 10 that attempted to do so was identified and measures such as isolating it from the network were taken. However, even if some action is taken on the client terminal device 10, if the user who used that client terminal device 10 uses another client terminal device 10, there is a possibility that the user may attempt to connect to a similar dangerous website. There is sex. Therefore, in the present embodiment, the
図15は、情報処理システムの構成例を示すシステム構成図である。図15に示す情報処理システムは、図1に示す情報処理システムの構成に加えて、サーバ装置60、複数のクライアント端末装置11を含む。サーバ装置60の大部分は、サーバ管理装置20と共通するため、以下では説明を省略し、異なる部分のみ説明する。なお、本実施形態の動作の大部分が第一の実施形態ないし第五の実施形態の動作と共通するため、ここでは、第一の実施形態ないし第五の実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。 FIG. 15 is a system configuration diagram showing an example of the configuration of an information processing system. The information processing system shown in FIG. 15 includes a server device 60 and a plurality of client terminal devices 11 in addition to the configuration of the information processing system shown in FIG. Most of the server device 60 is the same as the server management device 20, so the explanation will be omitted below, and only the different parts will be explained. Note that since most of the operations of this embodiment are the same as those of the first to fifth embodiments, only the operations that are different from the first to fifth embodiments will be explained here. , description of common operations will be omitted.
サーバ装置60には、ネットワーク30内に存在するすべてのクライアント端末装置10のログインを管理する、ログイン管理プログラム60Fが格納されている。なお、ログイン管理プログラム60Fと、サーバプログラム20Fは同一のサーバ装置上で実現する構成でもよい。
The server device 60 stores a
また、記憶装置60Bには、ネットワーク30内に存在するすべてのクライアント端末装置10のユーザアカウント(アカウント名)とログイン制限(許可/拒否)が対応付けられたアカウント管理テーブルが記録されている。図17に、アカウント管理テーブルの一例を示す。アカウント管理テーブルは、後述するように、危険なWebサイトにアクセスしたユーザアカウントを特定することで記録される。なお、アカウント管理テーブルは、管理者によって記録されてもよい。ログインを管理するログイン管理プログラム60Fは、演算装置60Cによる制御に従って適宜メモリ60EのRAMにロードされ、演算装置60Cによる処理対象となる。
Further, the
また、本実施形態では、クライアント端末装置10にログインを行う際、図16に示す処理が行われる。図16は、ログイン制限を示したシーケンス図である。任意のクライアント端末装置10において、ユーザによってログインが試みられたことをクライアント装置10の演算装置10Cが検知する(S-1601)。
Furthermore, in this embodiment, when logging in to the client terminal device 10, the process shown in FIG. 16 is performed. FIG. 16 is a sequence diagram showing login restrictions. In any client terminal device 10, the
演算装置10Cは、ネットワークI/F10Dおよびネットワーク30を介して、サーバ装置60に、ログインが可能かどうかの問い合わせを行う(S-1602)。また、問い合わせの際には、ログインしようとしているユーザアカウントも一緒に送信されるものとする。
The
問い合わせを受け取った演算装置60Cは、記憶装置60Bに記憶されているアカウント管理テーブルに基づいて、ロードしたユーザアカウントと、問い合わせに含まれるユーザアカウントとを比較し、ログイン可能かどうかを判定する(S-1603)。
Upon receiving the inquiry, the computing device 60C compares the loaded user account with the user account included in the inquiry based on the account management table stored in the
演算装置60Cは、問い合わせ元のクライアント端末装置10に、判定の結果(ログインの許可または拒否)の返答を返す(S-1604)。クライアント端末装置10の演算装置10Cは、受信した判定結果に基づいて、ログインの許可/拒否を行う。たとえば、図17に示すように、userAからのログインは許可され、userBからのログインは拒否される、ということになる。
The computing device 60C returns a response of the determination result (login permission or denial) to the client terminal device 10 that made the inquiry (S-1604). The
あるユーザが、危険なWebサイトへのアクセスを行ったとする(図8のステップS-801にてYESと判定されたとする)。上述したように、本実施形態では、演算装置10Cにより、リクエストパケットにログインしているユーザアカウントが付加されているため、演算装置20Cは、リクエストを行ったユーザアカウントを特定できる。そこで、演算装置20Cは、ネットワークI/F20Dおよびネットワーク30を介し、サーバ装置60の記憶装置60Bに記録されているアカウント管理テーブルの、危険なWebサイトへのアクセスを行ったユーザのユーザアカウントに対応するログイン制限を「拒否」と記録する。
Assume that a certain user accesses a dangerous website (assuming that the determination in step S-801 in FIG. 8 is YES). As described above, in this embodiment, since the
上述したように、危険なWebサイトへのアクセスを試みたユーザが、別のクライアント端末装置からログインしようとした際に、そのログインを禁止することができる。これにより、同一ユーザによる危険なWebサイトへのアクセスを抑止することができる。 As described above, when a user who attempts to access a dangerous website attempts to log in from another client terminal device, that login can be prohibited. This makes it possible to prevent the same user from accessing dangerous websites.
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(たとえば、ASIC)によっても実現可能である。
[Other embodiments]
The present invention provides a system or device with a program that implements one or more functions of the embodiments described above via a network or a storage medium, and one or more processors in a computer of the system or device reads and executes the program. This can also be achieved by processing. It can also be realized by a circuit (for example, an ASIC) that realizes one or more functions.
Claims (18)
クライアント端末装置と、情報機器と、サーバ装置とを有し、
前記サーバ装置は、
前記情報機器を介して前記クライアント端末装置からリクエストパケットを受信する第一の受信手段と、
前記第一の受信手段にて受信したリクエストパケットに、特定のパケットの宛先を示す情報が含まれるか否かを判定する第一の判定手段と、
前記第一の判定手段にて特定のパケットの宛先を示す情報が含まれると判定された場合、特定の情報を付加したパケットを、前記情報機器を介して前記クライアント端末装置に送信する第一の送信手段と
を備え、
前記クライアント端末装置は、
前記情報機器を介して前記サーバ装置からパケットを受信する第二の受信手段と、
前記第二の受信手段にて受信したパケットに、前記特定の情報が含まれるか否かを判定する第二の判定手段と、
前記第二の判定手段にて特定の情報が含まれると判定された場合、パケットにクライアント固有の情報を付加して、前記サーバ装置に前記情報機器を介して送信する第二の送信手段と
を備え、
前記サーバ装置は、さらに、
前記情報機器を介して前記クライアント端末から送信されたパケットを受信する第三の受信手段と、
前記第三の受信手段にて受信したパケットから、前記クライアント固有の情報を抽出する抽出手段と
を備えることを特徴とする情報処理システム。 An information processing system,
It has a client terminal device, an information device, and a server device,
The server device includes:
first receiving means for receiving a request packet from the client terminal device via the information device;
first determining means for determining whether the request packet received by the first receiving means includes information indicating a destination of a specific packet;
If the first determining means determines that information indicating the destination of the specific packet is included, the first determining means transmits the packet with the specific information added to the client terminal device via the information device. and a transmission means,
The client terminal device includes:
second receiving means for receiving packets from the server device via the information device;
a second determining means for determining whether or not the specific information is included in the packet received by the second receiving means;
If the second determining means determines that specific information is included, a second transmitting means adds client-specific information to the packet and transmits the packet to the server device via the information device. Prepare,
The server device further includes:
third receiving means for receiving packets transmitted from the client terminal via the information device;
An information processing system comprising: extraction means for extracting the client-specific information from the packet received by the third reception means.
前記サーバ装置は、更に、前記操作履歴に特定のパケットの宛先を示す情報があるか否かを判定する第四の判定手段を備えることを特徴とする請求項6に記載の情報処理システム。 The operation history includes information indicating a destination of the packet,
7. The information processing system according to claim 6, wherein the server device further includes fourth determining means for determining whether or not the operation history includes information indicating a destination of a specific packet.
前記サーバ装置は、更に、前記オフセットの値に基づいて、前記クライアント端末装置の時刻を算出する算出手段を備え、
前記第四の判定手段は、前記算出手段にて算出された時刻に基づいて判定することを特徴とする請求項7に記載の情報処理システム。 The operation history includes an offset value that is the difference between the time before the change and the time after the change of the client terminal device,
The server device further includes calculation means for calculating the time of the client terminal device based on the value of the offset,
8. The information processing system according to claim 7, wherein the fourth determining means makes the determination based on the time calculated by the calculating means.
前記サーバ装置は、更に、前記操作履歴に特定のハッシュ値があるか否かを判定する第五の判定手段を備えることを特徴とする請求項6に記載の情報処理システム。 The operation history includes a hash value of a program that sent the packet,
7. The information processing system according to claim 6, wherein the server device further includes a fifth determination unit that determines whether or not the operation history includes a specific hash value.
前記抽出手段は、前記第三の受信手段にて受信したパケットから、前記ユーザを示す情報を抽出し、前記ユーザを示す情報と、前記クライアント端末装置へのログインの制限に関する情報とが対応付けられたテーブルに、該ユーザを示す情報を記録することを特徴とする請求項1に記載の情報処理システム。 The client-specific information is information indicating a user,
The extracting means extracts information indicating the user from the packet received by the third receiving means, and associates the information indicating the user with information regarding restrictions on login to the client terminal device. 2. The information processing system according to claim 1, wherein information indicating the user is recorded in the table.
前記クライアント端末装置へのログインが試みられた時に、前記クライアント端末装置のユーザを示す情報を含めた情報を、前記サーバ装置に送信し、
前記サーバ装置は、
前記テーブルに基づいて、受信した前記クライアント端末装置のユーザを示す情報における前記クライアント端末装置へのログインの制限を判定することを特徴とする請求項10に記載の情報処理システム。 The client terminal device includes:
transmitting information including information indicating a user of the client terminal device to the server device when a login to the client terminal device is attempted;
The server device includes:
The information processing system according to claim 10, wherein a restriction on login to the client terminal device in the received information indicating the user of the client terminal device is determined based on the table.
前記第一の受信手段にて受信したリクエストパケットに、特定のパケットの宛先を示す情報が含まれるか否かを判定する第一の判定手段と、
前記第一の判定手段にて特定のパケットの宛先を示す情報が含まれると判定された場合、特定の情報を付加したパケットを、前記情報機器を介して前記クライアント端末装置に送信する送信手段と、
前記情報機器を介して前記クライアント端末から送信されたパケットを受信する第二の受信手段と、
前記第二の受信手段にて受信したパケットから、クライアント固有の情報を抽出する抽出手段と
を備えることを特徴とするサーバ装置。 a first receiving means for receiving a request packet from a client terminal device via the information device;
first determining means for determining whether the request packet received by the first receiving means includes information indicating a destination of a specific packet;
a transmitting means for transmitting a packet to which specific information is added, to the client terminal device via the information device when the first determining means determines that information indicating a destination of the specific packet is included; ,
second receiving means for receiving packets transmitted from the client terminal via the information device;
and extracting means for extracting client-specific information from the packet received by the second receiving means.
前記第一の受信工程にて受信したリクエストパケットに、特定のパケットの宛先を示す情報が含まれるか否かを判定する第一の判定工程と、
前記第一の判定工程にて特定のパケットの宛先を示す情報が含まれると判定された場合、特定の情報を付加したパケットを、前記情報機器を介して前記クライアント端末装置に送信する送信工程と、
前記情報機器を介して前記クライアント端末から送信されたパケットを受信する第二の受信工程と、
前記第二の受信工程にて受信したパケットから、クライアント固有の情報を抽出する抽出工程と
を備えることを特徴とするサーバ装置の制御方法。 a first receiving step of receiving a request packet from the client terminal device via the information device;
a first determination step of determining whether the request packet received in the first reception step includes information indicating a destination of a specific packet;
If it is determined in the first determination step that information indicating the destination of the specific packet is included, a transmission step of transmitting the packet with the specific information added to the client terminal device via the information device; ,
a second receiving step of receiving a packet transmitted from the client terminal via the information device;
A method for controlling a server device, comprising: an extraction step of extracting client-specific information from the packet received in the second reception step.
情報機器を介してクライアント端末装置からリクエストパケットを受信する第一の受信手段と、
前記第一の受信手段にて受信したリクエストパケットに、特定のパケットの宛先を示す情報が含まれるか否かを判定する第一の判定手段と、
前記第一の判定手段にて特定のパケットの宛先を示す情報が含まれると判定された場合、特定の情報を付加したパケットを、前記情報機器を介して前記クライアント端末装置に送信する送信手段と、
前記情報機器を介して前記クライアント端末から送信されたパケットを受信する第二の受信手段と、
前記第二の受信手段にて受信したパケットから、クライアント固有の情報を抽出する抽出手段
として機能させるためのプログラム。 computer,
a first receiving means for receiving a request packet from a client terminal device via the information device;
first determining means for determining whether the request packet received by the first receiving means includes information indicating a destination of a specific packet;
If the first determining means determines that information indicating a destination of the specific packet is included, transmitting means transmits the packet with the specific information added to the client terminal device via the information device; ,
second receiving means for receiving packets transmitted from the client terminal via the information device;
A program for functioning as an extraction means for extracting client-specific information from a packet received by the second reception means.
前記受信手段にて受信したパケットに、特定の情報が含まれるか否かを判定する判定手段と、
前記判定手段にて特定の情報が含まれると判定された場合、パケットにクライアント固有の情報を付加して、前記サーバ装置に前記情報機器を介して送信する送信手段と
を備えることを特徴とするクライアント端末装置。 receiving means for receiving packets from the server device via the information device;
determining means for determining whether specific information is included in the packet received by the receiving means;
If the determination means determines that specific information is included, the information processing apparatus further comprises a transmission means for adding client-specific information to the packet and transmitting the packet to the server device via the information device. Client terminal device.
前記受信工程にて受信したパケットに、特定の情報が含まれるか否かを判定する判定工程と、
前記判定工程にて特定の情報が含まれると判定された場合、パケットにクライアント固有の情報を付加して、前記サーバ装置に前記情報機器を介して送信する送信工程と
を備えることを特徴とするクライアント端末装置の制御方法。 a receiving step of receiving the packet from the server device via the information device;
a determination step of determining whether specific information is included in the packet received in the receiving step;
If it is determined in the determination step that specific information is included, the packet includes a sending step of adding client-specific information to the packet and transmitting the packet to the server device via the information device. A method of controlling a client terminal device.
情報機器を介してサーバ装置からパケットを受信する受信手段と、
前記受信手段にて受信したパケットに、特定の情報が含まれるか否かを判定する判定手段と、
前記判定手段にて特定の情報が含まれると判定された場合、パケットにクライアント固有の情報を付加して、前記サーバ装置に前記情報機器を介して送信する送信手段
として機能させるためのプログラム。
computer,
receiving means for receiving packets from the server device via the information device;
determining means for determining whether specific information is included in the packet received by the receiving means;
If the determination means determines that specific information is included, the program adds client-specific information to the packet and causes the program to function as a transmission means for transmitting the packet to the server device via the information device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022143060A JP2024038784A (en) | 2022-09-08 | 2022-09-08 | Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022143060A JP2024038784A (en) | 2022-09-08 | 2022-09-08 | Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024038784A true JP2024038784A (en) | 2024-03-21 |
Family
ID=90308897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022143060A Pending JP2024038784A (en) | 2022-09-08 | 2022-09-08 | Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024038784A (en) |
-
2022
- 2022-09-08 JP JP2022143060A patent/JP2024038784A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10542006B2 (en) | Network security based on redirection of questionable network access | |
US10298610B2 (en) | Efficient and secure user credential store for credentials enforcement using a firewall | |
US10382436B2 (en) | Network security based on device identifiers and network addresses | |
US10425387B2 (en) | Credentials enforcement using a firewall | |
JP6106780B2 (en) | Malware analysis system | |
US9774601B2 (en) | Security of computer resources | |
US9985994B2 (en) | Enforcing compliance with a policy on a client | |
US8875220B2 (en) | Proxy-based network access protection | |
US7966643B2 (en) | Method and system for securing a remote file system | |
US20190081952A1 (en) | System and Method for Blocking of DNS Tunnels | |
US8839424B2 (en) | Cross-site request forgery protection | |
AU2012259113A1 (en) | Malware analysis system | |
US20170237749A1 (en) | System and Method for Blocking Persistent Malware | |
CN111295640B (en) | Fine-grained firewall policy enforcement using session App ID and endpoint process ID correlation | |
US12003537B2 (en) | Mitigating phishing attempts | |
Hindocha et al. | Malicious threats and vulnerabilities in instant messaging | |
Dey et al. | Warezmaster and Warezclient: An implementation of FTP based R2L attacks | |
JP6635029B2 (en) | Information processing apparatus, information processing system, and communication history analysis method | |
JP2024038784A (en) | Information processing system, server device, method for controlling server device, client terminal device, method for controlling client terminal device, and program | |
JP7444596B2 (en) | information processing system | |
CN114072798A (en) | Inline malware detection | |
US11770361B1 (en) | Cobalt strike beacon HTTP C2 heuristic detection | |
Balasubramanian | Web application vulnerabilities and their countermeasures | |
WO2024025705A1 (en) | Cobalt strike beacon http c2 heuristic detection |