INFORMATION PROCESSING APPARATUS CAPABLE OF REDUCING DAMAGE CAUSED BY INVALID EXECUTION DATA, CONTROL METHOD THEREFOR, AND STORAGE MEDIUM
20180253269 ยท 2018-09-06
Inventors
Cpc classification
H04L61/5038
ELECTRICITY
H04N1/4433
ELECTRICITY
G06F3/1231
PHYSICS
H04N1/0088
ELECTRICITY
G06F3/1207
PHYSICS
G06F3/1218
PHYSICS
H04N1/3333
ELECTRICITY
G06F3/1238
PHYSICS
International classification
G06F3/12
PHYSICS
H04N1/333
ELECTRICITY
Abstract
An information processing apparatus which is capable of reducing damage caused by invalid execution data received via a public network. The information processing apparatus carries out either communications using the public network or communications without using the public network with an external apparatus. An IP address assigned to the information processing apparatus is stored. Execution data for executing a job is received from the external apparatus. When the IP address assigned to the information processing apparatus is a global IP address that is for use in the communications using the public network, a setting is made to restrict execution of the execution data.
Claims
1. An information processing apparatus that carries out either communications using a public network or communications without using the public network with an external apparatus, comprising: a storage unit configured to store an IP address assigned to the information processing apparatus; a receiving unit configured to receive execution data for executing a job from the external apparatus; and a setting unit configured to, when the IP address assigned to the information processing apparatus is a global IP address that is for use in the communications using the public network, make a setting to restrict execution of the execution data.
2. The information processing apparatus according to claim 1, wherein the setting unit makes a setting to permit execution of execution data received from an external apparatus to which a private IP address for use in the communications carried out without using the public network is assigned.
3. The information processing apparatus according to claim 1, wherein the setting unit makes a setting to permit execution of execution data received from an external apparatus to which an IP address indicating the same network as that indicated by the IP address assigned to the information processing apparatus is assigned.
4. The information processing apparatus according to claim 1, further comprising a notification unit configured to, when the IP address assigned to the information processing apparatus is a global IP address that is for use in the communications using the public network, provide notification that execution of the execution data is to be restricted.
5. The information processing apparatus according to claim 1, further comprising a selection unit configured to prompt a user to select whether or not to permit execution of execution data received from an external apparatus to which an IP address indicating a network different from that indicated by the IP address assigned to the information processing apparatus is assigned.
6. The information processing apparatus according to claim 1, wherein the information processing apparatus is an image forming apparatus that carries out an image forming process.
7. The information processing apparatus according to claim 6, wherein the execution data is print data for executing a print job.
8. A control method for an information processing apparatus that carries out either communications using a public network or communications without using the public network with an external apparatus, comprising: a storage step of storing an IP address assigned to the information processing apparatus; a receiving step of receiving execution data for executing a job from the external apparatus; and a setting step of, when the IP address assigned to the information processing apparatus is a global IP address that is for use in the communications using the public network, making a setting to restrict execution of the execution data.
9. A non-transitory computer-readable storage medium storing a program for causing a computer to execute a control method for an information processing apparatus that carries out either communications using a public network or communications without using the public network with an external apparatus, the control method comprising: a storage step of storing an IP address assigned to the information processing apparatus; a receiving step of receiving execution data for executing a job from the external apparatus; and a setting step of, when the IP address assigned to the information processing apparatus is a global IP address that is for use in the communications using the public network, making a setting to restrict execution of the execution data.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
DESCRIPTION OF THE EMBODIMENTS
[0015] Embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0016] First, a description will be given of an information processing apparatus according to a first embodiment of the present invention.
[0017] It should be noted that in the following description of the present embodiment, the present invention is applied to an MFP which carries out data communications via a public network, but the present invention may be applied to other apparatuses such as PCs which are capable of carrying out data communications via a public network.
[0018]
[0019] Referring to
[0020] The MFP 101 is an image forming apparatus, which carries out an image forming process, and executes jobs such as printing and scanning. The MFP 101 also carries out data communications with the PCs 102 to 104. It should be noted that an internal arrangement of the MFP 101 will be described later. The PCs 102 to 104 have a communication function and carry out data communications with the MFP 101. For example, the PCs 102 to 104 send execution data, which are for executing jobs, to the MFP 101. The execution data are, for example, print data for executing a print job. The PCs 102 to 104 also display an operating screen for viewing and editing a variety of setting information.
[0021] In the communication system 100, the MFP 101 carries out data communications with apparatuses to which the MFP 101 is connected via the LAN 106, and more specifically, the PC 102 and the PC 103 without the Internet 107 (hereafter referred to as the local network communications). The local network communications are, for example, in-house network communications permitted for only specific apparatuses and ensure a certain level of security. The MFP 101 also carries out data communications with the PC 104 via the LAN 106 via the Internet 107 (hereafter referred to as the global network communications).
[0022] In the local network communications and the global network communications, IP addresses uniquely assigned to respective apparatuses are used to identify the party at the other end of the communication. The IP addresses are categorized as private IP addresses and global IP addresses as shown in Table 1 below.
TABLE-US-00001 TABLE 1 Risk of IP address IP address unauthorized space space intrusion from (for IPv4) (for IPv6) the Internet Private IP 10.0.0.0- fc00::/7 No address 10.255.255.255 172.16.0.0- 172.31.255.255 192.168.0.0- 192.168.255.255 Global IP Other than the Other than the Yes address above above
[0023] Private IP addresses are used for the local network communications. Private IP addresses are not used for the global network communications, and hence the private IP addresses are never exposed to external apparatuses connected to the Internet 107. For this reason, when, for example, a private IP address is assigned to the MFP 101, no unauthorized access from external apparatuses is made to the MFP 101 via the Internet 107.
[0024] A global IP address includes information on a network to which an apparatus with the global IP address assigned thereto belongs. A global IP address is used for the global network communications as well as the local network communications, and hence it may be exposed to an indefinite number of external apparatuses connected via the Internet 107. In this case, when, for example, a global IP address is assigned to the MFP 101, it is feared that a malicious user will make unauthorized access to the MFP 101 by using the global IP address of the MFP 101 exposed to the public. It should be noted that the present embodiment is based on the assumption that, for example, a global IP address (111.112.113.114) is assigned to the MFP 101. The present embodiment is also based on the assumption that it is feared that a malicious user will make unauthorized access to the MFP 101. On the other hand, it is assumed that IP addresses for carrying out the local network communications with the MFP 101 are assigned to the PC 102 and the PC 103, and more specifically, a private IP address (192.168.0.0) is assigned to the PC 102, and a global IP address (111.112.113.224), which indicates the same network to which the MFP 101 belongs, is assigned to the PC 102. It is also assumed that a global IP address (115.115.116.228), which indicates a network different from the network to which the MFP 101 belongs, is assigned to the PC 104.
[0025] A description will now be given of an arrangement of the MFP 101.
[0026] Referring to
[0027] The CPU 108 carries out processes of software modules 200 in
[0028]
[0029] Referring to
[0030] The firewall module 201 determines whether or not the MFP 101 is to execute execution data received from the PCs 102 to 104. The execution data include IP addresses assigned to apparatuses which are senders. Specifically, the firewall module 201 obtains execution data, which was received by the MFP 101, from the network communication unit 115, and based on determination rules in Table 2 below, determines whether or not to output the obtained execution data to the communication function module 202.
TABLE-US-00002 TABLE 2 Rule 1 All of received data Deny Rule 2 Received from a Permit private IP address Rule 3 Received from the Permit same network
[0031] The determination rules include criteria by which to determine whether or not to output the execution data to the communication function module 202, and they are set by the global IP restriction module 203. The firewall module 201 reads the determination rules on a row-by-row basis from the first row, for example, from the row of Rule 1 in Table 2 and successively carries out processes described in the rules that have been read.
[0032] The communication function module 202 carries out a predetermined communication process based on the execution data obtained from the firewall module 201. The predetermined communication process is, for example, a process in which configuration information on the MFP 101 or the like is obtained by using a communication protocol such as SNMP (Simple Network Management Protocol) or a process in which classified information such as document data held by the MFP 101 is obtained. It should be noted that in the present embodiment, there may be a plurality of communication function modules 202 so as to perform different functions according to respective network communication port numbers.
[0033] The communication function module 202 also sends a result obtained by carrying out the predetermined communication process to the network communication unit 115. The global IP restriction module 203 sets the determination rules based on the IP address of the MFP 101.
[0034]
[0035] The rule updating process in
[0036] Referring to
[0037] Next, based on the obtained address information, the CPU 108 determines whether or not the IP address of the MFP 101 has been changed (step S302). In the step S302, when, for example, the IP address included in the obtained address information is different from the IP address at the time when the determination rules were set, the CPU 108 determines that the IP address of the MFP 101 has been changed. On the other hand, when the IP address included in the obtained address information is the same as the IP address at the time when the determination rules were set, the CPU 108 determines that the IP address of the MFP 101 has not been changed.
[0038] As a result of the determination in the step S302, when the IP address of the MFP 101 has not been changed, the CPU 108 returns to the process in the step S301. On the other hand, as a result of the determination in the step S302, when the IP address of the MFP 101 has been changed, the CPU 108 deletes the determination rules set in advance (step S303). Then, the CPU 108 determines whether or not the IP address of the MFP 101 is a global IP address (step S304). In the step S304, for example, when the IP address included in the obtained address information matches any of the private IP addresses shown in Table 1, the CPU 108 determines that the IP address of the MFP 101 is not a global IP address. On the other hand, when the IP address included in the obtained address information does not match any of the private IP addresses shown in Table 1, the CPU 108 determines that the IP address of the MFP 101 is a global IP address.
[0039] As a result of the determination in the step S304, when the IP address of the MFP 101 is not a global IP address, the CPU 108 returns to the process in the step S301. On the other hand, as a result of the determination in the step S304, when the IP address of the MFP 101 is a global IP address, the CPU 108 displays a confirmation screen 401 in
[0040] As a result of the determination in the step S306, when the cancel button 403 has been selected, the CPU 108 returns to the process in the step S301. On the other hand, as a result of the determination in the step S306, when the OK button 402 has been selected, the CPU 108 identifies a network to which the MFP 101 belongs based on the obtained address information (step S307). In the step S307, the network to which the MFP 101 belongs is identified by logical ANDing the IP address and the subnet mask included in the address information. For example, when the IP address and the subnet mask included in the address information are (111.112.113.114) and (225.225.225.0), the network to which the MFP 101 belongs is (111.112.113.0).
[0041] Then, the CPU 108 sets determination rules (step S308). As a result, in the MFP 101, execution of execution data received from external apparatuses is restricted according to the set determination rules. For example, when the MFP 101 receives execution data in a case where Rules 1 to 3 are set as shown in Table 2, the MFP 101 follows Rule 1 and determines whether or not to execute the execution data based on an IP address of a sender of the execution data without immediately executing the execution data. Execution data received from an apparatus that ensures a certain level of security in data communications such as an apparatus that applies to Rule 2, for example, the PC 102 or an apparatus that applies to Rule 3, for example, the PC 103 is very unlikely to be invalid execution data and is thus highly reliable execution data, and hence the MFP 101 executes the execution data. On the other hand, execution data received from an apparatus that apply to neither Rule 2 nor Rule 3, for example, the PC 104 is likely to be invalid execution data, and therefore, the MFP 101 does not execute the execution data. After that, the CPU 108 returns to the process in the step S301.
[0042] According to the present embodiment described above, when the IP address of the MFP 101 is a global IP address, execution of received execution data is restricted. This prevents all of received execution data from being executed and therefore reduces damage caused by invalid execution data received via the Internet 107.
[0043] Moreover, in the present embodiment described above, execution of execution data received from the PC 102 to which a private IP address is applied is permitted. Also, execution of execution data received from the PC 103 to which an IP address belonging to the same network as an IP address of the MFP 101 is permitted. Namely, execution of highly reliable execution data received from an apparatus that ensures a certain level of security in data communications is permitted. This reduces damage caused by invalid execution data received via the Internet 107 and thus avoids a situation in which highly reliable execution data is not executed and processing on the execution data is delayed.
[0044] Further, in the present embodiment described above, when the IP address of the MFP 101 is a global IP address, notification that execution of received execution data is to be restricted is provided. This reliably enables the user to know that execution of received execution data is to be restricted.
[0045] In the present embodiment described above, execution data is print data for executing a print job. This avoids a situation in which sheets are wasted by producing a large amount of prints when a large amount of invalid print data is received via the Internet 107.
[0046] It should be noted that the determination rules may be set without displaying the confirmation screen 401. For example, in the process in
[0047] A description will now be given of an information processing apparatus according to a second embodiment of the present invention.
[0048] The second embodiment of the present invention is basically the same as the first embodiment in terms of constructions and operations. The second embodiment of the present invention, however, differs from the first embodiment in that an MFP has a firewall setting module, and hence features of constructions and operations that are the same as those in the first embodiment will thus not be described, only constructions and operations different from those of the first embodiment being described below.
[0049]
[0050] Referring to
[0051] In the software modules 501, the firewall module 201 stores a result of determination as to whether or not to execute received execution data in an audit log in Table 3 and stores the audit log in the setting storage unit 114.
TABLE-US-00003 TABLE 3 ACCEPT SRC = 111.112.113.224 DST = 111.112.113.114 DROP SRC = 114.115.116.228 DST = 111.112.113.114 DROP SCR = 111.112.114.225 DST = 111.112.113.114
[0052] In the audit log, information in a row starting with ACCEPT represents an IP address of a sender of execution data, for which it has been determined that the execution data is to be executed and which has been output to the communication function module 202, as well as an IP address of the MFP 101. Information in a row starting with DROP represents an IP address of a sender of execution data, for which it has been determined that the execution data is not to be executed and which has not been output to the communication function module 202 (hereafter referred to as unexecuted data), as well as the IP address of the MFP 101.
[0053] The firewall setting module 502 obtains the audit log from the setting storage unit 114 and creates a list of senders of unexecuted data based on the obtained audit log. As a result, the CPU 108 displays, on the operating unit 113, a selection screen 601 in
TABLE-US-00004 TABLE 4 Rule 1 All of received data Deny Rule 2 Received from a Permit private IP address Rule 3 Received from the Permit same network Rule 4 Received from an Permit additional IP address
[0054] Rule 4 indicates that execution of execution data received from the IP address selected on the selection screen 601 is permitted. As a result, when execution data that applies to neither Rule 2 nor Rule 3 but is highly reliable is received, execution of the execution data is easily permitted.
Other Embodiments
[0055] Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a non-transitory computer-readable storage medium) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)), a flash memory device, a memory card, and the like.
[0056] While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
[0057] This application claims the benefit of Japanese Patent Application No. 2017-040454, filed Mar. 3, 2017 which is hereby incorporated by reference herein in its entirety.