CA2275771C

System and method for protecting a computer and a network from hostile downloadables

Abstract

A system protects a computer from suspicious Downloadables. The system comprises a security policy, an interface for receiving a Downloadable, and a comparator, coupled to the interface, for applying the security policy to the Downloadable to determine if the security policy has been violated. The Downloadable may include a Java® applet, an ActiveX® control, a JavaScript® script, or a Visual Basic® script. The security policy may include a default security policy to be applied regardless of the client to whom the Downloadable is addressed, or a specific security policy to be applied based on the client or the group to which the client belongs. The system uses an ID generator to compute a Downloadables ID identifying the Downloadable, preferably, by fetching all components of the Downloadable and performing a hashing function on the Downloadable including the fetched components. Further, the security policy may indicate several tests to perform, including (1) a comparison with known hostile and non-hostile Downloadables; (2) a comparison with Downloadables to be blocked or allowed per administrative override; (3) a comparison of the Downloadable security profile data against access control lists; (4) a comparison of a certificate embodied in the Downloadable against trusted certificates; and (5) a comparison of the URL from which the Downloadable originated against trusted and untrusted URLs. Based on these tests, a logical engine can determine whether to allow or block the Downloadable.

CA2275771C, drawing sheet 1
Sheet 1 of 12

Term

Term ended

Expired 6 November 2017, 8.9 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

60 claims: 8 independent, 52 dependent

  1. 1
    CA 02275771 2007-12-14 IN THE CLAIMS:1. A computer-readable storage medium storing program code for causing a server computer that fonctions as a gateway to a client computer to perform a method 5 comprising: receiving an incoming Downloadable (602) addressed to the client computer, wherein the Downloadable is an executable application program which is downloaded from a source computer and run on the client computer;comparing (608, 616, 624, 630, 662) Downloadable security profile data 10 pertaining to the Downloadable, the Downloadable security profile data including a list of suspicious computer operations that may be attempted by the Downloadable, against a security policy to determine if the security policy has been violated, wherein the security policy specifies at least one test for determining whether or not to allow the Downloadable to execute on the client computer;and 15 preventing execution of the Downloadable (670) on the client computer if the security policy has been violated.
  2. 4
    6. The computer-readable storage medium of claim 4, wherein the known URL is identified as being an untrusted URL.
  3. 5
    7. The computer-readable storage medium Downloadable includes a Java® applet. of claim 1, wherein the 15
  4. 6
    8. The computer-readable storage medium Downloadable includes an ActiveX® control. of claim L wherein the
  5. 7
    9. The computer-readable storage medium Downloadable includes a JavaScript® script. of claim L wherein the 20
  6. 8
    10. The computer-readable storage medium of claim L wherein the Downloadable includes a Visual Basic® script.
  7. 17
    19. The computer-readable storage medium of claim 17, wherein the method further comprises fetching from at least one storage all components identified by the Downloadable.
  8. 20
    22. The computer-readable storage medium of claim 20, wherein the appropriate 25 security policy includes a default security policy. -22CA 02275771 2007-12-14
  9. 23
    25. The computer-readable storage medium of claim 23, wherein at least one 10 known Downloadable is non-hostile.
  10. 26
    28. The computer-readable storage medium of claim 26, wherein the security policy identifies the ID of the Downloadable as being an ID of a Downloadable to be allowed per administrative override.
  11. 29
    31. A computer system (300) for execution by a server computer (110) that 10 functions as a gateway server to a client computer (115), comprising:a security policy (305);an interface for receiving an incoming Downloadable addressed to a client computer (115), wherein the Downloadable is an executable application program which is downloaded from a source computer and run on the client computer;15 a comparator (320, 330, 345, 350), coupled to the interface, for comparing Downloadable security profile data (310) pertaining to the Downloadable, the Downloadable security profile data including a list of suspicious computer operations that may be attempted by the Downloadable, against the security policy to determine if the security policy has been violated, wherein the security policy specifies at least 20 one test for determining whether or not to allow the Downloadable to execute on the client computer;and a logical engine (333) for preventing execution of the Downloadable by the client computer if the security policy has been violated. -24CA 02275771 2007-12-14
  12. 31
    33. The computer system of claim 31, wherein the Downloadable includes an 5 ActiveX® control.
  13. 42
    44. The computer system of claim 42 wherein the policy finder finds the security 20 policy based on the identity of a user and the Downloadable.
  14. 46
    48. The computer system of claim 46, wherein at least one known Downloadable is non-hostile. 10
  15. 57
    61. A computer system for execution on a server computer that functions as a gateway server to a client computer, comprising:means for receiving an incoming Downloadable addressed to a client 10 computer (115), by a server computer (110) that functions as a gateway server to the client computer, wherein the Downloadable is an executable application program which is downloaded from a source computer and run on the client computer;means for comparing (320, 330, 345, 350), by the server computer, Downloadable security profile data (310) pertaining to the Downloadable, the 15 Downloadable security profile data including a list of suspicious computer operations that may be attempted by the Downloadable, against a security policy (305) to determine if the security policy has been violated, wherein the security policy specifies at least one test for determining whether or not to allow the Downloadable to execute on the client computer;and 20 means for preventing execution of the Downloadable on the client computer if the security policy has been violated.
  16. 58
    62. A computer-readable storage medium storing program code for causing a computer to perform a method comprising:-29CA 02275771 2007-12-14 providing memory storing known Downloadable security profile data (307) that includes lists of suspicious computer operations that may be attempted by Downloadables, the lists being indexed by corresponding known Downloadable IDs;receiving an incoming Downloadable (810) addressed to a client computer;5 fetching at least one component referenced by the incoming Downloadable (820) from at least one storage;performing a hashing function on the incoming Downloadable and its fetched components (840) to generate an ID of the incoming Downloadable (604);comparing the incoming downloadable ID with the known Downloadable IDs;10 retrieving a corresponding Downloadable security profile data if the incoming Downloadable ID matches one of the known Downloadable IDs;and comparing the retrieved Downloadable security profile against a security policy to determine if the incoming Downloadable violates the security policy, wherein the security policy specifies at least one test for determining whether or not 15 to allow the incoming Downloadable to execute on the client computer.
Independent claims16