WO2016194909A1 - アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム - Google Patents

アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム Download PDF

Info

Publication number
WO2016194909A1
WO2016194909A1 PCT/JP2016/066054 JP2016066054W WO2016194909A1 WO 2016194909 A1 WO2016194909 A1 WO 2016194909A1 JP 2016066054 W JP2016066054 W JP 2016066054W WO 2016194909 A1 WO2016194909 A1 WO 2016194909A1
Authority
WO
WIPO (PCT)
Prior art keywords
trees
access
similarity
server
classification
Prior art date
Application number
PCT/JP2016/066054
Other languages
English (en)
French (fr)
Inventor
俊樹 芝原
毅 八木
満昭 秋山
雄太 高田
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to JP2017521950A priority Critical patent/JP6557334B2/ja
Priority to US15/577,938 priority patent/US10462168B2/en
Priority to EP16803343.9A priority patent/EP3287909B1/en
Publication of WO2016194909A1 publication Critical patent/WO2016194909A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Definitions

  • the present invention relates to an access classification device, an access classification method, and an access classification program.
  • a malignant web site identification method that is a method for identifying a malignant web site that is infected with malware from the web sites accessed by the user terminal.
  • Such a malignant web site identification method is classified into a dynamic analysis and a static analysis.
  • Dynamic analysis is executed by executing content such as HTML (HyperText Markup Language) or JavaScript (registered trademark) acquired from a server such as a web server, and detecting attacks against vulnerabilities from the behavior on the host at that time.
  • This is a technique for identifying malignant web sites.
  • static analysis only obtains content from the server, performs code analysis of the content, and uses benign webs using information related to program features, domains, and URLs (Uniform Resource Locator). This is a technique for identifying a malignant web site from the difference from the characteristics observed on the site.
  • Non-Patent Document 1 Non-Patent Document 1 in which a feature vector is described using the number of lines and characters of a script, and the number of appearances of a keyword in the script, and is identified using a machine learning method. is there.
  • Non-Patent Document 2 Non-Patent Document 2
  • Non-patent Document 3 there is a technique (Non-patent Document 3) that creates a sequence composed of node types of abstract syntax trees created from JavaScript (registered trademark) and identifies the sequence by the similarity of the sequence.
  • Non-Patent Document 4 creates and identifies a decision tree for determining malignancy of content from the number of appearances of iframe and script tags, the size of the tag, and the like.
  • the URL and host information can be determined using the keywords contained in the URL, DNS (Domain Name System) query results, and geographic information associated with the IP (Internet Protocol) address.
  • DNS Domain Name System
  • IP Internet Protocol
  • Non-patent Document 6 a technique (Non-Patent Document 7) is proposed in which a difference is extracted from contents acquired when accessing the same page at different times, and a malignancy determination is performed based on the difference.
  • the malicious web site is identified by various methods.
  • Matsunaka et al.'S method uses the HTTP (Hyper Text Transfer Protocol) header when downloading an executable file and the fact that there is no download information in the content acquired before downloading. Forwarding caused by an attack on the vulnerability is detected.
  • the method of Stringhini et al. (Non-Patent Document 9), after creating an access group having the same last page from the time series of a series of pages accessed by each user by automatic transfer, an IP address is obtained from those access groups.
  • a feature vector such as the number or the number of redirects is created to identify a malicious web site. Furthermore, in the method of Rafique et al. (Non-Patent Document 10), a part necessary for downloading malware is extracted from a series of pages accessed by redirection by individually accessing a plurality of pages in the series, and a signature is created. By doing so, the malignant web site is identified.
  • the above-described malicious web site identification method based on content uses content information acquired from a server, URL, and host information, and is therefore easily avoided by an attacker. For example, if an attacker changes the tendency of HTML tags and JavaScript (registered trademark) functions used on a malignant web site to be close to a benign site, the site that is originally a malignant web site is changed to a benign web site. It may be misidentified. As a result, the content provider cannot write the undetected malicious web site in the blacklist, and may cause a problem that the user is allowed to access the malicious website.
  • HTML tags and JavaScript registered trademark
  • the above-described method focusing on redirection also requires a plurality of accesses, and the malignant web site cannot be identified from a single access, and therefore the scope of application of the method is limited. Therefore, it is desired to construct a malicious web site identification method that is not easily affected by changes in content or the like by an attacker and can be identified by one access.
  • the embodiment of the disclosure has been made in view of the above, and is difficult to avoid by an attacker, and can easily detect a malicious web site, an access classification method, and an access classification
  • the purpose is to provide a program.
  • an access classification device disclosed in the present application in one aspect, includes a first server and a second server as nodes, and the second server to the second server.
  • a degree of similarity between the plurality of trees based on a degree of coincidence between a creation unit that creates a plurality of trees having an instruction to transfer access to a server as an edge, and each of the created trees
  • a classification unit that classifies the access based on the calculated similarity.
  • the access classification method disclosed in the present application uses the first server and the second server as nodes, and an instruction for transferring access from the first server to the second server as an edge.
  • a creation step of creating a plurality of trees, a calculation step of calculating a similarity between the plurality of trees based on a degree of coincidence between the created subtrees, and the calculated similarity And classifying the access based on the degree.
  • the access classification program disclosed in the present application uses the first server and the second server as nodes, and an instruction for transferring access from the first server to the second server as an edge.
  • the access classification device, the access classification method, and the access classification program disclosed in the present application have an effect that it is difficult for an attacker to avoid and that a malignant web site can be easily detected.
  • FIG. 1 is a diagram illustrating a configuration of an access classification apparatus.
  • FIG. 2 is a diagram illustrating an example of analysis target access input to the access classification device.
  • FIG. 3 is a diagram illustrating an example of known access input to the access classification device.
  • FIG. 4 is a diagram illustrating a structure of a tree constructed by the access classification device.
  • FIG. 5 is a diagram illustrating a process of extracting a partial tree from a tree.
  • FIG. 6 is a diagram illustrating a method for calculating the similarity of trees based on the ratio of common subtrees.
  • FIG. 7 is a diagram illustrating a method for calculating the similarity of trees based on the number of common subtrees.
  • FIG. 1 is a diagram illustrating a configuration of an access classification apparatus.
  • FIG. 2 is a diagram illustrating an example of analysis target access input to the access classification device.
  • FIG. 3 is a diagram illustrating an example of known access input to the access classification device.
  • FIG. 8 is a diagram illustrating a method for calculating the similarity of trees based on the size of the common tree.
  • FIG. 9 is a diagram illustrating a method of classifying a plurality of trees into a plurality of sets.
  • FIG. 10 is a diagram illustrating a method for creating a representative tree from a set of trees.
  • FIG. 11 is a flowchart for explaining the identification model creation process when the similarity is used as the inner product value.
  • FIG. 12 is a flowchart for explaining the access identification processing when the similarity is used as the inner product value.
  • FIG. 13 is a flowchart for explaining an identification model creation process in the case of using a similarity with a representative tree.
  • FIG. 14 is a flowchart for explaining an access identification process when using a similarity with a representative tree.
  • FIG. 15 is a diagram illustrating that information processing by the access classification program is specifically realized using a computer.
  • FIG. 1 is a diagram showing the configuration of the access classification device 10.
  • the access classification device 10 includes a target access input unit 11, a known access input unit 12, a tree construction unit 13, a similarity calculation unit 14, a representative tree creation unit 15, and a classification unit 16. Each of these components is connected so that various signals and data can be input and output in one or both directions.
  • the target access input unit 11 allows access to the analysis target server as an input.
  • the known access input unit 12 is known to be an access to a server that provides a benign web site as opposed to a known malignant access that is known to be an access to a server that provides a malignant web site. Allow some known benign access as input.
  • the tree construction unit 13 determines the access source (automatic transfer source) and access destination (automatic transfer destination) server to the analysis target server from each access input by the target access input unit 11 and the known access input unit 12. A tree having “nodes” and automatic transfer instructions “edges” is constructed.
  • the similarity calculation unit 14 calculates the similarity of a plurality of trees. calculate. In addition, the similarity calculation unit 14 calculates the similarity between trees created by the tree construction unit 13.
  • the representative tree creation unit 15 divides the access input by the known access input unit 12 into a plurality of sets based on the similarity calculated by the similarity calculation unit 14, and is a part common to the trees in each set Create a tree as a representative tree.
  • the classification unit 16 determines whether the access input by the target access input unit 11 is an access to a malignant web site, using the similarity calculated by the similarity calculation unit 14.
  • FIG. 2 is a diagram illustrating an example of the analysis target access 11 a input to the access classification device 10.
  • the transfer destination and transfer source of the analysis target access 11a are URLs, but are not limited thereto, and may be, for example, an FQDN (Fully Qualified Domain Name), a domain, a host name, or the like.
  • FQDN Full Qualified Domain Name
  • FIG. 2 there are “SRC-IFRAME” representing a link by an HTML tag iframe tag and “SRC-SCRIPT-SRC” representing a link by a script tag of an HTML tag. Not limited to this.
  • “SRC-OBJECT-CODEBASE” representing a link by an Object tag of an HTML tag may be used.
  • FIG. 3 is a diagram illustrating an example of the known access 12a input to the access classification device 10.
  • a URL as a transfer destination and transfer source of the known access 12a, but is not limited to this, and may be, for example, an FQDN, a domain, a host name, or the like.
  • the transfer command as shown in FIG. 3, there are “SRC-IFRAME” and “SRC-SCRIPT-SRC” as described above, but not limited thereto.
  • the known access 12a is provided with a label for identifying the property of the transfer destination web site or the like, but the label is not limited to “benign” or “malignant” shown in FIG. ”,“ Drive-by-Download ”,“ Phishing ”, and the like.
  • FIG. 4 is a diagram showing a tree structure constructed by the access classification device 10.
  • the tree construction unit 13 of the access classification device 10 sets the transfer source and the transfer destination as “node” based on the access transfer information shown in FIGS. To build a tree.
  • the tree building unit 13 sets the URLs of the web sites as nodes N1 to N4, and creates edges E1 to E3 corresponding to transfer instructions between the URLs between the transfer source URL and the transfer destination URL.
  • the tree construction unit 13 removes the URL information attached to the nodes N1 to N4. As a result, it is possible to identify a web site focusing on a URL-independent redirect structure.
  • FIG. 4 shows an example in which the URLs once assigned to the nodes N1 to N4 are removed, the URLs may not be removed.
  • FIG. 5 is a diagram showing a process of extracting a partial tree from a tree.
  • the tree construction unit 13 of the access classification device 10 extracts a partial tree constituting the tree from the constructed tree (see FIG. 4). For example, as shown in FIG. 5A, the tree building unit 13 extracts paths from the node N1 corresponding to the first accessed server in the series of accesses to the other end nodes N3 and N4. Next, the tree construction unit 13 extracts all partial paths included in the path as shown in FIG. Then, as shown in FIG. 5C, the tree construction unit 13 decomposes the extracted partial path into partial trees. At this time, if there are overlapping subtrees, the tree building unit 13 may delete one of the overlapping subtrees.
  • FIG. 6 is a diagram showing a method for calculating the similarity of trees based on the ratio of the common subtree T3.
  • the similarity calculation unit 14 calculates the similarity of a plurality of trees based on the extracted subtree (see FIG. 5C).
  • the similarity calculation unit 14 sets a set of subtrees included in a tree having a ratio equal to or greater than a threshold (for example, about 40 to 60%) among the comparison target trees as a common subtree.
  • a threshold for example, about 40 to 60%
  • the similarity calculation unit 14 sets a set of subtrees obtained by removing overlapping subtrees from the subtrees of all the comparison target trees as all subtrees.
  • the similarity calculation unit 14 sets the value obtained by dividing the number of common subtrees by the number of all subtrees as the similarity.
  • the similarity calculation unit 14 selects the subtrees (N1-E3-N4) included in the trees T1 and T2 (both equal to or greater than the threshold) among the comparison target trees T1 and T2. Let it be a common subtree T3. Next, the similarity calculation unit 14 sets a set of subtrees obtained by removing overlapping subtrees (N5-E6-N8) from the subtrees of all the trees T1 and T2 to be compared as an all subtree T4. . Then, the similarity calculation unit 14 sets the value obtained by dividing “1”, which is the number of common subtrees T3, by “7”, which is the number of all subtrees T4, as the similarity. Therefore, in the example shown in FIG. 6, the similarity is “1/7”.
  • the similarity calculation unit 14 extracts the common subtree T3 or includes the partial subtree including the URL information as well as the transfer command. It is good also as what determines the coincidence / non-coincidence for removal. In addition, when creating all subtrees T4, it is not necessary to remove overlapping subtrees. Furthermore, the number of comparison target trees is not limited to two, and may be two or more. In addition, regarding the parameters used for calculating the similarity, the ratio of the number of common subtrees to the total number of subtrees has been exemplified. Anything that compares the number of trees can be used.
  • FIG. 7 is a diagram showing a method for calculating the similarity of trees based on the number of common subtrees T3.
  • the similarity calculation unit 14 calculates the similarity of a plurality of trees based on the extracted subtree (see FIG. 5C). First, the similarity calculation unit 14 sets a set of subtrees included in all trees of the comparison target trees as a common subtree. Then, the similarity calculation unit 14 sets the value obtained by counting the number of common subtrees as the similarity.
  • the similarity calculation unit 14 uses the subtrees (N1-E3-N4) included in both (all) trees T1 and T2 among the comparison target trees T1 and T2. Let it be a subtree T3. Then, the similarity calculation unit 14 sets “1”, which is the number of common subtrees T3, as the similarity. Therefore, in the example shown in FIG. 7, the similarity is “1”.
  • the similarity calculation unit 14 includes not only the transfer command but also the URL information, and the matching / unmatching for extracting the common subtree T3. It is good also as what determines a mismatch.
  • the number of comparison target trees is not limited to two and may be two or more.
  • the number of common subtrees is exemplified for the parameters used for calculating the similarity, but the number of common subtrees is not necessarily required. For example, the number of nodes or edges included in the common subtree, etc. As long as it is based on the number of common subtrees.
  • FIG. 8 is a diagram showing a method for calculating the similarity of trees based on the size of the common tree T8.
  • the similarity calculation unit 14 calculates the similarity of a plurality of trees based on the extracted tree (see FIG. 4). First, the similarity calculation unit 14 extracts a partial tree common to a plurality of trees. Next, the similarity calculation unit 14 extracts, from the extracted common partial trees, a common partial tree having the maximum number of nodes as a “common tree”. Then, the similarity calculation unit 14 sets the value obtained by counting the number of extracted common tree nodes as the similarity.
  • the similarity calculation unit 14 includes subtrees (N1-E1-N2-E2-N3, N1-N3) common to both trees T5 and T6 of the comparison target trees T5 and T6.
  • E1-N2) is extracted and set as a common subtree T7.
  • the similarity calculation unit 14 extracts a common subtree (N1-E1-N2-E2-N3) having the maximum number of nodes “3” from the common subtree T7 and sets it as a common tree T8. .
  • the similarity calculation unit 14 sets “3”, which is the number of nodes of the common tree T8, as the similarity. Therefore, in the example shown in FIG. 8, the similarity is “3”.
  • the similarity calculation unit 14 includes not only the transfer command but also the URL information, and the matching / unmatching for extracting the common subtree T7. It is good also as what determines a mismatch.
  • the number of comparison target trees is not limited to two and may be two or more.
  • the number of nodes of the common tree is exemplified for the parameters used for calculating the degree of similarity, it may be anything related to the size of the common tree, such as the number of edges of the common tree.
  • FIG. 9 is a diagram showing a method of classifying a plurality of trees into a plurality of sets.
  • the access classification device 10 classifies the plurality of trees (accesses) illustrated in FIG. 4 into a plurality of sets composed of trees with high similarity by the classification unit 16.
  • the classification unit 16 joins sets when the maximum value of the similarity between the trees belonging to each set is equal to or greater than a threshold value from a state in which each set includes only one tree.
  • the classification unit 16 repeatedly executes this combining process until there is no set to be combined.
  • each of the sets C1 to C5 is composed of only one tree (trees T11 to T15).
  • the classification unit 16 classifies the plurality of trees T11 to T15 into a plurality of sets C1 'to C3' composed of trees with high similarity.
  • the set C1 and the set C2 to which the trees T11 and T12 having a maximum similarity equal to or greater than the threshold value belong are combined and classified into the same set C1 '.
  • the set C3 and the set C5 to which the trees T13 and T15 having a maximum similarity equal to or greater than the threshold value belong are combined and classified into the same set C2 '.
  • the classification unit 16 uses the maximum value of similarity as a criterion for combining sets. However, the classification unit 16 is not limited to this, and a minimum value or an average value of similarity may be used. When the maximum value of similarity is used, a set of trees in which some subtrees that are commonly included in multiple trees are shared is created, but the minimum value of similarity is used instead of the maximum value The classification unit 16 can create a set of trees in which many subtrees are common. When the average value is used, the classification unit 16 can create a set of intermediate trees.
  • the classification unit 16 preferentially combines the sets having the maximum similarity without setting the threshold, and performs the combining process as a whole. It is good also as what decides which step is adopted among the processes which repeated until it becomes a set, and combined each set after that. Furthermore, the number of sets to be combined is not limited to two but may be two or more.
  • FIG. 10 is a diagram showing a method for creating a representative tree from a set of trees.
  • the access classification device 10 uses the representative tree creation unit 15 to collect a set of trees classified by the classification unit 16 (see FIG. 9) based on the subtree extracted by the tree construction unit 13 (see FIG. 5). Create a representative tree.
  • the representative tree creating unit 15 sets a partial tree common to all trees in the set as a representative tree.
  • the representative tree creating unit 15 sets a subtree (N1-E3-N4) common to the trees T1 and T2 in the same set as the representative tree T9.
  • the representative tree creation unit 15 uses a partial tree common to all trees in the set as a representative tree.
  • a representative tree includes a set of subtrees included in trees of a predetermined ratio or more in the set. It is good.
  • the representative tree creation unit 15 includes not only the transfer command but also the URL information, and matches / mismatches for creating the representative tree T9. It is good also as what performs this determination.
  • the number of comparison target trees is not limited to two, and may be two or more.
  • FIG. 11 is a flowchart for explaining the identification model creation process when the similarity is used as the inner product value.
  • the known access input unit 12 inputs a known benign access and a known malignant access (see FIG. 3).
  • the tree construction unit 13 constructs a tree from the input access and extracts a partial tree from the constructed tree (see FIGS. 4 and 5).
  • the similarity calculation unit 14 calculates the tree similarity based on the degree of matching of the extracted subtrees (see FIGS. 6 to 8).
  • the classification unit 16 applies the access input in S1 and the similarity calculated in S3 to supervised machine learning using the inner product value after conversion into the high-dimensional space of the input. That is, the classification unit 16 converts the known benign access and the known malignant access input in S1 as “teacher data”, and converts the similarity calculated in S3 into a vector in the feature amount space.
  • a discriminant model is created by supervised machine learning with the subsequent “inner product value”.
  • the supervised machine learning method is, for example, a support vector machine, but is not limited thereto.
  • the classification unit 16 outputs the created identification model to the hard disk drive 108 described later.
  • the output identification model is stored as data in the hard disk drive 108.
  • FIG. 12 is a flowchart for explaining the access identification process when the similarity is used as the inner product value.
  • the target access input unit 11 inputs an analysis target access (see FIG. 2).
  • the tree construction unit 13 constructs a tree from the input access, and extracts a partial tree from the constructed tree (see FIGS. 4 and 5).
  • the similarity calculation unit 14 calculates the tree similarity based on the degree of matching of the extracted subtrees (see FIGS. 6 to 8).
  • the classification unit 16 applies the access input in S11 and the similarity calculated in S13 to supervised machine learning using the inner product value after conversion into the high-dimensional space of the input. That is, the classification unit 16 sets the analysis target access input in S11 as “test data”, and converts the similarity calculated in S13 into “inner product value after converting the test data into a vector on the feature amount space”.
  • An identification result is created by supervised machine learning.
  • the supervised machine learning technique is, for example, a support vector machine, but is not limited to this as long as it is the same technique as that used in the above-described identification model creation process.
  • the classification unit 16 outputs the created identification result to a display device such as the display 112 described later.
  • FIG. 13 is a flowchart for explaining the identification model creation process in the case where the similarity with the representative tree is used. Since FIG. 13 includes a plurality of steps similar to those in FIG. 11, common steps are given the same reference numerals at the end, and detailed descriptions thereof are omitted. Specifically, steps S21 to S23 and S25 in FIG. 13 correspond to steps S1 to S3 and S5 shown in FIG. 11, respectively.
  • the classification unit 16 classifies the plurality of trees constructed in S22 into a plurality of sets composed of trees with high similarity based on the similarity calculated in S23 (see FIG. 9). .
  • the representative tree creation unit 15 creates, as a representative tree, a subtree representing the characteristics of each set (for example, a common subtree in the same set) for each set obtained by the classification in S26 (see FIG. 10).
  • the similarity calculation unit 14 is created from the representative tree created in S27 and the known benign access or known malignant access inputted in S21 by the method shown in any of FIGS. Similarity with a tree (including a partial tree) is calculated (see FIGS. 6 to 8).
  • the classification unit 16 applies the access input in S21 and the similarity calculated in S23 to supervised machine learning. That is, the classification unit 16 creates an identification model by supervised machine learning using a vector in which similarities with the representative tree are arranged as the access feature vector.
  • the supervised machine learning methods are, for example, linear discriminant analysis, support vector machine, random forest, etc., but are not limited to these methods.
  • FIG. 14 is a flowchart for explaining an access identification process when using a similarity with a representative tree. Since FIG. 14 includes a plurality of steps similar to those in FIG. 12, common steps are denoted by the same reference numerals at the end and detailed description thereof is omitted. Specifically, steps S31, S32, and S35 in FIG. 14 correspond to steps S11, S12, and S15 shown in FIG. 12, respectively.
  • the similarity calculation unit 14 uses the method shown in any of FIGS. 6 to 8 to create a tree (partial) created from the representative tree created in S27 and the analysis target access inputted in S31. Similarity with tree is calculated (see FIGS. 6 to 8).
  • the classification unit 16 applies the access input in S31 and the similarity calculated in S36 to supervised machine learning. That is, the classification unit 16 creates an identification result by supervised machine learning using a vector in which similarities to the representative tree are arranged as the access feature vector.
  • the supervised machine learning methods are, for example, linear discriminant analysis, support vector machine, random forest, etc., but are not limited to these methods as long as they are the same methods as those used in the above-described identification model creation process. Absent.
  • the access classification device 10 includes the tree construction unit 13, the similarity calculation unit 14, and the classification unit 16.
  • the tree building unit 13 uses a first server (for example, a web server) and a plurality of second servers (for example, servers at a malicious web site) as nodes, from the first server to the plurality of second servers. Create multiple trees that represent instructions that automatically transfer a series of accesses as edges.
  • the similarity calculation unit 14 calculates the similarity between the plurality of trees based on the degree of coincidence of the partial trees that constitute each of the created trees.
  • the classification unit 16 classifies the access based on the calculated similarity.
  • the similarity calculation unit 14 calculates the number of subtrees (common subtrees) common to the plurality of trees with respect to the number of all subtrees (all subtrees) constituting the plurality of trees. The ratio of the number is calculated as the similarity.
  • the similarity calculation unit 14 may calculate the number of subtrees (common subtrees) common to the plurality of trees as the similarity.
  • the similarity calculation unit 14 calculates, as the similarity, the number of nodes of the subtree (common tree) having the maximum number of nodes among the subtrees (common subtrees) common to the plurality of trees. It may be a thing.
  • the classification unit 16 may classify the access by calculating the inner product value in the space of the feature amount of the plurality of trees using the similarity.
  • the access classification device 10 includes a tree construction unit 13, a similarity calculation unit 14, a classification unit 16, and a representative tree creation unit 15.
  • the tree construction unit 13 creates a plurality of trees.
  • the similarity calculation unit 14 calculates the similarity between the plurality of trees based on the degree of coincidence of the partial trees that constitute each of the created trees.
  • the classification unit 16 classifies the plurality of trees into a plurality of sets configured by the plurality of trees having the high similarity based on the calculated similarity.
  • the representative tree creation unit 15 creates, as a representative tree, one or a plurality of subtrees (for example, common subtrees in the same set) representing the characteristics of each set for each set obtained by the above classification.
  • the classification unit 16 may classify the access based on the similarity between the representative tree and the access.
  • the access classification device 10 classifies a series of accesses to the server including automatic transfer.
  • the access classification device 10 can identify a malicious web site from the characteristics of the redirect pattern. Therefore, the access classification device 10 can prevent the user from being infected with malware by blocking the user's access to the web site determined to be malignant. As a result, it is possible to construct a malignant web site identification method that is not easily affected by changes in content or the like by an attacker and can be identified by one access.
  • the access classification device 10 can identify a malicious web site without depending on information such as content, URL, and host obtained from the server. For this reason, the access classification device 10 can detect an attack on the user via the malicious web site even when the content is modified or the URL is intentionally changed. Therefore, it is difficult to be avoided by an attacker, and the detection of the malicious web site and the detection of the attack is realized.
  • FIG. 15 is a diagram illustrating that the information processing by the access classification program is specifically realized by using the computer 100.
  • the computer 100 includes, for example, a memory 101, a CPU (Central Processing Unit) 102, a hard disk drive interface 103, a disk drive interface 104, a serial port interface 105, a video adapter 106, a network, and the like. These units are connected by a bus B.
  • a bus B bus B.
  • the memory 101 includes a ROM (Read Only Memory) 101a and a RAM (Random Access Memory) 101b as shown in FIG.
  • the ROM 101a stores a boot program such as BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 103 is connected to the hard disk drive 108 as shown in FIG.
  • the disk drive interface 104 is connected to the disk drive 109 as shown in FIG.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 109.
  • the serial port interface 105 is connected to, for example, a mouse 110 and a keyboard 111.
  • the video adapter 106 is connected to a display 112, for example, as shown in FIG.
  • the hard disk drive 108 stores, for example, an OS (Operating System) 108a, an application program 108b, a program module 108c, program data 108d, a tree including a partial tree and a representative tree, access related information, and the like.
  • OS Operating System
  • the access classification program according to the disclosed technique is stored in, for example, the hard disk drive 108 as the program module 108c in which an instruction to be executed by the computer 100 is described.
  • the same information processing as each of the target access input unit 11, the known access input unit 12, the tree construction unit 13, the similarity calculation unit 14, the representative tree creation unit 15, and the classification unit 16 described in the above embodiment. Is stored in the hard disk drive 108.
  • Data used for information processing by the access classification program is stored as program data 108d, for example, in the hard disk drive 108. Then, the CPU 102 reads the program module 108c and the program data 108d stored in the hard disk drive 108 to the RAM 101b as necessary, and executes the above various procedures.
  • the program module 108c and the program data 108d related to the access classification program are not limited to being stored in the hard disk drive 108, but are stored in, for example, a removable storage medium and read out by the CPU 102 via the disk drive 109 or the like. May be.
  • the program module 108c and the program data 108d relating to the access classification program are stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.), and the network interface 107 is stored. Via the CPU 102.
  • LAN Local Area Network
  • WAN Wide Area Network
  • each component of the access classification device 10 described above does not necessarily need to be physically configured as illustrated. That is, the specific mode of distribution / integration of each device is not limited to the illustrated one, and all or a part thereof is functionally or physically distributed in an arbitrary unit according to various loads or usage conditions. -It can also be integrated and configured.
  • the target access input unit 11 and the known access input unit 12, or the similarity calculation unit 14 and the representative tree creation unit 15 may be integrated as one component.
  • the classification unit 16 the access may be divided into a part for classifying the access and a part for classifying a plurality of trees into a set.
  • a hard disk drive 108 that stores a tree including a partial tree and a representative tree, access related information, and the like may be connected as an external device of the access classification device 10 via a network or a cable.
  • Access Classification Device 11 Target Access Input Unit 11a Analysis Target Access 12 Known Access Input Unit 12a Known Access 13 Tree Construction Unit 14 Similarity Calculation Unit 15 Representative Tree Creation Unit 16 Classification Unit 100 Computer 101 Memory 101a ROM 101b RAM 102 CPU 103 Hard Disk Drive Interface 104 Disk Drive Interface 105 Serial Port Interface 106 Video Adapter 107 Network Interface 108 Hard Disk Drive 108a OS 108b Application program 108c Program module 108d Program data 109 Disk drive 110 Mouse 111 Keyboard 112 Display B Buses C1 to C5, C1 ′ to C3 ′, C1 ′′, C2 ′′ Set E1 to E6 Edges N1 to N8 Nodes T1, T2, T5, T6, T11 to T15 Trees T3, T7 Common subtree T4 All subtrees T8 Common tree T9 Representative tree

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

アクセス分類装置(10)は、木構築部(13)と類似度算出部(14)と分類部(16)とを有する。木構築部(13)は、第1のサーバ及び複数の第2のサーバをノードとし、上記第1のサーバから上記複数の第2のサーバへ一連のアクセスを自動転送する命令をエッジとする複数の木を作成する。類似度算出部(14)は、作成された上記複数の木の各々を構成する部分木の一致度合いに基づき、上記複数の木間の類似度を算出する。分類部(16)は、算出された上記類似度に基づき、上記アクセスを分類する。

Description

アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム
 本発明は、アクセス分類装置、アクセス分類方法、及びアクセス分類プログラムに関する。
 従来、ユーザ端末がアクセスするwebサイトの中から、マルウェアを感染させる悪性webサイトを識別する手法である悪性webサイト識別手法が存在する。この様な悪性webサイト識別手法は、動的解析と静的解析とに分類される。動的解析は、webサーバ等のサーバから取得されたHTML(HyperText Markup Language)やJavaScript(登録商標)等のコンテンツを実行し、その時のホスト上での挙動から脆弱性に対する攻撃を検知することにより、悪性webサイトを識別する手法である。これに対し、静的解析は、サーバからコンテンツの取得のみを行い、該コンテンツのコード解析を行い、プログラム上の特徴や、ドメイン、URL(Uniform Resource Locator)に関連する情報を用いて、良性webサイトで観察される特徴との違いから、悪性webサイトを識別する手法である。
 以下、静的解析による悪性webサイトの識別に係る従来技術について説明する。静的解析による悪性webサイト識別手法には、単一ページから取得されたコンテンツの特徴を用いて識別する手法と、webサイトのリダイレクトによって発生した複数ページへのアクセスから特徴を抽出して識別する手法とがある。前者の識別手法では、コンテンツ中のJavaScript(登録商標)を解析して識別する手法が多く提案されている。これらの手法の中には、例えば、スクリプトの行数や文字数、スクリプト中のキーワードの出現回数を用いて特徴ベクトルを記述し、機械学習の手法を用いて識別する手法(非特許文献1)がある。あるいは、for文やwhile文中での処理を抽出し、特徴ベクトルを作成して識別する手法(非特許文献2)がある。更に、JavaScript(登録商標)から作成された抽象構文木のノードタイプから構成される系列を作成し、該系列の類似度によって識別する手法(非特許文献3)等がある。
 JavaScript(登録商標)以外にも、HTMLやURL及びホストの情報を利用する手法も存在する。例えば、HTMLを利用する手法には、iframeやscriptタグの出現回数、タグのサイズ等から、コンテンツの悪性判定を行う決定木を作成して識別する手法(非特許文献4)がある。また、URL及びホストの情報を利用する手法には、URLに含まれるキーワード、DNS(Domain Name System)問合せの結果、IP(Internet Protocol)アドレスに紐付く地理的情報を用いて、URLの悪性判定を行う手法(非特許文献5)がある。更には、JavaScript(登録商標)、HTML、URL及びホストの各情報から悪性判定を行う識別器をそれぞれ構築し、複数の識別器の判定を総合してwebサイトの悪性判定を行う手法(非特許文献6)も存在する。あるいは、同一のページに異なる時刻にアクセスした際に取得されるコンテンツから差分を抽出し、該差分を基に悪性判定を行う手法(非特許文献7)も提案されている。
 上記以外にも、転送により発生した複数回のwebサイトへのアクセスを基に識別を行う手法では、様々な方法により、悪性webサイトの識別が行われる。例えば、Matsunakaらの手法(非特許文献8)では、実行ファイルのダウンロード時におけるHTTP(Hyper Text Transfer Protocol)ヘッダや、ダウンロード以前に取得されたコンテンツにダウンロードを示す情報が無いこと等を根拠として、脆弱性への攻撃によって発生した転送が検知される。また、Stringhiniらの手法(非特許文献9)では、各ユーザが自動転送によってアクセスした一連のページの時系列から、最終ページが同一のアクセス群を作成した後、それらのアクセス群から、IPアドレス数やリダイレクト数等の特徴ベクトルを作成し、悪性webサイトを識別する。更に、Rafiqueらの手法(非特許文献10)では、リダイレクトによってアクセスしたページの系列からマルウェアのダウンロードに必須な部分を、系列中の複数のページへ個別にアクセスすることによって抽出し、シグネチャを作成することで、悪性webサイトの識別を行っている。
Peter Likarish, Eunjin Jung, and Insoon Jo., "Obfuscated Malicious JavaScript(登録商標) Detection using Classification Techniques.", IEEE 4th International Conference on Malicious and Unwanted Software (MALWARE), 2009. Charlie Curtsinger, et al., "ZOZZLE: Fast and Precise In-Browser JavaScript(登録商標) Malware Detection.", USENIX Security Symposium. 2011. Alexandros Kapravelos, et al., "Revolver: An Automated Approach to the Detection of Evasive Web-based Malware.", USENIX Security. 2013. Christian Seifert, Ian Welch, and Peter Komisarczuk., "Identification of Malicious Web Pages with Static Heuristics.", IEEE Telecommunication Networks and Applications Conference, 2008. Justin Ma, et al., "Beyond Blacklists: Learning to Detect Malicious Web Sites from Suspicious URLs.", Proceedings of the 15th ACM SIGKDD international conference on Knowledge discovery and data mining, 2009. Davide Canali, et al., "Prophiler: A Fast Filter for the Large-Scale Detection of Malicious Web Pages.", Proceedings of the 20th international conference on World wide web, 2011. Kevin Borgolte, Christopher Kruegel, and Giovanni Vigna., "Delta: Automatic Identification of Unknown Web-based Infection Campaigns." Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, 2013. Takashi Matsunaka, Ayumu Kubota, and Takahiro Kasama., "An Approach to Detect Drive-by Download by Observing the Web Page Transition Behaviors.", Ninth Asia Joint Conference on Information Security, 2014. Gianluca Stringhini, Christopher Kruegel, and Giovanni Vigna., "Shady Paths: Leveraging Surfing Crowds to Detect Malicious Web Pages.", Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, 2013. M. Zubair Rafique, et al., "Network Dialog Minimization and Network Dialog Diffing: Two Novel Primitives for Network Security Applications.", Proceedings of the 30th Annual Computer Security Applications Conference, 2014.
 しかしながら、上述したコンテンツに基づく悪性webサイト識別手法では、サーバから取得されたコンテンツの情報や、URL及びホストの情報を使用するため、攻撃者による回避が容易である。例えば、攻撃者が、悪性webサイトにおいて使用するHTMLタグやJavaScript(登録商標)の関数の傾向を、良性サイトに近くなる様に変更すると、本来は悪性webサイトであるサイトが、良性webサイトと誤識別されてしまうことがある。その結果、コンテンツの提供側は、検知されなかった悪性webサイトをブラックリストに記載することができず、ユーザによる悪性webサイトへのアクセスを許可してしまうという問題が発生し得る。また、リダイレクトに着目した上述の手法でも、複数回のアクセスが必要となり、1回のアクセスから悪性webサイトを識別することはできないため、手法の適用範囲は限定的である。このため、攻撃者によるコンテンツ等の変更に影響され難く、1回のアクセスにより識別可能な悪性webサイト識別手法の構築が望まれている。
 開示の実施例は、上記に鑑みてなされたものであって、攻撃者による回避が困難であり、かつ、容易に悪性webサイトを検知することができるアクセス分類装置、アクセス分類方法、及びアクセス分類プログラムを提供することを目的とする。
 上述した課題を解決し、目的を達成するために、本願の開示するアクセス分類装置は、一つの態様において、第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成部と、作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出部と、算出された前記類似度に基づき、前記アクセスを分類する分類部とを有する。
 また、本願の開示するアクセス分類方法は、一つの態様において、第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成工程と、作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出工程と、算出された前記類似度に基づき、前記アクセスを分類する分類工程とを含む。
 更に、本願の開示するアクセス分類プログラムは、一つの態様において、第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成ステップと、作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出ステップと、算出された前記類似度に基づき、前記アクセスを分類する分類ステップとをコンピュータに実行させる。
 本願の開示するアクセス分類装置、アクセス分類方法、及びアクセス分類プログラムは、攻撃者による回避が困難であり、かつ、容易に悪性webサイトを検知することができるという効果を奏する。
図1は、アクセス分類装置の構成を示す図である。 図2は、アクセス分類装置に入力される解析対象アクセスの例を示す図である。 図3は、アクセス分類装置に入力される既知アクセスの例を示す図である。 図4は、アクセス分類装置により構築される木の構造を示す図である。 図5は、木から部分木が抽出される過程を示す図である。 図6は、共通部分木の割合に基づき、木の類似度を算出する方法を示す図である。 図7は、共通部分木の数に基づき、木の類似度を算出する方法を示す図である。 図8は、共通木の大きさに基づき、木の類似度を算出する方法を示す図である。 図9は、複数の木を複数の集合へ分類する方法を示す図である。 図10は、木の集合から代表木を作成する方法を示す図である。 図11は、類似度を内積値として用いる場合の識別モデル作成処理を説明するためのフローチャートである。 図12は、類似度を内積値として用いる場合のアクセス識別処理を説明するためのフローチャートである。 図13は、代表木との類似度を用いる場合の識別モデル作成処理を説明するためのフローチャートである。 図14は、代表木との類似度を用いる場合のアクセス識別処理を説明するためのフローチャートである。 図15は、アクセス分類プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
 以下に、本願の開示するアクセス分類装置、アクセス分類方法、及びアクセス分類プログラムの実施例を、図面を参照しながら詳細に説明する。なお、以下の実施例により本願の開示するアクセス分類装置、アクセス分類方法、及びアクセス分類プログラムが限定されるものではない。
 まず、本願の開示する一実施例に係るアクセス分類装置10の構成を説明する。図1は、アクセス分類装置10の構成を示す図である。図1に示す様に、アクセス分類装置10は、対象アクセス入力部11と既知アクセス入力部12と木構築部13と類似度算出部14と代表木作成部15と分類部16とを有する。これら各構成部分は、一方向又は双方向に、各種信号やデータの入出力が可能な様に接続されている。
 対象アクセス入力部11は、解析対象のサーバへのアクセスを入力として許容する。既知アクセス入力部12は、悪性webサイトを提供するサーバへのアクセスであることが既知である既知悪性アクセスと、これとは反対に良性webサイトを提供するサーバへのアクセスであることが既知である既知良性アクセスとを入力として許容する。木構築部13は、対象アクセス入力部11と既知アクセス入力部12とにより入力された各アクセスから、解析対象のサーバへのアクセス元(自動転送元)及びアクセス先(自動転送先)のサーバを「ノード」とし、自動転送命令を「エッジ」とする木を構築する。類似度算出部14は、木構築部13により構築された木の部分木と、代表木作成部15により代表木として作成された部分木との一致度合いを基に、複数の木の類似度を算出する。また、類似度算出部14は、木構築部13により作成された木同士の類似度を算出する。代表木作成部15は、既知アクセス入力部12により入力されたアクセスを、類似度算出部14により算出された上記類似度を基に複数の集合に分割し、各集合内の木に共通する部分木を代表木として作成する。分類部16は、類似度算出部14により算出された類似度を用いて、対象アクセス入力部11により入力されたアクセスが、悪性webサイトへのアクセスであるか否かの判定を行う。
 図2は、アクセス分類装置10に入力される解析対象アクセス11aの例を示す図である。図2に示す様に、解析対象アクセス11aの転送先及び転送元としてはURLがあるが、これに限らず、例えば、FQDN(Fully Qualified Domain Name)、ドメイン、ホスト名等であってもよい。また、転送命令に関しても、図2に示す様に、HTMLタグのiframeタグによるリンクを表す「SRC-IFRAME」やHTMLタグのScriptタグによるリンクを表す「SRC-SCRIPT-SRC」等があるが、これに限らない。例えば、HTMLタグのAppletタグによるリンクを表す「SRC-APPLET-ARCHIVE」、HTTPによる転送を表す「HTTP302Redirect」、HTMLタグのObjectタグによるリンクを表す「SRC-OBJECT-CODEBASE」等であってもよい。
 図3は、アクセス分類装置10に入力される既知アクセス12aの例を示す図である。図3に示す様に、既知アクセス12aの転送先及び転送元としてはURLがあるが、これに限らず、例えば、FQDN、ドメイン、ホスト名等であってもよい。また、転送命令に関しても、図3に示す様に、上述した「SRC-IFRAME」や「SRC-SCRIPT-SRC」等があるが、これに限らない。既知アクセス12aには、転送先のwebサイト等の性質を識別するためのラベルが付与されるが、該ラベルは、図3に示した「良性」や「悪性」に限るものではなく、「広告」、「Drive-by-Download」、「Phishing」等であってもよい。
 図4は、アクセス分類装置10により構築される木の構造を示す図である。図4に示す様に、アクセス分類装置10の木構築部13は、図2及び図3に示したアクセスの転送情報を基に、転送元及び転送先を「ノード」とし、転送命令を「エッジ」とする木を構築する。例えば、木構築部13は、webサイトのURLをノードN1~N4とし、該URL間の転送命令に対応するエッジE1~E3を、転送元URLと転送先URLとの間に作成する。木構築部13は、エッジE1~E3の作成が完了すると、各ノードN1~N4に付されているURLの情報を除去する。これにより、URLに依存しないリダイレクト構造に着目した、webサイトの識別が可能となる。なお、図4では、ノードN1~N4に一旦付されたURLが除去された例を示したが、URLは、除去されなくてもよい。
 次に、アクセス分類装置10の動作を説明する。
 図5は、木から部分木が抽出される過程を示す図である。図5に示す様に、アクセス分類装置10の木構築部13は、構築された木(図4参照)から、該木を構成する部分木を抽出する。例えば、木構築部13は、図5(a)に示す様に、一連のアクセスの中で最初にアクセスしたサーバに対応するノードN1から、他の末端ノードN3、N4までのパスを抽出する。次に、木構築部13は、図5(b)に示す様に、パス中に含まれる全ての部分パスを抽出する。そして、木構築部13は、図5(c)に示す様に、抽出された部分パスを部分木に分解する。このとき、重複する部分木がある場合には、木構築部13は、重複する部分木の一方を削除するものとしてもよい。
 図6は、共通部分木T3の割合に基づき、木の類似度を算出する方法を示す図である。図6に示す様に、類似度算出部14は、抽出された部分木(図5(c)参照)を基に、複数の木の類似度を算出する。まず、類似度算出部14は、比較対象の木の内、閾値(例えば、4~6割程度)以上の割合の木に含まれる部分木の集合を、共通部分木とする。次に、類似度算出部14は、比較対象の全ての木の部分木から、重複する部分木を除去した部分木の集合を、全部分木とする。そして、類似度算出部14は、共通部分木の数を全部分木の数により除算して得られた値を類似度とする。
 例えば、図6に示す例では、類似度算出部14は、比較対象の木T1、T2の内、双方(閾値以上)の木T1、T2に含まれる部分木(N1-E3-N4)を、共通部分木T3とする。次に、類似度算出部14は、比較対象の全ての木T1、T2の部分木から、重複する部分木(N5-E6-N8)を除去した部分木の集合を、全部分木T4とする。そして、類似度算出部14は、共通部分木T3の数である“1”を、全部分木T4の数である“7”により除算して得られた値を類似度とする。従って、図6に示す例では、類似度は“1/7”となる。
 なお、ノードN1~N8に付されたURL情報を除去しない態様の場合には、類似度算出部14は、転送命令だけでなくURL情報も含めて、共通部分木T3の抽出あるいは重複部分木の除去のための一致・不一致の判定を行うものとしてもよい。また、全部分木T4の作成に際し、重複する部分木の除去は行わなくてもよい。更に、比較対象の木の数は、2に限らず、2以上であればよい。また、類似度の算出に用いるパラメータに関しても、全部分木数に対する共通部分木数の割合を例示したが、例えば、重み付けを適宜付した上での割合や差分等、共通部分木数と全部分木数とを比較するものであればよい。
 図7は、共通部分木T3の数に基づき、木の類似度を算出する方法を示す図である。図7に示す様に、類似度算出部14は、抽出された部分木(図5(c)参照)を基に、複数の木の類似度を算出する。まず、類似度算出部14は、比較対象の木の内、全ての木に含まれる部分木の集合を、共通部分木とする。そして、類似度算出部14は、共通部分木の数を計数して得られた値を類似度とする。
 例えば、図7に示す例では、類似度算出部14は、比較対象の木T1、T2の内、双方(全て)の木T1、T2に含まれる部分木(N1-E3-N4)を、共通部分木T3とする。そして、類似度算出部14は、共通部分木T3の数である“1”を類似度とする。従って、図7に示す例では、類似度は“1”となる。
 なお、ノードN1~N8に付されたURL情報を除去しない態様の場合には、類似度算出部14は、転送命令だけでなくURL情報も含めて、共通部分木T3の抽出のための一致・不一致の判定を行うものとしてもよい。また、比較対象の木の数は、2に限らず、2以上であればよい。また、類似度の算出に用いるパラメータに関しても、共通部分木の数を例示したが、必ずしも共通部分木数自体でなくてもよく、例えば、共通部分木に含まれるノードの数やエッジの数等、共通部分木数に基づくものであればよい。
 図8は、共通木T8の大きさに基づき、木の類似度を算出する方法を示す図である。図8に示す様に、類似度算出部14は、抽出された木(図4参照)を基に、複数の木の類似度を算出する。まず、類似度算出部14は、複数の木に共通する部分木を抽出する。次に、類似度算出部14は、抽出された共通部分木の中から、ノード数が最大の共通部分木を「共通木」として抽出する。そして、類似度算出部14は、抽出された共通木のノード数を計数して得られた値を類似度とする。
 例えば、図8に示す例では、類似度算出部14は、比較対象の木T5、T6の内、双方の木T5、T6に共通する部分木(N1-E1-N2-E2-N3、N1-E1-N2)を抽出し、共通部分木T7とする。次に、類似度算出部14は、共通部分木T7の中から、最大のノード数“3”を有する共通部分木(N1-E1-N2-E2-N3)を抽出し、共通木T8とする。そして、類似度算出部14は、共通木T8のノード数である“3”を類似度とする。従って、図8に示す例では、類似度は“3”となる。
 なお、ノードN1~N6に付されたURL情報を除去しない態様の場合には、類似度算出部14は、転送命令だけでなくURL情報も含めて、共通部分木T7の抽出のための一致・不一致の判定を行うものとしてもよい。また、比較対象の木の数は、2に限らず、2以上であればよい。更に、類似度の算出に用いるパラメータに関しても、共通木のノード数を例示したが、例えば、共通木のエッジ数等、共通木の大きさに関連するものであればよい。
 図9は、複数の木を複数の集合へ分類する方法を示す図である。図9に示す様に、アクセス分類装置10は、分類部16により、図4に示した複数の木(アクセス)を、類似度の高い木で構成される複数の集合へ分類する。分類部16は、各集合がそれぞれ1つずつの木のみで構成されている状態から、各集合に属する木同士の上記類似度の最大値が閾値以上の場合に集合を結合する。分類部16は、この結合処理を、結合させる集合が無くなるまで繰り返し実行する。
 例えば、図9(a)に示す例では、各集合C1~C5が、それぞれ1つずつの木(木T11~T15)のみにより構成されている。分類部16は、複数の木T11~T15を、類似度の高い木で構成される複数の集合C1’~ C3’へ分類する。図9(b)に示す例では、類似度の最大値が閾値以上の木T11と木T12とがそれぞれ属する集合C1と集合C2とが結合され、同一の集合C1’に分類される。同様に、類似度の最大値が閾値以上の木T13と木T15とがそれぞれ属する集合C3と集合C5とが結合され、同一の集合C2’に分類される。この結合処理は繰り返し実行されるため、図9(c)に示す様に、集合C1”に属する全ての木T11、T12において、同じ集合C1”に属する他の木との類似度の最大値が閾値以上となる。同様に、集合C2”に属する全ての木T13~T15において、同じ集合C2”に属する他の木との類似度の最大値が閾値以上となる。これにより、類似度が高い木(木T11、T12と木T13~T15)で構成される複数の集合(集合C1”と集合C2”)への分類が可能となる。
 なお、集合を結合させる基準として、分類部16は、類似度の最大値を用いたが、これに限らず、類似度の最小値や平均値を用いてもよい。類似度の最大値を用いた場合、複数の木に共通して含まれる一部の部分木が共通な木の集合が作成されるが、最大値の代わりに類似度の最小値を用いた場合、分類部16は、多くの部分木が共通な木の集合を作成することができる。また、平均値を用いた場合、分類部16は、それらの中間の木の集合を作成することができる。また、集合を結合させる基準として閾値を設定したが、分類部16は、閾値を設定することなく、類似度が最大となる集合同士から優先的に結合させ、該結合処理を、全体が1つの集合になるまで繰り返し、その後、各集合を結合させた過程の内、何れの段階を採用するかを決定するものとしてもよい。更に、結合対象の集合の数は、2に限らず、2以上であればよい。
 図10は、木の集合から代表木を作成する方法を示す図である。図10に示す様に、アクセス分類装置10は、代表木作成部15により、木構築部13の抽出した部分木(図5参照)を基に、分類部16の分類した木の集合(図9参照)から、代表木を作成する。例えば、代表木作成部15は、集合中の全ての木に共通する部分木を代表木とする。図10に示す例では、代表木作成部15は、同一集合中の木T1、T2に共通する部分木(N1-E3-N4)を、代表木T9とする。
 なお、代表木作成部15は、集合中の全ての木に共通する部分木を代表木としたが、これに限らず、集合中の所定割合以上の木に含まれる部分木の集合を代表木としてもよい。また、ノードN1~N8に付されたURL情報を除去しない態様の場合には、代表木作成部15は、転送命令だけでなくURL情報も含めて、代表木T9の作成のための一致・不一致の判定を行うものとしてもよい。更に、比較対象の木の数は、2に限らず、2以上であればよい。
 次に、図11~図14を参照しながら、アクセス分類装置10の動作について、より詳細に説明する。
 図11は、類似度を内積値として用いる場合の識別モデル作成処理を説明するためのフローチャートである。S1では、既知アクセス入力部12は、既知良性アクセス及び既知悪性アクセス(図3参照)を入力する。S2では、木構築部13は、入力されたアクセスから木を構築し、構築された木から部分木を抽出する(図4、図5参照)。S3では、類似度算出部14は、抽出された部分木の一致度合いから木の類似度を算出する(図6~図8参照)。
 S4では、分類部16は、S1にて入力されたアクセスとS3にて算出された類似度とを、入力の高次元空間への変換後の内積値を利用する教師あり機械学習に適用する。すなわち、分類部16は、S1にて入力された既知良性アクセスと既知悪性アクセスとを「教師データ」とし、S3にて算出された類似度を、教師データを特徴量空間上のベクトルへ変換した後の「内積値」とした教師あり機械学習により、識別モデルを作成する。なお、教師あり機械学習の手法は、例えば、サポートベクターマシン等であるが、これに限らない。S5では、分類部16は、作成された識別モデルを、後述するハードディスクドライブ108に出力する。出力された識別モデルは、ハードディスクドライブ108内にデータとして保存される。
 図12は、類似度を内積値として用いる場合のアクセス識別処理を説明するためのフローチャートである。S11では、対象アクセス入力部11は、解析対象アクセス(図2参照)を入力する。S12では、木構築部13は、入力されたアクセスから木を構築し、構築された木から部分木を抽出する(図4、図5参照)。S13では、類似度算出部14は、抽出された部分木の一致度合いから木の類似度を算出する(図6~図8参照)。
 S14では、分類部16は、S11にて入力されたアクセスとS13にて算出された類似度とを、入力の高次元空間への変換後の内積値を利用する教師あり機械学習に適用する。すなわち、分類部16は、S11にて入力された解析対象アクセスを「テストデータ」とし、S13にて算出された類似度を、テストデータを特徴量空間上のベクトルへ変換した後の「内積値」とした教師あり機械学習により、識別結果を作成する。なお、教師あり機械学習の手法は、例えば、サポートベクターマシン等であるが、上述した識別モデル作成処理に用いた手法と同一の手法であれば、これに限らない。S15では、分類部16は、作成された識別結果を、後述するディスプレイ112等の表示装置に出力する。
 図13は、代表木との類似度を用いる場合の識別モデル作成処理を説明するためのフローチャートである。図13は、図11と同様のステップを複数含むので、共通するステップには、末尾が同一の参照符号を付すと共に、その詳細な説明は省略する。具体的には、図13のステップS21~S23、S25の各処理は、図11に示したステップS1~S3、S5の各処理にそれぞれ対応する。
 S26では、分類部16は、S23にて算出された類似度に基づき、S22にて構築された複数の木を、類似度の高い木から構成される複数の集合に分類する(図9参照)。S27では、代表木作成部15は、S26の分類により得られた各集合毎に、各集合の特徴を表す部分木(例えば、同一集合内の共通部分木)を、代表木として作成する(図10参照)。
 S28では、類似度算出部14は、図6~図8の何れかに示した方法により、S27にて作成された代表木と、S21にて入力された既知良性アクセスまたは既知悪性アクセスから作成された木(部分木を含む)との類似度を算出する(図6~図8参照)。S29では、分類部16は、S21にて入力されたアクセスとS23にて算出された類似度とを、教師あり機械学習に適用する。すなわち、分類部16は、上記代表木との類似度を並べたベクトルを上記アクセスの特徴ベクトルとして用いた教師あり機械学習により、識別モデルを作成する。なお、教師あり機械学習の手法は、例えば、線形判別分析、サポートベクターマシン、ランダムフォレスト等であるが、これらの手法に限らない。
 図14は、代表木との類似度を用いる場合のアクセス識別処理を説明するためのフローチャートである。図14は、図12と同様のステップを複数含むので、共通するステップには、末尾が同一の参照符号を付すと共に、その詳細な説明は省略する。具体的には、図14のステップS31、S32、S35の各処理は、図12に示したステップS11、S12、S15の各処理にそれぞれ対応する。
 S36では、類似度算出部14は、図6~図8の何れかに示した方法により、S27にて作成された代表木と、S31にて入力された解析対象アクセスから作成された木(部分木を含む)との類似度を算出する(図6~図8参照)。S37では、分類部16は、S31にて入力されたアクセスとS36にて算出された類似度とを、教師あり機械学習に適用する。すなわち、分類部16は、上記代表木との類似度を並べたベクトルを上記アクセスの特徴ベクトルとして用いた教師あり機械学習により、識別結果を作成する。なお、教師あり機械学習の手法は、例えば、線形判別分析、サポートベクターマシン、ランダムフォレスト等であるが、上述した識別モデル作成処理に用いた手法と同一の手法であれば、これらの手法に限らない。
 以上説明した様に、アクセス分類装置10は、木構築部13と類似度算出部14と分類部16とを有する。木構築部13は、第1のサーバ(例えば、webサーバ)及び複数の第2のサーバ(例えば、悪性webサイトのサーバ)をノードとし、上記第1のサーバから上記複数の第2のサーバへ一連のアクセスを自動転送する命令をエッジとして表した複数の木を作成する。類似度算出部14は、作成された上記複数の木の各々を構成する部分木の一致度合いに基づき、上記複数の木間の類似度を算出する。分類部16は、算出された上記類似度に基づき、上記アクセスを分類する。
 例えば、アクセス分類装置10において、類似度算出部14は、上記複数の木を構成する全ての部分木(全部分木)の数に対する、上記複数の木に共通する部分木(共通部分木)の数の割合を、上記類似度として算出する。また、類似度算出部14は、上記複数の木に共通する部分木(共通部分木)の数を、上記類似度として算出するものとしてもよい。あるいは、類似度算出部14は、上記複数の木に共通する部分木(共通部分木)の内、上記ノードの数が最大の部分木(共通木)のノード数を、上記類似度として算出するものとしてもよい。更に、分類部16は、上記類似度を用いて、上記複数の木の特徴量の空間での内積値を算出し、上記アクセスを分類するものとしてもよい。
 また、アクセス分類装置10は、木構築部13と類似度算出部14と分類部16と代表木作成部15とを有する。木構築部13は、複数の木を作成する。類似度算出部14は、作成された上記複数の木の各々を構成する部分木の一致度合いに基づき、上記複数の木間の類似度を算出する。分類部16は、算出された上記類似度に基づき、上記複数の木を、上記類似度の高い複数の木により構成される複数の集合に分類する。代表木作成部15は、上記分類により得られた集合毎に、各集合の特徴を表す単数または複数の部分木(例えば、同一集合内の共通部分木)を、代表木として作成する。アクセス分類装置10において、分類部16は、上記代表木と上記アクセスとの類似度に基づき、上記アクセスを分類するものとしてもよい。
 換言すれば、アクセス分類装置10は、自動転送を含むサーバへの一連のアクセスを分類する。これにより、ユーザ端末からwebサーバへのアクセスを自動転送し、転送先のwebサイトでブラウザやプラグインの脆弱性を攻撃することでマルウェアをダウンロードさせる悪性webサイトが有っても、アクセス分類装置10は、リダイレクトパターンの特徴から、悪性webサイトを識別することができる。従って、アクセス分類装置10は、悪性と判定されたwebサイトへのユーザのアクセスを遮断することで、ユーザのマルウェアへの感染を未然に防止することができる。その結果、攻撃者によるコンテンツ等の変更に影響され難く、1回のアクセスにより識別可能な悪性webサイト識別手法の構築が可能となる。
 加えて、アクセス分類装置10は、サーバから得られるコンテンツ、URL、ホスト等の情報に頼ることなく、悪性webサイトを識別することができる。このため、アクセス分類装置10は、コンテンツが改変されたり、URLが意図的に変更されたりした場合でも、悪性webサイトを介したユーザへの攻撃を検知することができる。従って、攻撃者に回避され難い、悪性webサイトの識別ひいては攻撃の検知が実現される。
(アクセス分類プログラム)
 図15は、アクセス分類プログラムによる情報処理がコンピュータ100を用いて具体的に実現されることを示す図である。図15に示す様に、コンピュータ100は、例えば、メモリ101と、CPU(Central Processing Unit)102と、ハードディスクドライブインタフェース103と、ディスクドライブインタフェース104と、シリアルポートインタフェース105と、ビデオアダプタ106と、ネットワークインタフェース107とを有し、これらの各部はバスBによって接続される。
 メモリ101は、図15に示す様に、ROM(Read Only Memory)101a及びRAM(Random Access Memory)101bを含む。ROM101aは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース103は、図15に示す様に、ハードディスクドライブ108に接続される。ディスクドライブインタフェース104は、図15に示す様に、ディスクドライブ109に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ109に挿入される。シリアルポートインタフェース105は、図15に示す様に、例えばマウス110、キーボード111に接続される。ビデオアダプタ106は、図15に示す様に、例えばディスプレイ112に接続される。
 ここで、図15に示す様に、ハードディスクドライブ108は、例えば、OS(Operating System)108a、アプリケーションプログラム108b、プログラムモジュール108c、プログラムデータ108d、部分木や代表木を含む木、アクセス関連情報等を記憶する。すなわち、開示の技術に係るアクセス分類プログラムは、コンピュータ100によって実行される指令が記述されたプログラムモジュール108cとして、例えばハードディスクドライブ108に記憶される。具体的には、上記実施例で説明した対象アクセス入力部11、既知アクセス入力部12、木構築部13、類似度算出部14、代表木作成部15、分類部16の各々と同様の情報処理を実行する各種手順が記述されたプログラムモジュール108cが、ハードディスクドライブ108に記憶される。また、アクセス分類プログラムによる情報処理に用いられるデータは、プログラムデータ108dとして、例えばハードディスクドライブ108に記憶される。そして、CPU102が、ハードディスクドライブ108に記憶されたプログラムモジュール108cやプログラムデータ108dを必要に応じてRAM101bに読み出し、上記各種手順を実行する。
 なお、アクセス分類プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ハードディスクドライブ108に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ109等を介してCPU102によって読み出されてもよい。あるいは、アクセス分類プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース107を介してCPU102によって読み出されてもよい。
 また、上述したアクセス分類装置10の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は、図示のものに限らず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することもできる。例えば、アクセス分類装置10に関し、対象アクセス入力部11と既知アクセス入力部12、あるいは、類似度算出部14と代表木作成部15を1つの構成要素として統合してもよい。反対に、分類部16に関し、アクセスを分類する部分と、複数の木を集合に分類する部分とに分散してもよい。更に、部分木や代表木を含む木、アクセス関連情報等を格納するハードディスクドライブ108を、アクセス分類装置10の外部装置として、ネットワークやケーブル経由で接続する様にしてもよい。
10 アクセス分類装置
11 対象アクセス入力部
11a 解析対象アクセス
12 既知アクセス入力部
12a 既知アクセス
13 木構築部
14 類似度算出部
15 代表木作成部
16 分類部
100 コンピュータ
101 メモリ
101a ROM
101b RAM
102 CPU
103 ハードディスクドライブインタフェース
104 ディスクドライブインタフェース
105 シリアルポートインタフェース
106 ビデオアダプタ
107 ネットワークインタフェース
108 ハードディスクドライブ
108a OS
108b アプリケーションプログラム
108c プログラムモジュール
108d プログラムデータ
109 ディスクドライブ
110 マウス
111 キーボード
112 ディスプレイ
B バス
C1~C5、C1’~C3’、C1”、C2” 集合
E1~E6 エッジ
N1~N8 ノード
T1、T2、T5、T6、T11~T15 木
T3、T7 共通部分木
T4 全部分木
T8 共通木
T9 代表木

Claims (11)

  1.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成部と、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出部と、
     算出された前記類似度に基づき、前記アクセスを分類する分類部と
     を有することを特徴とするアクセス分類装置。
  2.  前記算出部は、前記複数の木を構成する全ての部分木の数に対する、前記複数の木に共通する部分木の数の割合を、前記類似度として算出することを特徴とする請求項1に記載のアクセス分類装置。
  3.  前記算出部は、前記複数の木に共通する部分木の数を、前記類似度として算出することを特徴とする請求項1に記載のアクセス分類装置。
  4.  前記算出部は、前記複数の木に共通する部分木の内、前記ノードの数が最大の部分木のノード数を、前記類似度として算出することを特徴とする請求項1に記載のアクセス分類装置。
  5.  前記分類部は、前記類似度を用いて、前記複数の木の特徴量の空間での内積値を算出し、前記アクセスを分類することを特徴とする請求項1に記載のアクセス分類装置。
  6.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する木作成部と、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出部と、
     算出された前記類似度に基づき、前記複数の木を、前記類似度の高い複数の木により構成される複数の集合に分類する分類部と、
     前記分類により得られた集合毎に、各集合の特徴を表す部分木を、代表木として作成する代表木作成部と
     を有することを特徴とするアクセス分類装置。
  7.  前記分類部は、前記代表木とサーバへのアクセスとの類似度に基づき、前記アクセスを分類することを特徴とする請求項6に記載のアクセス分類装置。
  8.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成工程と、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出工程と、
     算出された前記類似度に基づき、前記アクセスを分類する分類工程と
     を含むことを特徴とするアクセス分類方法。
  9.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する木作成工程と、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出工程と、
     算出された前記類似度に基づき、前記複数の木を、前記類似度の高い複数の木により構成される複数の集合に分類する分類工程と、
     前記分類により得られた集合毎に、各集合の特徴を表す部分木を、代表木として作成する代表木作成工程と
     を含むことを特徴とするアクセス分類方法。
  10.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する作成ステップと、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出ステップと、
     算出された前記類似度に基づき、前記アクセスを分類する分類ステップと
     をコンピュータに実行させるためのアクセス分類プログラム。
  11.  第1のサーバ及び第2のサーバをノードとし、前記第1のサーバから前記第2のサーバへアクセスを転送する命令をエッジとする複数の木を作成する木作成ステップと、
     作成された前記複数の木の各々を構成する部分木の一致度合いに基づき、前記複数の木間の類似度を算出する算出ステップと、
     算出された前記類似度に基づき、前記複数の木を、前記類似度の高い複数の木により構成される複数の集合に分類する分類ステップと、
     前記分類により得られた集合毎に、各集合の特徴を表す部分木を、代表木として作成する代表木作成ステップと
     をコンピュータに実行させるためのアクセス分類プログラム。
PCT/JP2016/066054 2015-06-02 2016-05-31 アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム WO2016194909A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2017521950A JP6557334B2 (ja) 2015-06-02 2016-05-31 アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム
US15/577,938 US10462168B2 (en) 2015-06-02 2016-05-31 Access classifying device, access classifying method, and access classifying program
EP16803343.9A EP3287909B1 (en) 2015-06-02 2016-05-31 Access classification device, access classification method, and access classification program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-112227 2015-06-02
JP2015112227 2015-06-02

Publications (1)

Publication Number Publication Date
WO2016194909A1 true WO2016194909A1 (ja) 2016-12-08

Family

ID=57441256

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/066054 WO2016194909A1 (ja) 2015-06-02 2016-05-31 アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム

Country Status (4)

Country Link
US (1) US10462168B2 (ja)
EP (1) EP3287909B1 (ja)
JP (1) JP6557334B2 (ja)
WO (1) WO2016194909A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3647982A1 (en) 2018-10-31 2020-05-06 Fujitsu Limited Cyber attack evaluation method and cyber attack evaluation device
CN116127079A (zh) * 2023-04-20 2023-05-16 中电科大数据研究院有限公司 一种文本分类方法
US20230394021A1 (en) * 2022-06-07 2023-12-07 Oracle International Corporation Computing similarity of tree data structures using metric functions defined on sets
JP7574424B2 (ja) 2022-01-29 2024-10-28 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド ウェブページ識別方法、装置、電子機器、媒体およびコンピュータプログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6866322B2 (ja) * 2018-02-13 2021-04-28 日本電信電話株式会社 アクセス元分類装置、アクセス元分類方法及びプログラム
US20230034914A1 (en) * 2021-07-13 2023-02-02 Fortinet, Inc. Machine Learning Systems and Methods for API Discovery and Protection by URL Clustering With Schema Awareness
US20240022585A1 (en) * 2022-07-15 2024-01-18 HiddenLayer Inc. Detecting and responding to malicious acts directed towards machine learning model
CN116186628B (zh) * 2023-04-23 2023-07-07 广州钛动科技股份有限公司 App应用自动打标方法和系统
US12105844B1 (en) 2024-03-29 2024-10-01 HiddenLayer, Inc. Selective redaction of personally identifiable information in generative artificial intelligence model outputs
US12107885B1 (en) 2024-04-26 2024-10-01 HiddenLayer, Inc. Prompt injection classifier using intermediate results
US12111926B1 (en) 2024-05-20 2024-10-08 HiddenLayer, Inc. Generative artificial intelligence model output obfuscation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000172699A (ja) * 1998-12-04 2000-06-23 Fuji Xerox Co Ltd ハイパーテキスト構造変更支援装置および方法、ハイパーテキスト構造変更支援プログラムを記録した記憶媒体
JP2010072727A (ja) * 2008-09-16 2010-04-02 Nippon Telegr & Teleph Corp <Ntt> 履歴処理装置、履歴処理方法および履歴処理プログラム
JP2010122737A (ja) * 2008-11-17 2010-06-03 Ntt Docomo Inc コンテンツ配信サーバ、コンテンツ配信方法および通信システム
WO2015141665A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 ウェブサイト情報抽出装置、システム、ウェブサイト情報抽出方法、および、ウェブサイト情報抽出プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7933946B2 (en) 2007-06-22 2011-04-26 Microsoft Corporation Detecting data propagation in a distributed system
CN104303152B (zh) 2012-03-22 2017-06-13 洛斯阿拉莫斯国家安全股份有限公司 在内网检测异常以识别协同群组攻击的方法、装置和系统
US20130304677A1 (en) * 2012-05-14 2013-11-14 Qualcomm Incorporated Architecture for Client-Cloud Behavior Analyzer
WO2014110281A1 (en) * 2013-01-11 2014-07-17 Db Networks, Inc. Systems and methods for detecting and mitigating threats to a structured data storage system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000172699A (ja) * 1998-12-04 2000-06-23 Fuji Xerox Co Ltd ハイパーテキスト構造変更支援装置および方法、ハイパーテキスト構造変更支援プログラムを記録した記憶媒体
JP2010072727A (ja) * 2008-09-16 2010-04-02 Nippon Telegr & Teleph Corp <Ntt> 履歴処理装置、履歴処理方法および履歴処理プログラム
JP2010122737A (ja) * 2008-11-17 2010-06-03 Ntt Docomo Inc コンテンツ配信サーバ、コンテンツ配信方法および通信システム
WO2015141665A1 (ja) * 2014-03-19 2015-09-24 日本電信電話株式会社 ウェブサイト情報抽出装置、システム、ウェブサイト情報抽出方法、および、ウェブサイト情報抽出プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3287909A4 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3647982A1 (en) 2018-10-31 2020-05-06 Fujitsu Limited Cyber attack evaluation method and cyber attack evaluation device
US11290474B2 (en) 2018-10-31 2022-03-29 Fujitsu Limited Cyber attack evaluation method and cyber attack evaluation device
JP7574424B2 (ja) 2022-01-29 2024-10-28 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド ウェブページ識別方法、装置、電子機器、媒体およびコンピュータプログラム
US20230394021A1 (en) * 2022-06-07 2023-12-07 Oracle International Corporation Computing similarity of tree data structures using metric functions defined on sets
CN116127079A (zh) * 2023-04-20 2023-05-16 中电科大数据研究院有限公司 一种文本分类方法
CN116127079B (zh) * 2023-04-20 2023-06-20 中电科大数据研究院有限公司 一种文本分类方法

Also Published As

Publication number Publication date
JP6557334B2 (ja) 2019-08-07
JPWO2016194909A1 (ja) 2018-04-05
EP3287909B1 (en) 2019-07-03
US20180176242A1 (en) 2018-06-21
EP3287909A1 (en) 2018-02-28
US10462168B2 (en) 2019-10-29
EP3287909A4 (en) 2018-12-12

Similar Documents

Publication Publication Date Title
JP6557334B2 (ja) アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム
US11089040B2 (en) Cognitive analysis of security data with signal flow-based graph exploration
US11212297B2 (en) Access classification device, access classification method, and recording medium
Xiao et al. Malware detection based on deep learning of behavior graphs
Shibahara et al. Efficient dynamic malware analysis based on network behavior using deep learning
US11314862B2 (en) Method for detecting malicious scripts through modeling of script structure
CN109074454B (zh) 基于赝象对恶意软件自动分组
JP6674036B2 (ja) 分類装置、分類方法及び分類プログラム
JP6687761B2 (ja) 結合装置、結合方法および結合プログラム
Li et al. Towards fine-grained fingerprinting of firmware in online embedded devices
KR101806118B1 (ko) 오픈 포트 배너 키워드 분석을 통한 취약점 정보를 식별하는 방법 및 장치
Mimura et al. Filtering malicious javascript code with doc2vec on an imbalanced dataset
WO2017077847A1 (ja) 解析装置、解析方法、および、解析プログラム
WO2018143097A1 (ja) 判定装置、判定方法、および、判定プログラム
Gordeychik et al. SD-WAN internet census
US20210273963A1 (en) Generation device, generation method, and generation program
Kumar et al. Detection of malware using deep learning techniques
JP6666475B2 (ja) 解析装置、解析方法及び解析プログラム
JP6787861B2 (ja) 分類装置
Aung et al. ATLAS: A Practical Attack Detection and Live Malware Analysis System for IoT Threat Intelligence
Acosta et al. Automatic data generation and rule creation for network scanning tools
JP2016170524A (ja) 悪性url候補取得装置、悪性url候補取得方法、及びプログラム
KR20240019738A (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
KR20180050205A (ko) 오픈 포트 배너 키워드 분석을 통한 취약점 정보를 식별하는 방법 및 장치

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: 16803343

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017521950

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2016803343

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 15577938

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE