WO2021229784A1 - 攻撃検知システム、攻撃検知方法および攻撃検知プログラム - Google Patents

攻撃検知システム、攻撃検知方法および攻撃検知プログラム Download PDF

Info

Publication number
WO2021229784A1
WO2021229784A1 PCT/JP2020/019381 JP2020019381W WO2021229784A1 WO 2021229784 A1 WO2021229784 A1 WO 2021229784A1 JP 2020019381 W JP2020019381 W JP 2020019381W WO 2021229784 A1 WO2021229784 A1 WO 2021229784A1
Authority
WO
WIPO (PCT)
Prior art keywords
class
input data
classification
result
attack
Prior art date
Application number
PCT/JP2020/019381
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 PCT/JP2020/019381 priority Critical patent/WO2021229784A1/ja
Priority to JP2022522465A priority patent/JP7101920B2/ja
Priority to DE112020006852.8T priority patent/DE112020006852T5/de
Priority to CN202080100211.6A priority patent/CN115461765A/zh
Publication of WO2021229784A1 publication Critical patent/WO2021229784A1/ja
Priority to US17/945,297 priority patent/US20230018042A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning

Definitions

  • This disclosure relates to the detection of hostile sample attacks against multiclass classifiers.
  • a method of constructing a multi-class classifier by supervised machine learning is known.
  • the multiclass classifier classifies the class to which the input data belongs based on the labeled training data.
  • deep learning methods using neural networks have achieved high accuracy in various tasks.
  • Non-Patent Document 1 describes a hostile sample attack against a multi-class classifier constructed by deep learning. Hostile sample attacks mislead the classification results by a multiclass classifier by adding perturbations to the input data.
  • the purpose of this disclosure is to enable the detection of hostile sample attacks against multiclass classifiers.
  • the attack detection system of this disclosure is Multiple one-class classifiers for different classes, A selection unit that selects a one-class classifier for the class in which the input data is classified by multi-class classification for the input data from the plurality of one-class classifiers. A determination unit that determines whether the result of the multi-class classification for the input data is an erroneous result due to a hostile sample attack, based on the score calculated by the one-class classification for the input data by the selected one-class classifier. And.
  • FIG. 1 The block diagram of the attack detection system 100 in Embodiment 1.
  • FIG. The flowchart of the attack detection method in Embodiment 1. The flowchart of the classification process (S110) in Embodiment 1.
  • the schematic diagram of the classification apparatus 200 in Embodiment 1. The flowchart of the detection process (S120) in Embodiment 1.
  • FIG. 1 The hardware block diagram of the detection apparatus 300 in Embodiment 1.
  • Embodiment 1 A mode for detecting that an erroneous classification result is obtained by the multi-class classification when the input data of the multi-class classification is modified by a hostile sample attack will be described with reference to FIGS. 1 to 8.
  • the attack detection system 100 includes a classification device 200 and a detection device 300.
  • the classification device 200 classifies the input data x by multi-class classification.
  • the classification result y indicates a class in which the input data x is classified.
  • the detection device 300 determines whether the classification result y is an erroneous result due to a hostile sample attack by one-class classification.
  • the detection result z indicates whether the classification result y is an erroneous result due to a hostile sample attack.
  • the configuration of the classification device 200 will be described with reference to FIG.
  • the classification device 200 is a computer including hardware such as a processor 201, a memory 202, an auxiliary storage device 203, a communication device 204, and an input / output interface 205. These hardware are connected to each other via signal lines.
  • the processor 201 is an IC that performs arithmetic processing and controls other hardware.
  • the processor 201 is a CPU.
  • IC is an abbreviation for Integrated Circuit.
  • CPU is an abbreviation for Central Processing Unit.
  • the memory 202 is a volatile or non-volatile storage device.
  • the memory 202 is also referred to as a main storage device or a main memory.
  • the memory 202 is a RAM.
  • the data stored in the memory 202 is stored in the auxiliary storage device 203 as needed.
  • RAM is an abbreviation for Random Access Memory.
  • the auxiliary storage device 203 is a non-volatile storage device.
  • the auxiliary storage device 203 is a ROM, an HDD, or a flash memory.
  • the data stored in the auxiliary storage device 203 is loaded into the memory 202 as needed.
  • ROM is an abbreviation for Read Only Memory.
  • HDD is an abbreviation for Hard Disk Drive.
  • the communication device 204 is a receiver and a transmitter.
  • the communication device 204 is a communication chip or NIC.
  • NIC is an abbreviation for Network Interface Card.
  • the input / output interface 205 is a port to which an input device and an output device are connected.
  • the input / output interface 205 is a USB terminal
  • the input device is a keyboard and a mouse
  • the output device is a display.
  • USB is an abbreviation for Universal Serial Bus.
  • the classification device 200 includes elements such as a reception unit 211, a multi-class classifier 212, and an output unit 213. These elements are realized by software.
  • the multi-class classifier 212 is constructed by a neural network.
  • the multiclass classifier 212 is constructed using VGG16 or ResNet50.
  • the auxiliary storage device 203 stores a classification program for operating a computer as a reception unit 211, a multi-class classifier 212, and an output unit 213.
  • the classification program is loaded into memory 202 and executed by processor 201.
  • the auxiliary storage device 203 further stores the OS. At least a portion of the OS is loaded into memory 202 and executed by processor 201.
  • the processor 201 executes the classification program while executing the OS.
  • OS is an abbreviation for Operating System.
  • the input / output data of the classification program is stored in the storage unit 290.
  • the memory 202 functions as a storage unit 290.
  • a storage device such as an auxiliary storage device 203, a register in the processor 201, and a cache memory in the processor 201 may function as a storage unit 290 instead of the memory 202 or together with the memory 202.
  • the classification device 200 may include a plurality of processors that replace the processor 201.
  • the classification program can be recorded (stored) in a non-volatile recording medium such as an optical disk or a flash memory so that it can be read by a computer.
  • a non-volatile recording medium such as an optical disk or a flash memory
  • the configuration of the detection device 300 will be described with reference to FIG.
  • the detection device 300 is a computer including hardware such as a processor 301, a memory 302, an auxiliary storage device 303, a communication device 304, and an input / output interface 305. These hardware are connected to each other via signal lines.
  • the processor 301 is an IC that performs arithmetic processing and controls other hardware.
  • the processor 301 is a CPU.
  • the memory 302 is a volatile or non-volatile storage device.
  • the memory 302 is also referred to as a main storage device or a main memory.
  • the memory 302 is a RAM.
  • the data stored in the memory 302 is stored in the auxiliary storage device 303 as needed.
  • the auxiliary storage device 303 is a non-volatile storage device.
  • the auxiliary storage device 303 is a ROM, HDD or flash memory.
  • the data stored in the auxiliary storage device 303 is loaded into the memory 302 as needed.
  • the input / output interface 305 is a port to which an input device and an output device are connected.
  • the input / output interface 305 is a USB terminal
  • the input device is a keyboard and a mouse
  • the output device is a display.
  • the communication device 304 is a receiver and a transmitter.
  • the communication device 304 is a communication chip or NIC.
  • the detection device 300 includes elements such as a reception unit 311, a selection unit 312, a determination unit 314, and an output unit 315. Further, the detection device 300 includes a plurality of one-class classifiers 313 for different classes. These elements are realized by software.
  • the plurality of one-class classifiers 313 perform one-class classification for different classes.
  • the number of one-class classifiers 313 is the same as the number of classes that can be classified by the multi-class classifier 212. That is, a one-class classifier 313 is constructed for each class that can be classified by the multi-class classifier 212.
  • the one-class classifier 313 is constructed by using a set of normal data without a label as training data. That is, the one-class classifier 313 is constructed by unsupervised learning.
  • the one-class classifier 313 executes one-class classification on the input data and outputs a score. The score represents the degree to which the input data is included in the class corresponding to the one-class classifier 313.
  • the input data When the score is smaller than the threshold value, the input data is included in the set of normal data used as training data when constructing the one-class classifier 313. If the score is greater than the threshold, the input data is not included in the set of normal data used as training data when constructing the one-class classifier 313.
  • Non-Patent Document Japanese Patent Application Laid-Open No. 2017-97718
  • Non-Patent Document Thomas Schlegl, Philippp Seebook, Sebastian M. et al. Waldstein, Ursula Schmidt-Erfurth and Georg Langs: Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery, in International Conference on Information Processing in Medical Imaging (IPMI) (2017)
  • the auxiliary storage device 303 stores a detection program for operating the computer as a reception unit 311, a selection unit 312, a plurality of one-class classifiers 313, a determination unit 314, and an output unit 315.
  • the detection program is loaded into memory 302 and executed by processor 301.
  • the OS is further stored in the auxiliary storage device 303. At least a portion of the OS is loaded into memory 302 and executed by processor 301.
  • the processor 301 executes the detection program while executing the OS.
  • the input / output data of the detection program is stored in the storage unit 390.
  • the memory 302 functions as a storage unit 390.
  • a storage device such as an auxiliary storage device 303, a register in the processor 301, and a cache memory in the processor 301 may function as a storage unit 390 instead of the memory 302 or together with the memory 302.
  • the detection device 300 may include a plurality of processors that replace the processor 301.
  • the detection program can be computer-readablely recorded (stored) in a non-volatile recording medium such as an optical disk or flash memory.
  • the operation procedure of the attack detection system 100 corresponds to the attack detection method. Further, the operation procedure of the attack detection system 100 corresponds to the processing procedure by the attack detection program.
  • the attack detection program includes a classification program for the classification device 200 and a detection program for the detection device 300.
  • step S110 the classification device 200 classifies the input data x by multi-class classification.
  • FIG. 5 is a flowchart of the classification process (S110).
  • FIG. 6 shows the input / output of each element of the classification device 200.
  • step S111 the reception unit 211 receives the input data x.
  • the input data x is normal input data or invalid input data. Normal input data has not been modified by hostile sample attacks. The malicious input data has been modified by a hostile sample attack.
  • the user inputs the input data x into the attack detection system 100. Then, the reception unit 211 receives the input data x input to the attack detection system 100.
  • step S112 the multi-class classifier 212 performs multi-class classification on the input data x. That is, the multi-class classifier 212 inputs the input data x and executes the multi-class classification. As a result, the classification result y is output.
  • the input data x is classified into one of a plurality of classes.
  • the classification result y indicates a class in which the input data x is classified.
  • step S113 the output unit 213 outputs a set of the input data x and the classification result y.
  • the output unit 213 records a set of the input data x and the classification result y on the recording medium.
  • the output unit 213 transmits a set of the input data x and the classification result y to the detection device 300.
  • step S120 the detection device 300 determines whether the classification result y is an erroneous result due to a hostile sample attack by one-class classification.
  • FIG. 7 is a flowchart of the detection process (S120).
  • FIG. 8 shows the input / output of each element of the detection device 300.
  • step S121 the reception unit 311 receives the set of the input data x and the classification result y.
  • the user inputs a set of the input data x and the classification result y to the detection device 300.
  • the reception unit 311 receives the set of the input data x and the classification result y input to the detection device 300.
  • the classification device 200 transmits a set of the input data x and the classification result y to the detection device 300.
  • the reception unit 311 receives the set of the input data x and the classification result y.
  • step S122 the selection unit 312 selects a one-class classifier 313 for the same class as the class shown in the classification result y from the plurality of one-class classifiers 313. Then, the selection unit 312 inputs the input data x to the selected one-class classifier 313. For example, when the class shown in the classification result y is the first class, the selection unit 312 selects the one-class classifier 313-1 (see FIG. 8) and inputs the input data x to the one-class classifier 313-1. input.
  • step S123 the selected one-class classifier 313 executes one-class classification for the input data x. That is, the selected one-class classifier 313 executes one-class classification by inputting the input data x. As a result, the score s is calculated.
  • step S124 the determination unit 314 determines whether the classification result y is an erroneous result due to a hostile sample attack based on the score s.
  • the determination unit 314 makes a determination as follows.
  • the determination unit 314 compares the score s with the threshold value.
  • the threshold value is a predetermined value. When the score s is smaller than the threshold value (or the score s is less than or equal to the threshold value), the result of the multi-class classification and the result of the one-class classification match. Therefore, the determination unit 314 determines that the classification result y is not an erroneous result due to a hostile sample attack. If the score s is greater than or equal to the threshold (or if the score s is greater than or equal to the threshold), the result of the multi-class classification and the result of the one-class classification do not match. Therefore, the determination unit 314 determines that the classification result y is an erroneous result due to a hostile sample attack.
  • step S125 the output unit 315 outputs the detection result z corresponding to the result of the determination in step S124.
  • the detection result z indicates “detection” or “non-detection”.
  • Detection means that the classification result y is an erroneous result of a hostile sample attack. In other words, “detection” means that a hostile sample attack has taken place.
  • Non-detection means that the classification result y is not an erroneous result of a hostile sample attack. In other words, “non-detection” means that no hostile sample attack has been performed.
  • the output unit 315 records the detection result z on a recording medium.
  • the output unit 315 displays the detection result z on the display.
  • Embodiment 1 it is possible to detect that an erroneous classification result is obtained by the multi-class classification when the input data of the multi-class classification is modified by a hostile sample attack. That is, it can be detected that the multi-class classifier 212 outputs an erroneous classification result y when the input data x modified by the hostile sample attack is given to the multi-class classifier 212.
  • the classification device 200 includes a processing circuit 209.
  • the processing circuit 209 is hardware that realizes the reception unit 211, the multi-class classifier 212, and the output unit 213.
  • the processing circuit 209 may be dedicated hardware or may be a processor 201 that executes a program stored in the memory 202.
  • the processing circuit 209 is dedicated hardware, the processing circuit 209 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
  • ASIC is an abbreviation for Application Specific Integrated Circuit.
  • FPGA is an abbreviation for Field Programmable Gate Array.
  • the classification device 200 may include a plurality of processing circuits that replace the processing circuit 209.
  • processing circuit 209 some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
  • the functions of the classification device 200 can be realized by hardware, software, firmware, or a combination thereof.
  • the detection device 300 includes a processing circuit 309.
  • the processing circuit 309 is hardware that realizes the reception unit 311, the selection unit 312, the one-class classifier 313, the determination unit 314, and the output unit 315.
  • the processing circuit 309 may be dedicated hardware or a processor 301 that executes a program stored in the memory 302.
  • the processing circuit 309 is dedicated hardware, the processing circuit 309 is, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC, an FPGA, or a combination thereof.
  • the detection device 300 may include a plurality of processing circuits that replace the processing circuit 309.
  • processing circuit 309 some functions may be realized by dedicated hardware, and the remaining functions may be realized by software or firmware.
  • the function of the detection device 300 can be realized by hardware, software, firmware, or a combination thereof.
  • Each embodiment is an example of a preferred embodiment and is not intended to limit the technical scope of the present disclosure. Each embodiment may be partially implemented or may be implemented in combination with other embodiments. The procedure described using the flowchart or the like may be appropriately changed.
  • the classification device 200 and the detection device 300 may be realized by one device. Further, each of the classification device 200 and the detection device 300 may be realized by a plurality of devices.
  • the "part” which is an element of each of the classification device 200 and the detection device 300 may be read as “processing” or "process”. Further, “classifier” may be read as “classification process” or “classification process”.
  • 100 attack detection system 200 classification device, 201 processor, 202 memory, 203 auxiliary storage device, 204 communication device, 205 input / output interface, 209 processing circuit, 211 reception unit, 212 multi-class classifier, 213 output unit, 290 storage unit , 300 detector, 301 processor, 302 memory, 303 auxiliary storage device, 304 communication device, 305 input / output interface, 309 processing circuit, 311 reception unit, 312 selection unit, 313 1 class classifier, 314 judgment unit, 315 output unit. 390 Storage unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

選択部(312)は、互いに異なるクラスに対する複数の1クラス分類器(313)の中から、入力データに対する多クラス分類によって前記入力データが分類されたクラスに対する1クラス分類器を選択する。選択された1クラス分類器は、前記入力データに対する1クラス分類を実行してスコアを算出する。判定部(314)は、算出されたスコアに基づいて、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか判定する。

Description

攻撃検知システム、攻撃検知方法および攻撃検知プログラム
 本開示は、多クラス分類器に対する敵対的サンプル攻撃の検知に関するものである。
 教師あり機械学習によって多クラス分類器を構築する手法が知られている。多クラス分類器は、入力データが属するクラスをラベル付きの学習データに基づいて分類する。特に、ニューラルネットワークを用いた深層学習の手法が、様々なタスクにおいて高い精度を達成している。
 非特許文献1には、深層学習によって構築された多クラス分類器に対する敵対的サンプル攻撃が記載されている。敵対的サンプル攻撃は、入力データに摂動を加えることによって、多クラス分類器による分類結果を誤らせる。
Christian Szegedy, Wojciech Zaremba, Ilya Sutskever, Joan Bruna, Dumitru Erhan, Ian J. Goodfellow and Rob Fergus: Intriguing properties of neural networks, in International Conference on Learning Representations (ICLR) (2014)
 本開示は、多クラス分類器に対する敵対的サンプル攻撃を検知できるようにすることを目的とする。
 本開示の攻撃検知システムは、
 互いに異なるクラスに対する複数の1クラス分類器と、
 前記複数の1クラス分類器の中から、入力データに対する多クラス分類によって前記入力データが分類されたクラスに対する1クラス分類器を選択する選択部と、
 選択された1クラス分類器による前記入力データに対する1クラス分類によって算出されるスコアに基づいて、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか判定する判定部と、を備える。
 本開示によれば、多クラス分類器に対する敵対的サンプル攻撃を検知することが可能となる。
実施の形態1における攻撃検知システム100の構成図。 実施の形態1における分類装置200の構成図。 実施の形態1における検知装置300の構成図。 実施の形態1における攻撃検知方法のフローチャート。 実施の形態1における分類処理(S110)のフローチャート。 実施の形態1における分類装置200の概要図。 実施の形態1における検知処理(S120)のフローチャート。 実施の形態1における検知装置300の概要図。 実施の形態1における分類装置200のハードウェア構成図。 実施の形態1における検知装置300のハードウェア構成図。
 実施の形態および図面において、同じ要素または対応する要素には同じ符号を付している。説明した要素と同じ符号が付された要素の説明は適宜に省略または簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。
 実施の形態1.
 多クラス分類の入力データが敵対的サンプル攻撃によって改変された際に多クラス分類によって誤った分類結果が得られたことを検知する形態について、図1から図8に基づいて説明する。
***構成の説明***
 図1に基づいて、攻撃検知システム100の構成を説明する。
 攻撃検知システム100は、分類装置200と検知装置300とを備える。
 分類装置200は、多クラス分類によって、入力データxを分類する。分類結果yは、入力データxが分類されたクラスを示す。
 検知装置300は、1クラス分類によって、分類結果yが敵対的サンプル攻撃による誤った結果であるか判定する。検知結果zは、分類結果yが敵対的サンプル攻撃による誤った結果であるか示す。
 図2に基づいて、分類装置200の構成を説明する。
 分類装置200は、プロセッサ201とメモリ202と補助記憶装置203と通信装置204と入出力インタフェース205といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
 プロセッサ201は、演算処理を行うICであり、他のハードウェアを制御する。例えば、プロセッサ201はCPUである。
 ICは、Integrated Circuitの略称である。
 CPUは、Central Processing Unitの略称である。
 メモリ202は揮発性または不揮発性の記憶装置である。メモリ202は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ202はRAMである。メモリ202に記憶されたデータは必要に応じて補助記憶装置203に保存される。
 RAMは、Random Access Memoryの略称である。
 補助記憶装置203は不揮発性の記憶装置である。例えば、補助記憶装置203は、ROM、HDDまたはフラッシュメモリである。補助記憶装置203に記憶されたデータは必要に応じてメモリ202にロードされる。
 ROMは、Read Only Memoryの略称である。
 HDDは、Hard Disk Driveの略称である。
 通信装置204はレシーバ及びトランスミッタである。例えば、通信装置204は通信チップまたはNICである。
 NICは、Network Interface Cardの略称である。
 入出力インタフェース205は、入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース205はUSB端子であり、入力装置はキーボードおよびマウスであり、出力装置はディスプレイである。
 USBは、Universal Serial Busの略称である。
 分類装置200は、受付部211と多クラス分類器212と出力部213といった要素を備える。これらの要素はソフトウェアで実現される。
 多クラス分類器212は、ニューラルネットワークによって構築される。例えば、多クラス分類器212は、VGG16またはResNet50を用いて構築される。
 補助記憶装置203には、受付部211と多クラス分類器212と出力部213としてコンピュータを機能させるための分類プログラムが記憶されている。分類プログラムは、メモリ202にロードされて、プロセッサ201によって実行される。
 補助記憶装置203には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ202にロードされて、プロセッサ201によって実行される。
 プロセッサ201は、OSを実行しながら、分類プログラムを実行する。
 OSは、Operating Systemの略称である。
 分類プログラムの入出力データは記憶部290に記憶される。
 メモリ202は記憶部290として機能する。但し、補助記憶装置203、プロセッサ201内のレジスタおよびプロセッサ201内のキャッシュメモリなどの記憶装置が、メモリ202の代わりに、又は、メモリ202と共に、記憶部290として機能してもよい。
 分類装置200は、プロセッサ201を代替する複数のプロセッサを備えてもよい。
 分類プログラムは、光ディスクまたはフラッシュメモリ等の不揮発性の記録媒体にコンピュータ読み取り可能に記録(格納)することができる。
 図3に基づいて、検知装置300の構成を説明する。
 検知装置300は、プロセッサ301とメモリ302と補助記憶装置303と通信装置304と入出力インタフェース305といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
 プロセッサ301は、演算処理を行うICであり、他のハードウェアを制御する。例えば、プロセッサ301はCPUである。
 メモリ302は揮発性または不揮発性の記憶装置である。メモリ302は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ302はRAMである。メモリ302に記憶されたデータは必要に応じて補助記憶装置303に保存される。
 補助記憶装置303は不揮発性の記憶装置である。例えば、補助記憶装置303は、ROM、HDDまたはフラッシュメモリである。補助記憶装置303に記憶されたデータは必要に応じてメモリ302にロードされる。
 入出力インタフェース305は、入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース305はUSB端子であり、入力装置はキーボードおよびマウスであり、出力装置はディスプレイである。
 通信装置304はレシーバ及びトランスミッタである。例えば、通信装置304は通信チップまたはNICである。
 検知装置300は、受付部311と選択部312と判定部314と出力部315といった要素を備える。さらに、検知装置300は、互いに異なるクラスに対する複数の1クラス分類器313を備える。これらの要素はソフトウェアで実現される。
 複数の1クラス分類器313は、互いに異なるクラスのために1クラス分類を実行する。
 1クラス分類器313の数は、多クラス分類器212によって分類することが可能なクラスの数と同じである。つまり、多クラス分類器212によって分類することが可能なクラスごとに1クラス分類器313が構築される。
 1クラス分類器313は、ラベルが無い正常データの集合が学習データとして用いられて構築される。つまり、1クラス分類器313は、教師なし学習によって構築される。
 1クラス分類器313は、入力データに対する1クラス分類を実行してスコアを出力する。
 スコアは、入力データが1クラス分類器313に対応するクラスに含まれる度合いを表す。スコアが閾値より小さい場合、入力データは、1クラス分類器313の構築時に学習データとして利用された正常データの集合に含まれる。スコアが閾値より大きい場合、入力データは、1クラス分類器313の構築時に学習データとして利用された正常データの集合に含まれない。
 例えば、各1クラス分類器313には、以下の[特許文献]に示されたautoencoderに基づいた方式、または、以下の[非特許文献]に示されたGenerative Adversarial Networksに基づいた方式、を利用することができる。
 [特許文献]特開2017-97718号公報
 [非特許文献]Thomas Schlegl, Philipp Seebock, Sebastian M. Waldstein, Ursula Schmidt-Erfurth and Georg Langs: Unsupervised Anomaly Detection with Generative Adversarial Networks to Guide Marker Discovery, in International Conference on Information Processing in Medical Imaging (IPMI) (2017)
 補助記憶装置303には、受付部311と選択部312と複数の1クラス分類器313と判定部314と出力部315としてコンピュータを機能させるための検知プログラムが記憶されている。検知プログラムは、メモリ302にロードされて、プロセッサ301によって実行される。
 補助記憶装置303には、さらに、OSが記憶されている。OSの少なくとも一部は、メモリ302にロードされて、プロセッサ301によって実行される。
 プロセッサ301は、OSを実行しながら、検知プログラムを実行する。
 検知プログラムの入出力データは記憶部390に記憶される。
 メモリ302は記憶部390として機能する。但し、補助記憶装置303、プロセッサ301内のレジスタおよびプロセッサ301内のキャッシュメモリなどの記憶装置が、メモリ302の代わりに、又は、メモリ302と共に、記憶部390として機能してもよい。
 検知装置300は、プロセッサ301を代替する複数のプロセッサを備えてもよい。
 検知プログラムは、光ディスクまたはフラッシュメモリ等の不揮発性の記録媒体にコンピュータ読み取り可能に記録(格納)することができる。
***動作の説明***
 攻撃検知システム100の動作の手順は攻撃検知方法に相当する。また、攻撃検知システム100の動作の手順は攻撃検知プログラムによる処理の手順に相当する。攻撃検知プログラムは、分類装置200のための分類プログラムと、検知装置300のための検知プログラムと、を含む。
 図4に基づいて、攻撃検知方法を説明する。
 ステップS110において、分類装置200は、多クラス分類によって、入力データxを分類する。
 図5および図6に基づいて、分類装置200による分類処理(S110)の手順を説明する。
 図5は、分類処理(S110)のフローチャートである。
 図6は、分類装置200の各要素の入出力を示す。
 ステップS111において、受付部211は、入力データxを受け付ける。
 入力データxは、正常な入力データまたは不正な入力データである。
 正常な入力データは、敵対的サンプル攻撃によって改変されていない。
 不正な入力データは、敵対的サンプル攻撃によって改変されている。
 例えば、利用者が入力データxを攻撃検知システム100に入力する。そして、受付部211は、攻撃検知システム100に入力された入力データxを受け付ける。
 ステップS112において、多クラス分類器212は、入力データxに対する多クラス分類を実行する。つまり、多クラス分類器212は、入力データxを入力にして多クラス分類を実行する。これにより、分類結果yが出力される。
 多クラス分類によって、入力データxは、複数のクラスのうちのいずれかに分類される。
 分類結果yは、入力データxが分類されたクラスを示す。
 ステップS113において、出力部213は、入力データxと分類結果yの組を出力する。
 例えば、出力部213は、入力データxと分類結果yの組を記録媒体に記録する。または、出力部213は、入力データxと分類結果yの組を検知装置300へ送信する。
 図4に戻り、ステップS120を説明する。
 ステップS120において、検知装置300は、1クラス分類によって、分類結果yが敵対的サンプル攻撃による誤った結果であるか判定する。
 図7および図8に基づいて、検知装置300による検知処理(S120)の手順を説明する。
 図7は、検知処理(S120)のフローチャートである。
 図8は、検知装置300の各要素の入出力を示す。
 ステップS121において、受付部311は、入力データxと分類結果yの組を受け付ける。
 例えば、利用者が入力データxと分類結果yの組を検知装置300に入力する。そして、受付部311は、検知装置300に入力された入力データxと分類結果yの組を受け付ける。
 例えば、分類装置200が入力データxと分類結果yの組を検知装置300へ送信する。っして、受付部311は、入力データxと分類結果yの組を受信する。
 ステップS122において、選択部312は、複数の1クラス分類器313から、分類結果yに示されるクラスと同じクラスに対する1クラス分類器313を選択する。そして、選択部312は、選択した1クラス分類器313に入力データxを入力する。
 例えば、分類結果yに示されるクラスが第1クラスである場合、選択部312は、1クラス分類器313-1(図8参照)を選択し、1クラス分類器313-1に入力データxを入力する。
 ステップS123において、選択された1クラス分類器313は、入力データxに対する1クラス分類を実行する。つまり、選択された1クラス分類器313は、入力データxを入力にして1クラス分類を実行する。これにより、スコアsが算出される。
 ステップS124において、判定部314は、スコアsに基づいて、分類結果yが敵対的サンプル攻撃による誤った結果であるか判定する。
 判定部314は、以下のように判定を行う。
 判定部314は、スコアsを閾値と比較する。閾値は予め決められた値である。
 スコアsが閾値より小さい場合(またはスコアsが閾値以下である場合)、多クラス分類の結果と1クラス分類の結果が一致する。そのため、判定部314は、分類結果yが敵対的サンプル攻撃による誤った結果でない、と判定する。
 スコアsが閾値より大きい場合(またはスコアsが閾値以上である場合)、多クラス分類の結果と1クラス分類の結果が一致しない。そのため、判定部314は、分類結果yが敵対的サンプル攻撃による誤った結果である、と判定する。
 ステップS125において、出力部315は、ステップS124における判定の結果に相当する検知結果zを出力する。
 検知結果zは、「検知」または「非検知」を示す。
 「検知」は、分類結果yが敵対的サンプル攻撃による誤った結果であることを意味する。つまり、「検知」は、敵対的サンプル攻撃が行われたことを意味する。
 「非検知」は、分類結果yが敵対的サンプル攻撃による誤った結果でないことを意味する。つまり、「非検知」は、敵対的サンプル攻撃が行われていないこと、を意味する。
 例えば、出力部315は、検知結果zを記録媒体に記録する。または、出力部315は、検知結果zをディスプレイに表示する。
***実施の形態1の効果***
 実施の形態1により、多クラス分類の入力データが敵対的サンプル攻撃によって改変された際に多クラス分類によって誤った分類結果が得られたことを検知することができる。つまり、敵対的サンプル攻撃によって改変された入力データxが多クラス分類器212に与えられた際に多クラス分類器212が誤った分類結果yを出力したことを検知することができる。
***実施の形態の補足***
 図9に基づいて、分類装置200のハードウェア構成を説明する。
 分類装置200は処理回路209を備える。
 処理回路209は、受付部211と多クラス分類器212と出力部213とを実現するハードウェアである。
 処理回路209は、専用のハードウェアであってもよいし、メモリ202に格納されるプログラムを実行するプロセッサ201であってもよい。
 処理回路209が専用のハードウェアである場合、処理回路209は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC、FPGAまたはこれらの組み合わせである。
 ASICは、Application Specific Integrated Circuitの略称である。
 FPGAは、Field Programmable Gate Arrayの略称である。
 分類装置200は、処理回路209を代替する複数の処理回路を備えてもよい。
 処理回路209において、一部の機能が専用のハードウェアで実現されて、残りの機能がソフトウェアまたはファームウェアで実現されてもよい。
 このように、分類装置200の機能はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
 図10に基づいて、検知装置300のハードウェア構成を説明する。
 検知装置300は処理回路309を備える。
 処理回路309は、受付部311と選択部312と1クラス分類器313と判定部314と出力部315とを実現するハードウェアである。
 処理回路309は、専用のハードウェアであってもよいし、メモリ302に格納されるプログラムを実行するプロセッサ301であってもよい。
 処理回路309が専用のハードウェアである場合、処理回路309は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC、FPGAまたはこれらの組み合わせである。
 検知装置300は、処理回路309を代替する複数の処理回路を備えてもよい。
 処理回路309において、一部の機能が専用のハードウェアで実現されて、残りの機能がソフトウェアまたはファームウェアで実現されてもよい。
 このように、検知装置300の機能はハードウェア、ソフトウェア、ファームウェアまたはこれらの組み合わせで実現することができる。
 各実施の形態は、好ましい形態の例示であり、本開示の技術的範囲を制限することを意図するものではない。各実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
 分類装置200および検知装置300が1台の装置で実現されてもよい。また、分類装置200と検知装置300とのそれぞれが、複数の装置で実現されてもよい。
 分類装置200と検知装置300とのそれぞれの要素である「部」は、「処理」または「工程」と読み替えてもよい。また「分類器」は「分類処理」または「分類工程」と読み替えてもよい。
 100 攻撃検知システム、200 分類装置、201 プロセッサ、202 メモリ、203 補助記憶装置、204 通信装置、205 入出力インタフェース、209 処理回路、211 受付部、212 多クラス分類器、213 出力部、290 記憶部、300 検知装置、301 プロセッサ、302 メモリ、303 補助記憶装置、304 通信装置、305 入出力インタフェース、309 処理回路、311 受付部、312 選択部、313 1クラス分類器、314 判定部、315 出力部、390 記憶部。

Claims (6)

  1.  互いに異なるクラスに対する複数の1クラス分類器と、
     前記複数の1クラス分類器の中から、入力データに対する多クラス分類によって前記入力データが分類されたクラスに対する1クラス分類器を選択する選択部と、
     選択された1クラス分類器による前記入力データに対する1クラス分類によって算出されるスコアに基づいて、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか判定する判定部と、
    を備える攻撃検知システム。
  2.  前記判定部は、前記スコアが閾値より大きい場合、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であると判定する
    請求項1に記載の攻撃検知システム。
  3.  前記入力データに対する前記多クラス分類を実行することによって前記入力データを分類する多クラス分類器を備える
    請求項1または請求項2に記載の攻撃検知システム。
  4.  前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか示す検知結果を出力する出力部を備える
    請求項1から請求項3のいずれか1項に記載の攻撃検知システム。
  5.  選択部が、互いに異なるクラスに対する複数の1クラス分類器の中から、入力データに対する多クラス分類によって前記入力データが分類されたクラスに対する1クラス分類器を選択し、
     選択された1クラス分類器が、前記入力データに対する1クラス分類を実行してスコアを算出し、
     判定部が、算出されたスコアに基づいて、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか判定する
    攻撃検知方法。
  6.  互いに異なるクラスに対する複数の1クラス分類器の中から、入力データに対する多クラス分類によって前記入力データが分類されたクラスに対する1クラス分類器を選択する選択処理と、
     選択された1クラス分類器によって前記入力データに対する1クラス分類を実行してスコアを算出する1クラス分類処理と、
     算出されたスコアに基づいて、前記入力データに対する前記多クラス分類の結果が敵対的サンプル攻撃による誤った結果であるか判定する判定処理と、
    をコンピュータに実行させるための攻撃検知プログラム。
PCT/JP2020/019381 2020-05-15 2020-05-15 攻撃検知システム、攻撃検知方法および攻撃検知プログラム WO2021229784A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2020/019381 WO2021229784A1 (ja) 2020-05-15 2020-05-15 攻撃検知システム、攻撃検知方法および攻撃検知プログラム
JP2022522465A JP7101920B2 (ja) 2020-05-15 2020-05-15 攻撃検知システム、攻撃検知方法および攻撃検知プログラム
DE112020006852.8T DE112020006852T5 (de) 2020-05-15 2020-05-15 Angriffsdetektionsvorrichtung, angriffsdetektionsverfahren undangriffsdetektionsprogramm
CN202080100211.6A CN115461765A (zh) 2020-05-15 2020-05-15 攻击检测系统、攻击检测方法和攻击检测程序
US17/945,297 US20230018042A1 (en) 2020-05-15 2022-09-15 Attack detection system, attack detection method, and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/019381 WO2021229784A1 (ja) 2020-05-15 2020-05-15 攻撃検知システム、攻撃検知方法および攻撃検知プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/945,297 Continuation US20230018042A1 (en) 2020-05-15 2022-09-15 Attack detection system, attack detection method, and computer-readable medium

Publications (1)

Publication Number Publication Date
WO2021229784A1 true WO2021229784A1 (ja) 2021-11-18

Family

ID=78525164

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/019381 WO2021229784A1 (ja) 2020-05-15 2020-05-15 攻撃検知システム、攻撃検知方法および攻撃検知プログラム

Country Status (5)

Country Link
US (1) US20230018042A1 (ja)
JP (1) JP7101920B2 (ja)
CN (1) CN115461765A (ja)
DE (1) DE112020006852T5 (ja)
WO (1) WO2021229784A1 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017097718A (ja) 2015-11-26 2017-06-01 株式会社リコー 識別処理装置、識別システム、識別処理方法、およびプログラム
CN110852363B (zh) * 2019-10-31 2022-08-02 大连理工大学 一种基于欺骗攻击者的对抗样本防御方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HAYASHI, TERUAKI ET AL.: "6S-09 Detection of Adversarial Examples Using Output of Multiple Models", PROCEEDINGS OF THE 81ST NATIONAL CONVENTION OF IPSJ, vol. 81, no. 2, 28 February 2019 (2019-02-28), JP, pages 2 - 2-318, XP009532324 *
MONTEIRO JOAO; ALBUQUERQUE ISABELA; AKHTAR ZAHID; FALK TIAGO H.: "Generalizable Adversarial Examples Detection Based on Bi-model Decision Mismatch", 2019 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN AND CYBERNETICS (SMC), IEEE, 6 October 2019 (2019-10-06), pages 2839 - 2844, XP033667506, DOI: 10.1109/SMC.2019.8913861 *

Also Published As

Publication number Publication date
DE112020006852T5 (de) 2022-12-22
CN115461765A (zh) 2022-12-09
JPWO2021229784A1 (ja) 2021-11-18
US20230018042A1 (en) 2023-01-19
JP7101920B2 (ja) 2022-07-15

Similar Documents

Publication Publication Date Title
US11586737B2 (en) Detecting malicious software using sensors
JP6698956B2 (ja) サンプルデータ生成装置、サンプルデータ生成方法およびサンプルデータ生成プログラム
US8868474B2 (en) Anomaly detection for cloud monitoring
US20060064755A1 (en) Methods and apparatus for interface adapter integrated virus protection
JP6939906B2 (ja) 異常検知装置
JP5951879B2 (ja) オペレーティングシステムに対する悪意ある活動のレポート
JP2007242002A (ja) ネットワーク管理装置及びネットワーク管理方法及びプログラム
US11068595B1 (en) Generation of file digests for cybersecurity applications
WO2017099922A1 (en) System management mode disabling and verification techniques
JP6749956B2 (ja) トラヒック特徴情報抽出装置、トラヒック特徴情報抽出方法、及びトラヒック特徴情報抽出プログラム
KR20200143241A (ko) Ml 및 ai 모델들에 대해 대립적 샘플들을 완화하기 위한 시스템
WO2021229784A1 (ja) 攻撃検知システム、攻撃検知方法および攻撃検知プログラム
JP4559974B2 (ja) 管理装置及び管理方法及びプログラム
US11017071B2 (en) Apparatus and method to protect an information handling system against other devices
US11941118B2 (en) System and method to build robust classifiers against evasion attacks
CN113316786B (zh) 用于识别漏洞利用工具包的方法
JP2007295056A (ja) ネットワーク状態判定装置及びネットワーク状態判定方法及びネットワーク状態判定プログラム
US11232202B2 (en) System and method for identifying activity in a computer system
WO2022264331A1 (ja) 攻撃検知装置、敵対的サンプルパッチ検知システム、攻撃検知方法、及び、攻撃検知プログラム
CN112487466A (zh) 一种无特征加密文件检测方法、终端设备及存储介质
US20210124827A1 (en) Method and system for checking malware infection of macro included in document file
US10754719B2 (en) Diagnosis device, diagnosis method, and non-volatile recording medium
US20190018959A1 (en) Diagnosis device, diagnosis method, and non-transitory recording medium
JP7515767B2 (ja) 画像処理装置、攻撃対策方法および攻撃対策プログラム
US20220342982A1 (en) Anomaly based keylogger detection through virtual machine introspection

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022522465

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 20935934

Country of ref document: EP

Kind code of ref document: A1