The present disclosure relates to a communication network system, a management device, a server device, a whitelist update method, and a program.
It is known that IoT (Internet of Things) devices often communicate with a specific communication pattern. Therefore, authorized communication destinations in IoT devices are learned as a whitelist (hereinafter referred to as “WL”), and communication destinations not included in the whitelist are regarded as an unauthorized communication destination, and it is possible to detect communication with an unauthorized communication destination (hereafter referred to as an “unauthorized communication”) by considering destinations not included in the whitelist as an unauthorized communication destination. The unauthorized communication may occur due to malware infection in IoT devices.
Therefore, there is a technique for generating a whitelist for each IoT device by learning an authorized communication destination for each IoT device by a gateway device connected to the IoT device.
[PTL 1] Japanese Patent Application Publication No. 2019-213103
However, when the communication cycle of the IoT device is longer than the learning period of the whitelist, it is difficult to observe all the communication destinations during the learning period, so that the validity of the whitelist is lowered.
In addition, since it takes some time for the number of communication destinations to stabilize after the whitelist learning is completed, the communication destinations of the IoT devices are added or changed by updating the firmware of the IoT devices after the whitelist learning is completed, or even if it is deleted, the validity of the whitelist will be reduced.
Therefore, in this disclosure, we propose a technique that can enhance the validity of the whitelist.
The communication network system of the present disclosure comprises a server device and a plurality of management devices connected to each of a plurality of IoT devices. Each of the plurality of management devices generates the individual whitelist, which is individually generated in each of the plurality of management devices, and is related to a communication destination of an IoT device connected to an own management device, and uploads the generated individual whitelist to the server device. The server device collects the plurality of individual whitelists uploaded from each of the plurality of management devices, generates an aggregated whitelist that is an aggregated result of the plurality of individual whitelists, and distributes the generated aggregated whitelist to each of the plurality of management devices. Then, each of the plurality of management devices acquires the aggregated whitelist distributed from the server device, and updates the individual whitelist generated by an own management device based on the aggregated whitelist.
According to the disclosed technique, the validity of the whitelist can be enhanced.
Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In the following embodiments, the steps having the same configuration and the same processing are designated by the same reference signs.
<Configuration of Communication Network System>
Each of IoT devices 30A-1 to 30A-5 is respectively connected to each of the management devices 20-1 to 20-5 one by one. The IoT devices 30A-1 to 30A-15 are IoT devices of the same model. In the following, the management devices 20-1 to 20-5 may be collectively referred to as “management device 20”, and the IoT devices 30A-1 to 30A-15 may be collectively referred to as “IoT device 30A”. The management device 20 and the server device 10 are connected to each other via the network 40. The IoT device 30A is a device in which a communication function is added to a device used for exclusive purpose, and an example of the IoT device 30A is a device in which a communication function is added to various devices such as a sensor and a surveillance camera. The IoT device 30A communicates with the communication destination via the management device 20. As an example of the management device 20, an example is a gateway device for connecting the IoT device 30A and the network 40. The Internet is an example of the network 40.
<Configuration of Server Device>
The control unit 13 is realized as hardware, for example, by a processor. Examples of the processor that realizes the control unit 13 include a CPU (Central Processing Unit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and the like. Further, the storage unit 12 is realized as hardware, for example, by a storage medium. Examples of storage media that realize the storage unit 12 include memory, HDD (Hard Disk Drive), SSD (Solid State Drive), and examples of memory include RAM (Random Access Memory) and SDRAM (Synchronous Dynamic Random Access Memory), flash memory, and the like. The communication unit 11 is realized as hardware, for example, by a communication module.
<Structure of Management Device>
The control unit 23 is realized as hardware, for example, by a processor. Examples of the processor that realizes the control unit 23 include a CPU, DSP, FPGA, and the like. Further, the storage unit 22 is realized as hardware, for example, by a storage medium. An example of a storage medium that realizes the storage unit 22 includes a memory, an HDD, an SSD, and the like, further an example of the memory includes a RAM, an SDRAM, a flash memory, and the like. The communication unit 21 is realized as hardware, for example, by a communication module.
<Operation of Communication Network System>
In the management device 20 (
Further, the generation unit 232 generates the “individual WL information” shown in
In the “communication destination information” in
Further, an information indicating the success or failure of learning when the generation unit 232 generates the individual whitelist, is stored in the “learning success or failure information” in
Further, the threshold value used in the update unit 233 is stored in the “threshold value” in
Each upload unit 234 of the management devices 20-1 to 20-15 uploads the individual whitelists W1 to W15 to the server device 10, respectively, by transmitting the individual WL information shown in
In the server device 10 (
The aggregation unit 132 refers to the individual WL information uploaded from each of the management devices 20-1 to 20-15, and generates an “aggregated whitelist” which is the aggregation result of the individual whitelists W1 to W15.
For example, the aggregation unit 132 refers to the communication destination information (
The aggregation unit 132 generates the “aggregated information” shown in
For example, the communication destination aaa.com shown in the list of authorized communication destinations (
Here, since the authorized communication destination in the IoT device 30A is the communication destination registered in the individual whitelist, it corresponds to the communication destination permitted to communicate with the IoT device 30A by the management device 20. Therefore, the acceptance rate corresponding to each communication destination in the aggregated whitelist corresponds to the rate of the number of management devices 20 that permits to communicate with the communication destination to the total number of the plurality of management devices 20.
Further, the aggregation unit 132 refers to the learning success or failure information (
Further, the aggregation unit 132 refers to the learning time information (
Further, the aggregation unit 132 refers to the threshold information (
As described above, the aggregation unit 132 generates the aggregated information shown in
The distribution unit 133 transmits the aggregated information generated as described above to each of the management devices 20-1 to 20-15 by using the communication unit 11, thereby transmitting the aggregated information to the management devices 20-1 to 20-15, and distribute to 15. By distributing the aggregated information, the aggregated whitelist is distributed to each of the management devices 20-1 to 20-15.
In the management device 20 (
The update unit 233 updates the individual whitelist based on the aggregated whitelist generated by the generation unit 232 and stored in the storage unit 22.
For example, when “10%” is stored as a threshold value in the storage unit 22 of the management device 20-1, the update unit 233 of the management device 20-1, and a threshold value of 10% is applied to an aggregated whitelist (
For example, when “10%” is stored as a threshold value in the storage unit 22 of the management device 20-9, the update unit 233 of the management device 20-9, and a threshold value of 10% is applied to an aggregated whitelist (
Further, for example, when “80%” is stored as a threshold value in the storage unit 22 of the management device 20-1, the update unit 233 of the management device 20-1, and a threshold value of 80% is applied to an aggregated whitelist (
As described above, the update unit 233 updates the individual whitelist by adding the communication destinations whose acceptance rate in the aggregated whitelist is equal to or higher than the threshold value to the individual whitelist. Further, the update unit 233 updates the individual whitelist by deleting the communication destinations whose acceptance rate in the aggregated whitelist is less than the threshold value from the individual whitelist.
The individual whitelist after the update is stored in the storage unit 22. The detection unit 235 detects unauthorized communication in the IoT device 30A by using the updated individual whitelist stored in the storage unit 22.
When the individual whitelist is updated by the update unit 233, the generation unit 232 generates individual WL information including the communication destination shown in the updated individual whitelist as the communication destination information, and the upload unit 234 uploads the generated individual WL information to the server device 10. Then, the aggregation unit 132 of the server device 10 updates the aggregation information based on the uploaded individual WL information.
It is also possible for the user of the management device 20 to manually update the individual whitelist by comparing the individual whitelist with the aggregated whitelist.
The embodiment 1 has been described above.
In the embodiment 2, a case where communication with a communication destination not registered in the individual whitelist (hereinafter, may be referred to as a “new communication destination”) is detected will be described.
<Operation of Communication Network System>
When the acquisition unit 231 detects communication with a new communication destination, the acquisition unit 21 uses the communication unit 21 to make an acquisition request for an aggregated whitelist (hereinafter, may be referred to as an “aggregated WL request”), and sends it to the server device 10.
The distribution unit 133 individually transmits the aggregated information stored in the storage unit 12 in response to the aggregated WL request to the management device 20 of the transmission source of the aggregated WL request, that is, the management device 20 in which communication with the new communication destination is detected, using the communication unit 11.
The update unit 233 updates an individual whitelist stored in the storage unit 22 based on the aggregated whitelist transmitted from the server device 10 in response to the aggregated WL request, and included in the aggregated information acquired by the acquisition unit 231.
For example, when the individual whitelist before the update in the management device 20-2 is the individual whitelist W2 shown in
In response to the aggregation WL request from the management device 20-2, the distribution unit 133 individually transmits the aggregation information (
The update unit 233 of the management device 20-2 updates the individual whitelist W2 shown in
Further, the generation unit 232 of the management device 20-2 generates individual WL information including the communication destination shown in the updated individual whitelist W2 (
The aggregation unit 132 of the server device 10 updates the aggregation information based on the uploaded individual WL information. Therefore, in the aggregated information after the update (
The embodiment 2 has been described above.
In the embodiment 3, a case where a new IoT device 30 is connected to the communication network system 1 will be described.
<Operation of Communication Network System>
For example, with respect to
When the acquisition unit 231 of the management device 20-16 detects the connection of the IoT device 30A-16 to the management device 20-16, the acquisition unit 231 transmits the aggregated WL request to the server device 10 by using the communication unit 21 after a predetermined time has elapsed from the detection of the connection of the IoT device 30A-16. The predetermined time from the detection of the connection of the IoT device 30A-16 to the transmission of the aggregate WL request is preset to, for example, the time until the generation of the first individual whitelist in the generation unit 232 of the management device 20-16 is completed after the connection of the IoT device 30A-16 is detected.
The distribution unit 133 individually transmits the aggregated information stored in the storage unit 12 to the management device 20-16 of the transmission sources of the aggregated WL request, that is, the management device 20, in which the connection of the new IoT device 30 is detected, by using the communication unit 11, in response to the aggregated WL request.
The update unit 233 of the management device 20-16 is stored in the storage unit 22 based on the aggregated whitelist transmitted from the server device 10 in response to the aggregated WL request and included in the aggregated information acquired by the acquisition unit 231 to update the individual whitelist that has been done.
For example, when the individual whitelist before the update in the management device 20-16 is the individual whitelist W16 shown in
In response to the aggregation WL request from the management device 20-16, the distribution unit 133 individually transmits the aggregation information (
The update unit 233 of the management device 20-16 updates the individual whitelist W16 shown in
Further, the generation unit 232 of the management device 20-16 generates individual WL information including the communication destination shown in the individual whitelist W16 (
The aggregation unit 132 of the server device 10 updates the aggregation information based on the uploaded individual WL information. Therefore, in the aggregated information after the update (
The embodiment 3 has been described above.
<Operation of Communication Network System>
As described above, the individual WL information transmitted from each management device 20 to the server device 10 includes the model name of the IoT device, the management device identifier, the learning success or failure information, and the learning time information.
Therefore, the aggregation unit 132 of the server device 10 generates the information summarizing the learning success or failure and the learning time of the individual whitelist in each management device 20 for each model of the IoT device (hereinafter, referred to as “learning information”).
For example, the learning information LA (
Further, for example, in the learning information LB (
By transmitting the learning information LA (
By receiving the learning information LA and LB provided by the server device 10 by using the communication unit 21, the acquisition unit 231 of the management device 20 acquires the learning information LA and LB provided by the server device 10. The acquisition unit 231 stores the acquired the learning information LA and LB in the storage unit 22.
The embodiment 4 has been described above.
<Operation of Communication Network System>
The detection unit 235 of the management device 20 generates an “unauthorized communication detection list” indicating the degree of fraud of each communication destination based on the comparison result between the individual whitelist and the aggregated whitelist. For example, in the management device 20, when the individual whitelist stored in the storage unit 22 is shown in
In the comparison between
Further, the detection unit 235 determines the degree of fraud of the communication destination in which the communication has occurred by referring to the unauthorized communication detection list (
The embodiment 5 has been described above.
<Processing Procedure in Communication Network System>
In
In step S305, the acquisition unit 231 determines whether or not the management device 20 is permitted to cooperate with the server device 10. When cooperation is not permitted (step S305: No), the management device 20 independently generates an individual whitelist without using the aggregated whitelist (step S310).
When cooperation with the server device 10 is permitted (step S305: Yes), the acquisition unit 231 generates an aggregation whitelist acquisition request (step S315), and transmits the generated acquisition request to the server device 10 (Step S320).
In response to the acquisition request from the management device 20, the distribution unit 133 refers to the aggregated information stored in the storage unit 12 (step S325) and distributes the aggregated whitelist to the management device 20 (step S330).
In step S335, the acquisition unit 231 acquires the aggregated whitelist distributed from the server device 10.
In step S340, the generation unit 232 generates an individual whitelist by learning, and stores the generated individual whitelist in the storage unit 22.
In step S345, the generation unit 232 determines whether or not the individual whitelist has been successfully learned. When the learning of the individual whitelist fails (step S345: No), the generation unit 232 transmits “failure information” indicating that the learning has failed to the server device 10 (step S350), and the collection unit 131 registers the failure information in the storage unit 12 (step S355).
On the other hand, when the learning of the individual whitelist is successful (step S345: Yes), the update unit 233 confirms the predefined update method (step S360). When the predefined update method is “manual”, the update unit 233 does not update the individual whitelist, and the user of the management device 20 manually updates the individual whitelist (step S365). On the other hand, when the predefined update method is “automatic”, the update unit 233 automatically updates the individual whitelist stored in the storage unit 22 based on the aggregated whitelist (step S370). The individual whitelist is determined by the process of step S365 or step S70 (step S375).
After the individual whitelist is fixed, the upload unit 234 uploads the individual WL information to the server device 10 (step S380), and the aggregation unit 132 updates the aggregated information based on the individual WL information collected by the collection unit 131 (Step S385).
Further, in the management device 20, after transmitting the individual WL information, the detection unit 235 determines whether or not to continue monitoring the unauthorized communication (step S390). Whether or not to continue monitoring unauthorized communication is specified by, for example, the user of the management device 20. When the monitoring of unauthorized communication is continued (step S390: Yes), the process returns to step S315, and when the monitoring of unauthorized communication is stopped (step S390: No), the processing procedure ends.
The embodiment 6 has been described above.
All or part of each process in the above description related to the control unit 13 may be realized by causing the control unit 13 to execute a program corresponding to each process. For example, a program corresponding to each process in the control unit 13 in the above description may be stored in the storage unit 12, and the program may be read out from the storage unit 12 by the control unit 13 and executed. Further, the program is stored in a program server connected to the server device 10 via an arbitrary network, downloaded from the program server to the server device 10 and executed, or stored in a recording medium readable by the server device 10, and then it may be read from the recording medium and executed. The recording medium that can be read by the server device 10 includes, for example, a memory card, a USB memory, an SD card, a flexible disk, a magneto-optical disk, a CD-ROM, a DVD, a Blu-ray (registered trademark) disk, and storage medium are included.
Further, all or part of each process in the above description in the control unit 23 may be realized by causing the control unit 23 to execute a program corresponding to each process. For example, a program corresponding to each process in the control unit 23 in the above description may be stored in the storage unit 22, and the program may be read out from the storage unit 22 by the control unit 23 and executed. Further, the program is stored in a program server connected to the management device 20 via an arbitrary network, downloaded from the program server to the management device 20 and executed, or stored in a recording medium readable by the management device 20, or it may be read from the recording medium and executed. The recording medium that can be read by the management device 20 includes, for example, a memory card, a USB memory, an SD card, a flexible disk, a magneto-optical disk, a CD-ROM, a DVD, and a Blu-ray (registered trademark) disk, and portable storage medium is included.
Further, the program is a data processing method described in an arbitrary language or an arbitrary description method, and may be in any format such as source code or binary code. In addition, the program is not necessarily limited to a single configuration program, but includes distributed configuration as multiple modules or multiple libraries, or cooperates with a separate program represented by the OS to achieve its function.
The embodiment 7 has been described above.
As described above, the communication network system of the present disclosure (communication network system 1 of the embodiment) is connected to the server device (server device 10 of the embodiment) and a plurality of IoT devices (IoT device 30A of the embodiment), respectively, or it also has a plurality of management devices (management device 20 of the embodiment). Each of the plurality of management devices is an individual whitelist individually generated in each of the plurality of management devices, and an individual whitelist relating to the communication destination of the IoT device connected to the own management device is generated, and then upload the generated individual whitelist to the server device. The server device collects a plurality of individual whitelists uploaded from each of the plurality of management devices, generates an aggregated whitelist that is the aggregated result of the plurality of individual whitelists, and distributes the generated aggregated whitelist to each of the plurality of management devices. Then, each of the plurality of management devices acquires the aggregated whitelist distributed from the server device, and updates the individual whitelist generated by the own management device based on the aggregated whitelist.
Further, the server device (server device 10 of the embodiment) of the present disclosure communicates with a plurality of management devices connected to each of a plurality of IoT devices, respectively, and has a collection unit (collection unit 131 of the embodiment), an aggregation unit (aggregation unit 132 of the embodiment), and a distribution unit (distribution unit 133 of the embodiment). The collection unit collects an individual whitelist generated separately for each of the plurality of management devices, and an individual whitelist related to the communication destination of the IoT device connected to each of the plurality of management devices from each of the plurality of management devices. The aggregation unit generates an aggregation whitelist which is the aggregation result of a plurality of collected individual whitelists. The distribution unit distributes the generated aggregated whitelist to each of the plurality of management devices.
Further, the management device (management device 20 of the embodiment) of the present disclosure is one of a plurality of management devices connected to a plurality of IoT devices, respectively, and includes a generation unit (generation unit 232 of the embodiment), an upload unit (upload unit 234 of the embodiment), an acquisition unit (acquisition unit 231 of the embodiment), and an update unit (update unit 233 of the embodiment). The generation unit is an individual whitelist generated separately from other management devices, and generates an individual whitelist regarding the communication destination of the IoT device connected to the own management device. The upload unit uploads the generated individual whitelist to the server device. The acquisition unit is an aggregated whitelist that is the aggregated result of a plurality of individual whitelists uploaded from each of the plurality of management devices, and acquires the aggregated whitelist generated in the server device from the server device. The update unit updates the individual whitelist based on the acquired aggregated whitelist.
For example, the aggregated whitelist includes the rate of the number of management devices that are permitted to communicate with the communication destination (the acceptance rate of the embodiment) to the total number of the plurality of management devices for each of the plurality of communication destinations. The update unit updates the individual whitelist by adding the communication destinations, where the rate is equal to or higher than the threshold value, to the individual whitelist. In addition, the update unit updates the individual whitelist by deleting the communication destinations whose rate is less than the threshold value from the individual whitelist.
In this way, by updating the individual whitelist based on the aggregated result of the plurality of individual whitelists individually generated by each of the plurality of management devices, the validity of the whitelist used for detecting unauthorized communication in each management device can be increased. By increasing the validity of the whitelist used for detecting fraudulent communication, over-detection and false detection of fraudulent communication are reduced, so that the detection accuracy of fraudulent communication is improved.
Further, when the acquisition unit detects communication with a new communication destination, the acquisition unit sends an acquisition request for the aggregated whitelist to the server device. The distribution unit individually transmits the aggregated whitelist to the management device in response to the acquisition request from the management device in which communication with a communication destination not registered in the individual whitelist is detected. The update unit updates the individual whitelist based on the aggregated whitelist acquired from the server device in response to the acquisition request.
By doing so, since the individual whitelist can be updated immediately when a new communication destination appears, determination can be immediately performed whether the new communication destination is an authorized communication destination or not when the new communication destination appears.
Further, the server device has a providing unit (providing unit 134 of the embodiment). The providing unit 134 provides information on the success or failure of learning of the individual whitelist and information on the learning time of the individual whitelist to a plurality of management devices.
By doing so, the user of the management device can estimate the learning time until the individual whitelist generated by learning can be used for detecting unauthorized communication.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2020/032490 | 8/27/2020 | WO |