WO2009104720A1 - Resource usage control system, method of controlling resource usage, program for controlling resource usage - Google Patents

Resource usage control system, method of controlling resource usage, program for controlling resource usage Download PDF

Info

Publication number
WO2009104720A1
WO2009104720A1 PCT/JP2009/052977 JP2009052977W WO2009104720A1 WO 2009104720 A1 WO2009104720 A1 WO 2009104720A1 JP 2009052977 W JP2009052977 W JP 2009052977W WO 2009104720 A1 WO2009104720 A1 WO 2009104720A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource entity
system call
resource
call number
function
Prior art date
Application number
PCT/JP2009/052977
Other languages
French (fr)
Japanese (ja)
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 日本電気株式会社
Publication of WO2009104720A1 publication Critical patent/WO2009104720A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/321Program or instruction counter, e.g. incrementing
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities

Definitions

  • the present invention relates to a resource usage control system, a resource usage control method, and a resource usage control program capable of executing security processing involving resource entity change, buffering, and the like.
  • a pointer to a resource entity is stored in a register of an OS ⁇ ⁇ ⁇ (Operating System) kernel system call argument, and is input to a system call function in the OS kernel.
  • the resource entity is, for example, a file or communication data
  • the pointer is, for example, a file descriptor or a pointer to a socket structure.
  • the system call function performs predetermined processing such as disk writing or network transmission on the resource entity stored at the main storage address indicated by the pointer.
  • Patent Document 1 when an argument is within a security hole of a function or an abnormal operation range, a defect in software is temporarily corrected by changing the argument to a value that does not fall within the range and passing it. There is a description of what to do.
  • Patent Document 2 As a technique related to the present invention, a data storage method is disclosed in Patent Document 2, and a communication relay device is disclosed in Patent Document 3.
  • Patent Document 4 describes that when a system call requesting file access is issued from an application software program, when the system call reads a file, the file is converted into a file format that can be handled by the application software program. There is. JP 2006-018765 A JP 2001-027964 A JP 2007-194744 A JP 09-231114 A
  • An exemplary object of the present invention has been made in view of the above, a resource usage control system capable of executing a predetermined security process by performing modification / buffer accumulation on a resource entity indicated by a system call argument, To provide a method and a program thereof.
  • An exemplary resource utilization control system stores a system call number in a CPU register when issuing a system call, and generates a software interrupt, Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs; Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed.
  • Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
  • a main storage device storing a resource entity including at least one of a file and communication data;
  • Resource entity acquisition means for acquiring the resource entity pointed to by the pointer from the main storage device;
  • File change means and communication data change means to which the resource entity acquired by the resource entity acquisition means is input, content data of the file or content of the communication data retrieved from the file change means or the communication data change means
  • Resource entity changing means for rewriting the resource entity of the main storage device with a function value obtained from the function,
  • An interrupt processing means that is called when the resource entity is rewritten or the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
  • a resource use control system in a computer having
  • an exemplary resource usage control system stores a system call number in a CPU register when issuing a system call, and generates a software interrupt, and a user process, Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs; Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed.
  • Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
  • Resource entity acquisition means for acquiring from the main storage device a resource entity pointed to by the pointer;
  • Buffering means for temporarily storing the resource entity in a buffer memory;
  • a buffer transfer means for inputting a resource entity stored in the buffer memory into a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
  • An interrupt processing unit that is called when the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
  • a resource use control system in a computer having
  • An exemplary resource usage control method stores a system call number in a CPU register when issuing a system call, generates a software interrupt, When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing, Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU, Obtaining a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data; Input the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, rewrite the resource entity of the main storage device with the obtained function value, Executing the interrupt process when the resource entity is rewritten or when the system call number is not the system call number of the resource entity requiring change processing
  • an exemplary resource usage control method stores a system call number in a CPU register when issuing a system call, generates a software interrupt, When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing, Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU, The resource entity pointed to by the pointer is acquired from the main storage device, Temporarily storing the resource entity in a buffer memory; The resource entity stored in the buffer memory is input to a predetermined function, and the obtained function value is transferred to a secondary storage device or a communication device, Executing the interrupt process when the resource entity is input to the function or when the system call number is not a system call number of a resource entity requiring change processing; This is a resource usage control method
  • An exemplary information recording medium stores a system call number in a CPU register when issuing a system call, and generates a software interrupt.
  • the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
  • the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU; Processing for acquiring a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data; A process of inputting the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, and rewriting the resource entity of the main storage device with the obtained function value; When the resource entity is rewritten or when the system call number is not a
  • an exemplary information recording medium stores a system call number in a CPU register when issuing a system call, and generates a software interrupt.
  • the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
  • the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU; Processing for acquiring the resource entity pointed to by the pointer from the main storage device; A process of temporarily storing the resource entity in a buffer memory; A process of inputting a resource entity stored in the buffer memory to a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
  • the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires a
  • the interrupt hook unit preferentially detects a software interrupt and performs processing related to the software interrupt preferentially
  • the register analyzing unit acquires the pointer related to the system call number, and the acquired pointer
  • the resource entity acquisition unit acquires the resource entity that needs to be changed from the main storage device
  • the resource entity change unit rewrites the resource entity to change or buffer the resource entity indicated by the system call argument. It is possible to provide a resource usage control system, a method thereof, and a program thereof that can store and execute predetermined security processing.
  • FIG. 1 is a block diagram showing the configuration of the resource usage control system according to the first embodiment of the present invention.
  • a resource usage control system according to a first embodiment of the present invention is a computer 100 that operates by program control, and includes a CPU 101, a main storage device 102, a secondary storage device 103, A communication device 104, a user process 105, an interrupt processing unit 106, and a system call processing unit 107 are provided.
  • the user process 105 is a program executed by the CPU 101, and when inputting / outputting data to / from the secondary storage device 103 and the communication device 104, a predetermined system call number and a resource entity (input / output) on the main storage device 102 are registered in the CPU 101 register. Data) is stored as an argument and a software interrupt is generated.
  • the interrupt processing unit 106 refers to the register of the CPU 101 and calls the system call processing unit 107 corresponding to the system call number stored in the register.
  • the system call processing unit 107 executes input / output processing for the secondary storage device 103 and the communication device 104 while reading and writing the resource entity on the main storage device 102 indicated by the pointer stored in the register of the CPU 101.
  • the resource control system further includes an interrupt hook unit 108, a register analysis unit 109, and a resource entity acquisition unit. 110 and a resource entity changing unit 111 (see the dotted line frame in FIG. 1).
  • the interrupt hook unit 108 is a program that is called with priority over the interrupt processing unit 106 and executed by the CPU 101 when a software interrupt is generated by the user process 105.
  • the interrupt analysis unit 109 calls the register analysis unit 109 or After the processing of the resource entity changing unit 111 is completed, the interrupt processing unit 106 is called.
  • the register analysis unit 109 includes a reference table on a nonvolatile memory provided internally.
  • FIG. 4 shows an example of a reference table in which a system call number of a resource entity that needs to be changed is associated with a register name that stores a pointer to the resource entity to be changed.
  • the register analysis unit 109 compares the system call number stored in the register of the CPU 101 when the system call is generated by the user process 105 with the description content of the reference table and determines that the resource entity change processing is necessary, the register analysis unit 109 Is input to the resource entity acquisition unit 110.
  • the resource entity acquisition unit 110 acquires the resource entity stored at the address indicated by the input pointer from the main storage device 102, and inputs the set of the address and the resource entity to the resource entity change unit 111.
  • the resource entity changing unit 111 inputs the input resource entity into an internally incorporated function, and rewrites the value of the resource entity stored at the above address in the main storage device 102 with the function value.
  • the completion signal of the rewriting process is input to the interrupt hook unit 108.
  • FIG. 2 is a flowchart showing the operation of the resource usage control system according to the first embodiment of the present invention.
  • the user process 105 issues a corresponding system call in order to perform file input / output or network input / output (step S201).
  • the user process 105 determines a number (system call number) predefined for each system call to be issued, a pointer to a resource entity for storing input / output data, and other options (such as a file open mode). Is stored in the register of the CPU 101 (FIG. 3). Thereafter, a predetermined software interrupt is generated.
  • the CPU 101 executes the interrupt hook unit 108 which is a program registered in advance (step S202).
  • the interrupt hook unit 108 first instructs the register analysis unit 109 to start register analysis processing.
  • the register analysis unit 109 acquires the system call number of the system call related to the user process 105 from the register of the CPU 101 (step S203).
  • the register analysis unit 109 scans the system call number column (SysNo column in FIG. 4) of the reference table provided therein to determine whether or not the system call number is described (step S204). .
  • the register analysis unit 109 immediately interrupts the processing in steps S205 to S207 and returns the processing to the interrupt hook unit 108. Thereafter, the interrupt hook unit 108 calls the interrupt processing unit 106, and the interrupt processing unit 106 calls the corresponding system call processing unit 107 according to the contents of the register of the CPU 101, so that the resource entity requested by the user process 105 is accompanied. Then, input / output processing for the secondary storage device 103 or the communication device 104 is performed (step S208).
  • the register analyzing unit 109 registers the register column (REG in FIG. 4) corresponding to the above-described system call number in the reference table. Column), a pointer to the resource entity stored in the described register is acquired and input to the resource entity acquisition unit 110 (step S205).
  • the resource entity acquisition unit 110 acquires the resource entity stored at the address indicated by the input pointer from the main storage device 102 and inputs the set of the address and the resource entity to the resource entity change unit 111 ( Step S206).
  • the resource entity changing unit 111 inputs the input resource entity into an internally incorporated function, and rewrites the resource entity stored at the aforementioned address of the main storage device 102 with the function value (step S207). .
  • An example of a suitable function of the resource entity changing unit 111 is an encryption function. This is realized by providing an encryption function 1111 inside the resource entity changing unit 111 as shown in FIG.
  • the encryption function 1111 can be configured to perform encryption with a predetermined encryption key. As shown in FIG. 10, the encryption function 1111 stores a predetermined encryption key in a key management unit 1112 configured with a nonvolatile memory.
  • the encryption function 1111 preferably encrypts the resource entity using the encryption key and outputs the encrypted resource entity.
  • a virus removal function As another example of the function, there is a virus removal function. This is realized by providing a virus removal function 1113 inside the resource entity changing unit 111 as shown in FIG.
  • the virus removal function 1113 has a characteristic pattern (signature) of predetermined virus data.
  • a pattern obtained by replacing the pattern with a non-pattern (for example, a sequence of 0) is output as a function value.
  • this signature may be stored in a signature management unit 1114 configured with a nonvolatile memory and referred to by the virus removal function 1113.
  • the resource entity changing unit 111 includes a file changing unit 1115 and a communication data changing unit 1116.
  • the file changing unit 1115 performs file metadata ( Only content data other than the magic number indicating the file format, etc.) can be input to the encryption function 1111 or the virus removal function 1113 and changed.
  • the communication data changing unit 1116 inputs only the content data other than the IP header such as the IP payload to the encryption function 1111 or the virus removal function 1113 to change it. Can do.
  • the resource usage control system performs predetermined resource entities such as encryption and virus removal for resource entities input and output by an arbitrary user process 105. Change processing can be forced.
  • the register analysis unit 109 detects the issuance of a system call accompanying the input / output processing of the user process 105, and the resource entity acquisition unit 110 acquires the resource entity indicated by the system call argument from the main storage device 102.
  • the entity changing unit 111 changes the resource entity to a function value input to a predetermined function (encryption function, virus removal function, etc.) for preventing unauthorized access.
  • the resource entity changing unit 111 can access the internal structure of the resource entity (for example, the body part for the mail data), thereby realizing a finer granularity of resource entity change.
  • the resource entity changing unit 111 not only the resource entity (that is, the file) indicated by the argument of the file input / output system call but also the communication system call It is possible to change a resource entity (that is, communication data such as an IP packet) indicated by the argument.
  • the resource entity conversion processing such as virus removal and encryption is performed equally for both file and communication data.
  • resource entity conversion processing such as virus removal and encryption can be performed equally for both files and communication data.
  • the computer 100 may be a computer 100 ⁇ / b> A having a virtualization unit 112 and a virtual machine 113.
  • the interrupt hook unit 108 is a part of the configuration of the virtualization unit 112
  • the virtual machine 113 includes a user process 105, an interrupt processing unit 106, and a system call processing unit 107.
  • FIG. 6 is a block diagram showing the configuration of the resource usage control system according to the second embodiment of the present invention.
  • the resource usage control system according to the second exemplary embodiment of the present invention includes a buffering unit 201 instead of the resource entity changing unit 111 in the resource usage control system according to the first exemplary embodiment.
  • a buffer transfer unit 202 is also included in the resource usage control system according to the first exemplary embodiment.
  • Other configurations and operations are the same as those of the resource use control system according to the first embodiment, and the same reference numerals are given.
  • the buffering unit 201 internally has a buffer memory 2011 (see FIG. 7), receives an input of a resource entity from the resource entity acquisition unit 110, stores the resource entity in the buffer memory 2011, and stores the storage address ( (Pointer) is input to the buffer transfer unit 202, and a return signal for urging the transfer to the interrupt processing unit 106 is transmitted to the interrupt hook unit 108.
  • a buffer memory 2011 see FIG. 7
  • the buffer transfer unit 202 reads the resource entity in the buffer memory 2011 pointed to by the pointer input from the buffering unit 201, inputs the resource entity into an internally incorporated function, and all or part of the function value Are transferred to the secondary storage device 103 or the communication device 104.
  • FIG. 8 is a flowchart showing the operation of the resource usage control system according to the second embodiment of the present invention.
  • the resource usage control system according to the second embodiment first performs the same operations as steps S201 to S206 in the resource usage control system according to the first embodiment in steps S801 to S806.
  • the resource entity input / output by the user process 105 is obtained.
  • the buffering unit 201 temporarily stores the resource entity in the buffer memory 2011 (step S807). Then, a pointer to the resource entity on the buffer memory 2011 is input to the buffer transfer unit 202, and a return signal that prompts the transfer to the interrupt processing unit 106 is input to the interrupt hook unit 108, and the process proceeds to step S809.
  • step S809 the process is returned to the interrupt hook unit 108. Thereafter, the interrupt hook unit 108 calls the interrupt processing unit 106, and the interrupt processing unit 106 calls the corresponding system call processing unit 107 according to the contents of the register of the CPU 101. As a result, the input / output processing for the secondary storage device 103 or the communication device 104 is performed with the resource entity requested by the user process 105.
  • the buffer transfer unit 202 receives an input of the pointer to the resource entity, reads the resource entity pointed to by the pointer from the buffer memory 2011 and inputs it to a predetermined function provided internally, and inputs the function value to the secondary function
  • the data is transferred to the storage device 103 or the communication device 104.
  • a preferred example of a function in the buffer transfer unit 202 is a log output function.
  • the buffer transfer unit 202 has a log output function 2021.
  • the log output function 2021 receives the input of the resource entity described above, extracts the feature amount of the resource entity (for example, the number of bytes of the resource entity, the statistic for each word included in the resource entity, etc.), and the feature Output the quantity as a function value.
  • the buffer transfer unit 202 has a backup function 2022.
  • the backup function 2022 may operate as an identity function that outputs the input resource entity as it is, but further includes an encryption function 2023 as shown in FIG. 14, and encrypts the above-described resource entity with a predetermined key. By outputting the converted data as a function value, a safer backup may be performed against threats such as information leakage.
  • An automatic file sharing system by transferring backup data to a predetermined file sharing server using the buffer transfer unit 202 having such a backup function as an identity function, and further sharing the server with a plurality of users Application other than security is also possible.
  • the resource usage control system forces a predetermined resource entity accumulation process such as backup or log recording to a resource entity input / output by an arbitrary user process 105. can do.
  • the register analysis unit 109 detects the issuance of a system call accompanying the input / output processing of the user process 105
  • the resource entity acquisition unit 110 acquires the resource entity indicated by the system call argument from the main storage device 102
  • the buffer While the ring unit 201 temporarily stores the resource entity
  • the buffer transfer unit 202 transfers the data obtained by copying the resource entity or performing a predetermined conversion to a predetermined device (secondary storage device 103, communication device 104, or the like). It is to do.
  • the computer 200 may be a computer 200A having a virtualization unit 112 and a virtual machine 113 as shown in FIG.
  • the interrupt hook unit 108 is a part of the configuration of the virtualization unit 112, and the virtual machine 113 includes a user process 105, an interrupt processing unit 106, and a system call processing unit 107.
  • the predetermined resource entity accumulation process described above can be performed on the resource entities input and output by the user process 105 operating on an arbitrary OS.
  • the present invention can be realized by hardware, software, or a combination thereof.
  • the functions of the resource usage control system shown in FIGS. 1, 5, 6, and 9 and the program for realizing the flows shown in FIGS. 2 and 8 are a flexible disk such as an FD (floppy disk), a CD-ROM, It is stored in a computer-readable information recording medium such as a DVD or a flash memory, or provided through a network such as the Internet. Then, the resource use control system is realized by reading and executing these programs on a hard disk or the like serving as a storage unit of the computer.
  • the present invention is suitable for security processing in a computer, and can be used for an anti-virus program for preventing virus operations.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

A resource usage control system is equipped with an interruption hook means which makes software interruption be detected and processed ahead of an interruption processing means, a register analysis means for obtaining a pointer related to a system call number, a resource entity obtaining means for obtaining a resource entity which needs alteration from a main storage device based on the obtained pointer, and a resource entity altering means into which the resource entity is input and which has a file altering means, a communication data altering means, and functions and rewrites the resource entity using function values of the functions whether the resource entity is a file or communication data. When the resource entity has been written by the resource entity altering means, the interruption hook means restores processing to the interruption processing means. Alternatively, in place of the resource entity altering means, a buffering means for temporarily storing the resource entity in a buffer memory and a buffer transfer means which inputs the resource entity stored in the buffer memory into a predetermined function and transfers the obtained function value to a secondary storage device or a communication device.

Description

リソース利用制御システム、リソース利用制御方法及びリソース利用制御用プログラムResource usage control system, resource usage control method, and resource usage control program
 本発明はリソース実体の変更やバッファリング等を伴うセキュリティ処理を実行できる、リソース利用制御システム、リソース利用制御方法及びリソース利用制御用プログラムに関する。 The present invention relates to a resource usage control system, a resource usage control method, and a resource usage control program capable of executing security processing involving resource entity change, buffering, and the like.
 一般に、OS (Operating System)カーネルのシステムコール引数は、レジスタ内にリソース実体へのポインタが格納され、OSカーネル内のシステムコール関数に入力される。リソース実体は例えばファイルや通信データであり、ポインタは例えばファイルディスクリプタや、ソケット構造体へのポインタである。その後、当該システムコール関数は、このポインタが指し示す主記憶アドレスに格納されているリソース実体に対して、ディスク書込みやネットワーク送信等の所定の処理を行う。 Generally, a pointer to a resource entity is stored in a register of an OS コ ー ル (Operating System) kernel system call argument, and is input to a system call function in the OS kernel. The resource entity is, for example, a file or communication data, and the pointer is, for example, a file descriptor or a pointer to a socket structure. Thereafter, the system call function performs predetermined processing such as disk writing or network transmission on the resource entity stored at the main storage address indicated by the pointer.
 近年、これらのリソースに対して、暗号化・バックアップ・ログ記録等のセキュリティ処理を、アプリケーションを問わず、強制的に実行することが求められている。 In recent years, security processing such as encryption, backup, and log recording has been required for these resources, regardless of the application.
その際に、システムコールのバグを突く攻撃を防ぐために、引数変更手段を備えた以下のようなアクセス制御システムがある。 At that time, in order to prevent an attack that exploits a bug in the system call, there are the following access control systems equipped with argument changing means.
すなわち、特許文献1には、引数が関数のセキュリティーホール又は異常動作をする範囲内のときは、該範囲に該当しない値に当該引数を変更して渡すことにより、ソフトウェアの欠陥を一時的に修正することの記載がある。 That is, in Patent Document 1, when an argument is within a security hole of a function or an abnormal operation range, a defect in software is temporarily corrected by changing the argument to a value that does not fall within the range and passing it. There is a description of what to do.
また本発明に関連する技術としては、データ保存方法が特許文献2に開示され、通信中継装置が特許文献3に開示されている。また、特許文献4には、アプリケーションソフトウェアプログラムからファイルアクセスを要求するシステムコールが発行されると、そのシステムコールがファイルの読み出しの場合、アプリケーションソフトウェアプログラムで取り扱い可能なファイル形式に変換することの記載がある。
特開2006-018765号公報 特開2001-027964号公報 特開2007-194744号公報 特開平09-231114号公報
As a technique related to the present invention, a data storage method is disclosed in Patent Document 2, and a communication relay device is disclosed in Patent Document 3. Patent Document 4 describes that when a system call requesting file access is issued from an application software program, when the system call reads a file, the file is converted into a file format that can be handled by the application software program. There is.
JP 2006-018765 A JP 2001-027964 A JP 2007-194744 A JP 09-231114 A
 しかしながら、上述のセキュリティ処理を実行するには、システムコール引数に関連づけられたリソース実体を変更したり、所定のバッファに蓄積したりする処理が必要となるが、特許文献1の技術では、レジスタに格納されたポインタの変更方法のみが開示されている。 However, in order to execute the above-described security processing, it is necessary to change the resource entity associated with the system call argument, or to store it in a predetermined buffer. Only the method for changing the stored pointer is disclosed.
 本発明の典型的(exemplary)な目的は上記に鑑みてなされたもので、システムコール引数が指し示すリソース実体に対して、変更・バッファ蓄積を行い、所定のセキュリティ処理を実行できるリソース利用制御システム、その方法及びプログラムを提供することにある。 An exemplary object of the present invention has been made in view of the above, a resource usage control system capable of executing a predetermined security process by performing modification / buffer accumulation on a resource entity indicated by a system call argument, To provide a method and a program thereof.
本発明に係る典型的(exemplary)なリソース利用制御システムは、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させるユーザプロセスと、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する割込みフック手段と、
 前記割込みフック手段からの指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得するレジスタ解析手段と、
 ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置と、
 前記ポインタが指し示すリソース実体を前記主記憶装置から取得するリソース実体取得手段と、
前記リソース実体取得手段が取得した前記リソース実体が入力されるファイル変更手段及び通信データ変更手段と、前記ファイル変更手段又は前記通信データ変更手段から取り出された前記ファイルの内容データ又は前記通信データの内容データが入力される所定の関数とを有し、前記関数から得られる関数値で前記主記憶装置のリソース実体を書き換えるリソース実体変更手段と、
 前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に呼び出され、割込み処理を実行する割り込み処理手段と、
 を有するコンピュータにおけるリソース利用制御システムである。
An exemplary resource utilization control system according to the present invention stores a system call number in a CPU register when issuing a system call, and generates a software interrupt,
Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs;
Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed. Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
A main storage device storing a resource entity including at least one of a file and communication data;
Resource entity acquisition means for acquiring the resource entity pointed to by the pointer from the main storage device;
File change means and communication data change means to which the resource entity acquired by the resource entity acquisition means is input, content data of the file or content of the communication data retrieved from the file change means or the communication data change means Resource entity changing means for rewriting the resource entity of the main storage device with a function value obtained from the function,
An interrupt processing means that is called when the resource entity is rewritten or the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
A resource use control system in a computer having
また、本発明に係る典型的(exemplary)なリソース利用制御システムは、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させるユーザプロセスと、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する割込みフック手段と、
 前記割込みフック手段からの指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得するレジスタ解析手段と、
 前記ポインタが指し示すリソース実体を主記憶装置から取得するリソース実体取得手段と、
 前記リソース実体をバッファメモリに一時記憶するバッファリング手段と、
 前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送するバッファ転送手段と、
 前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に呼び出され、割込み処理を実行する割り込み処理手段と、
 を有するコンピュータにおけるリソース利用制御システムである。
In addition, an exemplary resource usage control system according to the present invention stores a system call number in a CPU register when issuing a system call, and generates a software interrupt, and a user process,
Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs;
Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed. Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
Resource entity acquisition means for acquiring from the main storage device a resource entity pointed to by the pointer;
Buffering means for temporarily storing the resource entity in a buffer memory;
A buffer transfer means for inputting a resource entity stored in the buffer memory into a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
An interrupt processing unit that is called when the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
A resource use control system in a computer having
本発明に係る典型的(exemplary)なリソース利用制御方法は、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させ、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示し、
 前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得し、
 ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置から、前記ポインタが指し示すリソース実体を取得し、
 取得したリソース実体から取り出された前記ファイルの内容データ又は前記通信データの内容データを所定の関数に入力し、得られる関数値で前記主記憶装置のリソース実体を書き換え、
 前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する、
 コンピュータにおけるリソース利用制御方法である。
An exemplary resource usage control method according to the present invention stores a system call number in a CPU register when issuing a system call, generates a software interrupt,
When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing,
Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU,
Obtaining a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data;
Input the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, rewrite the resource entity of the main storage device with the obtained function value,
Executing the interrupt process when the resource entity is rewritten or when the system call number is not the system call number of the resource entity requiring change processing;
This is a resource usage control method in a computer.
また、本発明に係る典型的(exemplary)なリソース利用制御方法は、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させ、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示し、
 前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得し、
 前記ポインタが指し示すリソース実体を主記憶装置から取得し、
 前記リソース実体をバッファメモリに一時記憶し、
 前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送し、
 前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する、
 コンピュータにおけるリソース利用制御方法である。
In addition, an exemplary resource usage control method according to the present invention stores a system call number in a CPU register when issuing a system call, generates a software interrupt,
When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing,
Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU,
The resource entity pointed to by the pointer is acquired from the main storage device,
Temporarily storing the resource entity in a buffer memory;
The resource entity stored in the buffer memory is input to a predetermined function, and the obtained function value is transferred to a secondary storage device or a communication device,
Executing the interrupt process when the resource entity is input to the function or when the system call number is not a system call number of a resource entity requiring change processing;
This is a resource usage control method in a computer.
本発明に係る典型的(exemplary)な情報記録媒体は、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させる処理と、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する処理と、
 前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得する処理と、
 ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置から、前記ポインタが指し示すリソース実体を取得する処理と、
 取得したリソース実体から取り出された前記ファイルの内容データ又は前記通信データの内容データを所定の関数に入力し、得られる関数値で前記主記憶装置のリソース実体を書き換える処理と、
 前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する処理と、
をコンピュータに実行させるリソース利用制御プログラムを記録した、コンピュータ読み取り可能な情報記録媒体である。
An exemplary information recording medium according to the present invention stores a system call number in a CPU register when issuing a system call, and generates a software interrupt.
When the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU;
Processing for acquiring a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data;
A process of inputting the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, and rewriting the resource entity of the main storage device with the obtained function value;
When the resource entity is rewritten or when the system call number is not a system call number of a resource entity that requires a change process, a process for executing the interrupt process;
Is a computer-readable information recording medium on which is recorded a resource use control program that causes a computer to execute.
また、本発明に係る典型的(exemplary)な情報記録媒体は、システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させる処理と、
 前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する処理と、
 前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得する処理と、
 前記ポインタが指し示すリソース実体を主記憶装置から取得する処理と、
 前記リソース実体をバッファメモリに一時記憶する処理と、
 前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送する処理と、
前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する処理と、
 をコンピュータに実行させるリソース利用制御プログラムを記録した、コンピュータ読み取り可能な情報記録媒体である。
Further, an exemplary information recording medium according to the present invention stores a system call number in a CPU register when issuing a system call, and generates a software interrupt.
When the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU;
Processing for acquiring the resource entity pointed to by the pointer from the main storage device;
A process of temporarily storing the resource entity in a buffer memory;
A process of inputting a resource entity stored in the buffer memory to a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
When the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires a change process, a process of executing the interrupt process;
Is a computer-readable information recording medium on which is recorded a resource use control program that causes a computer to execute.
 本発明によれば、割込みフック手段がソフトウェア割込みを優先的に検知し、ソフトウェア割込みに係る処理を優先して行うようにし、レジスタ解析手段がシステムコール番号に係るポインタを取得し、取得されたポインタを基に、リソース実体取得手段が主記憶装置から変更が必要なリソース実体を取得し、そのリソース実体をリソース実体変更手段が書き換えることにより、システムコール引数が指し示すリソース実体に対して、変更・バッファ蓄積を行い、所定のセキュリティ処理を実行できるリソース利用制御システム、その方法及びそのプログラムを提供することができる。 According to the present invention, the interrupt hook unit preferentially detects a software interrupt and performs processing related to the software interrupt preferentially, the register analyzing unit acquires the pointer related to the system call number, and the acquired pointer Based on the above, the resource entity acquisition unit acquires the resource entity that needs to be changed from the main storage device, and the resource entity change unit rewrites the resource entity to change or buffer the resource entity indicated by the system call argument. It is possible to provide a resource usage control system, a method thereof, and a program thereof that can store and execute predetermined security processing.
本発明の第1の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。It is a block diagram which shows the structure of the resource utilization control system which concerns on the 1st Embodiment of this invention. 本発明の第1の実施の形態に係るリソース利用制御システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the resource utilization control system which concerns on the 1st Embodiment of this invention. ユーザプロセスがシステムコールを呼びだす際のレジスタ内容の一例である。It is an example of register contents when a user process calls a system call. 本発明に係るリファレンステーブルの一例である。It is an example of the reference table which concerns on this invention. 仮想化部を備えたコンピュータで第1の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。It is a block diagram which shows the structure of the resource utilization control system which concerns on 1st Embodiment with the computer provided with the virtualization part. 本発明の第2の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。It is a block diagram which shows the structure of the resource utilization control system which concerns on the 2nd Embodiment of this invention. バッファリング部の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of a buffering part. 本発明の第2の実施の形態に係るリソース利用制御システムの動作を示すフローチャートである。It is a flowchart which shows operation | movement of the resource utilization control system which concerns on the 2nd Embodiment of this invention. 仮想化部を備えたコンピュータで第2の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。It is a block diagram which shows the structure of the resource utilization control system which concerns on 2nd Embodiment with the computer provided with the virtualization part. リソース実体変更部の構成の好適な一例を示すブロック図である。It is a block diagram which shows a suitable example of a structure of a resource entity change part. リソース実体変更部の構成の別の好適な一例を示すブロック図である。It is a block diagram which shows another suitable example of a structure of a resource entity change part. バッファ転送部の構成の好適な一例を示すブロック図である。It is a block diagram which shows a suitable example of a structure of a buffer transfer part. バッファ転送部の構成の別の好適な一例を示すブロック図である。It is a block diagram which shows another suitable example of a structure of a buffer transfer part. バッファ転送部の構成のさらに別の好適な一例を示すブロック図である。It is a block diagram which shows another suitable example of a structure of a buffer transfer part. リソース実体変更部の構成を示す図である。It is a figure which shows the structure of a resource entity change part.
符号の説明Explanation of symbols
 100、100A コンピュータ
 101 CPU
 102 主記憶装置
 103 二次記憶装置
 104 通信デバイス
 105 ユーザプロセス
 106 割込み処理部
 107 システムコール処理部
 108 割込みフック部
 109 レジスタ解析部
 110 リソース実体取得部
 111 リソース実体変更部
 1111 暗号化関数
 1112 鍵管理部
 1113 ウィルス除去関数
 1114 シグネチャ管理部
 1115 ファイル変更部
 1116 通信データ変更部
 112 仮想化部
 113 仮想マシン
 200、200A コンピュータ
 201 バッファリング部
 2011 バッファメモリ
 202 バッファ転送部
 2021 ログ出力関数
 2022 バックアップ関数
 2023 暗号化関数
100, 100A Computer 101 CPU
102 Main storage device 103 Secondary storage device 104 Communication device 105 User process 106 Interrupt processing unit 107 System call processing unit 108 Interrupt hook unit 109 Register analysis unit 110 Resource entity acquisition unit 111 Resource entity change unit 1111 Encryption function 1112 Key management unit 1113 Virus removal function 1114 Signature management unit 1115 File modification unit 1116 Communication data modification unit 112 Virtualization unit 113 Virtual machine 200, 200A Computer 201 Buffering unit 2011 Buffer memory 202 Buffer transfer unit 2021 Log output function 2022 Backup function 2023 Encryption function
 次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。
[第1の実施の形態]
 図1は、本発明の第1の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。図1を参照すると、本発明の第1の実施の形態に係るリソース利用制御システムは、プログラム制御により動作するコンピュータ100であって、CPU101と、主記憶装置102と、二次記憶装置103と、通信デバイス104と、ユーザプロセス105と、割り込み処理部106と、システムコール処理部107と、を備える。
Next, the best mode for carrying out the invention will be described in detail with reference to the drawings.
[First Embodiment]
FIG. 1 is a block diagram showing the configuration of the resource usage control system according to the first embodiment of the present invention. Referring to FIG. 1, a resource usage control system according to a first embodiment of the present invention is a computer 100 that operates by program control, and includes a CPU 101, a main storage device 102, a secondary storage device 103, A communication device 104, a user process 105, an interrupt processing unit 106, and a system call processing unit 107 are provided.
 ユーザプロセス105は、CPU101によって実行されるプログラムであり、二次記憶装置103や通信デバイス104に対する入出力時に、CPU101のレジスタに所定のシステムコール番号と、主記憶装置102上のリソース実体(入出力データ)へのポインタを引数として格納し、ソフトウェア割り込みを発生させる。 The user process 105 is a program executed by the CPU 101, and when inputting / outputting data to / from the secondary storage device 103 and the communication device 104, a predetermined system call number and a resource entity (input / output) on the main storage device 102 are registered in the CPU 101 register. Data) is stored as an argument and a software interrupt is generated.
 割り込み処理部106は、ソフトウェア割り込み発生時に、CPU101のレジスタを参照して、当該レジスタに格納されたシステムコール番号に対応するシステムコール処理部107を呼び出す。 When the software interrupt occurs, the interrupt processing unit 106 refers to the register of the CPU 101 and calls the system call processing unit 107 corresponding to the system call number stored in the register.
 システムコール処理部107は、CPU101のレジスタに格納されたポインタが指し示す主記憶装置102上のリソース実体を読み書きしながら、二次記憶装置103や通信デバイス104に対する入出力処理を実行する。 The system call processing unit 107 executes input / output processing for the secondary storage device 103 and the communication device 104 while reading and writing the resource entity on the main storage device 102 indicated by the pointer stored in the register of the CPU 101.
 以上は、一般的なコンピュータのオペレーティングシステム(OS)の構成であるが、第1の実施の形態に係るリソース制御システムは、さらに、割り込みフック部108と、レジスタ解析部109と、リソース実体取得部110と、リソース実体変更部111と、を備える(図1点線枠を参照)。 The above is the configuration of a general computer operating system (OS). The resource control system according to the first embodiment further includes an interrupt hook unit 108, a register analysis unit 109, and a resource entity acquisition unit. 110 and a resource entity changing unit 111 (see the dotted line frame in FIG. 1).
 割り込みフック部108は、ユーザプロセス105によるソフトウェア割り込みの発生に伴い、割り込み処理部106に優先して呼び出され、CPU101により実行されるプログラムであり、レジスタ解析部109を呼び出し、当該レジスタ解析部109又はリソース実体変更部111の処理が完了した後、割り込み処理部106を呼び出す。 The interrupt hook unit 108 is a program that is called with priority over the interrupt processing unit 106 and executed by the CPU 101 when a software interrupt is generated by the user process 105. The interrupt analysis unit 109 calls the register analysis unit 109 or After the processing of the resource entity changing unit 111 is completed, the interrupt processing unit 106 is called.
 レジスタ解析部109は、内部的に備える不揮発性メモリ上にリファレンステーブルを備える。図4は、リファレンステーブルの一例で、変更が必要なリソース実体のシステムコール番号と、変更すべきリソース実体へのポインタを格納するレジスタ名とを関連づけたものである。 The register analysis unit 109 includes a reference table on a nonvolatile memory provided internally. FIG. 4 shows an example of a reference table in which a system call number of a resource entity that needs to be changed is associated with a register name that stores a pointer to the resource entity to be changed.
 レジスタ解析部109は、ユーザプロセス105によるシステムコール発生時にCPU101のレジスタに格納したシステムコール番号と、当該リファレンステーブルの記載内容とを比較して、リソース実体変更処理が必要と判定したときに、引数として与えられたリソース実体へのポインタを、リソース実体取得部110に入力する。 When the register analysis unit 109 compares the system call number stored in the register of the CPU 101 when the system call is generated by the user process 105 with the description content of the reference table and determines that the resource entity change processing is necessary, the register analysis unit 109 Is input to the resource entity acquisition unit 110.
 リソース実体取得部110は、入力されたポインタが指し示すアドレスに格納されたリソース実体を、主記憶装置102から取得し、当該アドレスとリソース実体との組をリソース実体変更部111に入力する。 The resource entity acquisition unit 110 acquires the resource entity stored at the address indicated by the input pointer from the main storage device 102, and inputs the set of the address and the resource entity to the resource entity change unit 111.
 リソース実体変更部111は、入力されたリソース実体を、内部的に組み込まれた関数に入力し、その関数値で主記憶装置102において前述のアドレスに格納されているリソース実体の値を書き換えた後、当該書き換え処理の完了信号を割込みフック部108に入力する。 The resource entity changing unit 111 inputs the input resource entity into an internally incorporated function, and rewrites the value of the resource entity stored at the above address in the main storage device 102 with the function value. The completion signal of the rewriting process is input to the interrupt hook unit 108.
 次に、図2を参照しながら、本発明の第1の実施の形態に係るリソース利用制御システムの動作を詳細に説明する。図2は、本発明の第1の実施の形態に係るリソース利用制御システムの動作を示すフローチャートである。 Next, the operation of the resource usage control system according to the first embodiment of the present invention will be described in detail with reference to FIG. FIG. 2 is a flowchart showing the operation of the resource usage control system according to the first embodiment of the present invention.
 まず、ユーザプロセス105がファイル入出力又はネットワーク入出力を行うために、対応するシステムコールを発行する(ステップS201)。このとき、ユーザプロセス105は、発行するシステムコールごとに事前定義された番号(システムコール番号)と、入出力データを格納するためのリソース実体へのポインタや、その他のオプション(ファイルオープンモード等)を、CPU101のレジスタに格納する(図3)。その後、所定のソフトウェア割込みを発生させる。 First, the user process 105 issues a corresponding system call in order to perform file input / output or network input / output (step S201). At this time, the user process 105 determines a number (system call number) predefined for each system call to be issued, a pointer to a resource entity for storing input / output data, and other options (such as a file open mode). Is stored in the register of the CPU 101 (FIG. 3). Thereafter, a predetermined software interrupt is generated.
 このソフトウェア割込みの発生時に、CPU101は事前に登録されたプログラムである割込みフック部108を実行する(ステップS202)。割込みフック部108は、まずレジスタ解析部109にレジスタ解析処理の開始を指示する。 When the software interrupt occurs, the CPU 101 executes the interrupt hook unit 108 which is a program registered in advance (step S202). The interrupt hook unit 108 first instructs the register analysis unit 109 to start register analysis processing.
 レジスタ解析部109は、CPU101のレジスタから、ユーザプロセス105に係るシステムコールのシステムコール番号を取得する(ステップS203)。 The register analysis unit 109 acquires the system call number of the system call related to the user process 105 from the register of the CPU 101 (step S203).
 続いてレジスタ解析部109は、その内部に備えたリファレンステーブルのシステムコール番号欄(図4のSysNo欄)を走査して、当該システムコール番号の記載があるか否かを判定する(ステップS204)。 Subsequently, the register analysis unit 109 scans the system call number column (SysNo column in FIG. 4) of the reference table provided therein to determine whether or not the system call number is described (step S204). .
 ステップS204での走査で、システムコール番号の記載がない場合(NO)、レジスタ解析部109は、ただちにステップS205~S207の処理を中断して、割込みフック部108に処理を戻す。その後、割込みフック部108は、割込み処理部106を呼び出し、割込み処理部106はCPU101のレジスタの内容にしたがって、対応するシステムコール処理部107を呼び出すことで、ユーザプロセス105が依頼したリソース実体を伴って、二次記憶装置103ないし通信デバイス104に対する入出力処理を行う(ステップS208)。 If the system call number is not described in the scan in step S204 (NO), the register analysis unit 109 immediately interrupts the processing in steps S205 to S207 and returns the processing to the interrupt hook unit 108. Thereafter, the interrupt hook unit 108 calls the interrupt processing unit 106, and the interrupt processing unit 106 calls the corresponding system call processing unit 107 according to the contents of the register of the CPU 101, so that the resource entity requested by the user process 105 is accompanied. Then, input / output processing for the secondary storage device 103 or the communication device 104 is performed (step S208).
 一方、ステップS204で前述のシステムコール番号の記載がリファレンステーブルにある場合(YES)、レジスタ解析部109は、当該リファレンステーブル中の前述のシステムコール番号に相当する行のレジスタ欄(図4のREG欄)を参照し、記載されたレジスタに格納されている前記リソース実体へのポインタを取得し、リソース実体取得部110に入力する(ステップS205)。 On the other hand, if the above-described system call number is described in the reference table in step S204 (YES), the register analyzing unit 109 registers the register column (REG in FIG. 4) corresponding to the above-described system call number in the reference table. Column), a pointer to the resource entity stored in the described register is acquired and input to the resource entity acquisition unit 110 (step S205).
 リソース実体取得部110は、入力された前述のポインタが指し示すアドレスに格納されたリソース実体を、主記憶装置102から取得し、当該アドレスとリソース実体との組をリソース実体変更部111に入力する(ステップS206)。 The resource entity acquisition unit 110 acquires the resource entity stored at the address indicated by the input pointer from the main storage device 102 and inputs the set of the address and the resource entity to the resource entity change unit 111 ( Step S206).
 リソース実体変更部111は、入力されたリソース実体を、内部的に組み込まれた関数に入力し、その関数値で主記憶装置102の前述のアドレスに格納されているリソース実体を書き換える(ステップS207)。 The resource entity changing unit 111 inputs the input resource entity into an internally incorporated function, and rewrites the resource entity stored at the aforementioned address of the main storage device 102 with the function value (step S207). .
 リソース実体変更部111が備える関数の好適な一例として、暗号化関数が挙げられる。これは、図10のように、リソース実体変更部111内部に、暗号化関数1111を設けることで実現される。暗号化関数1111は、所定の暗号鍵による暗号化を実施するよう構成することができるが、図10に示すように、不揮発性メモリで構成された鍵管理部1112に所定の暗号鍵を格納し、暗号化関数1111は当該暗号鍵を用いて、リソース実体を暗号化し、当該暗号化リソース実体を出力するようにすることが望ましい。 An example of a suitable function of the resource entity changing unit 111 is an encryption function. This is realized by providing an encryption function 1111 inside the resource entity changing unit 111 as shown in FIG. The encryption function 1111 can be configured to perform encryption with a predetermined encryption key. As shown in FIG. 10, the encryption function 1111 stores a predetermined encryption key in a key management unit 1112 configured with a nonvolatile memory. The encryption function 1111 preferably encrypts the resource entity using the encryption key and outputs the encrypted resource entity.
 さらに別の関数の一例として、ウィルス除去関数が挙げられる。これは、図11のように、リソース実体変更部111内部に、ウィルス除去関数1113を設けることで実現される。ウィルス除去関数1113は、所定のウィルスデータの特徴的なパタン(シグネチャ)を有し、リソース実体変更部111に入力されたリソース実体を走査して、当該シグネチャに合致するパタンがあったときに、当該パタンを非パタン(たとえば0の並び)に置き換えたものを、関数値として出力する。より望ましくは、図11に示すように、このシグネチャを、不揮発性メモリで構成されたシグネチャ管理部1114に格納し、ウィルス除去関数1113に参照させるようにしてもよい。 As another example of the function, there is a virus removal function. This is realized by providing a virus removal function 1113 inside the resource entity changing unit 111 as shown in FIG. The virus removal function 1113 has a characteristic pattern (signature) of predetermined virus data. When the resource entity input to the resource entity changing unit 111 is scanned and there is a pattern that matches the signature, A pattern obtained by replacing the pattern with a non-pattern (for example, a sequence of 0) is output as a function value. More preferably, as shown in FIG. 11, this signature may be stored in a signature management unit 1114 configured with a nonvolatile memory and referred to by the virus removal function 1113.
 より望ましくは、図15に示すように、リソース実体変更部111は、ファイル変更部1115及び通信データ変更部1116を備え、リソース実体がファイルのときに、ファイル変更部1115により、ファイルのメタデータ(ファイル形式を示すマジックナンバー等)以外の内容データのみを暗号化関数1111又はウィルス除去関数1113に入力して、変更することができる。 More preferably, as shown in FIG. 15, the resource entity changing unit 111 includes a file changing unit 1115 and a communication data changing unit 1116. When the resource entity is a file, the file changing unit 1115 performs file metadata ( Only content data other than the magic number indicating the file format, etc.) can be input to the encryption function 1111 or the virus removal function 1113 and changed.
 又、リソース実体がIPパケット等の通信データであれば、通信データ変更部1116が、IPペイロード等IPヘッダ以外の内容データのみを暗号化関数1111又はウィルス除去関数1113に入力して、変更することができる。 If the resource entity is communication data such as an IP packet, the communication data changing unit 1116 inputs only the content data other than the IP header such as the IP payload to the encryption function 1111 or the virus removal function 1113 to change it. Can do.
 その後、当該書き換え処理の完了信号を割込みフック部108に入力し、ステップS208へ遷移する。 Thereafter, a completion signal of the rewriting process is input to the interrupt hook unit 108, and the process proceeds to step S208.
 以上の構成、動作により、本発明の第1の実施の形態に係るリソース利用制御システムは、任意のユーザプロセス105が入出力するリソース実体に対して、暗号化やウィルス除去等といった所定のリソース実体変更処理を強制することができる。 With the above configuration and operation, the resource usage control system according to the first exemplary embodiment of the present invention performs predetermined resource entities such as encryption and virus removal for resource entities input and output by an arbitrary user process 105. Change processing can be forced.
 その理由は、レジスタ解析部109により、ユーザプロセス105の入出力処理に伴うシステムコール発行を検知し、リソース実体取得部110が当該システムコール引数の指し示すリソース実体を主記憶装置102から取得し、リソース実体変更部111が当該リソース実体を不正アクセス防止のための所定の関数(暗号化関数・ウィルス除去関数等)に入力した関数値に変更するためである。 The reason is that the register analysis unit 109 detects the issuance of a system call accompanying the input / output processing of the user process 105, and the resource entity acquisition unit 110 acquires the resource entity indicated by the system call argument from the main storage device 102. This is because the entity changing unit 111 changes the resource entity to a function value input to a predetermined function (encryption function, virus removal function, etc.) for preventing unauthorized access.
 又、バス上のI/Oデータの暗号化等で用いられるハードウェア割込みを検知させる方法に比べて、ステップS202で割込みフック部108がソフトウェア割込みを検知する方法によれば、ファイルや通信パケット等のリソース実体の内部構造(たとえばメールデータに対するボディ部等)にリソース実体変更部111がアクセス可能となり、より細かい粒度のリソース実体変更が実現される。 Further, compared to a method of detecting a hardware interrupt used for encryption of I / O data on the bus, etc., according to the method in which the interrupt hook unit 108 detects a software interrupt in step S202, a file, a communication packet, etc. The resource entity changing unit 111 can access the internal structure of the resource entity (for example, the body part for the mail data), thereby realizing a finer granularity of resource entity change.
 このとき、リソース実体変更部111の構成(図15参照)及び方法(ステップS206及びS207)によれば、ファイル入出力システムコールの引数が示すリソース実体(すなわちファイル)だけでなく、通信用システムコールの引数が示すリソース実体(すなわちIPパケット等の通信データ)の変更が可能となる。 At this time, according to the configuration (see FIG. 15) and method (steps S206 and S207) of the resource entity changing unit 111, not only the resource entity (that is, the file) indicated by the argument of the file input / output system call but also the communication system call It is possible to change a resource entity (that is, communication data such as an IP packet) indicated by the argument.
不正アクセスは、USBメモリ等の二次記憶装置に格納されるリソース実体内にウィルスプログラムを混入させる方法に加え、通信デバイスで入出力されるIPパケット等のリソース実体内にウィルスプログラムを混入させる方法もあり、ウィルス除去や暗号化等のリソース実体変換処理は、ファイル・通信データ双方に等しく実施されることが好ましい。本実施形態では、ウィルス除去や暗号化等のリソース実体変換処理が、ファイル、通信データ双方に等しく実施することができる。 In the unauthorized access, in addition to a method of mixing a virus program in a resource entity stored in a secondary storage device such as a USB memory, a method of mixing a virus program in a resource entity such as an IP packet input / output by a communication device Therefore, it is preferable that the resource entity conversion processing such as virus removal and encryption is performed equally for both file and communication data. In the present embodiment, resource entity conversion processing such as virus removal and encryption can be performed equally for both files and communication data.
 さらに、図5に示すように、コンピュータ100は、仮想化部112及び仮想マシン113を有するコンピュータ100Aであってもよい。コンピュータ100Aにおいて、割込みフック部108は、仮想化部112の構成の一部であり、仮想マシン113は、ユーザプロセス105、割り込み処理部106及びシステムコール処理部107を備えている。このような構成とすることで、任意のOS上で動作するユーザプロセス105が入出力するリソース実体を変更可能となる。
