WO2021059509A1 - 学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 - Google Patents
学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 Download PDFInfo
- Publication number
- WO2021059509A1 WO2021059509A1 PCT/JP2019/038283 JP2019038283W WO2021059509A1 WO 2021059509 A1 WO2021059509 A1 WO 2021059509A1 JP 2019038283 W JP2019038283 W JP 2019038283W WO 2021059509 A1 WO2021059509 A1 WO 2021059509A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- malware
- clusters
- learning
- malwares
- classification
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/561—Virus type analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Definitions
- the present invention relates to a non-temporary computer-readable medium in which a learning device, a discrimination system, a learning method, and a learning program are stored.
- machine learning is used to detect malware on the Internet, which is increasing year by year.
- Patent Document 1 As a related technique, for example, Patent Document 1 is known. Patent Document 1 describes a technique for detecting malware by creating a detection model by performing clustering.
- the present disclosure is a non-temporary computer-readable medium in which a learning device, a discrimination system, a learning method, and a learning program capable of creating a learning model capable of improving the discrimination accuracy of malware are stored.
- the purpose is to provide.
- the learning device includes a first classification means for classifying a plurality of first malwares collected in the first period into a plurality of clusters, and a plurality of second malwares collected in the second period.
- a learning model for discriminating malware is created based on the second classification means for classifying the malware into the plurality of clusters and the feature quantities of the plurality of clusters according to the classification results of the plurality of second malwares. It is equipped with a learning means.
- the discrimination system includes a first classification means for classifying a plurality of first malwares collected in the first period into a plurality of clusters, and a plurality of second malwares collected in the second period. Is created as a learning model for discriminating malware based on the second classification means for classifying the plurality of clusters and the feature amount of the plurality of clusters according to the classification result of the plurality of second malwares. It includes a learning means and a discriminating means for determining whether or not the input file is malware based on the created learning model.
- the plurality of first malwares collected in the first period are classified into a plurality of clusters, and the plurality of second malwares collected in the second period are divided into the plurality of clusters.
- a learning model for discriminating malware is created based on the feature quantities of the plurality of clusters according to the classification results of the plurality of second malwares.
- the non-temporary computer-readable medium in which the learning program according to the present disclosure is stored classifies the plurality of first malwares collected in the first period into a plurality of clusters, and a plurality of malware collected in the second period.
- the second malware is classified into the plurality of clusters, and a learning model for discriminating the malware is created based on the feature quantities of the plurality of clusters according to the classification results of the plurality of second malware.
- a non-temporary computer-readable medium containing a learning device, a discrimination system, a learning method, and a learning program capable of creating a learning model capable of improving the discrimination accuracy of malware. it can.
- FIG. 1 It is a flowchart which shows the related learning method. It is a block diagram which shows the outline of the learning apparatus which concerns on embodiment. It is a block diagram which shows the outline of the discrimination system which concerns on embodiment. It is a block diagram which shows the structural example of the discrimination system which concerns on Embodiment 1. FIG. It is a block diagram which shows the other configuration example of the discrimination system which concerns on Embodiment 1. FIG. It is a flowchart which shows the learning method which concerns on Embodiment 1. It is a flowchart which shows the existing malware processing in the learning method which concerns on Embodiment 1. It is a flowchart which shows the new malware processing in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows an example of the feature amount in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows the image of clustering of the existing malware in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows the image of the leveling in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows the image of the leveling in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows the image of clustering of new malware in the learning method which concerns on Embodiment 1.
- FIG. It is a figure which shows the adjustment image of the feature amount of a cluster in the learning method which concerns on Embodiment 1.
- FIG. It is a flowchart which shows the discrimination method which concerns on Embodiment 1.
- FIG. It is a flowchart which shows the discrimination method which concerns on Embodiment 1.
- FIG. 1 shows a related learning method.
- a large amount of sample malware is collected (S101), the feature amount of the collected malware is extracted (S102), and the learning model is used using the extracted malware feature amount. Is created (S103).
- Malware is software or data that performs illegal (malicious) operations on a computer or network, such as computer viruses and worms.
- the inventor has found a problem that it takes time to extract features in the related learning method. That is, in the related learning method, since it is necessary to extract a large amount of features of malware collected as a sample, it takes an enormous amount of time to extract the features.
- malware cannot be accurately discriminated by using a learning model obtained by a related learning method. That is, since there is "variation" in the malware to be trained, there is a risk that the discrimination accuracy of the malware will be lowered and the discrimination accuracy will be unstable depending on the sample. For example, a sample collected by some methods may improve the discrimination accuracy, but a sample collected by another method may deteriorate the discrimination accuracy. Also, although malware characteristics may change in trend depending on when they are collected, related learning methods do not take into account such malware trends. For this reason, it is difficult to accurately determine the latest trend of malware by the related learning method. In addition, when trying to deal with the latest malware, it is necessary to constantly learn the malware (extract features), which may increase the system maintenance cost.
- FIG. 2 shows an outline of the learning device according to the embodiment
- FIG. 3 shows an outline of the discrimination system according to the embodiment.
- the learning device 10 includes a first classification unit 11, a second classification unit 12, and a learning unit 13.
- the first classification unit 11 classifies a plurality of first malwares collected in the first period (for example, a period older than the latest) into a plurality of clusters.
- the second classification unit 12 classifies the plurality of second malware collected in the second period (for example, the latest period) into the plurality of clusters classified by the first classification unit 11.
- the learning unit 13 creates a learning model for discriminating malware based on the feature quantities of a plurality of clusters according to the classification results of the plurality of second malwares by the second classification unit 12.
- the discrimination system 2 includes a learning device 10 and a discrimination device 20.
- the discrimination device 20 includes a discrimination unit 21 that discriminates whether or not the input file is malware based on the discrimination learning model created by the learning device 10.
- the configuration of the learning device 10 and the discrimination device 20 in the discrimination system 2 is not limited to this. That is, the discrimination system 2 is not limited to the configuration of the learning device 10 and the discrimination device 20, and includes at least a first classification unit 11, a second classification unit 12, a learning unit 13, and a discrimination unit 21.
- the plurality of first malware (for example, existing malware) collected in the first period is classified into a plurality of clusters, and then the plurality of second malware collected in the second period is used.
- Malware for example, new malware
- Malware is classified into multiple clusters, and a learning model is created according to the classification results.
- FIG. 4 shows a configuration example of the discrimination system 1 according to the present embodiment
- FIG. 5 shows another configuration example.
- the discrimination system 1 is a system that discriminates whether or not the file provided by the user is malware by using a learning model that learns the characteristics of malware.
- the discrimination system 1 includes a learning device 100, a discrimination device 200, an existing malware storage device 301, a new malware storage device 302, and a learning model storage device 400.
- each device of the discrimination system 1 is constructed on the cloud, and the service of the discrimination system 1 is provided by SaaS (Software as a Service). That is, each device is realized by a computer device such as a server or a personal computer, but it may be realized by one physical device, or it may be realized by a plurality of devices on the cloud by virtualization technology or the like. Good.
- the configuration of each device and each part (block) in the device is an example, and may be configured by each other device and each part as long as the method (operation) described later is possible.
- the discrimination device 200 and the learning device 100 may be one device, or each device may be a plurality of devices.
- the existing malware storage device 301, the new malware storage device 302, and the learning model storage device 400 may be built in the discrimination device 200 or the learning device 100. Further, the storage unit built in the discrimination device 200 or the learning device 100 may be used as an external storage device.
- the existing malware storage device 301 and the new malware storage device 302 are database devices that store a large amount of malware as a sample for learning.
- the existing malware storage device 301 and the new malware storage device 302 may store the malware collected in advance during each collection period, or may store the information provided on the Internet.
- the existing malware storage device 301 stores malware (referred to as existing malware) collected in the first period, which is a period older than the latest.
- the new malware storage device 302 stores malware (referred to as new malware) collected in the second period, which is the latest period after the first period. For example, if the malware trend changes in a three-month (quarterly) cycle, the second period is the latest three months and the first period may include the previous three months (and may include earlier). ).
- the malware collected in the last 3 months is regarded as new malware, and the malware collected before that is regarded as existing malware.
- the period of 3 months is an example and may be any period (any year, month, day).
- the learning model storage device 400 stores a learning model for discriminating malware.
- the learning model storage device 400 stores the learning model created by the learning device 100, and the discriminating device 200 refers to the stored learning model for discriminating malware.
- the learning device 100 is a device that creates a learning model that learns the characteristics of malware as a sample.
- the learning device 100 classifies existing malware into clusters, classifies new malware into the clusters, and then creates a learning model.
- the learning device 100 includes a control unit 110 and a storage unit 120.
- the learning device 100 may also have a communication unit with the discrimination device 200, the Internet, etc., and an input unit, an output unit, and the like as an interface with the user, the operator, and the like, if necessary.
- the storage unit 120 stores information necessary for the operation of the learning device 100.
- the storage unit 120 is a non-volatile storage unit (storage unit), and is, for example, a non-volatile memory such as a flash memory or a hard disk.
- the storage unit 120 includes a feature amount storage unit 121 that stores the feature amount of the malware, and a cluster storage unit 122 that stores the information of the cluster that classifies the malware.
- the storage unit 120 stores a program or the like necessary for creating a learning model by machine learning.
- the control unit 110 is a control unit that controls the operation of each unit of the learning device 100, and is a program execution unit such as a CPU (Central Processing Unit).
- the control unit 110 realizes each function (process) by reading the program stored in the storage unit 120 and executing the read program.
- the control unit 110 is, for example, an existing preparation unit 111, a feature amount extraction unit 112, an existing classification unit 113, a leveling unit 114, a new preparation unit 115, a new classification unit 116, a feature amount adjustment unit 117, and a learning unit. Includes 118.
- the existing preparation unit 111, the feature amount extraction unit 112, the existing classification unit 113, and the leveling unit 114 are existing malware processing units (first processing units) that perform existing malware processing described later.
- the existing preparation unit 111 makes necessary preparations for learning existing malware.
- the existing preparation unit 111 prepares an existing malware sample and selects an existing malware sample for learning with reference to the existing malware storage device 301.
- the existing preparation unit 111 may prepare and select a sample based on a predetermined standard, or may prepare and select a sample according to an input operation of a user or the like.
- the feature amount extraction unit 112 extracts the feature amount indicating the characteristics of the existing malware.
- the feature amount extraction unit 112 extracts the feature amount of the selected existing malware according to a predetermined feature amount extraction rule, and stores the extracted feature amount in the feature amount storage unit 121.
- the feature amount extraction rule may be stored in the storage unit 120 in advance, or may be specified according to an operation by the user or the like.
- the existing classification unit (first classification unit) 113 classifies the existing malware into clusters.
- the existing classification unit 113 classifies the selected existing malware into clusters, and stores the cluster information of the classified clusters in the cluster storage unit 122.
- the existing classification unit 113 performs clustering based on the similarity of existing malware by a predetermined clustering method such as hierarchical clustering.
- the cluster information includes information indicating the malware included in each cluster, the feature amount of the malware in each cluster, and the like.
- the leveling unit 114 leveles each cluster that classifies existing malware.
- the leveling unit 114 refers to the cluster information stored in the cluster storage unit 122, equalizes based on the number of malware (or feature amount) of each cluster, and updates the cluster information of the cluster storage unit 122.
- the leveling unit 114 uses a predetermined sampling algorithm such as oversampling or undersampling to level the number of malwares (or features) so that they are equal in all clusters.
- the new preparation unit 115, the new classification unit 116, and the feature amount adjustment unit 117 are new malware processing units (second processing units) that perform new malware processing described later.
- the new preparation unit 115 makes necessary preparations for learning new malware.
- the new preparation unit 115 prepares a sample of new malware and selects a sample of new malware for learning with reference to the new malware storage device 302. Similar to the existing preparation unit 111, the new preparation unit 115 may prepare and select the sample based on a predetermined standard, or prepare and select the sample according to the input operation of the user or the like. May be good.
- the new classification unit (second classification unit) 116 classifies new malware into clusters.
- the new classification unit 116 refers to the cluster information stored in the cluster storage unit 122, classifies the selected new malware with respect to the clusters that have classified and leveled the existing malware, and the cluster information of the cluster storage unit 122. To update.
- the new classification unit 116 classifies the new malware so that it belongs to one of the clusters based on the similarity between the new malware and the cluster.
- the feature amount adjustment unit 117 adjusts the feature amount of each cluster in which new malware is classified.
- the feature amount adjustment unit 117 refers to the cluster information stored in the cluster storage unit 122, adjusts the feature amount of each cluster according to the classification result of new malware for each cluster, and cluster information of the cluster storage unit 122. To update. For example, the feature amount of each cluster is adjusted according to the number of classifications and the classification ratio of new malware for each cluster.
- the learning unit 118 learns using the adjusted features of each cluster.
- the learning unit 118 refers to the cluster information stored in the cluster storage unit 122, creates a learning model based on the feature amount of each cluster adjusted according to the classification result, and stores the created learning model in the learning model storage device. Store in 400.
- the learning unit 118 creates a learning model by training a machine learning device such as SVM (Support Vector Machine) using the feature amount of the malware of each cluster as teacher data.
- SVM Small Vector Machine
- the determination device 200 is a device that determines whether or not the file provided by the user is malware.
- the discriminating device 200 includes an input unit 210, a discriminating unit 220, and an output unit 230.
- the discriminating device 200 may also have a learning device 100, a communication unit with the Internet, or the like, if necessary.
- the input unit 210 acquires the file input by the user.
- the input unit 210 receives the uploaded file via a network such as the Internet.
- the discrimination unit 220 determines whether or not the file is malware based on the learning model created by the learning device 100.
- the discriminating unit 220 refers to the learning model stored in the learning model storage device 400, and determines whether or not the characteristics of the file are close to the characteristics of the malware.
- the output unit 230 outputs the discrimination result of the discrimination unit 220 to the user. Like the input unit 210, the output unit 230 outputs the file determination result via a network such as the Internet.
- the learning device 100 is not limited to the configuration shown in FIG. 4, but may have the configuration shown in FIG. That is, since the existing malware processing and the new malware processing may be executed at different timings, the existing malware processing and the new malware processing may be performed in the same block.
- the existing preparation unit 111 and the new preparation unit 115 may be one preparation unit 111a
- the existing classification unit 113 and the new classification unit 116 may be one classification unit 113a
- the existing malware storage device 301 and the new malware storage device 302 may be used as one malware storage device 300.
- FIG. 6 shows a learning method implemented by the learning device 100 according to the present embodiment
- FIG. 7 shows an existing malware process in the learning method of FIG. 6
- FIG. 8 shows the learning of FIG. Shows new malware processing in the method.
- the learning device 100 performs the existing malware processing as the first step (S201), and performs the new malware processing as the second step. (S202), and further, a learning model is created (S203).
- existing malware processing is performed in the first period (for example, three months before the second period) (S201), and new malware processing and new malware processing are performed in the second period (for example, three months after the first period).
- a learning model is created (S202 and S203).
- S201 to S203 may be performed at the same time.
- the learning device 100 first collects the existing malware which is an existing sample (S301). That is, the existing preparation unit 111 prepares a large amount of malware samples in the first period from the existing malware storage device 301, the Internet, or the like. In addition, the existing preparation unit 111 selects existing malware for learning from the prepared existing malware based on a predetermined standard or the like.
- the learning device 100 extracts the feature amount of the existing malware (S302). That is, the feature amount extraction unit 112 extracts the feature amount of the existing malware to be learned as a sample.
- FIG. 9 shows an image of the feature amount in S302.
- the feature amount is data indicating the characteristics of the malware, and is numerical data of a plurality of feature data elements.
- the feature data element is based on a predetermined feature amount extraction rule, and is, for example, the number of occurrences of a predetermined character string pattern.
- the predetermined character string may be 1 to 3 characters, or may be a character string of any length.
- the feature data element includes the number of times a predetermined file is accessed, the number of times a predetermined API (Application Programming Interface) is called, and the like.
- Application Programming Interface Application Programming Interface
- FIG. 9 is an example of two-dimensional feature data elements of feature data elements E1 and E2.
- the feature data elements E1 and E2 are the number of occurrences of different character string patterns. It is preferable to use more feature data elements in order to improve the accuracy of malware discrimination. For example, 100 to 200 1-character patterns, 2-character patterns, and 3-character patterns may be prepared, and all of them may be used as feature data elements.
- the learning device 100 classifies the existing malware into clusters (S303 to S305). Specifically, the learning device 100 calculates the similarity of the existing malware (S303), clusters the existing malware (S304), and calculates the similarity of the cluster (S305). That is, the existing classification unit 113 calculates the similarity between the sample malwares and classifies the malwares having the highest similarity into the same cluster. The existing classification unit 113 further calculates the similarity between the classified clusters to perform clustering, and repeats the calculation and clustering of the similarity as necessary.
- the similarity calculated here is the similarity of the classification elements for clustering.
- the classification element may be a part of a plurality of feature data elements in the feature quantity, or may be an element different from the feature data element.
- the classification element is not all the feature data elements in the feature quantity, but is an element that can be calculated more easily than the feature quantity.
- the classification element is the number of occurrences of a predetermined character string pattern (a part of the character string patterns used in the feature amount).
- FIG. 10 shows an image of clustering in S304.
- the existing malware includes malwares MA to MF. Since malware MA and malware MD have the highest degree of similarity (for example, the number of occurrences of a predetermined character string pattern is the closest), they are classified into cluster CA, and malware MB and malware MC are similar. Since the degree is the highest, it is classified into clusters CB, and because the similarity between malware ME and malware MF is the highest, it is classified into clusters CC.
- the learning device 100 leveles the cluster (S306). That is, the leveling unit 114 averages the cluster size of each cluster.
- the cluster size is the number of malware in the cluster and the feature amount of the malware in the cluster.
- the leveling unit 114 increases the feature amount of the cluster having a small number of malware by a sampling algorithm or the like so that a part of the feature amount of the cluster having a large number of malware is not used for learning.
- 11 and 12 show an image of leveling.
- the number of clusters of clusters CA is 2
- the number of clusters of clusters CB is 5
- the number of clusters of clusters CC is 4, the number of clusters in each cluster is the average value. Adjust so that it becomes 4. Since the number of clusters is 5 for the clusters CB, for example, the feature amount of the malware MG is not used (the malware is deleted from the clusters). Since the number of clusters is 2 for cluster CA, a feature amount close to the feature amount of malware MA and MD is added. In this example, dummy malware MH and MI features are generated and added to cluster CA.
- the feature amount of cluster CAA can be changed. Generates the features of malware MH and MI that are close to the features. For example, as shown in FIG. 12, only the value of one data included in the feature amount of the cluster CA is changed to generate the feature amount of the malware MH. Further, only one data included in the feature amount of the cluster CA is deleted, and the feature amount of the malware MI is generated.
- the learning device 100 first collects new malware which is a new sample (S401). That is, the new preparation unit 115 prepares a large amount of malware samples in the second period from the new malware storage device 302, the Internet, or the like. In addition, the new preparation unit 115 selects new malware for learning from the prepared new malware based on a predetermined standard or the like.
- the learning device 100 classifies the new malware into existing clusters (S402 to S403). Specifically, the learning device 100 calculates the similarity of the new malware (S402) and clusters the new malware (S403). That is, the new classification unit 116 calculates the similarity between the new malware as a sample and each of the classified clusters of the existing malware, and classifies the new malware into the cluster having the highest similarity. Similar to the above-mentioned clustering of existing malware, the new classification unit 116 calculates the degree of similarity based on classification factors such as the number of occurrences of a predetermined character string pattern. For example, the degree of similarity between the number of occurrences of a predetermined character string pattern in new malware and the average number of appearances of a predetermined character string pattern in existing malware of each cluster is calculated.
- FIG. 13 shows an image of clustering in S403.
- the new malware includes malware NA to NF.
- malware NA, NB, and NC have the highest degree of similarity to cluster CA (for example, the number of occurrences of a predetermined character string pattern of malware and the number of appearances of a predetermined character string pattern of a cluster). Since it is the closest), it is classified as cluster CA, and malware NE and NF are classified as cluster CB because they have the highest degree of similarity to cluster CB, and malware N-D is classified as cluster. Since it has the highest degree of similarity to CC, it is classified as cluster CC.
- the learning device 100 calculates the classification ratio of the new malware (S404) and adjusts the feature amount of the cluster (S405). That is, the feature amount adjustment unit 117 calculates the ratio (or the number of classifications) of new malware classified into each cluster, and adjusts the feature amount of the cluster used for learning based on the calculated classification ratio.
- FIG. 14 shows an image of adjusting the feature amount in S405.
- three new malwares are classified into clusters CA, two new malwares are classified into clusters CB, and one is classified into clusters CC.
- the classification ratio of cluster CA is 1/2
- the classification ratio of cluster CB is 1/3
- the classification ratio of cluster CC is 1/6.
- the feature amount of each cluster is adjusted according to this classification ratio. Since the classification ratio of cluster CA is larger than that of clusters CB and CC, the feature amount of cluster CA used for learning is increased. Since the classification ratio of clusters CC is smaller than that of clusters CA and CC, the feature amount of clusters CC used for learning is reduced.
- the learning device 100 creates a learning model as shown in FIG. 6 (S203). That is, the learning unit 118 creates a malware learning model using the adjusted features of each cluster.
- FIG. 15 shows a discrimination method implemented by the discrimination device 200 according to the present embodiment. This discrimination method is executed after the discrimination learning model is created by the learning method of FIG. In this discrimination method, a learning model may be created by the learning method of FIG.
- the discrimination device 200 accepts a file input from the user (S501).
- the input unit 210 provides a Web interface to the user and acquires a file uploaded by the user on the Web interface.
- the discriminator 200 refers to the learning model (S502) and discriminates the file based on the learning model (S503).
- the discriminating unit 220 refers to the learning model created by the learning device 100, and discriminates whether or not the input file is malware. Files with the characteristics of malware learned by the learning model are determined to be "malware", and files that do not meet the characteristics are determined to be "normal files” that are not malware. For example, the feature amount of the input file is extracted, and when the extracted feature amount and the feature amount of the malware in the learning model are closer than a predetermined range, it is determined to be malware.
- the discrimination device 200 outputs the discrimination result (S504).
- the output unit 230 displays the determination result to the user via the Web interface as in S501.
- “File is malware” or “File is normal file” is displayed.
- the possibility (probability) of being judged as malware or a normal file may be displayed from the distance between the feature amount of the file and the feature amount of the learning model.
- the samples are clustered by the similarity before learning the malware, and in the new malware processing of the second step, the sample is “similar” to the new malware.
- the characteristics of existing malware are now applied to clusters. As a result, the characteristics corresponding to the new malware can be learned, so that the accuracy of discriminating the malware of the new trend can be improved.
- the time required for extracting the feature amount can be suppressed, and the feature of the new trend malware can be easily learned.
- the clustering of the existing malware by leveling the classified clusters, it is possible to suppress the variation in the feature amount of the existing malware to be learned. By clustering new malware in a leveled cluster and adjusting the features of the cluster, it is possible to reliably respond to new malware trends.
- the system is not limited to discriminating the files provided by the user, and may be a system that discriminates the automatically collected files. Further, the system is not limited to the discrimination of malware, and may be a system for discriminating other abnormal files.
- Each configuration in the above-described embodiment is composed of hardware and / or software, and may be composed of one hardware or software, or may be composed of a plurality of hardware or software.
- the function (processing) of each device may be realized by a computer having a CPU, a memory, or the like.
- a program for performing the method (learning method or discrimination method) in the embodiment may be stored in the storage device, and each function may be realized by executing the program stored in the storage device on the CPU.
- Non-temporary computer-readable media include various types of tangible storage media. Examples of non-temporary computer-readable media include magnetic recording media (eg, flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (eg, magneto-optical disks), CD-ROMs (Read Only Memory), CD-Rs, Includes CD-R / W, semiconductor memory (for example, mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (random access memory)).
- the program may also be supplied to the computer by various types of temporary computer readable media. Examples of temporary computer-readable media include electrical, optical, and electromagnetic waves.
- the temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire and an optical fiber, or a wireless communication path.
- (Appendix 1) A first classification means for classifying a plurality of first malware collected in the first period into a plurality of clusters, and A second classification means for classifying the plurality of second malware collected in the second period into the plurality of clusters, and A learning means for creating a learning model for discriminating malware based on the features of the plurality of clusters according to the classification results of the plurality of second malwares, and A learning device equipped with.
- (Appendix 2) The first classification means classifies the plurality of first malwares into the plurality of clusters based on the similarity of each of the plurality of first malwares.
- the learning device according to Appendix 1.
- the second classification means classifies the plurality of second malwares into the plurality of clusters based on the similarity between the plurality of second malwares and the plurality of clusters.
- the learning device according to Appendix 1 or 2. (Appendix 4)
- the similarity is the similarity of the number of occurrences of a predetermined character string pattern.
- the learning device according to Appendix 2 or 3. (Appendix 5) Further provided with an adjusting means for adjusting the feature amount of the plurality of clusters according to the classification result of the plurality of second malwares.
- the learning means creates the learning model based on the adjusted features.
- the adjusting means adjusts the feature amount according to the number of classifications of the plurality of second malwares in each of the plurality of clusters.
- the learning device according to Appendix 5. The adjusting means adjusts the feature amount according to the classification ratio of the plurality of second malwares in each of the plurality of clusters.
- the learning device according to Appendix 5. Further provided with a leveling means for leveling the plurality of clusters in which the plurality of first malwares are classified, The second classification means classifies the plurality of second malwares into the plurality of leveled clusters.
- the learning device according to any one of Appendix 1 to 7.
- the leveling means leveles the plurality of clusters according to the number of malware of the plurality of first malwares in each of the plurality of clusters.
- the learning device according to Appendix 8. (Appendix 10) The leveling means leveles the plurality of clusters according to the feature amount of the plurality of first malwares in each of the plurality of clusters.
- the discriminating means discriminates based on the feature amount of the file and the feature amount in the learning model.
- the discrimination system according to Appendix 11.
- (Appendix 13) Classify multiple primary malware collected during the first period into multiple clusters
- the plurality of second malwares collected during the second period are classified into the plurality of clusters, and the plurality of second malwares are classified into the plurality of clusters.
- a learning model for discriminating malware is created based on the features of the plurality of clusters according to the classification results of the plurality of second malwares. Learning method.
- (Appendix 14) In the classification of the plurality of first malwares, the plurality of first malwares are classified into the plurality of clusters based on the similarity of each of the plurality of first malwares. The learning method according to Appendix 13.
- (Appendix 15) Classify multiple primary malware collected during the first period into multiple clusters
- the plurality of second malwares collected during the second period are classified into the plurality of clusters, and the plurality of second malwares are classified into the plurality of clusters.
- a learning model for discriminating malware is created based on the features of the plurality of clusters according to the classification results of the plurality of second malwares.
- a learning program that lets a computer perform processing. In the classification of the plurality of first malwares, the plurality of first malwares are classified into the plurality of clusters based on the similarity of each of the plurality of first malwares. The learning program according to Appendix 15.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本開示に係る学習装置(10)は、第1の期間に収集された、既存のマルウェアである、複数の第1のマルウェアを複数のクラスタに分類する第1の分類部(11)と、第2の期間に収集された、新規マルウェアである、複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類部(12)と、複数の第2のマルウェアの分類結果に応じた複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習部(13)と、を備える。
Description
本発明は、学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体に関する。
近年、ディープラーニングに代表されるように機械学習の研究が盛んに行われており、様々な分野への活用が進められている。例えば、インターネット上で年々増え続けるマルウェアの検知に機械学習が利用されている。
関連する技術として、例えば、特許文献1が知られている。特許文献1には、クラスタリングを行って検知モデルを作成し、マルウェアを検知する技術が記載されている。
特許文献1のように、関連する技術では、機械学習を利用してマルウェアを検知するため、特徴量に基づいてクラスタリングを行い、学習モデルを作成している。しかしながら、関連する技術では、マルウェアを精度よく判別し得る学習モデルを作成することが困難な場合があるという問題がある。
本開示は、このような課題に鑑み、マルウェアの判別精度を向上し得る学習モデルを作成することが可能な学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体を提供することを目的とする。
本開示に係る学習装置は、第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、を備えるものである。
本開示に係る判別システムは、第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、前記作成された学習モデルに基づいて、入力されるファイルがマルウェアか否かを判別する判別手段と、を備えるものである。
本開示に係る学習方法は、第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成するものである。
本開示に係る学習プログラムが格納された非一時的なコンピュータ可読媒体は、第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、処理をコンピュータに実行させるための学習プログラムが格納された非一時的なコンピュータ可読媒体である。
本開示によれば、マルウェアの判別精度を向上し得る学習モデルを作成することが可能な学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体を提供することができる。
以下、図面を参照して実施の形態について説明する。以下の記載及び図面は、説明の明確化のため、適宜、省略、及び簡略化がなされている。また、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
(実施の形態に至る検討)
関連する技術として、ディープラーニングによる学習モデルを用いてマルウェアを判別する方法について検討する。図1は、関連する学習方法を示している。図1に示すように、関連する学習方法では、検体となるマルウェアを大量に収集し(S101)、収集したマルウェアの特徴量を抽出し(S102)、抽出したマルウェアの特徴量を用いて学習モデルを作成する(S103)。
関連する技術として、ディープラーニングによる学習モデルを用いてマルウェアを判別する方法について検討する。図1は、関連する学習方法を示している。図1に示すように、関連する学習方法では、検体となるマルウェアを大量に収集し(S101)、収集したマルウェアの特徴量を抽出し(S102)、抽出したマルウェアの特徴量を用いて学習モデルを作成する(S103)。
このように、関連する学習方法では、大量のマルウェアの特徴量を学習することによって、マルウェアに共通した“特徴”を見つけ出し、様々なマルウェアの判別を可能とし得る。なお、マルウェアとは、コンピュータウィルスやワームのように、コンピュータ上やネットワーク上で、不正な(悪質な)動作を行うソフトウェアやデータである。
しかしながら、発明者は、関連する学習方法では、特徴量の抽出に時間がかかるという課題を見出した。すなわち、関連する学習方法では、検体として収集した大量のマルウェアの特徴量を抽出する必要があるため、特徴量の抽出処理に膨大な時間がかかる。
また、発明者は、関連する学習方法で得られた学習モデルを用いると、マルウェアを精度よく判別することができないという課題を見出した。すなわち、学習させるマルウェアに“バラツキ”があるため、マルウェアの判別精度の低下や、検体によって判別精度が不安定となる恐れがある。例えば、一部の方法で収集した検体のみが判別精度を良くする場合もあるが、他の方法で収集した検体は判別精度を悪くする場合がある。また、マルウェアの特徴は収集する時期によってトレンドが変わる可能性があるものの、関連する学習方法では、そのようなマルウェアのトレンドが考慮されていない。このため、関連する学習方法では、最新のトレンドのマルウェアを精度よく判別することが困難である。また、最新のマルウェアに対応しようとすると、常にマルウェアを学習させ続ける(特徴量抽出をする)必要があるため、システム維持費が増大する可能性がある。
このように、関連する学習方法を用いると、特徴量の抽出に時間がかかり、また、マルウェアを精度よく判別することができない。そこで、以下の実施の形態では、少なくともいずれかの課題を解決する解決策を提供する。特に、以下の実施の形態では、最新のトレンドのマルウェアを考慮し、マルウェアの判別精度を向上することを可能とする。
(実施の形態の概要)
図2は、実施の形態に係る学習装置の概要を示し、図3は、実施の形態に係る判別システムの概要を示している。図2に示すように、学習装置10は、第1の分類部11、第2の分類部12、学習部13を備えている。
図2は、実施の形態に係る学習装置の概要を示し、図3は、実施の形態に係る判別システムの概要を示している。図2に示すように、学習装置10は、第1の分類部11、第2の分類部12、学習部13を備えている。
第1の分類部11は、第1の期間(例えば、最新よりも古い期間)に収集された複数の第1のマルウェアを複数のクラスタに分類する。第2の分類部12は、第1の分類部11により分類された複数のクラスタへ、第2の期間(例えば、最新の期間)に収集された複数の第2のマルウェアを分類する。学習部13は、第2の分類部12による複数の第2のマルウェアの分類結果に応じた複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する。
また、図3に示すように、判別システム2は、学習装置10と判別装置20を備えている。判別装置20は、学習装置10によって作成された判別学習モデルに基づいて、入力されるファイルがマルウェアか否かを判別する判別部21を備えている。なお、判別システム2において、学習装置10と判別装置20の構成は、これに限定されない。すなわち、判別システム2は、学習装置10と判別装置20の構成に限らず、少なくとも、第1の分類部11、第2の分類部12、学習部13、判別部21を備えている。
このように、実施の形態では、第1の期間に収集された複数の第1のマルウェア(例えば既存マルウェア)を複数のクラスタに分類した上で、第2の期間に収集された複数の第2のマルウェア(例えば新規マルウェア)を複数のクラスタに分類し、その分類結果に応じて学習モデルを作成する。これにより、第1の期間のマルウェアに限らず、第2の期間のマルウェアにも対応して学習することができるため、マルウェアの判別精度を向上し得る学習モデルを作成することができる。
(実施の形態1)
以下、図面を参照して実施の形態1について説明する。図4は、本実施の形態に係る判別システム1の構成例を示し、図5は、他の構成例を示している。判別システム1は、マルウェアの特徴を学習した学習モデルを使用し、ユーザから提供されたファイルがマルウェアか否かを判別するシステムである。
以下、図面を参照して実施の形態1について説明する。図4は、本実施の形態に係る判別システム1の構成例を示し、図5は、他の構成例を示している。判別システム1は、マルウェアの特徴を学習した学習モデルを使用し、ユーザから提供されたファイルがマルウェアか否かを判別するシステムである。
図4に示すように、例えば、判別システム1は、学習装置100、判別装置200、既存マルウェア記憶装置301、新規マルウェア記憶装置302、学習モデル記憶装置400を備えている。例えば、判別システム1の各装置は、クラウド上に構築され、判別システム1のサービスは、SaaS(Software as a Service)により提供される。すなわち、各装置は、サーバやパーソナルコンピュータ等のコンピュータ装置で実現されるが、物理的な1つの装置で実現されてもよいし、仮想化技術等によりクラウド上の複数の装置で実現されてもよい。なお、各装置及び装置内の各部(ブロック)の構成は一例であり、後述の方法(動作)が可能であれば、その他の各装置及び各部で構成されてもよい。例えば、判別装置200と学習装置100を1つの装置としてもよいし、各装置を複数の装置としてもよい。既存マルウェア記憶装置301や新規マルウェア記憶装置302、学習モデル記憶装置400を、判別装置200や学習装置100に内蔵してもよい。また、判別装置200や学習装置100に内蔵された記憶部を外部の記憶装置としてもよい。
既存マルウェア記憶装置301及び新規マルウェア記憶装置302は、学習のための検体となる大量のマルウェアを記憶するデータベース装置である。既存マルウェア記憶装置301及び新規マルウェア記憶装置302は、それぞれの収集期間において、予め収集されたマルウェアを記憶してもよいし、インターネット上で提供される情報を記憶してもよい。既存マルウェア記憶装置301は、最新よりも古い期間である第1の期間に収集されたマルウェア(既存マルウェアと言う)を記憶する。新規マルウェア記憶装置302は、第1の期間よりも後の最新の期間である第2の期間に収集されたマルウェア(新規マルウェアと言う)を記憶する。例えば、マルウェアのトレンドが3か月(四半期)周期で変わるとすると、第2の期間は最新の3か月であり、第1の期間はそれより前の3か月(さらに前を含んでもよい)である。例えば、最新の3か月に収集されたマルウェアを新規マルウェアとし、それより前に収集されたマルウェアを既存マルウェアとする。なお、3か月の期間は一例であり、任意の期間でもよい(任意の年、月、日でもよい)。
学習モデル記憶装置400は、マルウェアを判別するための学習モデルを記憶する。学習モデル記憶装置400は、学習装置100が作成する学習モデルを記憶し、記憶された学習モデルを判別装置200がマルウェアの判別のために参照する。
学習装置100は、検体となるマルウェアの特徴を学習した学習モデルを作成する装置である。学習装置100は、既存マルウェアをクラスタに分類し、そのクラスタに新規マルウェアを分類した上で、学習モデルを作成する。学習装置100は、制御部110及び記憶部120を備えている。学習装置100は、その他、必要に応じて、判別装置200やインターネット等との通信部や、ユーザやオペレータ等とのインタフェースとして入力部や出力部等を有してもよい。
記憶部120は、学習装置100の動作に必要な情報を格納する。記憶部120は、不揮発性の記憶部(格納部)であり、例えば、フラッシュメモリなどの不揮発性メモリやハードディスクである。記憶部120は、マルウェアの特徴量を記憶する特徴量記憶部121、マルウェアを分類したクラスタの情報を記憶するクラスタ記憶部122を含む。その他、記憶部120には、機械学習により学習モデルを作成するために必要なプログラム等が格納される。
制御部110は、学習装置100の各部の動作を制御する制御部であり、CPU(Central Processing Unit)等のプログラム実行部である。制御部110は、記憶部120に格納されたプログラムを読み出し、読み出したプログラムを実行することで、各機能(処理)を実現する。この機能として、制御部110は、例えば、既存準備部111、特徴量抽出部112、既存分類部113、平準化部114、新規準備部115、新規分類部116、特徴量調整部117、学習部118を含む。
既存準備部111、特徴量抽出部112、既存分類部113、平準化部114は、後述する既存マルウェア処理を行う既存マルウェア処理部(第1の処理部)である。
既存準備部111は、既存マルウェアの学習のために必要な準備を行う。既存準備部111は、既存マルウェア記憶装置301を参照して、既存マルウェアの検体を準備し、学習するための既存マルウェアの検体を選定する。既存準備部111は、所定の基準に基づいて検体の準備及び選定を行ってもよいし、入力されるユーザ等の操作に応じて検体の準備及び選定を行ってもよい。
特徴量抽出部112は、既存マルウェアの特徴を示す特徴量を抽出する。特徴量抽出部112は、所定の特徴量抽出ルールにしたがい、選定された既存マルウェアの特徴量を抽出し、抽出した特徴量を特徴量記憶部121に格納する。特徴量抽出ルールは、予め記憶部120に記憶されていてもよいし、ユーザ等の操作に応じて指定されてもよい。
既存分類部(第1の分類部)113は、既存マルウェアをクラスタに分類する。既存分類部113は、選定された既存マルウェアをクラスタに分類し、分類したクラスタのクラスタ情報をクラスタ記憶部122に格納する。既存分類部113は、階層クラスタリング等の所定のクラスタリング方法により、既存マルウェアの類似度に基づいてクラスタリングを行う。クラスタ情報には、各クラスタに含まれるマルウェアを示す情報や、各クラスタにおけるマルウェアの特徴量等が含まれる。
平準化部114は、既存マルウェアを分類した各クラスタを平準化する。平準化部114は、クラスタ記憶部122に記憶されているクラスタ情報を参照し、各クラスタのマルウェア数(もしくは特徴量)に基づいて平準化し、クラスタ記憶部122のクラスタ情報を更新する。例えば、平準化部114は、オーバーサンプリングやアンダーサンプリング等の所定のサンプリングアルゴリズムにより、全てのクラスタでマルウェア数(もしくは特徴量)が等しくなるように平準化する。
新規準備部115、新規分類部116、特徴量調整部117は、後述する新規マルウェア処理を行う新規マルウェア処理部(第2の処理部)である。
新規準備部115は、新規マルウェアの学習のために必要な準備を行う。新規準備部115は、新規マルウェア記憶装置302を参照して、新規マルウェアの検体を準備し、学習するための新規マルウェアの検体を選定する。新規準備部115は、既存準備部111と同様に、所定の基準に基づいて検体の準備及び選定を行ってもよいし、入力されるユーザ等の操作に応じて検体の準備及び選定を行ってもよい。
新規分類部(第2の分類部)116は、新規マルウェアをクラスタに分類する。新規分類部116は、クラスタ記憶部122に記憶されているクラスタ情報を参照し、既存マルウェアを分類し平準化されたクラスタに対し、選定された新規マルウェアを分類し、クラスタ記憶部122のクラスタ情報を更新する。新規分類部116は、新規マルウェアとクラスタの類似度に基づいて、新規マルウェアがいずれかのクラスタに属するように分類する。
特徴量調整部117は、新規マルウェアを分類した各クラスタの特徴量を調整する。特徴量調整部117は、クラスタ記憶部122に記憶されているクラスタ情報を参照し、各クラスタに対する新規マルウェアの分類結果に応じて、各クラスタの特徴量を調整し、クラスタ記憶部122のクラスタ情報を更新する。例えば、各クラスタに対する新規マルウェアの分類数や分類割合に応じて、各クラスタの特徴量を調整する。
学習部118は、調整された各クラスタの特徴量を用いて学習する。学習部118は、クラスタ記憶部122に記憶されたクラスタ情報を参照し、分類結果に応じて調整された各クラスタの特徴量に基づいて学習モデルを作成し、作成した学習モデルを学習モデル記憶装置400に格納する。学習部118は、各クラスタのマルウェアの特徴量を教師データとして、SVM(Support Vector Machine)等の機械学習器に学習させることで、学習モデルを作成する。
判別装置200は、ユーザから提供されるファイルをマルウェアか否か判別する装置である。判別装置200は、入力部210、判別部220、出力部230を備えている。判別装置200は、その他、必要に応じて、学習装置100やインターネット等との通信部等を有してもよい。
入力部210は、ユーザから入力されたファイルを取得する。入力部210は、インターネット等のネットワークを介して、アップロードされたファイルを受け付ける。
判別部220は、学習装置100が作成した学習モデルに基づき、ファイルがマルウェアか否かを判別する。判別部220は、学習モデル記憶装置400に記憶された学習モデルを参照し、ファイルの特徴がマルウェアの特徴に近いか否か判断する。
出力部230は、判別部220の判別結果をユーザへ出力する。出力部230は、入力部210と同様に、インターネット等のネットワークを介して、ファイルの判別結果を出力する。
なお、学習装置100は、図4のような構成に限らず、図5のような構成でもよい。すなわち、既存マルウェア処理と新規マルウェア処理は別のタイミングで実施されてもよいため、既存マルウェア処理と新規マルウェア処理を同じブロックで行ってもよい。例えば、既存準備部111と新規準備部115を一つの準備部111aとし、既存分類部113と新規分類部116を一つの分類部113aとしてもよい。また、既存マルウェア記憶装置301と新規マルウェア記憶装置302を一つのマルウェア記憶装置300としてもよい。
図6は、本実施の形態に係る学習装置100により実施される学習方法を示しており、図7は、図6の学習方法における既存マルウェア処理を示しており、図8は、図6の学習方法における新規マルウェア処理を示している。
図6に示すように、本実施の形態に係る学習方法では、まず、学習装置100は、第1のステップとして既存マルウェア処理を実施し(S201)、第2のステップとして新規マルウェア処理を実施し(S202)、さらに、学習モデルを作成する(S203)。例えば、第1の時期(例えば第2の時期の3か月前)に既存マルウェア処理を実施し(S201)、第2の時期(例えば第1の時期の3か月後)に新規マルウェア処理及び学習モデルを作成する(S202及びS203)。なお、既存マルウェア記憶装置301及び新規マルウェア記憶装置302にそれぞれ必要なマルウェアが格納されている場合、S201~S203を同じ時期に行ってもよい。
S201の既存マルウェア処理では、図7に示すように、学習装置100は、まず、既存の検体である既存マルウェアを収集する(S301)。すなわち、既存準備部111は、第1の期間におけるマルウェアの検体を既存マルウェア記憶装置301やインターネット等から大量に準備する。また、既存準備部111は、所定の基準等に基づいて、準備した既存マルウェアの中から、学習するための既存マルウェアを選定する。
続いて、学習装置100は、既存マルウェアの特徴量を抽出する(S302)。すなわち、特徴量抽出部112は、検体として学習する既存マルウェアの特徴量を抽出する。
図9は、S302における特徴量のイメージを示している。特徴量は、マルウェアの特徴を示すデータであり、複数の特徴データ要素の数値データである。特徴データ要素は、所定の特徴量抽出ルールに基づいており、例えば、所定の文字列パターンの出現回数である。所定の文字列は、1~3文字でもよいし、任意の長さの文字列でもよい。また、特徴データ要素は、所定のファイルへのアクセス回数や所定のAPI(Application Programming Interface)の呼び出し回数等を含む。
図9は、特徴データ要素E1及びE2の2次元の特徴データ要素の例である。例えば、特徴データ要素E1及びE2は、それぞれ異なる文字列パターンの出現回数である。マルウェアの判別精度を上げるためには、より多くの特徴データ要素を使用することが好ましい。例えば、1文字のパターン、2文字のパターン、3文字のパターンをそれぞれ100~200個用意し、全てを特徴データ要素としてもよい。
続いて、学習装置100は、既存マルウェアをクラスタに分類する(S303~S305)。具体的には、学習装置100は、既存マルウェアの類似度を計算し(S303)、既存マルウェアをクラスタリングし(S304)、クラスタの類似度を計算する(S305)。すなわち、既存分類部113は、検体であるマルウェア同士の類似度を計算し、最も類似度が高いマルウェア同士を同じクラスタに分類する。既存分類部113は、さらに、分類したクラスタ同士の類似度を計算してクラスタリングを行い、必要に応じて類似度の計算とクラスタリングを繰り返す。ここで計算する類似度は、クラスタリングのための分類要素の類似度である。分類要素は、特徴量における複数の特徴データ要素の一部でもよいし、特徴データ要素とは別の要素でもよい。分類要素は、特徴量における全ての特徴データ要素ではなく、特徴量よりも簡易に計算できる要素である。例えば、分類要素は、所定の文字列パターン(特徴量で用いるうちの一部の文字列パターン)の出現回数である。
図10は、S304におけるクラスタリングのイメージを示している。図10の例では、既存マルウェアにマルウェアM-A~M-Fが含まれている。マルウェアM-AとマルウェアM-Dの類似度が最も高い(例えば所定の文字列パターンの出現回数が最も近い)ため、クラスタC-Aに分類し、マルウェアM-BとマルウェアM-Cの類似度が最も高いため、クラスタC-Bに分類し、マルウェアM-EとマルウェアM-Fの類似度が最も高いため、クラスタC-Cに分類する。
続いて、学習装置100は、クラスタを平準化する(S306)。すなわち、平準化部114は、各クラスタのクラスタサイズを平均化する。クラスタサイズは、クラスタのマルウェア数であり、また、クラスタのマルウェアの特徴量である。平準化部114は、マルウェア数が少ないクラスタの特徴量は、サンプリングアルゴリズム等で増やし、マルウェア数が多いクラスタの特徴量の一部を学習で使わないようにする。
図11及び図12は、平準化のイメージを示している。例えば、図11に示すように、クラスタC-Aのクラスタ数が2、クラスタC-Bのクラスタ数が5、クラスタC-Cのクラスタ数が4とすると、各クラスタのクラスタ数が平均値の4となるように調整する。クラスタC-Bについては、クラスタ数が5であるため、例えば、マルウェアM-Gの特徴量を使用しないようにする(マルウェアをクラスタから削除する)。クラスタC-Aについては、クラスタ数が2であるため、マルウェアM-A及びM-Dの特徴量に近い特徴量を追加する。この例では、ダミーのマルウェアM-H及びM-Iの特徴量を生成し、クラスタC-Aに追加する。例えば、クラスタC-Aの特徴量(例えば、マルウェアM-A及びM-Dの特徴量の平均値)のデータを変更したり、データを削除または増加させたりすることで、クラスタC-Aの特徴量に近いマルウェアM-H及びM-Iの特徴量を生成する。例えば、図12に示すように、クラスタC-Aの特徴量に含まれる一つのデータの値のみを変更し、マルウェアM-Hの特徴量を生成する。また、クラスタC-Aの特徴量に含まれる一つのデータのみを削除し、マルウェアM-Iの特徴量を生成する。
S201の既存マルウェア処理に続いて、S202の新規マルウェア処理では、図8に示すように、学習装置100は、まず、新規の検体である新規マルウェアを収集する(S401)。すなわち、新規準備部115は、第2の期間におけるマルウェアの検体を新規マルウェア記憶装置302やインターネット等から大量に準備する。また、新規準備部115は、所定の基準等に基づいて、準備した新規マルウェアの中から、学習するための新規マルウェアを選定する。
続いて、学習装置100は、新規マルウェアを既存のクラスタに分類する(S402~S403)。具体的には、学習装置100は、新規マルウェアの類似度を計算し(S402)、新規マルウェアをクラスタリングする(S403)。すなわち、新規分類部116は、検体である新規マルウェアと既存マルウェアを分類済みの各クラスタとの類似度を計算し、新規マルウェアを最も類似度が高いクラスタに分類する。新規分類部116は、上記の既存マルウェアのクラスタリングと同様、所定の文字列パターンの出現回数等の分類要素により類似度を計算する。例えば、新規マルウェアにおける所定の文字列パターンの出現回数と各クラスタの既存マルウェアにおける所定の文字列パターンの出現回数の平均値との類似度を計算する。
図13は、S403におけるクラスタリングのイメージを示している。図13の例では、新規マルウェアにマルウェアN-A~N-Fが含まれている。例えば、マルウェアN-A、N-B、N-Cは、クラスタC-Aと最も類似度が高い(例えばマルウェアの所定の文字列パターンの出現回数とクラスタの所定の文字列パターンの出現回数が最も近い)ため、クラスタC-Aに分類し、マルウェアN-E、N-Fは、クラスタC-Bと最も類似度が高いため、クラスタC-Bに分類し、マルウェアN-Dは、クラスタC-Cと最も類似度が高いため、クラスタC-Cに分類する。
続いて、学習装置100は、新規マルウェアの分類割合を計算し(S404)、クラスタの特徴量を調整する(S405)。すなわち、特徴量調整部117は、新規マルウェアが各クラスタへ分類された割合(もしくは分類数)を計算し、計算した分類割合に基づいて学習に使用するクラスタの特徴量を調整する。
図14は、S405における特徴量の調整イメージを示している。例えば、図13のように、新規マルウェアを分類した結果、クラスタC-Aに3個の新規マルウェアを分類し、クラスタC-Bに2個の新規マルウェアを分類し、クラスタC-Cに1個の新規マルウェアを分類したとすると、クラスタC-Aの分類割合は1/2、クラスタC-Bの分類割合は1/3、クラスタC-Cの分類割合は1/6となる。この分類割合に応じて各クラスタの特徴量を調整する。クラスタC-Aの分類割合は、クラスタC-B及びC-Cよりも大きいため、学習に使用するクラスタC-Aの特徴量を増やす。クラスタC-Cの分類割合は、クラスタC-A及びC-Bよりも小さいため、学習に使用するクラスタC-Cの特徴量を減らす。上記のクラスタの平準化と同様、クラスタの特徴量を増やす場合、所定のサンプリングアルゴリズムで特徴量を追加し、クラスタの特徴量を減らす場合、クラスタの特徴量の一部を使用しないようにする(クラスタから削除する)。なお、この時、平準化時に特徴量を減らした(特徴量として使うマルウェアを減らした)クラスタの特徴量を増やす場合、サンプリングアルゴリズムで特徴量を追加するだけではなく、平準化時に減らした分のマルウェアの特徴量を使用してもよい。
S201の既存マルウェア処理、S202の新規マルウェア処理に続いて、図6に示すように、学習装置100は、学習モデルを作成する(S203)。すなわち、学習部118は、調整した各クラスタの特徴量を用いて、マルウェアの学習モデルを作成する。
図15は、本実施の形態に係る判別装置200により実施される判別方法を示している。この判別方法は、図6の学習方法により判別学習モデルが作成された後に実行される。なお、この判別方法の中で、図6の学習方法により学習モデルを作成してもよい。
図15に示すように、判別装置200は、ユーザからファイルの入力を受け付ける(S501)。例えば、入力部210は、ユーザにWebインタフェースを提供し、ユーザがWebインタフェース上でアップロードしたファイルを取得する。
続いて、判別装置200は、学習モデルを参照し(S502)、学習モデルに基づいてファイルを判別する(S503)。判別部220は、学習装置100が作成した学習モデルを参照し、入力ファイルがマルウェアか否か判別する。学習モデルで学習したマルウェアの特徴を持つファイルは、“マルウェア”と判定され、その特徴に当てはまらないファイルは、マルウェアではない“正常ファイル”と判定される。例えば、入力ファイルの特徴量を抽出し、抽出した特徴量と学習モデルにおけるマルウェアの特徴量とが、所定の範囲よりも近い場合、マルウェアと判定する。
続いて、判別装置200は、判別結果を出力する(S504)。例えば、出力部230は、S501と同様、Webインタフェースを介して、ユーザに判断結果を表示する。例えば、「ファイルはマルウェアである」、もしくは「ファイルは正常ファイルである」と表示する。また、ファイルの特徴量と学習モデルの特徴量との距離から、マルウェアや正常ファイルと判断される可能性(確率)を表示してもよい。
以上のように、本実施の形態では、第1のステップの既存マルウェア処理で、マルウェアを学習させる前に検体を類似度でクラスタリングし、第2のステップの新規マルウェア処理で、新規マルウェアと“似た”既存マルウェアの特徴をクラスタに適用するようにした。これにより、新規マルウェアに対応した特徴を学習できるため、新しいトレンドのマルウェアの判別精度を向上することができる。また、本実施の形態では、新規マルウェアの特徴量を抽出する必要がないため、特徴量の抽出にかかる時間を抑え、簡易に新しいトレンドのマルウェアの特徴を学習することができる。さらに、既存マルウェアのクラスタリングでは、分類したクラスタを平準化することにより、学習する既存マルウェアの特徴量のばらつきを抑えることができる。平準化されたクラスタに新規マルウェアをクラスタリングし、クラスタの特徴量を調整することで、新しいマルウェアのトレンドに確実に対応することができる。
なお、本開示は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、ユーザから提供されたファイルの判別に限らず、自動的に収集したファイルを判別するシステムとしてもよい。また、マルウェアの判別に限らず、その他の異常ファイルを判別するシステムとしてもよい。
上述の実施形態における各構成は、ハードウェア又はソフトウェア、もしくはその両方によって構成され、1つのハードウェア又はソフトウェアから構成してもよいし、複数のハードウェア又はソフトウェアから構成してもよい。各装置の機能(処理)を、CPUやメモリ等を有するコンピュータにより実現してもよい。例えば、記憶装置に実施形態における方法(学習方法や判別方法)を行うためのプログラムを格納し、各機能を、記憶装置に格納されたプログラムをCPUで実行することにより実現してもよい。
これらのプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
以上、実施の形態を参照して本開示を説明したが、本開示は上記実施の形態に限定されるものではない。本開示の構成や詳細には、本開示のスコープ内で当業者が理解し得る様々な変更をすることができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
を備える、学習装置。
(付記2)
前記第1の分類手段は、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記1に記載の学習装置。
(付記3)
前記第2の分類手段は、前記複数の第2のマルウェアと前記複数のクラスタとの類似度に基づいて、前記複数の第2のマルウェアを前記複数のクラスタに分類する、
付記1又は2に記載の学習装置。
(付記4)
前記類似度は、所定の文字列パターンの出現回数の類似度である、
付記2又は3に記載の学習装置。
(付記5)
前記複数の第2のマルウェアの分類結果に応じて前記複数のクラスタの特徴量を調整する調整手段をさらに備え、
前記学習手段は、前記調整された特徴量に基づいて、前記学習モデルを作成する、
付記1乃至4のいずれかに記載の学習装置。
(付記6)
前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類数に応じて、前記特徴量を調整する、
付記5に記載の学習装置。
(付記7)
前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類割合に応じて、前記特徴量を調整する、
付記5に記載の学習装置。
(付記8)
前記複数の第1のマルウェアを分類した前記複数のクラスタを平準化する平準化手段をさらに備え、
前記第2の分類手段は、前記平準化された複数のクラスタに、前記複数の第2のマルウェアを分類する、
付記1乃至7のいずれかに記載の学習装置。
(付記9)
前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアのマルウェア数に応じて、前記複数のクラスタを平準化する、
付記8に記載の学習装置。
(付記10)
前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアの特徴量に応じて、前記複数のクラスタを平準化する、
付記8に記載の学習装置。
(付記11)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
前記作成された学習モデルに基づいて、入力されるファイルがマルウェアか否かを判別する判別手段と、
を備える、判別システム。
(付記12)
前記判別手段は、前記ファイルの特徴量と前記学習モデルにおける特徴量とに基づいて判別する、
付記11に記載の判別システム。
(付記13)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
学習方法。
(付記14)
前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記13に記載の学習方法。
(付記15)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
処理をコンピュータに実行させるための学習プログラム。
(付記16)
前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記15に記載の学習プログラム。
(付記1)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
を備える、学習装置。
(付記2)
前記第1の分類手段は、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記1に記載の学習装置。
(付記3)
前記第2の分類手段は、前記複数の第2のマルウェアと前記複数のクラスタとの類似度に基づいて、前記複数の第2のマルウェアを前記複数のクラスタに分類する、
付記1又は2に記載の学習装置。
(付記4)
前記類似度は、所定の文字列パターンの出現回数の類似度である、
付記2又は3に記載の学習装置。
(付記5)
前記複数の第2のマルウェアの分類結果に応じて前記複数のクラスタの特徴量を調整する調整手段をさらに備え、
前記学習手段は、前記調整された特徴量に基づいて、前記学習モデルを作成する、
付記1乃至4のいずれかに記載の学習装置。
(付記6)
前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類数に応じて、前記特徴量を調整する、
付記5に記載の学習装置。
(付記7)
前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類割合に応じて、前記特徴量を調整する、
付記5に記載の学習装置。
(付記8)
前記複数の第1のマルウェアを分類した前記複数のクラスタを平準化する平準化手段をさらに備え、
前記第2の分類手段は、前記平準化された複数のクラスタに、前記複数の第2のマルウェアを分類する、
付記1乃至7のいずれかに記載の学習装置。
(付記9)
前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアのマルウェア数に応じて、前記複数のクラスタを平準化する、
付記8に記載の学習装置。
(付記10)
前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアの特徴量に応じて、前記複数のクラスタを平準化する、
付記8に記載の学習装置。
(付記11)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
前記作成された学習モデルに基づいて、入力されるファイルがマルウェアか否かを判別する判別手段と、
を備える、判別システム。
(付記12)
前記判別手段は、前記ファイルの特徴量と前記学習モデルにおける特徴量とに基づいて判別する、
付記11に記載の判別システム。
(付記13)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
学習方法。
(付記14)
前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記13に記載の学習方法。
(付記15)
第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
処理をコンピュータに実行させるための学習プログラム。
(付記16)
前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
付記15に記載の学習プログラム。
1、2 判別システム
10 学習装置
11 第1の分類部
12 第2の分類部
13 学習部
20 判別装置
21 判別部
100 学習装置
110 制御部
111 既存準備部
111a 準備部
112 特徴量抽出部
113 既存分類部
113a 分類部
114 平準化部
115 新規準備部
116 新規分類部
117 特徴量調整部
118 学習部
120 記憶部
121 特徴量記憶部
122 クラスタ記憶部
200 判別装置
210 入力部
220 判別部
230 出力部
300 マルウェア記憶装置
301 既存マルウェア記憶装置
302 新規マルウェア記憶装置
400 学習モデル記憶装置
10 学習装置
11 第1の分類部
12 第2の分類部
13 学習部
20 判別装置
21 判別部
100 学習装置
110 制御部
111 既存準備部
111a 準備部
112 特徴量抽出部
113 既存分類部
113a 分類部
114 平準化部
115 新規準備部
116 新規分類部
117 特徴量調整部
118 学習部
120 記憶部
121 特徴量記憶部
122 クラスタ記憶部
200 判別装置
210 入力部
220 判別部
230 出力部
300 マルウェア記憶装置
301 既存マルウェア記憶装置
302 新規マルウェア記憶装置
400 学習モデル記憶装置
Claims (16)
- 第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
を備える、学習装置。 - 前記第1の分類手段は、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
請求項1に記載の学習装置。 - 前記第2の分類手段は、前記複数の第2のマルウェアと前記複数のクラスタとの類似度に基づいて、前記複数の第2のマルウェアを前記複数のクラスタに分類する、
請求項1又は2に記載の学習装置。 - 前記類似度は、所定の文字列パターンの出現回数の類似度である、
請求項2又は3に記載の学習装置。 - 前記複数の第2のマルウェアの分類結果に応じて前記複数のクラスタの特徴量を調整する調整手段をさらに備え、
前記学習手段は、前記調整された特徴量に基づいて、前記学習モデルを作成する、
請求項1乃至4のいずれか一項に記載の学習装置。 - 前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類数に応じて、前記特徴量を調整する、
請求項5に記載の学習装置。 - 前記調整手段は、前記複数のクラスタのそれぞれにおける前記複数の第2のマルウェアの分類割合に応じて、前記特徴量を調整する、
請求項5に記載の学習装置。 - 前記複数の第1のマルウェアを分類した前記複数のクラスタを平準化する平準化手段をさらに備え、
前記第2の分類手段は、前記平準化された複数のクラスタに、前記複数の第2のマルウェアを分類する、
請求項1乃至7のいずれか一項に記載の学習装置。 - 前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアのマルウェア数に応じて、前記複数のクラスタを平準化する、
請求項8に記載の学習装置。 - 前記平準化手段は、前記複数のクラスタのそれぞれにおける前記複数の第1のマルウェアの特徴量に応じて、前記複数のクラスタを平準化する、
請求項8に記載の学習装置。 - 第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類する第1の分類手段と、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類する第2の分類手段と、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する学習手段と、
前記作成された学習モデルに基づいて、入力されるファイルがマルウェアか否かを判別する判別手段と、
を備える、判別システム。 - 前記判別手段は、前記ファイルの特徴量と前記学習モデルにおける特徴量とに基づいて判別する、
請求項11に記載の判別システム。 - 第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
学習方法。 - 前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
請求項13に記載の学習方法。 - 第1の期間に収集された複数の第1のマルウェアを複数のクラスタに分類し、
第2の期間に収集された複数の第2のマルウェアを前記複数のクラスタに分類し、
前記複数の第2のマルウェアの分類結果に応じた前記複数のクラスタの特徴量に基づいて、マルウェアを判別するための学習モデルを作成する、
処理をコンピュータに実行させるための学習プログラムが格納された非一時的なコンピュータ可読媒体。 - 前記複数の第1のマルウェアの分類では、前記複数の第1のマルウェアのそれぞれの類似度に基づいて、前記複数の第1のマルウェアを前記複数のクラスタに分類する、
請求項15に記載の非一時的なコンピュータ可読媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/642,722 US20220327210A1 (en) | 2019-09-27 | 2019-09-27 | Learning apparatus, determination system, learning method, and non-transitory computer readable medium storing learning program |
JP2021548284A JP7272446B2 (ja) | 2019-09-27 | 2019-09-27 | 学習装置、判別システム、学習方法及び学習プログラム |
PCT/JP2019/038283 WO2021059509A1 (ja) | 2019-09-27 | 2019-09-27 | 学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/038283 WO2021059509A1 (ja) | 2019-09-27 | 2019-09-27 | 学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021059509A1 true WO2021059509A1 (ja) | 2021-04-01 |
Family
ID=75166888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/038283 WO2021059509A1 (ja) | 2019-09-27 | 2019-09-27 | 学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220327210A1 (ja) |
JP (1) | JP7272446B2 (ja) |
WO (1) | WO2021059509A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023053216A1 (ja) * | 2021-09-28 | 2023-04-06 | 富士通株式会社 | 機械学習プログラム、機械学習方法および機械学習装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012027710A (ja) * | 2010-07-23 | 2012-02-09 | Nippon Telegr & Teleph Corp <Ntt> | ソフトウェア検出方法及び装置及びプログラム |
JP2013529335A (ja) * | 2010-04-28 | 2013-07-18 | シマンテック コーポレーション | クラスタリングを使用した行動シグネチャの生成 |
JP2017004123A (ja) * | 2015-06-05 | 2017-01-05 | 日本電信電話株式会社 | 判定装置、判定方法および判定プログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9665716B2 (en) * | 2014-12-23 | 2017-05-30 | Mcafee, Inc. | Discovery of malicious strings |
US11176206B2 (en) * | 2015-12-01 | 2021-11-16 | International Business Machines Corporation | Incremental generation of models with dynamic clustering |
US10866995B2 (en) * | 2017-08-29 | 2020-12-15 | Paypal, Inc. | Rapid online clustering |
US10848519B2 (en) * | 2017-10-12 | 2020-11-24 | Charles River Analytics, Inc. | Cyber vaccine and predictive-malware-defense methods and systems |
US11030312B2 (en) * | 2018-09-18 | 2021-06-08 | International Business Machines Corporation | System and method for machine based detection of a malicious executable file |
-
2019
- 2019-09-27 JP JP2021548284A patent/JP7272446B2/ja active Active
- 2019-09-27 US US17/642,722 patent/US20220327210A1/en active Pending
- 2019-09-27 WO PCT/JP2019/038283 patent/WO2021059509A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013529335A (ja) * | 2010-04-28 | 2013-07-18 | シマンテック コーポレーション | クラスタリングを使用した行動シグネチャの生成 |
JP2012027710A (ja) * | 2010-07-23 | 2012-02-09 | Nippon Telegr & Teleph Corp <Ntt> | ソフトウェア検出方法及び装置及びプログラム |
JP2017004123A (ja) * | 2015-06-05 | 2017-01-05 | 日本電信電話株式会社 | 判定装置、判定方法および判定プログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023053216A1 (ja) * | 2021-09-28 | 2023-04-06 | 富士通株式会社 | 機械学習プログラム、機械学習方法および機械学習装置 |
Also Published As
Publication number | Publication date |
---|---|
US20220327210A1 (en) | 2022-10-13 |
JPWO2021059509A1 (ja) | 2021-04-01 |
JP7272446B2 (ja) | 2023-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7086972B2 (ja) | 侵入検出のための継続的な学習 | |
JP6781415B2 (ja) | ニューラルネットワーク学習装置、方法、プログラム、およびパターン認識装置 | |
US20200012963A1 (en) | Curating Training Data For Incremental Re-Training Of A Predictive Model | |
WO2019128529A1 (zh) | Url攻击检测方法、装置以及电子设备 | |
US20130097704A1 (en) | Handling Noise in Training Data for Malware Detection | |
US20190325316A1 (en) | Apparatus and methods for program synthesis using genetic algorithms | |
US10733385B2 (en) | Behavior inference model building apparatus and behavior inference model building method thereof | |
CN110969200A (zh) | 基于一致性负样本的图像目标检测模型训练方法及装置 | |
US20200356823A1 (en) | Systems and techniques to monitor text data quality | |
JP2016192007A (ja) | 機械学習装置、機械学習方法、および機械学習プログラム | |
JP2017004123A (ja) | 判定装置、判定方法および判定プログラム | |
CN107783998A (zh) | 一种数据处理的方法以及装置 | |
JP7396479B2 (ja) | 学習装置、学習済みモデル生成方法、及び、プログラム | |
WO2019092868A1 (ja) | 情報処理装置、情報処理方法及びコンピュータ読み取り可能な記録媒体 | |
JP7207540B2 (ja) | 学習支援装置、学習支援方法、及びプログラム | |
WO2021059509A1 (ja) | 学習装置、判別システム、学習方法及び学習プログラムが格納された非一時的なコンピュータ可読媒体 | |
EP4296905A1 (en) | Relearning system and relearning method | |
US20240303148A1 (en) | Systems and methods for detecting drift | |
CN110770753B (zh) | 高维数据实时分析的装置和方法 | |
JP6356015B2 (ja) | 遺伝子発現情報解析装置、遺伝子発現情報解析方法、及びプログラム | |
CN111783088A (zh) | 一种恶意代码家族聚类方法、装置和计算机设备 | |
US11017055B2 (en) | Hotspots for probabilistic model testing and cyber analysis | |
US11449789B2 (en) | System and method for hierarchical classification | |
WO2021059822A1 (ja) | 学習装置、判別システム、学習方法及び非一時的なコンピュータ可読媒体 | |
CN113642017A (zh) | 一种基于自适应特征分类的加密流量识别方法、存储器和处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19946864 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2021548284 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19946864 Country of ref document: EP Kind code of ref document: A1 |