throbber
United States Patent (19)
`Vu
`
`54 APPARATUS AND METHOD FOR
`PROVIDING ASECURE GATEWAY FOR
`COMMUNICATION AND DATA EXCHANGES
`BETWEEN NETWORKS
`
`75 Inventor: Hung T. Vu, Ottawa, Canada
`73) Assignee: Milkway Networks Corporation,
`Ottawa, Canada
`
`21 Appl. No. 342,772
`22 Filed:
`Nov. 21, 1994
`(51) int. Cl." ............................................... G06F 11/00
`52 U.S. Cl. ................................. 395/187.01; 395/188.01
`58 Field of Search ......................... 395/187.01, 188.01,
`395/186, 182.02, 187.02, 180; 380/4
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`6/1991 Johnson et al. ............................. 380/4
`5,023,907
`5,416,842 5/1995 Aziz et al. .......
`... 380.4
`5,548,646 8/1996 Aziz et al. ................................ 380/23
`OTHER PUBLICATIONS
`Stempel, "paccess-an Internet Service Access System for
`Firewall Installations', Network and Distributed System
`Security, IEEE, pp. 31-41. Feb. 1995.
`Nueman, "Proxy-Based Authproization and Accounting for
`Dsitributed Systems', Distributed Computing systems,
`IEEE Conf. pp. 283-291. Jan. 1993.
`Bellowin et al., "Network Firewalls', IEEE Communications
`Magazine. pp. 50-57 Sep. 1994.
`Tirenin et al., "Enhanced Multinet Gateway: Survivable
`Multi-Level Secure Data Communications', Milcom IEEE,
`pp. 740-744 1991.
`A Network Firewall, Marcus J. Ranum, Digital Equipment
`Corporation, Washington Open Systems Resource Center,
`Greenbelt, MD, Jun. 12, 1992.
`White Paper-InterLock 2.1, Ans Co-Re Systems, Inc.,
`Aug. 18, 1993.
`
`
`
`
`
`19853. 64.7
`
`USOO56236O1A
`11) Patent Number:
`(45) Date of Patent:
`
`5,623,601
`Apr. 22, 1997
`
`Checkpoint Firewall-1" Technical White Paper, Check
`Point Software Technologies Ltd., 1994.
`Thinking about Firewalls, Marcus J. Ranum, Trusted Infor
`mation Systems, Inc. Glenwood, Md., 1993.
`Socks, David Koblas and Michelle Koblas, 1993.
`Internet Firewalls - An Overview, Marcus J. Ranum, Aslide
`presentation, 1993, Trusted Information Systems, Inc.
`Screen External Access Link (SEAL) Introductory Guide,
`Digital, publication date unknown.
`Increasing Security on IP Networks, Cisco Systems, Inc.,
`advertising brochure, publication date unknown.
`
`Primary Examiner-Robert W. Beausoliel, Jr.
`Assistant Examiner Joseph E. Palys
`Attorney, Agent, or Firm-Ralph H. Dougherty
`
`ABSTRACT
`(57)
`An apparatus and method for providing a secure firewall
`between a private network and a public network are dis
`closed. The apparatus is a gateway station having an oper
`ating system that is modified to disable communications
`packet forwarding, and further modified to process any
`communications packet having a network encapsulation
`address which matches the device address of the gateway
`station. The method includes enabling the gateway station to
`transparently initiate a first communications session with a
`client on a first network requesting a network service from
`a host on a second network, and a second independent
`Communications session with the network host to which the
`client request was addressed. The data portion of commu
`nications packets from the first session are passed to the
`Second session, and vice versa, by application level proxies
`which are passed the communications packets by the modi
`fied operating system. Data sensitivity screening is prefer
`ably performed on the data to ensure security. Only com
`munications enabled by a security administrator are
`permitted. The advantage is a transparent firewall with
`application level security and data screening capability.
`
`41 Claims, 7 Drawing Sheets
`
`
`
`
`
`98.53, 84.1
`
`19853, 30.2
`
`92.68, 7.
`
`
`
`92.88.7.
`
`Relaying
`News Server
`
`and
`News Server
`
`EXHIBIT 1004
`Guest-Tek v. Nomadix, IPR2018-00376
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 1 of 7
`
`5,623,601
`
`9.
`
`
`
`?u ?ka 1981
`
`I ’5) I „H
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(…)
`
`Ad Ala - O 24 re-e O ?ing
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 2 of 7
`
`5,623,601
`
`Art)
`I P Header (Pri
`15 16
`O
`O A
`4-bit
`4-bit heade
`8-bit type of survice
`version
`length
`ios
`
`26
`
`A?
`16-bit total length (in bytes)
`
`31
`
`
`
`18-bit identification
`
`3-bit
`
`13-bit fragrant off set
`
`8-bit '' Ye
`
`8-bit protocol
`
`8-bit hoader check won
`
`32-bit source P address
`
`32-bit destination tP address
`options (if any)
`
`
`
`
`
`
`
`
`
`ter Header (Prior Art)
`6-bit source port number
`
`38 31
`28
`36 16
`16-bit destination port number
`
`32-bit sequence nundbor
`
`
`
`-
`
`R
`
`ge:
`
`32-bit acknowledgemont audbur
`8-bit window size
`
`8-bit TCP checksum
`
`10-bit urgent pointer
`
`options (if any)
`
`UDP Header (Prior Art)
`O
`
`15 16
`
`16-bit source port number
`
`16-bit destination port number
`
`16-bit UDP length
`
`8-bit UDP checlosun
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 3 of 7
`
`5,623,601
`
`Ethernet Encapsulation (RFC 894)
`
`dest nation
`
`44
`
`4
`
`6
`
`
`
`
`
`
`
`6
`
`2
`
`(Prior Art) 46-1500
`
`40 42 FIG 3
`
`B. 53,64.
`
`
`
`
`
`
`
`
`
`12
`
`8. S3, S4,
`
`. Relaying
`News Sever
`
`
`
`
`
`
`
`
`
`Gateway
`Station
`
`F. G. 4
`
`192. 68.77.
`
`18
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 4 of 7
`
`5,623,601
`
`(Prior Art)
`
`
`
`Receive Data
`
`48
`
`Packet
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`50
`
`52
`
`D EE, N
`S. a O.
`Addras Device
`Addr.
`
`
`
`Y
`
`Drop Packet
`
`54
`
`
`
`
`
`56
`
`58
`
`Any
`IP
`ÉErg
`Gainy
`O
`as
`fAadrir )Y-X
`P'ei
`Station? /
`Port?
`
`Ol
`
`N
`
`Drop Packet
`
`N
`
`62
`
`Y
`
`Forward Packet
`
`59
`
`- 60
`
`61.
`
`Start TCP or
`UDP Session
`With P Source
`
`Deliver Packet
`To Bound
`Proxy Process
`
`Attempt
`to
`Process Packet
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 5 of 7
`
`5,623,601
`
`Receive Data
`
`64
`
`Packet
`
`
`
`
`
`
`
`Encapsul.
`Destination
`Addr.sc. Device
`
`N
`
`Drop Packet
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Process
`Bound to
`Destination
`Port?
`
`72
`
`74
`
`N
`
`Drop Packet
`
`Any
`Proxy
`Process
`Bound to
`Port
`598132
`
`
`
`
`
`
`
`Start TCP or
`UDP Session
`With IP Source
`
`78
`
`Deliver Packet
`To Bound
`Proxy Process
`
`FI G. 6
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 6 of 7
`
`5,623,601
`
`(A)
`
`80
`
`82
`
`Wait for Data
`to Arrive on
`Port XXX Fron
`the Kernel
`
`86
`
`N Drop session
`
`88
`
`
`
`
`
`Is
`User Level
`Authentication
`Required?
`
`Authenti cate
`User
`
`
`
`Is
`User
`Authenticated?
`
`
`
`
`
`
`
`
`
`94
`
`Drop session
`
`FI G. 7 a
`
`

`

`U.S. Patent
`
`Apr. 22, 1997
`
`Sheet 7 of 7
`
`5,623,601
`
`104
`
`106
`
`Initiate Session
`With the IP
`Destination
`Address
`
`Wait for Dat a Fron
`One Session to be
`Passed Fron Kernel
`and Relay Data to
`Other Session
`
`
`
`
`
`
`
`
`
`
`
`Is
`Either
`Sessi O
`Terminated?
`
`FI G. b
`
`
`
`96
`
`
`
`
`
`Addr.s An IP
`Addr. of
`
`
`
`Initiate Session
`to Perrit IP
`Source to Enable
`or Disable
`Transparent Mode
`
`98
`
`Wait for Data
`to Arrive on
`Port XXX Fron
`the Kernel
`
`O
`10
`
`Process Packet
`to Perit IP
`Source to Enable
`or Disable
`Transparent Mode
`
`1O1
`
`Is
`Sessi O
`Teri Inated?
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`5,623,601
`
`1
`APPARATUS AND METHOD FOR
`PROVIDING ASECURE GATEWAY FOR
`COMMUNICATION AND DATA EXCHANGES
`BETWEEN NETWORKS
`
`TECHNICAL FIELD
`This application relates generally to internetwork com
`munications and data exchanges and, in particular, to Secure
`gateways which serve as firewalls between computer net
`works to inhibit electronic vandalism and espionage.
`
`10
`
`2
`gateway, as can the public network but the private network
`cannot communicate with the public network except via the
`public side of the dual homedgateway. Application level or
`"proxy” gateways are often used to enhance the function
`ality of dual homed gateways. Much of the protocol level
`software on networks operates in a store-and-forward mode.
`Prior art application level gateways are service-specific
`store-and-forward programs which commonly operate in
`user mode instead of at the protocol level.
`All of the internetwork gateways known to date suffer
`from certain disadvantages which compromise their security
`or inconvenience users. Most known internetwork gateways
`are also potentially susceptible to intruders if improperly
`used or configured.
`The only firewall for many network installations is a
`screening router which is positioned between the private
`network and the public network. The screening router is
`designed to permit communications only through certain
`predesignated ports. Many network services are offered on
`specific designated ports. Generally, screening routers are
`configured to permit all outbound traffic from the private
`network while restricting inbound traffic to those certain
`specific ports allocated to certain network services. A prin
`cipal weakness of screening routers is that the router's
`administrative password may be compromised. If an
`intruder is capable of communicating directly with the
`router, the intruder can very easily open the entire private
`network to attack by disabling the screening algorithms.
`Unfortunately, this is extremely difficult to detect and may
`go completely unnoted until serious damage has resulted.
`Screening routers are also subject to permitting vandalism
`by "piggybacked' protocols which permit intruders to
`achieve a higher level of access than was intended to be
`permitted.
`Packet filters are a more sophisticated type of screening
`that operates on the protocol level. Packet filters are gener
`ally host-based applications which permit certain commu
`nications over predefined ports. Packet filters may have
`associated rule bases and operate on the principle of "that
`which is not expressly permitted is prohibited'. Public
`networks such as the Internet operate in TCP/IP protocol. A
`UNIX operating system running TCP/IP has a capacity of
`64K communication ports. It is therefore generally consid
`ered impractical to construct and maintain a comprehensive
`rule base for a packet filter application. Besides, packet
`filtering is implemented using the simple Internet Protocol
`(IP) packet filtering mechanisms which are not regarded as
`being robust enough to permit the implementation of an
`adequate level of protection. The principal drawback of
`packet filters is that they are executed by the operating
`system kernel and there is a limited capacity at that level to
`perform screening functions. As noted above, protocols may
`be piggybacked to either bypass or fool packet filtering
`mechanisms and may permit skilled intruders to access the
`private network.
`The dual homed gateway is an often used and easy to
`implement alternative. Since the dual homed gateway does
`not forward TCP/IP traffic, it completely blocks communi
`cation between the public and private networks. The ease of
`use of a dual homed gateway depends upon how it is
`implemented. It may be implemented by giving users logins
`to the public side of the gateway host, or by providing
`application gateways for specific services. If users are per
`mitted to log on to the gateway, the firewall security is
`seriously weakened because the risk of an intrusion
`increases substantially, perhaps exponentially, with each
`user login due to the fact that logins are a vulnerable part of
`
`BACKGROUND OF THE INVENTION
`As computing power and computer memory have been
`miniaturized and become more affordable, computer net
`works have largely displaced mainframe and minicomputer
`technology as a business automation platform. Public infor
`mation networks have also sprung up around the world. The
`largest and most pervasive public network is the Internet
`which was created in the late 1960s as a United States
`Department of National Defence project to build a network
`connecting various military sites and educational research
`centers. While the interconnection of private networks with
`public networks such as the Internet may provide business
`opportunities and access to vital information, connecting a
`private, secure network to a public network is hazardous
`unless some form of secure gateway is installed between the
`two networks to serve as a "firewall'.
`Public networks, as their name implies, are accessible to
`anyone with compatible hardware and software. Conse
`quently, public networks attract vandals as well as amateurs
`and professionals involved in industrial espionage. Private
`networks invariably store trade secret and confidential infor
`mation which must be protected from exposure to unautho
`rized examination, contamination, destruction or retrieval.
`Any private network connected to a public network is
`vulnerable to such hazards unless the networks are inter
`connected through a secure gateway which prevents unau
`thorized access from the public network.
`A great deal of effort has been dedicated to developing
`secure gateways for internetwork connection. As noted
`above, these gateways are commonly referred to as firewalls.
`The term firewall is broadly used to describe practically any
`internetwork security scheme. Firewalls are generally devel
`oped on one or more of three models: the screening router,
`the bastion host and the dual homed gateway. These models
`may be briefly defined as:
`Screening router-Screening routers typically have the
`ability to block traffic between networks or specific hosts on
`an IP port level. Screening routers can be specially config
`ured commercial routers or host-based packet filtering appli
`cations. Screening routers are a basic component of many
`firewalls. Some firewalls consist exclusively of a screening
`router or a packet filter.
`Bastion host-Bastion hosts are host systems positioned
`between a private network and a public network which have
`particular attention paid to their security. They may run
`special security applications, undergo regular audits, and
`include special features such as "sucker traps' to detect and
`identify would-be intruders.
`Dual homed gateway-A dual homed gateway is a bas
`tion host with a modified operating system in which TCP/IP
`forwarding has been disabled. Therefore, direct traffic
`between the private network and the public network is
`blocked. The private network can communicate with the
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`

`

`5,623,601
`
`O
`
`15
`
`20
`
`25
`
`30
`
`3
`any security system. Logins are often compromised by a
`number of known methods and are the usual entry path for
`intruders.
`The alternative implementation of a dual homed gateway
`is the provision of application gateways for specific network
`services. Application gateways have recently gained general
`acceptance as a method of implementing internetwork fire
`walls. Application gateways provide protection at the appli
`cation level and the Transmission Control Protocol (TCP)
`circuit layer. They therefore permit data sensitivity checking
`and close loopholes left in packet filters. Firewalls equipped
`with application gateways are commonly labelled applica
`tion level firewalls. These firewalls operate on the principle
`of "that which is not expressly permitted is prohibited'.
`Users can only access public services for which an appli
`cation gateway has been installed on the dual homed gate
`way. Although application level firewalls are secure, the
`known firewalls of this type are also inefficient. The prin
`cipal disadvantage of known application level firewalls is
`that they are not transparent to the user. They generally
`require the user to execute time-consuming extra operations
`or to use specially adapted network service programs. For
`example, in an open connection to the Internet, a user can
`Telnet directly to any host on the Internet by issuing the
`following command:
`Telnet target.machine
`However if the user is behind an application level firewall,
`the following command must be issued:
`Telnet firewal
`After the user has established a connection with the
`firewall, the user will optionally enter a user ID and a
`password if the firewall requires authentication. Subsequent
`to authentication, the user must request that the firewall
`connect to the final Telnet target machine. This problem is
`the result of the way in which the UNIX operating system
`handles IP packets. A standard TCP/IP device will only
`accept and attempt to process IP packets addressed to itself.
`Consequently, if a user behind an application firewall issues
`the command:
`Telnet target.machine
`an IP packet will be generated by the user workstation that
`is encapsulated with the device address of the firewall but
`with an IP destination address of the target.machine. This
`packet will not be processed by the firewall station and will
`therefore be discarded because IP packet forwarding has
`been disabled in the application level firewall.
`Known application level firewalls also suffer from the
`disadvantage that to date application interfaces have been
`required for each public network service. The known appli
`cation level firewalls will not support "global service' or
`applications using "dynamic port allocations' assigned in
`real time by communicating systems.
`Users on private networks having an application level
`firewall interface therefore frequently install "back doors' to
`the public network in order to run services for which
`applications have not been installed, or to avoid the incon
`venience of the application gateways. These back doors
`provide an unscreened, unprotected security hole in the
`private network which renders that network as vulnerable as
`if there were no firewall at all.
`
`4
`It is a further object of the invention to provide an
`internetwork security gateway which provides application
`proxy flexibility, security and control while permitting users
`to transparently access public network services.
`It is a further object of the invention to provide an
`internetwork security gateway which supports any currently
`offered or future network service.
`It is yet a further object of the invention to provide an
`internetwork security gateway which supports applications
`using port numbers that are dynamically assigned in real
`time by the communicating systems.
`It is yet a further object of the invention to provide an
`internetwork security gateway which listens to all commu
`nications ports in order to detect any attempted intrusion into
`a protected network, regardless of the intruder's point of
`attack.
`In accordance with a first aspect of the invention there is
`disclosed a method of providing a secure gateway between
`a private network and a potentially hostile network, com
`prising the steps of:
`a) accepting from either network all communications
`packets that are encapsulated with a hardware destina
`tion address that matches the device address of the
`gateway;
`b) determining whether there is a process bound to a
`destination port number of an accepted communica
`tions packet;
`c) establishing a first communications session with a
`source address/source port of the accepted communi
`cations packet if there is a process bound to the
`destination port number, else dropping the packet;
`d) establishing a second communications session with a
`destination address/destination port number of the
`accepted communications packet if a first communica
`tions session is established; and
`e) transparently moving data associated with each subse
`quent communications packet between the respective
`first and second communications sessions, whereby the
`first session communicates with the source and the
`second session communicates with the destination
`using the data moved between the first and second
`sessions.
`In accordance with a further aspect of the invention there
`is disclosed an apparatus for providing a secure gateway for
`data exchanges between a private network and a potentially
`hostile network, comprising in combination:
`a gateway station adapted for connection to a telecom
`munications connection with each of the private net
`work and the potentially hostile network;
`an operating system executable by the gateway station, a
`kernel of the operating system having been modified so
`that the operating system:
`a) cannot forward any communications packet from the
`private network to the potentially hostile network or
`from the potentially hostile network to the private
`network, and
`b) will accept for processing any communications
`packet from either of the private network and the
`potentially hostile network provided that the packet
`is encapsulated with a hardware destination address
`that matches the device address of the gateway
`station on the respective networks; and
`at least one proxy process executable by the gateway
`station, the proxy process being adapted to transpar
`ently initiate a first communications session with a
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`SUMMARY OF THE INVENTION
`It is an object of the invention to provide an internetwork
`security gateway which overcomes the known disadvan
`tages of prior art internetwork Security gateways.
`
`65
`
`

`

`25
`
`S
`source of an initial data packet accepted by the oper
`ating System and to transparently initiate a second
`communications session with a destination of the
`packet, and to transparently pass a data portion of
`packets received by the first communications session to
`the second communications session and to pass the data
`portion of packets received by the second communica
`tions session to the first communications session,
`whereby the first session communicates with the source
`using data from the second session and the second
`session communicates with the destination using data
`received from the first session.
`The invention therefore provides a method and an appa
`ratus which permits a private network to be securely inter
`connected with a public or a potentially hostile network.
`The method in accordance with the invention involves
`protecting a private network interconnected with a poten
`tially hostile network whereby a gateway between the two
`networks transparently imitates a host when a communica
`tion data packet is received from a client on one of the
`networks by initiating a communication session with the
`client. If the client is determined to have access rights to the
`requested service, the gateway station imitates the client to
`the host on the other network by initiating a communications
`session with the host. Thereafter, data is passed between the
`client session and the host session by a process which
`coordinates communications between the two distinct, inter
`dependent communications sessions which proceed between
`the client and the gateway station and the host and the
`gateway station.
`For instance, using a gateway station in accordance with
`the invention as an internetwork interface, a user on the
`private network can issue the command:
`telnet publictarget.machine
`and the command will appear to the user to be executed as
`if no gateway existed between the networks so long as the
`user is permitted by the rule bases maintained by the private
`network security administrator to access the publictarget
`machine.
`In order to achieve transparency of operation, the gateway
`station is modified to accept for processing all IP packets
`encapsulated in a network operating system capsule (e.g. an
`ethernet capsule) having a destination address which
`matches the device address of the gateway station, regard
`less of the destination address of the IP packet. This modi
`45
`fication permits the gateway station to provide transparent
`service to users on either network, provided the users are
`authorized for the service. Furthermore, the gateway station
`in accordance with the invention runs a novel generic proxy
`which permits it to listen to all of the 64K communications
`ports accommodated by the UNIX operating system which
`are not served by a dedicated proxy process. As is well
`known to those skilled in the art, certain internetwork
`services have been assigned specific ports for communica
`tion. Most of the designated ports on the Internet are those
`port numbers in the range of 0-1K (1,024). Other applica
`tions and services use port numbers in the range of 1K to
`64K. As noted above, the gateway station in accordance with
`the invention "listens' to all 64K ports. The generic proxy
`process which is executed by the gateway station responds
`to any request for service that is not served by a dedicated
`proxy process, regardless of the destination port number to
`which the request for service is made. Every request for
`service may therefore be responded to. When an intruder
`attacks a private network, the intruder must attempt to access
`the network through the gateway station. Most firewalls
`listen to only a limited subset of the available communica
`
`6
`tions ports. An intruder can therefore probe unattended areas
`of the firewall without detection. The gateway station in
`accordance with the invention will, however, detect a probe
`on any port and may be configured to set an alarm condition
`if repeated probes are attempted. The gateway station in
`accordance with the invention can also be configured to
`perform data sensitivity screening because all communica
`tions packets are delivered by the kernel to the application
`level where the data portion of each packet is passed from
`one in progress communications session to the other. Data
`sensitivity screening permits the detection of sophisticated
`intrusion techniques such as piggybacked protocols, and the
`like.
`The apparatus in accordance with the invention is mod
`eled on the concept of a bastion host, preferably configured
`as a dual home firewall. The apparatus in accordance with
`the invention may also be configured as a multiple-home
`firewall, a single-home firewall or a screened subnet.
`Regardless of the configuration, the apparatus preferably
`comprises a UNIX station which executes a modified oper
`ating system in which IP packet forwarding is disabled. The
`apparatus in accordance with the invention will not forward
`any IP packet, process ICMP direct messages nor process
`any source routing packet between the potentially hostile
`network and the private network. Without IP packet for
`warding, direct communication between the potentially hos
`tile network and the private network are disabled. This is a
`common arrangement for application level firewalls. The
`apparatus in accordance with the invention is, however,
`configured to provide a transparent interface between the
`interconnected networks so that clients on either network
`can run standard network service applications transparently
`without extra procedures, or modifications to accomplish
`communications across the secure gateway. This maximizes
`user satisfaction and minimizes the risk of a client estab
`lishing a "back door' to a potentially hostile network.
`The methods and the apparatus in accordance with the
`invention therefore provide a novel communications gate
`way for interconnecting private and public networks which
`permit users to make maximum use of public services while
`providing a tool for maintaining an impeccable level of
`security for the private network.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`A preferred embodiment of the invention will now be
`further explained by way of example only and with refer
`ence to the following drawings, wherein:
`FIG. 1 is a schematic diagram of a preferred configuration
`for an apparatus in accordance with the invention for pro
`viding a secure gateway for data exchanges between a
`private network and a potentially hostile network;
`FIG. 2 is a schematic diagram of an IP header, a TCP and
`a UDP header in accordance with standard TCP/IP format;
`FIG.3 is a schematic diagram of ethernet encapsulation in
`accordance with RFC 894;
`FIG. 4 is a schematic diagram of a communications flow
`path between a gateway station in accordance with the
`invention, a client on a private network and a host on a
`public network;
`FIG. 5 is a flow diagram of a general overview of TCP
`routing by the kernel of a UNIX station in accordance with
`the prior art,
`FIG. 6 is a flow diagram of a general overview of TCP
`routing by a modified UNIX kernel in accordance with the
`invention;
`
`5,623,601
`
`10
`
`15
`
`20
`
`30
`
`35
`
`40
`
`50
`
`55
`
`60
`
`65
`
`

`

`5,623,601
`
`7
`FIG. 7a is a first portion of a flow diagram of a general
`overview of the implementation of the invention at the
`application level of a gateway station; and
`FIG.7b is a second portion of the flow diagram shown in
`FIG. 7a.
`
`8
`directly through the gateway station 14. As will be explained
`below in some detail, these functions have been replaced
`with processes which ensure that all communications data
`packets from the private network 10 to the public network
`12, or vice versa, are properly authenticated.
`Public network communications are typically in TCP/IP
`format. FIG. 2 shows a schematic diagram of an IP header
`26, a TCP header 28 and a UDP (User Datagram Protocol)
`header 30. Each IP header includes a 32-bit source IP
`address 32 and a 32-bit destination IP address 34. Each TCP
`header and each UDP header include a 16-bit source port
`number 36 and a 16-bit destination port number 38. Each
`communication data packet therefore includes a source
`address/source port number and a destination address/des
`tination port number, in accordance with this communica
`tions protocol which is well known in the art. In addition to
`the TCP/IP communications protocol, local area networks
`often operate using ethernet network control software which
`handles intranetwork communications. In accordance with
`ethernet protocol, TCP/IP packets are encapsulated with an
`ethernet encapsulation packet to facilitate routing and ensure
`error free transmission.
`FIG. 3 shows a schematic diagram of an ethernet encap
`sulation packet in accordance with RFC 894. Each encap
`sulation includes an ethernet destination address 40, an
`ethernet source address 42 and a check sum 44 for facili
`tating error detection and correction.
`FIG. 4 illustrates schematically a typical communications
`session between a client station 16 on the private network 10
`and a public host 46 on the public network 12. All commu
`nications between the networks are handled by the gateway
`station 14. When a client 16 wishes to communicate with the
`public network 12, such as in accessing a public host 46, the
`client 16 issues a network command as if the client were not
`behind a firewall. For instance, client 16 may issue the
`command:
`Telnet Target.Machine
`The private network 10 is configured so that all packets
`directed to the public network 12 are encapsulated with the
`ethernet destination address (192.168.77.1) of the gateway
`station 14. A TCP/IP packet encapsulated with the ethernet
`destination address of the gateway station 14 is therefore
`dispatched by the client 16. A normally configured UNIX
`device will not accept for processing TCP/IP packets which
`do not have an IP destination address equal to its own IP
`address. The kernel of the operating system of the gateway
`station 14 is modified so that the gateway station 14 will
`accept for processing any TCP/IP packet having an encap
`sulation destination address 40 that matches the device
`address of the gateway station 14. When the gateway station
`14 receives the client packet containing the Telnet com
`mand, a process is initiated on the gateway station 14 which
`responds to the client 16 to establish a communication
`session 17 as if it were the target machine. As will be
`explained below in detail, the process then authenticates the
`client's authorization to access the requested service and if
`the client 16 is determined to have the required authoriza
`tion, the gateway station 14 initiates a second communica
`tions process 19 with the remote host 46 in which the
`gateway station 14 simulates the client 16 without revealing
`the client address. Once the two communication sessions 17,
`19 are operative, communication is effected between the
`client 16 and the host 46 by passing communication data
`between the two interdependent communication sessions.
`This is accomplished by a process that operates at the
`application level on the gateway station 14, as will be
`explained in detail below. The process accepts communica
`
`10
`
`15
`
`20
`
`25
`
`35
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENT
`Most UNIX hosts communicate using TCP/IP protocol.
`The preferred embodiment of the invention is therefore
`constructed from a UNIX station having a UNIX operating
`system. While the preferred embodiment of the invention
`described below is explained with particular reference to the
`UNIX environment, it is to be well understood by those
`skilled in the art that the principles, concepts and methods
`described may be readily adapted to function with other
`inte

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