[第2の実施の形態]
 図6は、本発明の第2の実施の形態に係るリソース利用制御システムの構成を示すブロック図である。
Further, as illustrated in FIG. 5, the computer 100 may be a computer 100 </ b> A having a virtualization unit 112 and a virtual machine 113. In the computer 100A, the interrupt hook unit 108 is a part of the configuration of the virtualization unit 112, and the virtual machine 113 includes a user process 105, an interrupt processing unit 106, and a system call processing unit 107. By adopting such a configuration, it is possible to change the resource entity input / output by the user process 105 operating on an arbitrary OS.
[Second Embodiment]
FIG. 6 is a block diagram showing the configuration of the resource usage control system according to the second embodiment of the present invention.
 図6を参照すると、本発明の第2の実施の形態に係るリソース利用制御システムは、第1の実施の形態に係るリソース利用制御システムにおけるリソース実体変更部111に代えて、バッファリング部201と、バッファ転送部202とを備える。その他の構成及び動作は、第1の実施の形態に係るリソース利用制御システムと同じであり、符号も同一のものを付している。 Referring to FIG. 6, the resource usage control system according to the second exemplary embodiment of the present invention includes a buffering unit 201 instead of the resource entity changing unit 111 in the resource usage control system according to the first exemplary embodiment. A buffer transfer unit 202. Other configurations and operations are the same as those of the resource use control system according to the first embodiment, and the same reference numerals are given.
 バッファリング部201は、内部的にバッファメモリ2011を有し(図7参照)、リソース実体取得部110からリソース実体の入力を受けて、当該リソース実体をバッファメモリ2011に格納し、当該格納アドレス(ポインタ)をバッファ転送部202へ入力すると共に、割込みフック部108へ、割込み処理部106への移行を促す復帰信号を伝達する。 The buffering unit 201 internally has a buffer memory 2011 (see FIG. 7), receives an input of a resource entity from the resource entity acquisition unit 110, stores the resource entity in the buffer memory 2011, and stores the storage address ( (Pointer) is input to the buffer transfer unit 202, and a return signal for urging the transfer to the interrupt processing unit 106 is transmitted to the interrupt hook unit 108.
 バッファ転送部202は、バッファリング部201から入力されたポインタが指し示すバッファメモリ2011内のリソース実体を読み取り、当該リソース実体を内部的に組み込まれた関数に入力し、その関数値の全て又は一部を、二次記憶装置103又は通信デバイス104に転送する。 The buffer transfer unit 202 reads the resource entity in the buffer memory 2011 pointed to by the pointer input from the buffering unit 201, inputs the resource entity into an internally incorporated function, and all or part of the function value Are transferred to the secondary storage device 103 or the communication device 104.
 図8は、本発明の第2の実施の形態に係るリソース利用制御システムの動作を示すフローチャートである。 FIG. 8 is a flowchart showing the operation of the resource usage control system according to the second embodiment of the present invention.
 第2の実施の形態に係るリソース利用制御システムは、まず、ステップS801~S806において、第1の実施の形態に係るリソース利用制御システムにおけるステップS201~S206と同じ動作を行い、バッファリング部201は、ユーザプロセス105が入出力するリソース実体を得る。 The resource usage control system according to the second embodiment first performs the same operations as steps S201 to S206 in the resource usage control system according to the first embodiment in steps S801 to S806. The resource entity input / output by the user process 105 is obtained.
 このとき、バッファリング部201は、リソース実体をバッファメモリ2011に一時記憶する(ステップS807)。そして、バッファメモリ2011上のリソース実体へのポインタをバッファ転送部202に入力すると共に、割込み処理部106への移行を促す復帰信号を割込みフック部108に入力して、ステップS809へ移行する。 At this time, the buffering unit 201 temporarily stores the resource entity in the buffer memory 2011 (step S807). Then, a pointer to the resource entity on the buffer memory 2011 is input to the buffer transfer unit 202, and a return signal that prompts the transfer to the interrupt processing unit 106 is input to the interrupt hook unit 108, and the process proceeds to step S809.
 ステップS809では、割込みフック部108に処理を戻し、その後、割込みフック部108は、割込み処理部106を呼び出し、割込み処理部106はCPU101のレジスタの内容にしたがって、対応するシステムコール処理部107を呼び出すことで、ユーザプロセス105が依頼したリソース実体を伴って、二次記憶装置103ないし通信デバイス104に対する入出力処理を行う。 In step S809, the process is returned to the interrupt hook unit 108. Thereafter, the interrupt hook unit 108 calls the interrupt processing unit 106, and the interrupt processing unit 106 calls the corresponding system call processing unit 107 according to the contents of the register of the CPU 101. As a result, the input / output processing for the secondary storage device 103 or the communication device 104 is performed with the resource entity requested by the user process 105.
 バッファ転送部202は、このリソース実体へのポインタの入力を受けて、当該ポインタの指し示すリソース実体をバッファメモリ2011から読み出しながら、内部的に備える所定の関数に入力し、その関数値を、二次記憶装置103又は通信デバイス104に転送する。 The buffer transfer unit 202 receives an input of the pointer to the resource entity, reads the resource entity pointed to by the pointer from the buffer memory 2011 and inputs it to a predetermined function provided internally, and inputs the function value to the secondary function The data is transferred to the storage device 103 or the communication device 104.
 バッファ転送部202における関数の好適な一例として、ログ出力関数がある。この場合、図12に示すように、バッファ転送部202は、ログ出力関数2021を有する。ログ出力関数2021は、前述のリソース実体の入力を受けて、当該リソース実体の特徴量(たとえば、リソース実体のバイト数や、リソース実体に含まれる単語別の統計量等)を抽出し、当該特徴量を関数値として出力する。 A preferred example of a function in the buffer transfer unit 202 is a log output function. In this case, as shown in FIG. 12, the buffer transfer unit 202 has a log output function 2021. The log output function 2021 receives the input of the resource entity described above, extracts the feature amount of the resource entity (for example, the number of bytes of the resource entity, the statistic for each word included in the resource entity, etc.), and the feature Output the quantity as a function value.
 さらに別の好適な一例として、バックアップ関数が挙げられる。この場合、図13に示すように、バッファ転送部202は、バックアップ関数2022を有する。バックアップ関数2022は、入力されたリソース実体をそのまま出力する恒等関数として動作してもよいが、さらに図14に示すように暗号化関数2023を備えて、前述のリソース実体を所定の鍵で暗号化したデータを関数値として出力させることで、情報漏えい等の脅威に対してより安全なバックアップを実施するようにしてもよい。 Yet another suitable example is a backup function. In this case, as shown in FIG. 13, the buffer transfer unit 202 has a backup function 2022. The backup function 2022 may operate as an identity function that outputs the input resource entity as it is, but further includes an encryption function 2023 as shown in FIG. 14, and encrypts the above-described resource entity with a predetermined key. By outputting the converted data as a function value, a safer backup may be performed against threats such as information leakage.
 このような恒等関数としてのバックアップ関数を有するバッファ転送部202を用いて、所定のファイル共有サーバにバックアップデータを転送し、さらに当該サーバを複数ユーザで共有することで、自動的なファイル共有システムを構成する等、セキュリティ以外の応用も可能である。 An automatic file sharing system by transferring backup data to a predetermined file sharing server using the buffer transfer unit 202 having such a backup function as an identity function, and further sharing the server with a plurality of users Application other than security is also possible.
 以上の構成、動作により、第2の実施の形態に係るリソース利用制御システムは、任意のユーザプロセス105が入出力するリソース実体に対して、バックアップやログ記録等といった所定のリソース実体蓄積処理を強制することができる。 With the configuration and operation described above, the resource usage control system according to the second embodiment forces a predetermined resource entity accumulation process such as backup or log recording to a resource entity input / output by an arbitrary user process 105. can do.
 その理由は、レジスタ解析部109により、ユーザプロセス105の入出力処理に伴うシステムコール発行を検知し、リソース実体取得部110が当該システムコール引数の指し示すリソース実体を主記憶装置102から取得し、バッファリング部201が当該リソース実体を一時記憶しながら、バッファ転送部202が当該リソース実体のコピー又は所定の変換を加えたデータを、所定のデバイス(二次記憶装置103や通信デバイス104等)へ転送するためである。 The reason is that the register analysis unit 109 detects the issuance of a system call accompanying the input / output processing of the user process 105, the resource entity acquisition unit 110 acquires the resource entity indicated by the system call argument from the main storage device 102, and the buffer While the ring unit 201 temporarily stores the resource entity, the buffer transfer unit 202 transfers the data obtained by copying the resource entity or performing a predetermined conversion to a predetermined device (secondary storage device 103, communication device 104, or the like). It is to do.
 又、コンピュータ200は、図9に示すように、仮想化部112及び仮想マシン113を有するコンピュータ200Aであってもよい。 Also, the computer 200 may be a computer 200A having a virtualization unit 112 and a virtual machine 113 as shown in FIG.
 コンピュータ200Aにおいて、割込みフック部108は、仮想化部112の構成の一部であり、仮想マシン113は、ユーザプロセス105、割り込み処理部106及びシステムコール処理部107を備えている。このような構成とすることで、任意のOS上で動作するユーザプロセス105が入出力するリソース実体に対して、前述した所定のリソース実体蓄積処理を行うことができる。 In the computer 200A, the interrupt hook unit 108 is a part of the configuration of the virtualization unit 112, and the virtual machine 113 includes a user process 105, an interrupt processing unit 106, and a system call processing unit 107. With such a configuration, the predetermined resource entity accumulation process described above can be performed on the resource entities input and output by the user process 105 operating on an arbitrary OS.
 なお、本発明は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。図1、図5、図6、図9に示したリソース利用制御システムの機能及び図2及び図8に示したフローを実現するプログラムは、FD(フロッピィディスク)等のフレキシブルディスク、CD-ROM、DVD、フラッシュメモリ等のコンピュータ読み取り可能な情報記録媒体に記憶されたり、インターネット等のネットワークを通して提供される。そして、それらのプログラムがコンピュータの記憶部となるハードディスク等に読み込まれて実行されることによってリソース利用制御システムが実現される。 Note that the present invention can be realized by hardware, software, or a combination thereof. The functions of the resource usage control system shown in FIGS. 1, 5, 6, and 9 and the program for realizing the flows shown in FIGS. 2 and 8 are a flexible disk such as an FD (floppy disk), a CD-ROM, It is stored in a computer-readable information recording medium such as a DVD or a flash memory, or provided through a network such as the Internet. Then, the resource use control system is realized by reading and executing these programs on a hard disk or the like serving as a storage unit of the computer.
以上、本発明の代表的な実施形態について説明したが、本発明は、本願の請求の範囲によって規定される、その精神または主要な特徴から逸脱することなく、他の種々の形で実施することができる。そのため、前述した各実施形態は単なる例示にすぎず、限定的に解釈されるべきではない。本発明の範囲は特許請求の範囲によって示すものであって、明細書や要約書の記載には拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更はすべて本発明の範囲内のものである。 While typical embodiments of the present invention have been described above, the present invention can be carried out in various other forms without departing from the spirit or main features defined by the claims of the present application. Can do. Therefore, each embodiment mentioned above is only an illustration, and should not be interpreted limitedly. The scope of the present invention is indicated by the claims, and is not restricted by the description or the abstract. Further, all modifications and changes belonging to the equivalent scope of the claims are within the scope of the present invention.
本願は、2008年2月22日に出願された特願2008-041326号に基づき、優先権の利益を主張するものである。そして、特願2008-041326号の内容は本願の明細書の内容に含まれる。 This application claims the benefit of priority based on Japanese Patent Application No. 2008-041326 filed on Feb. 22, 2008. The contents of Japanese Patent Application No. 2008-041326 are included in the contents of the specification of the present application.
 本発明は、コンピュータにおけるセキュリティ処理に適しており、ウィルスの動作を防
止するアンチウィルスプログラムに利用できる。
 
The present invention is suitable for security processing in a computer, and can be used for an anti-virus program for preventing virus operations.

Claims (28)

  1. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させるユーザプロセスと、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する割込みフック手段と、
     前記割込みフック手段からの指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得するレジスタ解析手段と、
     ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置と、
     前記ポインタが指し示すリソース実体を前記主記憶装置から取得するリソース実体取得手段と、
    前記リソース実体取得手段が取得した前記リソース実体が入力されるファイル変更手段及び通信データ変更手段と、前記ファイル変更手段又は前記通信データ変更手段から取り出された前記ファイルの内容データ又は前記通信データの内容データが入力される所定の関数とを有し、前記関数から得られる関数値で前記主記憶装置のリソース実体を書き換えるリソース実体変更手段と、
     前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に呼び出され、割込み処理を実行する割り込み処理手段と、
     を有するコンピュータにおけるリソース利用制御システム。
    A user process that stores a system call number in a CPU register when a system call is issued and generates a software interrupt;
    Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs;
    Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed. Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
    A main storage device storing a resource entity including at least one of a file and communication data;
    Resource entity acquisition means for acquiring the resource entity pointed to by the pointer from the main storage device;
    File change means and communication data change means to which the resource entity acquired by the resource entity acquisition means is input, content data of the file or content of the communication data retrieved from the file change means or the communication data change means Resource entity changing means for rewriting the resource entity of the main storage device with a function value obtained from the function,
    An interrupt processing means that is called when the resource entity is rewritten or the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
    A resource use control system in a computer having
  2.  前記レジスタ解析手段は、変更処理を必要とするリソース実体のシステムコール番号と、変更すべきリソース実体へのポインタを格納するレジスタ名とを関連づけた前記リファレンステーブルを有し、
    前記レジスタ名に相当するレジスタに格納されているリソース実体へのポインタを、前記CPUから取得することを特徴とする請求項1に記載のリソース利用制御システム。
    The register analysis means includes the reference table that associates a system call number of a resource entity that requires change processing and a register name that stores a pointer to the resource entity to be changed,
    The resource usage control system according to claim 1, wherein a pointer to a resource entity stored in a register corresponding to the register name is acquired from the CPU.
  3.  前記関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数であることを特徴とする請求項1又は2に記載のリソース利用制御システム。 3. The resource usage control system according to claim 1, wherein the function is an encryption function that receives data input from the resource entity and outputs data encrypted with a predetermined key.
  4.  前記関数は、前記リソース実体の入力を受けて、所定のシグネチャに合致する部分を削除したリソース実体を出力するウィルス除去関数であることを特徴とする請求項1又は2に記載のリソース利用制御システム。 3. The resource use control system according to claim 1, wherein the function is a virus removal function that receives the input of the resource entity and outputs a resource entity in which a portion matching a predetermined signature is deleted. .
  5. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させるユーザプロセスと、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する割込みフック手段と、
     前記割込みフック手段からの指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得するレジスタ解析手段と、
     前記ポインタが指し示すリソース実体を主記憶装置から取得するリソース実体取得手段と、
     前記リソース実体をバッファメモリに一時記憶するバッファリング手段と、
     前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送するバッファ転送手段と、
     前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に呼び出され、割込み処理を実行する割り込み処理手段と、
     を有するコンピュータにおけるリソース利用制御システム。
    A user process that stores a system call number in a CPU register when a system call is issued and generates a software interrupt;
    Interrupt hook means for instructing the register analysis process of the register in preference to the interrupt process when the software interrupt occurs;
    Based on an instruction from the interrupt hook means, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that needs to be changed. Register analysis means for obtaining a pointer to the resource entity corresponding to the system call number if the system call number is required from the CPU;
    Resource entity acquisition means for acquiring from the main storage device a resource entity pointed to by the pointer;
    Buffering means for temporarily storing the resource entity in a buffer memory;
    A buffer transfer means for inputting a resource entity stored in the buffer memory into a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
    An interrupt processing unit that is called when the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires change processing, and executes interrupt processing;
    A resource use control system in a computer having
  6.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体の特徴量を出力する、ログ出力関数であることを特徴とする請求項5に記載のリソース利用制御システム。 6. The resource usage control system according to claim 5, wherein the function is a log output function that receives the input of the resource entity and outputs a feature quantity of the resource entity.
  7.  前記特徴量は、リソース実体のバイト数又はリソース実体に含まれる単語別の統計量であることを特徴とする請求項6に記載のリソース利用制御システム。 The resource usage control system according to claim 6, wherein the feature amount is a number of bytes of the resource entity or a statistic for each word included in the resource entity.
  8.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体に対するバックアップデータを出力する、バックアップ関数であることを特徴とする請求項5に記載のリソース利用制御システム。 6. The resource usage control system according to claim 5, wherein the function is a backup function that receives an input of the resource entity and outputs backup data for the resource entity.
  9.  前記バックアップ関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数を更に備えることを特徴とする請求項8に記載のリソース利用制御システム。 The resource use control system according to claim 8, wherein the backup function further includes an encryption function that receives the input of the resource entity and outputs data encrypted with a predetermined key.
  10.  前記ユーザプロセスと、前記割込み処理手段とを有する仮想マシンと、該仮想マシンの動作をエミュレートする仮想化手段とを備えるコンピュータにおいて、
     前記仮想化手段は前記割込みフック手段を有することを特徴とする請求項1乃至9のいずれか1項に記載のリソース利用制御システム。
    In a computer comprising a virtual machine having the user process and the interrupt processing means, and a virtualization means for emulating the operation of the virtual machine,
    10. The resource usage control system according to claim 1, wherein the virtualization unit includes the interrupt hook unit.
  11. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させ、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示し、
     前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得し、
     ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置から、前記ポインタが指し示すリソース実体を取得し、
     取得したリソース実体から取り出された前記ファイルの内容データ又は前記通信データの内容データを所定の関数に入力し、得られる関数値で前記主記憶装置のリソース実体を書き換え、
     前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する、
     コンピュータにおけるリソース利用制御方法。
    When a system call is issued, the system call number is stored in the CPU register and a software interrupt is generated.
    When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing,
    Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU,
    Obtaining a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data;
    Input the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, rewrite the resource entity of the main storage device with the obtained function value,
    Executing the interrupt process when the resource entity is rewritten or when the system call number is not the system call number of the resource entity requiring change processing;
    A resource usage control method in a computer.
  12.  変更処理が必要なリソース実体のシステムコール番号と、変更すべきリソース実体へのポインタを格納するレジスタ名とを関連づけたリファレンステーブルを参照し、該レジスタ名に相当するレジスタに格納されているリソース実体へのポインタを、前記CPUから取得することを特徴とする請求項11に記載のリソース利用制御方法。 The resource entity stored in the register corresponding to the register name is referenced by referring to the reference table in which the system call number of the resource entity that needs to be changed is associated with the register name that stores the pointer to the resource entity to be changed. The resource usage control method according to claim 11, wherein a pointer to is acquired from the CPU.
  13.  前記関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数であることを特徴とする請求項11又は12に記載のリソース利用制御方法。 13. The resource usage control method according to claim 11 or 12, wherein the function is an encryption function that receives the input of the resource entity and outputs data encrypted with a predetermined key.
  14.  前記関数は、前記リソース実体の入力を受けて、所定のシグネチャに合致する部分を削除したリソース実体を出力するウィルス除去関数であることを特徴とする請求項11又は12に記載のリソース利用制御方法。 13. The resource use control method according to claim 11 or 12, wherein the function is a virus removal function that receives an input of the resource entity and outputs a resource entity from which a portion matching a predetermined signature is deleted. .
  15. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させ、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示し、
     前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得し、
     前記ポインタが指し示すリソース実体を主記憶装置から取得し、
     前記リソース実体をバッファメモリに一時記憶し、
     前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送し、
     前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する、
     コンピュータにおけるリソース利用制御方法。
    When a system call is issued, the system call number is stored in the CPU register and a software interrupt is generated.
    When the software interrupt occurs, instruct the register analysis processing of the register in preference to the interrupt processing,
    Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a pointer to the resource entity corresponding to the system call number is obtained from the CPU,
    The resource entity pointed to by the pointer is acquired from the main storage device,
    Temporarily storing the resource entity in a buffer memory;
    The resource entity stored in the buffer memory is input to a predetermined function, and the obtained function value is transferred to a secondary storage device or a communication device,
    Executing the interrupt process when the resource entity is input to the function or when the system call number is not a system call number of a resource entity requiring change processing;
    A resource usage control method in a computer.
  16.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体の特徴量を出力する、ログ出力関数であることを特徴とする請求項15に記載のリソース利用制御方法。 The resource use control method according to claim 15, wherein the function is a log output function that receives an input of the resource entity and outputs a feature amount of the resource entity.
  17.  前記特徴量は、リソース実体のバイト数又はリソース実体に含まれる単語別の統計量であることを特徴とする請求項16に記載のリソース利用制御方法。 The resource usage control method according to claim 16, wherein the feature amount is a number of bytes of the resource entity or a statistic for each word included in the resource entity.
  18.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体に対するバックアップデータを出力する、バックアップ関数であることを特徴とする請求項15に記載のリソース利用制御方法。 16. The resource usage control method according to claim 15, wherein the function is a backup function that receives an input of the resource entity and outputs backup data for the resource entity.
  19.  前記バックアップ関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数を更に備えることを特徴とする請求項18に記載のリソース利用制御方法。 The resource use control method according to claim 18, wherein the backup function further includes an encryption function that receives the input of the resource entity and outputs data encrypted with a predetermined key.
  20. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させる処理と、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する処理と、
     前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得する処理と、
     ファイル、通信データの少なくとも一方を含むリソース実体が記憶される主記憶装置から、前記ポインタが指し示すリソース実体を取得する処理と、
     取得したリソース実体から取り出された前記ファイルの内容データ又は前記通信データの内容データを所定の関数に入力し、得られる関数値で前記主記憶装置のリソース実体を書き換える処理と、
     前記リソース実体が書き換えられた場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する処理と、
     をコンピュータに実行させるリソース利用制御プログラムを記録した、コンピュータ読み取り可能な情報記録媒体。
    When issuing a system call, the system call number is stored in the CPU register and a software interrupt is generated.
    When the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
    Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU;
    Processing for acquiring a resource entity pointed to by the pointer from a main storage device storing a resource entity including at least one of a file and communication data;
    A process of inputting the content data of the file or the content data of the communication data extracted from the acquired resource entity into a predetermined function, and rewriting the resource entity of the main storage device with the obtained function value;
    When the resource entity is rewritten or when the system call number is not a system call number of a resource entity that requires a change process, a process for executing the interrupt process;
    A computer-readable information recording medium on which is recorded a resource use control program that causes a computer to execute.
  21.  変更処理が必要なリソース実体のシステムコール番号と、変更すべきリソース実体へのポインタを格納するレジスタ名とを関連づけたリファレンステーブルを参照し、該レジスタ名に相当するレジスタに格納されているリソース実体へのポインタを、前記CPUから取得することを特徴とする請求項20に記載の情報記録媒体。 The resource entity stored in the register corresponding to the register name is referenced by referring to the reference table in which the system call number of the resource entity that needs to be changed is associated with the register name that stores the pointer to the resource entity to be changed. 21. The information recording medium according to claim 20, wherein a pointer to is acquired from the CPU.
  22.  前記関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数であることを特徴とする請求項20又は21に記載の情報記録媒体。 The information recording medium according to claim 20 or 21, wherein the function is an encryption function that receives the input of the resource entity and outputs data encrypted with a predetermined key.
  23.  前記関数は、前記リソース実体の入力を受けて、所定のシグネチャに合致する部分を削除したリソース実体を出力するウィルス除去関数であることを特徴とする請求項20又は21に記載のリソース利用制御方法。 The resource use control method according to claim 20 or 21, wherein the function is a virus removal function that receives an input of the resource entity and outputs a resource entity from which a portion matching a predetermined signature is deleted. .
  24. システムコールを発行するときにシステムコール番号をCPUのレジスタに格納し、ソフトウェア割り込みを発生させる処理と、
     前記ソフトウェア割込みが発生したときに、割込み処理に優先して前記レジスタのレジスタ解析処理を指示する処理と、
     前記指示に基づき、前記システムコール番号を前記レジスタから取得し、取得した前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号か否かを判断し、変更処理を必要とするシステムコール番号である場合は前記システムコール番号に対応するリソース実体へのポインタを前記CPUから取得する処理と、
     前記ポインタが指し示すリソース実体を主記憶装置から取得する処理と、
     前記リソース実体をバッファメモリに一時記憶する処理と、
     前記バッファメモリに格納されたリソース実体を所定の関数に入力し、得られる関数値を、二次記憶装置又は通信デバイスに転送する処理と、
    前記リソース実体が前記関数に入力される場合又は前記システムコール番号が変更処理を必要とするリソース実体のシステムコール番号でない場合に、前記割込み処理を実行する処理と、
     をコンピュータに実行させるリソース利用制御プログラムを記録した、コンピュータ読み取り可能な情報記録媒体。
    When issuing a system call, the system call number is stored in the CPU register and a software interrupt is generated.
    When the software interrupt occurs, a process for instructing a register analysis process of the register in preference to the interrupt process;
    Based on the instruction, the system call number is acquired from the register, and it is determined whether or not the acquired system call number is a system call number of a resource entity that requires change processing, and a system call that requires change processing If it is a number, a process of obtaining a pointer to the resource entity corresponding to the system call number from the CPU;
    Processing for acquiring the resource entity pointed to by the pointer from the main storage device;
    A process of temporarily storing the resource entity in a buffer memory;
    A process of inputting a resource entity stored in the buffer memory to a predetermined function and transferring the obtained function value to a secondary storage device or a communication device;
    When the resource entity is input to the function or when the system call number is not a system call number of a resource entity that requires a change process, a process of executing the interrupt process;
    A computer-readable information recording medium on which is recorded a resource use control program that causes a computer to execute.
  25.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体の特徴量を出力する、ログ出力関数であることを特徴とする請求項24に記載の情報記録媒体。 25. The information recording medium according to claim 24, wherein the function is a log output function that receives the input of the resource entity and outputs a feature quantity of the resource entity.
  26.  前記特徴量は、リソース実体のバイト数又はリソース実体に含まれる単語別の統計量であることを特徴とする請求25に記載の情報記録媒体。 26. The information recording medium according to claim 25, wherein the feature amount is a number of bytes of the resource entity or a statistic for each word included in the resource entity.
  27.  前記関数は、前記リソース実体の入力を受けて、当該リソース実体に対するバックアップデータを出力する、バックアップ関数であることを特徴とする請求項24に記載の情報記録媒体。 25. The information recording medium according to claim 24, wherein the function is a backup function that receives an input of the resource entity and outputs backup data for the resource entity.
  28.  前記バックアップ関数は、前記リソース実体の入力を受けて、所定の鍵で暗号化したデータを出力する暗号化関数を更に備えることを特徴とする請求項27に記載の情報記録媒体。
     
    28. The information recording medium according to claim 27, wherein the backup function further includes an encryption function that receives the input of the resource entity and outputs data encrypted with a predetermined key.
PCT/JP2009/052977 2008-02-22 2009-02-20 Resource usage control system, method of controlling resource usage, program for controlling resource usage WO2009104720A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-041326 2008-02-22
JP2008041326 2008-02-22

Publications (1)

Publication Number Publication Date
WO2009104720A1 true WO2009104720A1 (en) 2009-08-27

Family

ID=40985597

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/052977 WO2009104720A1 (en) 2008-02-22 2009-02-20 Resource usage control system, method of controlling resource usage, program for controlling resource usage

Country Status (1)

Country Link
WO (1) WO2009104720A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104052638A (en) * 2014-06-27 2014-09-17 北京蓝汛通信技术有限责任公司 Method and device for detecting conflict among modules and server
WO2014167430A1 (en) * 2013-04-10 2014-10-16 International Business Machines Corporation Spooling system call data to facilitate data transformation
CN104850790A (en) * 2015-04-27 2015-08-19 中国航空工业集团公司上海航空测控技术研究所 System and method for capturing exploits generated by long-time running of embedded software in real time

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11119991A (en) * 1997-10-17 1999-04-30 Nec Corp Automatic computer virus detection system using hook system
JPH11149414A (en) * 1997-09-12 1999-06-02 Hitachi Software Eng Co Ltd Method for preserving data, its system and storage medium for data preservation processing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11149414A (en) * 1997-09-12 1999-06-02 Hitachi Software Eng Co Ltd Method for preserving data, its system and storage medium for data preservation processing
JPH11119991A (en) * 1997-10-17 1999-04-30 Nec Corp Automatic computer virus detection system using hook system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Proceedings of the First ACM Conference on Communications and Computing Security", vol. 11, 1993, article MATT BLAZE: "A Cryptographic File System for Unix", pages: 9 - 16 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014167430A1 (en) * 2013-04-10 2014-10-16 International Business Machines Corporation Spooling system call data to facilitate data transformation
CN104052638A (en) * 2014-06-27 2014-09-17 北京蓝汛通信技术有限责任公司 Method and device for detecting conflict among modules and server
CN104850790A (en) * 2015-04-27 2015-08-19 中国航空工业集团公司上海航空测控技术研究所 System and method for capturing exploits generated by long-time running of embedded software in real time

Similar Documents

Publication Publication Date Title
RU2617631C2 (en) Method for detection working malicious software runned from client, on server
AU2004218703B2 (en) Security-related programming interface
US9811674B2 (en) Data leakage prevention system, method, and computer program product for preventing a predefined type of operation on predetermined data
US20150089655A1 (en) System and method for detecting malware based on virtual host
KR101516093B1 (en) Out-of-band access to storage devices through port-sharing hardware
EA006814B1 (en) System and method for use of multiple applications
JP2007148962A (en) Subprogram, information processor for executing subprogram, and program control method in information processor for executing subprogram
US20180026986A1 (en) Data loss prevention system and data loss prevention method
EP2985716B1 (en) Information processing device and identifying method
JP4725955B2 (en) Information processing apparatus, message management method, program, and storage medium
US9990493B2 (en) Data processing system security device and security method
US9118625B2 (en) Anti-malware system, method of processing data in the same, and computing device
WO2009104720A1 (en) Resource usage control system, method of controlling resource usage, program for controlling resource usage
KR100985076B1 (en) Apparatus and method for protecting data in usb devices
JP4311386B2 (en) File operation restriction system, file operation restriction program, file operation restriction method, electronic apparatus, and printing apparatus
JP5381059B2 (en) Device, log recording control method, and program
EP3139298B1 (en) Information processing system, control method, and control program
EP3276524B1 (en) Access control system and access control method
KR101772129B1 (en) A smart storage system of checking contents integrity
US20140366084A1 (en) Management system, management method, and non-transitory storage medium
CN110443051B (en) Method for preventing confidential documents from spreading on Internet
JP6911723B2 (en) Network monitoring device, network monitoring method and network monitoring program
JP2006252550A (en) File operation limiting system, file operation limiting program, file operation limiting method, electronic equipment and printer
US10452408B1 (en) System and method for intercepting data flow between a computer process and a file
JP2016009227A (en) Log acquisition device and log acquisition program

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09712662

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP