throbber
Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 1 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 1 of 13
`
`
`
`
`
`EXHIBIT 1
`EXHIBIT 1
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 2 of 13
`
`cose Sarovosesowsa, osmaTiTATUE
`
`007418731B2
`
`a2) United States Patent (10) Patent No:=US 7,418,731 B2
`
`Touboul
`(45) Date of Patent:
`Aug. 26, 2008
`
`
`(54) METHOD AND SYSTEM FOR CACHING AT
`SECURE GATEWAYS
`(IL
`1
`-
`Shi
`Touboul. Kefar-Haim
`nventor:
`omo Touboul, Kefar-Haim (IL)
`(73) Assignee: Finjan Software, Ltd., Netanya (IL)
`
`(75)
`
`(*) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 537 days.
`
`(21) Appl. No.: 10/838,889
`
`(22) Filed:
`
`May3, 2004
`
`(65)
`
`Prior Publication Data
`
`US 2005/0005107 Al
`
`Jan. 6, 2005
`
`Related U.S. Application Data
`(63) Continuation-in-part of application No. 09/539,667,
`filed on Mar. 30, 2000, nowPat. No. 6,804,780, which
`is a continuation of application No. 08/964,388, filed
`on Nov. 6, 1997, now Pat. No. 6,092,194.
`
`(51)
`
`Int. Cl.
`(2006.01)
`GO6F 21/00
`(2006.01)
`GO6F 15/16
`(52) US. C1.
`ieeeccceccccceecseessessssessssessnsseveesneesss 726/22
`(58) Field of Classification Search .........000000.. None
`See application file for complete search history.
`.
`References Cited
`U.S. PATENT DOCUMENTS
`
`(56)
`
`5,077,677 A
`5,359,659 A
`5,361,359 A
`5,485,409 A
`5,485,575 A
`5,572,643 A
`5,579,509 A
`5,606,668 A
`5,623,600 A
`5,638,446 A
`5,692,047 A
`
`12/1991 Murphyet al.
`10/1994 Rosenthal
`11/1994 Tajalli et al.
`1/1996 Guptaetal.
`1/1996 Chessetal.
`11/1996 Judson
`11/1996 Furtney et al.
`2/1997 Shwed
`4/1997 Jietal.
`6/1997 Rubin
`11/1997 McManis
`
`5,692,124 A
`5,720,033 A
`5,724,425 A
`5,740,248 A
`5,761,421 A
`§,765,205 A
`
`11/1997 Holden et al.
`2/1998 Deo
`3/1998 Changet al.
`4/1998. Fieres etal.
`6/1998 van Hoff et al.
`6/1998 Breslau et al.
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`1091276 Al
`
`4/2001
`
`(Continued)
`OTHER PUBLICATIONS
`Ug, Appl. No. 10/838,889,filed Oct. 26, 1999, Golan , G.
`
`(Continued)
`
`Primary Examiner—Christopher A Revak
`(74) Attorney, Agent, or Firm—Perkins Coie LI.P
`
`(57)
`
`ABSTRACT
`
`Acomputer gatewayfor an intranet ofcomputers, including a
`scanner for scanning incoming files from the Internet and
`deriving securityprofiles therefor, the security profiles being
`lists of computer commandsthatthefiles are programmedto
`perform,a file cache for storing files, a security profile cache
`for storing security profiles for files, and a security policy
`cache for storing security policies for client computers within
`an intranet, the security policies includinga list ofrestrictions
`for files that are transmitted to intranet computers. A method
`and a computer-readable storage medium are also described
`and claimed.
`
`22 Claims, 3 Drawing Sheets
`
`41) ==.
`
`[os[amancic
`
`FOR USER GROUP 1
`1D-1|SECURITY FOLICY a
`
`
`[pal|secunmy poucy | SECURMTYPOLICY
`i
`FORUSERGROUP2
`:
`CACHE
`iDg|
`SECURITY FOLICY
`FORUSER GROUP3
`
`
`UREP|IDF|WES PAGE P 10 \
`
`
`URLO4|ID-T WEB OBJECT 01 WEB CACHE
`
`
`UR-62 |10-2|WEBORJECTOZ LK a
`|urvas13_|weeomvecr cs
`LURO4 | D4|WEB OBIECTOF
`
`
` a |
`
`ae| IDP [SECURITY PROFILE
`
`
`i
`FORWEB PAGE 9
`
`
`|
`oe Fadesnice’t |—
`
`
`
`
`
`
`
`FINJAN-JN 340143
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 3 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 3 of 13
`
`US 7,418,731 B2
`
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,784,459 A
`5,796,952 A
`5,805,829 A
`5,832,208 A
`§,832,274 A
`5,850,559 A
`5,859,966 A
`5,864,683 A
`5,892,904 A
`5,951,698 A
`5,956,481 A
`5,974,549 A
`5,978,484 A
`5,983,348 A
`6,092,194 A
`6,154,844 A
`6,167,520 A
`6,339,829 Bl
`6,480,962 Bl
`6,804,780 Bl
`6,917,953 B2*
`
`7/1998 Devarakondaet al.
`8/1998 Davis et al.
`9/1998 Cohenet al.
`11/1998 Chenet al.
`11/1998 Cutler et al.
`12/1998 Angeloet al.
`1/1999 Hayman etal.
`1/1999 Boebert et al.
`4/1999 Atkinsonet al.
`9/1999 Chenet al.
`9/1999 Walshetal.
`10/1999 Golan
`11/1999 Appersonet al.
`11/1999 Ji
`7/2000 ‘Touboul
`11/2000 Touboul
`12/2000 Touboul
`1/2002 Beadle et al.
`11/2002 Touboul
`10/2004 Touboul
`7/2005 Simon etal... 707/204
`
`
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`1132796 Al
`
`9/2001
`
`OTHER PUBLICATIONS
`
`http://www.codeguru.com/Cpp/Cpp/cpp_mfc/parsing/article.php/
`c4093/.
`http://www.cs.may.ie/~jpower/Courses/compilers/notes/lexical pdf.
`http://www.mail-archive.com/kragen-tol@canonical.org/
`msg00097.htiml.
`http://www.owlnet.rice.edu/~comp4 | 2/Lectures/L06LexWrapup4.
`pdf.
`http://www.cs,odu.edu/~toida/nerzic/390teched/regular/fa/min-fa.
`html.
`http://rw4.cs.uni-sb.de/~ganimal/GANIFA/page16_e.htm.
`http://www.cs,msstate.edu/~hansen/classes/38 13fall0 1/slides/
`06Minimize.pdf.
`http://www.win.tue.nl/~watson/2R870/downloads/madfa_algs.pdf.
`http://www.cs.nyu.edu/web/Research/Theses/chang_chia-hsiang.
`pdf.
`“Products” Article published on the Internet, “Revolutionary Secu-
`rity for A New Computing Paradigm” regarding SurfinGate™ 7
`pages.
`“Release Notes for the Microsoft ActiveX DevelopmentKit’, Aug.
`13, 1996, activex.adsp.or.jp/inetsdk/readme.txt, pp. 1-10.
`Doyle et al., “Microsoft Press Computer Dictionary” 1993, Microsoft
`Press, 2"4 Edition, pp. 137-138.
`Finjan Software Ltd., “Powerful PC Security for the New World of
`Java™ and Downloadables, Surfin Shield™” Article published on
`the Internet by Finjan Software Ltd., 1996, 2 pages.
`
`Tinjan Software Ltd.. “Tinjan Announces a Personal Java™ Firewall
`For Web Browsers—the SurfinShield™ 1.6 (formerly known as
`SurfinBoard)’, Press Release of Finjan Releases SurfinShield. 1.6,
`Oct. 21, 1996, 2 pages.
`Finjan Software Ltd., “Finjan Announces Major Power Boost and
`New Teatures for SurfinShield™ 2.0” Las Vegas Convention Center/
`Pavilion 5 P5551, Nov. 18, 1996, 3 pages.
`Finjan Software Ltd., “Finjan Software Releases SurfinBoard, Indus-
`try’s First Java Security Product For the World Wide Web”, Article
`published on the Internet by Finjan Software Ltd., Jul. 29, 1996, 1
`page.
`Finjan Software Ltd., “Java Security: Issues & Solutions” Article
`published on the Internet by Finjan Software Ltd., 1996. 8 pages.
`Finjan Software Ltd., CompanyProfile ““Finjan—Safe Surfing, The
`Java Security Solutions Provider” Article published on the Internet
`by Oct. 31, 1996, 3 pages.
`IBM AntiVirus User’s Guide Version 2.4, International Business
`Machines Corporation, Nov. 15, 1995, p. 6-7.
`Khare, R. “Microsoft Authenticod Analyzed” Jul. 22, 1996, xent.
`com/FoRK-archive/smmer96/0338.html, p. 1-2.
`LaDue, M., “Online Business Consultant: Java Security: Whose
`BusinessIs It?” Article published on the Internet, Home PagePress,
`Inc. 1996, 4 pages.
`Leach, Norvin et al., “IE 3.0 Applets Will Earn Certification”, PC
`Week,vol. 13, No. 29, Jul. 22, 1996, 2 pages.
`Moritz, R., “Why We Shouldn’t Fear Java” Java Report, Feb, 1997,
`pp. 51-56.
`Microsoft—“Microsoft ActiveX Software Development Kit” Aug.
`12, 1996, activex.adsp.or,jp/inetsdk/help/overview.htm, pp. 1-6.
`Microsoft Corporation, Web Page Article “Frequently Asked Ques-
`tions About Authenticode”, last updated Feb. 17, 1997, Printed Dec.
`23,
`1998. URL:
` http://www.microsoft.com/workshop’security/
`authcode/signfaq.asp#9, pp. 1-13.
`Microsoft® Authenticode Technology, “Ensuring Accountability
`and Authenticity for Software Components on the Internet”,
`Microsoft Corporation, Oct. 1996,
`including Abstract, Contents,
`Introduction and pp. 1-10.
`Okamoto, E. et al., “ID-Based Authentication System For Computer
`Virus Detection”, IEEE/IEE Electronic Library online, Electronics
`Letters, vol. 26, Issue 15, ISSN 0013-5194, Jul. 19, 1990, Abstract
`and pp. 1169-1170. URL: http://iel.ths.com:80/cgi-bin/iel__cgi?se...
`2ehts%26ViewTemplate%3 ddocview%5 fb%2ehts.
`Omura, J. K., “Novel Applications of Cryptography in Digital Com-
`munications”, IEEE Communications Magazine, May 1990; pp.
`21-29.
`
`Schmitt, D.A., “.EXE files, OS-2 style” PC Tech Journal, v6, n11, p.
`76 (13).
`Zhang. X.N., “Secure Code Distribution”, IEEE/IEE Electronic
`Library online, Computer, vol. 30, Issue 6, Jun. 1997, pp. 76-79.
`
`* cited by examiner
`
`FINJAN-JN 340144
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 4 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 4 of 13
`
`Aug. 26, 2008
`
`Sheet 1 of 3
`
`US 7,418,731 B2
`
`
`
`31d0udALIENS
`
`SHOVD*.
`
`ee
`
`aHOWo
`
`
`
`
`AOIMGdALYNOAS
` ALIMNDSS{2didNousY4aSNYOs[ADIWd
`
`ALINNOSS
`ZdNOUDSYASsod;ADNIOd
`rai|vor|601O3raoaam|eal]eo-tun
`
`
`aWsOwdALNDAS|ddl|
`£dNONSYESNuOs
`
`AdMOdALLHNOTS|°C
`
`2OLOSrPdOGam
`
`¥39Vd€3MYOs
`
`d39V¢d44M40d
`edi|cO-rdin
`—~ObL
`
`:wAAYAS:
`
`U.S. Patent vOiDSfdO83M
`
`ii
`
`
`
`FINJAN-JN 340145
`
`
`
`
`
`
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 5 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 5 of 13
`
`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet 2 of 3
`
`US 7,418,731 B2
`
`082
`
`A0NOd
`
`0£zON
`
`Lz
`
`¢Ola
`
`
`
`BHOVO83MNI
`
`
`
`SHOVDayIdOud
`
`3HOVS
`
`
`
`coz3OVd83MGSLssnosHySI
`
`Ske
`
`Ore
`
`
`
`
`
`09zAON1OdALIMNDASSAAMLAYWOud39d93MSARINLay
`
`
`
`
`
`
`
`
`
`S92ALINND3SFYVdNOoSLOSraOg3MAASLae
`
`
`
`SVNOLLOVALVYNYALTYAVL
`
`ALINOZSAGGAgINOSaud
`
`SaAWOdd39Vd83M49078
`0.aeweiva1SLOSPaO83MCALVIOOSS¥
`
`ALIMND3SHLIM3UsOdd93MNIHLIMCS90N3¥34d3yN
`
`
`
`YALANMNODLN3MSYOsYALNAINODYAAMAS
`
`
`
`
`AUd0YddALYNIASWOU
`
`AOVdgamY¥Od31dOdd
`ALUNOASAAR
`
`tHaLNdWODLNAITD
`
`AdN0da9Vd
`
`SSAB03YAXOWdSVONILOV
`ALINNDASNI3OVvdGamYOs
`JUJOUdALIUNDASSNOLS|osz
`éSHOVOaMNISIEVIIVAV
`
`
`SNOIDITWWATIWILNALOdovz
`
`
`
`1sandayLN3I19YALNdWOOYAAUAS
`CONV39Vd93M3YOLSSve
`
`
`ALINNOASSAIGONY
`
`YSLNdINOOAVMALYD
`
`YOITYAHLSAWAONd
`
`CaNWS30SW3LINVOS
`
`WOdd39VddamSLSANDIY
`
`WOudS9Vd83MSSAIZ93e
`
`GSMNIKLIMG30N3e4343Y
`
`SLOardO83MSLSANOAY
`YSBLNdNOSAVMSLYD
`
`
`YAINdNOSIN3AND
`
`YaLNdWOdLN3MNd
`
`YALNdNOOLNAMND
`
`39Vd
`
`0d
`
`Sez
`
`0e%
`
`FINJAN-JN 340146
`
`
`
`
`
`
`
`
`
`
`
`

`

`
`
`ANAIdI93aLdNOUSLNAIdIOIY
`
`
`
`
`
`
`LN3IMT9LN3IT9LN3N9
`
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 6 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 6 of 13
`
`U.S. Patent
`
`Aug. 26, 2008
`
`Sheet3 of 3
`
`US 7,418,731 B2
`
`AN3IdJO3uJato
`
`AONOdALINNO3ZSYO4ADIIOdALINNDAS
`
`
`
`
`
`YOsADNOdALIMNDAS|&-Cl
`
`
`YOsADMOdALINNDZS
`€dNOYSLNAIdIO3ay
`
`
`édnOudLNaldioay
`
`
`
`
`
`€“Old
`
`Oe
`
`0ce
`
`FINJAN-JN 340147
`
`
`
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 7 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 7 of 13
`
`US 7,418,731 B2
`
`1
`METHOD AND SYSTEM FOR CACHING AT
`SECURE GATEWAYS
`
`CROSS REFERENCES TO RELATED
`APPLICATIONS
`
`This application is a continuation-in-part of assignee’s
`application U.S. Ser. No. 09/539,667 (now U.S. Pat. No.
`6,804,780), filed on Mar. 30, 2000, and entitled SYSTEM
`
`AND METHODFOR PROTECTING A COMPUTER AND
`A NETWORK FROM HOSTILE DOWNLOADABLES,
`whichis a continuation ofU.S. Ser. No. 08/964,388 (now U.S.
`Pat. No. 6,092,194), filed on Nov. 6, 1997 and entitled SYS-
`TEM AND METHODFOR PROTECTING A COMPUTER
`AND A NETWORK FROM HOSTILE DOWNTOAD-
`ABLES.
`
`FIELD OF THE INVENTION
`
`The present invention relates to computer security and
`network gateways.
`
`BACKGROUNDOF THE INVENTION
`
`A network gateway computer conventionally serves as a
`proxy between a group of inter-connected computers,
`referred to as an intranet, such as a corporate intranet or
`customers of an Internet service provider, and the myriads of
`server computers on the Internet. The gateway computeris
`networked with the intranet computers in such a way that
`outgoing requests and responsesfromthe intranet computers
`to the Internet, and incoming requests and responses from the
`Internet to the intranet computers are routed through the
`gateway computer.
`Typically, a request is issued as an HTTP protocol request
`that includes a URI fora file, such as an HTMLpage, a JPEG
`image or a PDF document, residing on one or more server
`computers on the Internet. Similarly, a responseis typically
`an HTTPresponse including a requested file, sent back to a
`client in response to a request.
`Network gateways are generally connected to an intranet
`with high-speed lines, so that the bandwidth between the
`intranet computers and the gateway computer is much higher
`than the bandwidth between the gateway computerandrest of
`the Internet.
`
`Two important functions of computer gatewaysare (i) to
`restrict outsiders from unauthorized access to a computer
`intranet, and (ii) to protect the intranet computers from soft-
`ware containing computer viruses and from spam. Computer
`gateways may contain conventional firewall software that
`restricts outside communication with the intranet, anti-virus
`sottware that identifies computer viruses residing within files
`retrieved from the Internet, and anti-spam softwarethatfilters
`out unwanted content.
`
`Current gateway systems cause latency because clients do
`not access websites directly, and because current gateway
`systems apply security protocols to protect intranet members.
`Accordingly, systems and methods for reducing network
`access latency without compromising network safety are
`needed.
`
`SUMMARYOF THE INVENTION
`
`The present invention provides a method and system for
`improving performance of gateway computers. Specifically,
`the present invention mitigates network latency caused by
`processing time at a gateway computer.
`
`2
`There is thus provided in accordance with a preferred
`embodimentofthe present invention a computer gatewayfor
`an intranet of computers, including a scanner for scanning
`incomingfiles from the Internet and deriving security profiles
`therefor, the security profiles being lists of computer com-
`mandsthat thefiles are programmedto perform,a file cache
`for storing files, a security profile cache for storing security
`profiles forfiles, anda security policy cache for storing secu-
`rity policies for intranet computers within an intranet, the
`security policies including a list of restrictions for files that
`are transmitted to intranet computers.
`There is further provided in accordance with a preferred
`embodimentofthe present invention a method for operation
`of a network gateway for an intranet of computers, including
`receiving a request from an intranet computerfor a file on the
`Internet, determining whether the requested file resides
`withina file cache at the network gateway, if the determining
`is affirmative then retrieving a security profile for the
`requested file from a security profile cache at the network
`gateway, the security profile including a list of at least one
`computer commandthat the file is programmed to perform,
`and if the determining is not affirmative then retrieving the
`requested file from the Internet, scanning the retrievedfile to
`determine computer commandsthatthefile is programmedto
`perform, deriving a security profile for the retrieved file,
`storing the retrieved file within the file cache, and storing the
`security profile for the retrieved file within a security profile
`cache, retrieving a security policy for the intranet computer
`from a security policy cache at the network gateway, the
`security policy defining restrictions for transmitting files to
`the intranet computer, and comparing the security profile for
`the requestedfile vis a vis the security policy for the intranet
`computer, to determine whether transmission ofthe requested
`file to the intranet computeris to berestricted.
`Thereis yetfurther provided in accordancewith a preferred
`embodiment of the present invention a computer-readable
`storage mediumstoring programcode for causing a computer
`to perform the steps of receiving a request from an intranet
`computer for a file on the Internet, determining whether the
`requested file resides within a file cache at the network gate-
`way, if the determining is affirmative then retrieving a secu-
`rity profile for the requested file from a security profile cache
`at the network gateway, the security profile including a list of
`atleast one computer commandthatthe file is programmed to
`perform,and ifthe determiningis notaffirmative thenretriev-
`ing the requested file from the Internet, scanningtheretrieved
`file to determine computer commandsthat the file is pro-
`grammed to perform, deriving a security profile for the
`retrievedfile, storing the retrieved file within the file cache,
`and storing the security profile for the retrieved file within a
`security profile cache, retrieving a security policy for the
`intranet computer from a security policy cacheat the network
`gateway, the security policy definingrestrictions for transmit-
`ting files to the intranet computer, and comparingthe security
`profile for the requested file vis a vis the security policy for the
`intranet computer, to determine whether transmission of the
`requestedfile to the intranet computeris to be restricted.
`There is moreover provided in accordance with a preferred
`embodimentofthe present invention a method for operation
`of a network gateway for an intranet of computers, including
`receiving a request from anintranet computerfora file on the
`Internet, retrieving a security profile for the requested file
`from a security profile cache at the network gateway, the
`security profile including a list of at least one computer com-
`mandthat the file is programmed to perform, retrieving a
`security policy for the intranet computer from a security
`policy cache at the network gateway, the security policy
`
`a
`
`5
`
`20
`
`25
`
`40
`
`45
`
`60
`
`65
`
`FINJAN-JN 340148
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 8 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 8 of 13
`
`US 7,418,731 B2
`
`a
`
`20
`
`25
`
`4
`3
`restrictions for transmittingfiles to the intranet computer, and
`defining restrictions on files that can be transmitted to the
`intranet computer, and comparingthe security profile for the
`comparing the security profile for the requestedfile vis a vis
`requested file vis a vis the security policy for the intranet
`the security policy for the intranet computer, to determine
`computer, to determine whethertransmission ofthe requested
`whether transmission of the requested file to the intranet
`file to the intranet computeris to be restricted.
`computer is to berestricted.
`There is additionally provided in accordance with a pre-
`There is further provided in accordance with a preferred
`ferred embodimentofthe present invention a computer-read-
`embodiment of the present invention a computer-readable
`able storage medium storing program code for causing a
`storage medium storing program code for causing a computer
`computer to perform the steps of receiving a request from an
`to perform the steps of receiving a request from an intranet
`intranet computerfor a file on the Internet, retrieving a secu-
`computerfora file on the Internet, determining whether the
`rity profile for the requestedfile from a security profile cache
`requested file resides within a file cache at the network gate-
`at the network gateway,the security profile including a list of
`way, if the determining is affirmative retrieving a security
`at least one computer commandthatthefile is programmed to
`profile for the requested file from a security profile cache at
`perform,retrieving a security policy for the intranet computer
`5
`the network gateway, the security profile includingalist of at
`from a security policy cache at the network gateway, the
`least one computer commandthatthe file is programmed to
`security policy definingrestrictions onfiles that canbe trans-
`perform, and if the determiningis not affirmative retrieving
`mitted to the intranet computer, and comparing the security
`profile for the requestedfile vis a vis the security policy for the
`the requested file from the Internet, storing the retrievedfile
`intranet computer, to determine whether transmission of the
`within the file cache, and storing a security profile for the
`requested file to the intranet computer is to be restricted.
`retrievedfile within a security profile cache,retrieving a secu-
`There is further provided in accordance with a preferred
`rity policy for the intranet computer from a security policy
`embodimentof the present invention a method. for operation
`cache at the network gateway, the security policy defining
`ofa network gatewayfor an intranct of computers, including
`restrictions for transmitting files to the intranet computer, and
`retrieving a requested file from the Internet, scanning the
`comparing the security profile for the requested file vis a vis
`retrieved file to determine computer commandsthatthefile is
`the security policy for the intranet computer, to determine
`programmed to perform, deriving a security profile for the
`whether transmission of the requested file to the intranet
`retrieved file, the securily profile includingalist ofatleast one
`computeris to berestricted.
`computer commandthat the retrieved file is programmed to
`There is moreover provided in accordance with a preferred
`perform, storing the retrieved file within a file cache, and
`embodimentofthe present invention a computer gatewayfor
`storing the security profile for the retrievedfile within a secu-
`an intranet of computers, including a scanner for scanning
`rity profile cache.
`outgoing files from an intranet to the Internet and deriving
`Thereis yet further provided in accordance with a preferred
`security profiles therefor, the security profiles being lists of
`embodiment of the present invention a computer-readable
`computer commands that the files are programmed to per-
`storage medium storing program code for causing a computer
`to perform the steps of retrieving a requested file from the
`form, a security policy cache for storing security policies for
`Internet, scanning the retrieved file to determine computer
`recipient computers within the Internet, the security policies
`commandsthatthe file is programmedto perform, deriving a
`includinga list of restrictionsforfiles that are transmitted to
`security profile for the retrieved file, the security profile
`recipient computers.
`including a list of at least one computer command that the
`There is additionally provided in accordance with a pre-
`retrieved file is programmedto perform, storing the retrieved
`ferred embodiment of the present invention a method for
`file within a file cache, and storing the security profile for the
`operation of a network gateway for an intranet of computers,
`retrieved file within a security profile cache.
`including receivinga file from an intranet computerfortrans-
`There is moreover provided in accordance witha preferred
`mission to a recipient computer on the Internet, scanning the
`embodimentofthe present invention 4 compuler gateway for
`received file to derive a security profile for the receivedfile,
`an intranet of computers, including a file cache for storing
`the security profile including a list of at least one computer
`files, a security profile cache for storing security profiles for
`commandthatthe file is programmedto perform,retrieving a
`files, the security profiles being lists of computer commands
`security policy from a security policy cache at the network
`thatthe files are programmedto perform, anda security policy
`gateway, the security policy definingrestrictions for transmit-
`cache for storing security policies for intranet computers
`ting files to recipient computers, and comparing the security
`within an intranet, the security policies including a list of
`profile for the received file vis a vis the security policy, to
`restrictionsforfiles that are transmittedto intranet computers.
`determine whether transmission of the requested file to the
`There is additionally provided in accordance with a pre-
`recipient computeris to be restricted.
`ferred embodiment of the present invention a method for
`operation of a network gateway for an intranet of computers,
`There is further provided in accordance with a preferred
`including receiving a request from an intranet computerfor a
`embodiment of the present invention a computer-readable
`file on the Internet, determining whether the requested file
`storage mediumstoring program codefor causing a computer
`
`resides within a file cache at the network gateway, if the to perform the steps of receivingafile from an intranet com-
`determiningis affirmative retrieving a security profile for the
`puter for transmission to a recipient computeron the Internet,
`requested file from a security profile cache at the network
`scanning the receivedfile to derive a security profile for the
`gateway, the security profile including a list of at least one
`receivedfile, the security profile including a list of at least one
`computer commandthatthe file is programmedto perform,
`computer commandthat the file is programmed to perform,
`and if the determining is not affirmative retrieving the
`retrieving a security policy from a security policycacheat the
`requested file from the Internet, storing the retrieved file
`network gateway, the security policy definingrestrictions for
`within the file cache, and storing a security profile for the
`transmitting files to recipient computers, and comparing the
`retrieved file within a security profile cache, retrieving asecu-
`security profile for the received file vis a vis the security
`rity policy for the intranet computer from a security policy
`policy, to determine whether transmission of the requested
`cache at the network gateway, the security policy defining
`file to the recipient computeris to be restricted.
`
`40
`
`45
`
`60
`
`65
`
`FINJAN-JN 340149
`
`

`

`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 9 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 9 of 13
`
`US 7,418,731 B2
`
`5
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The present invention will be more fully understood and
`appreciated trom the following detailed description, taken in
`conjunction with the drawings in which:
`FIG. 1is a simplified block diagram for a network gateway,
`in accordance with a preferred embodiment of the present
`invention;
`FIG.2 is a simplified flowchart for operation of a network
`gateway, in accordance with a preferred embodiment of the
`present invention; and
`FIG.3 is asimplified block diagram for a network gateway
`that control outgoingtraffic, in accordance with a preferred
`embodimentof the present invention.
`
`DETAILED DESCRIPTION OF A PREFERRED
`EMBODIMENT
`
`The present invention provides a system and method for
`optimizing performance of network gateways that perform
`security-based functions.
`Reference is now made to FIG. 1, which is a simplified
`block diagram for a network gateway, in accordance with a
`preferred embodiment of the present invention. Shown in
`FIG.1 is anetwork gateway computer 110, which serves as a
`proxy between an intranet of clients and servers, and the
`Internet. Specifically in FIG. 1, gateway computer 110 inter-
`venes between requests for web pages originating from an
`intranet 120 of clients 123, 125 and 127, and responsesorigi-
`nating from Internet servers 133, 135 and 137,
`Typically, web pages include text, executable scripts and
`one or more links to web objects that must be retrieved in
`
`6
`page, and scanner 140 scans the web page and the web objects
`that maybe malicious. For example, a web page,P, requested
`by a client computer, may contain references to web objects
`O1, O02, O3 and O4. Generally, the web page, P, and the web
`objects it references, O01, O02, O03 and O4are stored asfiles
`within the Internet.
`
`When the web page, P,first arrives at gateway computer
`110, gateway computer 110 preferably retrieves objects O1,
`02,03 and O4. Gateway computer 110 then decides which of
`web page P and objects O1, O02, O3 and O4 maypotentially be
`malicious, and scanner 140 scans each of the potentially
`malicious files. Determination of which files may be poten-
`tially malicious may be based on numerous criteria—for
`example, multimedia objects such as images and video clips
`may be deemedsafe, whereas Visual Basic scripts and Java
`applets may be deemedpotentially malicious.
`In accordance with a preferred embodimentofthe present
`invention, scanner 140 analyzeseachfile it scans to determine
`the nature of computer operationsthatthefile is programmed
`to perform, and derives a security profile therefor, summariz-
`ing potentially malicious computer operations. Thus scanner
`140 may determine inter alia that a file is programmed to
`access a computerfile system, or a computer operating sys-
`tem, or open a network socket.
`Table I below indicates a typical scan analysis, in accor-
`dance with a preferred embodimentof the present invention.
`As canbe seen from Table I, web page P and web objects O1
`and O4 are deemedpotentially malicious. Web objects O2
`and O3 are deemed safe. The security profile for web page P
`includes security profiles for JavaScript within page P, and for
`webobjects Ol and 04 referenced by page P. Web objects O2
`and O3 are not scanned, since they are deemedto be safe.
`
`a
`
`10
`
`20
`
`25
`
`30
`
`TABLE I
`
`Security Profile for Web Page P
`
`Security Profile
`
`Potentially
`Malicious?
`
`File System
`Commands
`
`Operating System Network
`Commands
`Commands
`
`Web Page P
`References objects
`O1, 02, 03 and 04
`Includes JavaScript
`Web Object O1
`Java applet
`
`Web Object 02
`Still image
`Web Object 03
`Audio clip
`Web Object 04
`ActiveX Control
`
`‘Yes
`
`Yes
`
`No
`
`No
`
`Yes
`
`None
`
`None
`
`Issue HTTP request;
`
`OpenfileF1;
`Write file F2;
`Delete file F1
`
`Open registry;
`Edit registry
`
`None
`
`Openfile F1;
`Copyfile F1
`
`None
`
`Open socket;
`FTP send
`
`order to completely render the web page. Such web objects 55
`include inter alia images, sounds, multimedia presentations,
`video clips and also active code that runs on the client com-
`puter. Executable scripts and active code components are a
`security concern, since they may contain computer viruses
`that maliciously harm client computers. In fact, most viruses
`today are transmitted as active web objects or as e-mail
`allachments.
`
`60
`
`Preferably, gateway computer 110 includes a cade scanner
`140, for scanning incoming web pages and web objects in
`order to detect the presence ofmalicious executablescripts or
`active code. Preferably when gateway 110 receives a web
`page,it also retrieves the web objects referenced by the web
`
`65
`
`In accordance with a preferred embodimentofthe present
`invention, web page security profiles are stored in a security
`profile cache 150, and the web page and the web objects that
`the page references are stored in a web cache 160. Security
`profile cache 150 preferably includesa table as indicated in
`Table II.
`
`TABLEII
`
`Structure of Security Profile Cache 150
`
`Web Content ID
`
`Web Content Security Profile
`
`FINJAN-JN 340150
`
`

`

`It may be appreciated that the various caches within gate-
`way computer 110 security profile cache 150, web cache 160
`and security policy cache 170, must be managedinorderto be
`kept currentas files on the Internet are replaced with newer
`versions, and in order to appropriately purge items from cache
`when cache memory is full and newitemsarrive for storage.
`Typically, web cache 160 is the cachethatfills up, since web
`objects such as applets and multimedia files tend to be very
`large. In accordance with a preferred embodiment of the
`present invention, caches 150 and 160 are synchronized, so
`that when a file is purged from web cache 160, its correspond-
`ing security profile is purged from cache 150.
`Mcthodologics for keeping caches 150 and 160 current
`include interalia:
`
`
`
`20
`
`25
`
`45
`
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 10 of 13
`Case 3:17-cv-05659-WHA Document 347-2 Filed 12/21/18 Page 10 of 13
`
`US 7,418,731 B2
`
`7
`Web contentID is preferably a has ID that serves as a key for
`Table II. Similarly, web content cache 160 preferably
`includesa table as indicated in TableIII.
`
`TABLEIII
`
`Structure ofWeb Content Cache 160
`
`Web Content URI
`
`Web Content ID
`
`Web Content
`
`8
`A CLIENT DURING RUNTIME FROM HOSTILE DOWN-
`LOADABLES, USS. Pat. No. 6,480,962 entitled SYSTEM
`AND METHODFOR PROTECTING A CLIENT DURING
`RUNTIME FROM HOSTILE DOWNLOADABLES. USS.
`Pat. No. 6,804,780 entitled SYSTEM AND METHOD FOR
`PROTECTING A COMPUTER AND A NETWORK FROM
`
`HOSTILE DOWNLOADABLES, USS. Pat. No. 6,965,968
`entitled POLICY-BASED CACHING, and US. Pat. No.
`7,058,822 entitled MALICIOUS MOBILE CODE RUNT-
`IME MONITORING SYSTEM AND METHODS.
`
`
`
`a
`
`10
`
`Web content URI serves as a key for Table III, and Web
`Content ID is a foreign keythat can be used to join Table II
`with Table III.
`
`It maybe appreciated that the same web page or web object
`may bestored al multiple locations and, as such, multiple
`URIs may correspondto the same web content. In a preferred
`embodimentofthe present invention, web cache 160 is man-
`aged so as to avoid caching duplicate web content. Use of a
`hash ID for web pages and web objects servesto identify web
`content duplicates, and to determine if web content on the
`Internet has changed since it was earlier cached within web
`content cache 160. In case web content has changed, then
`preferably the more recent web content is cached instead of
`the older web content, and the newer web content is scanned
`replacing cachedfiles regularly on a periodic basis, suc

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket