Abstract:
Disclosed is a method of transparently detecting authentication status of endpoint devices in a network. This method may be used for differentiating guest or rogue endpoints from enterprise endpoints.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates generally to the field of network security and management. More specifically, the present invention relates to a method for differentiating enterprise systems from guest/rogue machines on a network. 
       BACKGROUND 
       [0002]    Widespread use of networks to interconnect heterogeneous computer services is common today. Typically, in a distributed processing environment, a user will access an unsecured workstation and, using the workstation itself, access a variety of other computer services on the network. As the use of networks has increased, however, so have the problems relating to securing and controlling the legitimate access of users to the computer systems. 
         [0003]    Traditionally, access to computer services was controlled through the use of passwords. For each service, a user was associated with a user id and a password. Both the computer system and the user who wished to access a service had to know the password. The user provided the user id and the computer systems challenged the user to then provide the password. This initiated access to the system. 
         [0004]    In a distributed processing environment, a user often needs to access resources located at multiple servers from multiple workstations interconnected via a communications network. Authentication to each host accessed is crucial, but presenting separate user id/password pairs can be both unwieldy and unsecure. What is needed is a mechanism which requires users to identify and authenticate themselves once to a trusted agent which then performs the necessary user identification and authentication to each accessed resource transparently. This is known as unitary login. 
         [0005]    Previous work in developing secure unitary login protocols for distributed systems include those intended for open environments (e.g., the Massachusetts Institute of Technology Kerberos protocol, the Digital Equipment Corporation SPX protocol, the Carnegie Mellon University Strongbox protocol, and the ISO OSI Directory Services protocols) and those intended for closed environments (e.g., the World Wide Military Command and Control System (WWMCCS) Information System Network Authentication Service (WISNAS) protocol, the Department of Defense Intelligence Information System Network Security for Information Exchange (DNSIX) protocol, and the Strategic Air Command Intelligence Network (SACINTNET) protocol). Each of there protocols provides different authentication services, but a common property of all is the required workstation configuration, which may not always be possible or feasible. Organizations could greatly ease the problems associated with user authentication with a method for authenticating users without workstation configuration. 
         [0006]    There is a need in the field of network security and management for improved methods of transparently authenticating users and identifying enterprise machines that could otherwise not be identified. 
       SUMMARY OF THE INVENTION 
       [0007]    According to some embodiments of the present invention, there is provided a device and method by which to determine a status of an unauthenticated device connected to a data network. According to some embodiments of the present invention, data traffic between the unauthenticated device and an authentication server is monitored by a network monitoring device. According to some embodiments of the present invention, an unauthenticated device may be marked as guest upon discovery by the network monitoring device. In the event that the monitoring device detects a successful login, a record in a device status data table associated with the unauthenticated device may be updated to indicate that the device is a non-guest device. If the monitoring device detects one or more failed login attempts, a record in a device status data table may either be left unchanged or may be changed to indicate that the unauthenticated device is a rogue device. 
         [0008]    According to some embodiments of the present invention, the monitoring device may be connected to the network inline; namely, in the data path between the clients and the servers. According to some other embodiments of the present invention, the monitoring device may be connected not inline, in which case the device passively monitors network traffic that may be replicated to it by the communication equipment, or by other means. 
         [0009]    According to some embodiments of the present invention, the authentication server may be a server using a network protocol which allows or requires user authentication, such as, but not limited to, an HTTP web server, a Telnet server, a NetBIOS server, an FTP server, An MS Exchange server (MAPI) or a POP3 or IMAP4 mail server. According to some embodiments of the present invention, the administrator of the monitoring device may define which authentication servers are to be monitored. 
         [0010]    According to further embodiments of the present invention, the monitoring device may determine login success/failure based on the communication between the unauthenticated device and an authentication server. According to further embodiments of the present invention, a reply from the authentication server indicating success may be interpreted as a successful login, and a reply from the authentication server indicating failure or error may be interpreted as a login failure. 
         [0011]    According to some embodiments of the present invention, should the authentication succeed, the monitoring device may change the record in a device status data table associated with the unauthenticated device to indicate that the device is a non-guest device, and therefore may be allowed to access network resources which are limited to authenticated users only. According to some embodiments of the present invention, should the authentication fail the monitoring device may retain the guest status for the unauthenticated device and let it attempt authentication again, or may update its status to rogue device and further limit its access to the network. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  is a general topological diagram showing an exemplary integration of a network monitoring device into a network; 
           [0013]      FIG. 2  is a block diagram showing several possible configurations for connecting the monitoring device; 
           [0014]      FIG. 3  is a block diagram showing the functional blocks of a device according to some embodiments of the present invention; 
           [0015]      FIG. 4  is a symbolic data flow diagram showing an example of how our device may monitor data traffic between a client and an authentication server; 
           [0016]      FIG. 5  is a flow chart listing the steps of an exemplary method by which a device, in accordance with some embodiments of the present invention, may determine a network device&#39;s status; and 
           [0017]      FIG. 6  is a flow chart listing the steps of an exemplary method by which a device, in accordance with some embodiments of the present invention, may determine a network device&#39;s status. 
       
    
    
     DETAILED DESCRIPTION 
       [0018]    In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the present invention. 
         [0019]    Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the specification discussions utilizing terms such as “processing”, “computing”, “calculating”, “determining”, or the like, refer to the action and/or processes of a computer or computing system, or similar electronic computing device, that manipulate and/or transform data represented as physical, such as electronic, quantities within the computing system&#39;s registers and/or memories into other data similarly represented as physical quantities within the computing system&#39;s memories, registers or other such information storage, transmission or display devices. 
         [0020]    Embodiments of the present invention may include apparatuses for performing the operations herein, Such apparatus may be specially constructed for the desired purposes, or may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMS) electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, or any other type of media suitable for storing electronic instructions and capable of being coupled to a computer system bus. 
         [0021]    The processes and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description below. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the inventions described herein. 
         [0022]    According to some embodiments of the present invention, there are provided devices and methods to determine a status of an unauthenticated device connected to a data network. According to some embodiments of the present invention, data traffic between the unauthenticated device and an authentication server is monitored by a network monitoring device. According to some embodiments of the present invention, an unauthenticated device may be marked as guest upon discovery by the network monitoring device. In the event that the monitoring device detects a successful login, a record in a device status data table associated with the unauthenticated device may be updated to indicate that the device is a non-guest device. If the monitoring device detects one or more faded login attempts, a record in a device status data table may either be left unchanged or may be changed to indicate that the unauthenticated device is a rogue device. 
         [0023]    According to some embodiments of the present invention, the monitoring device may be connected to the network inline, in which case the device is in the data path between the clients and the servers and actively forwards network traffic. According to other embodiments of the present invention, the monitoring device may be connected not inline, in which case the device passively monitors network traffic that may be replicated to it by the communication equipment, or by other means. 
         [0024]    According to some embodiments of the present invention, the authentication server may be a server using a network protocol which allows or requires user authentication, such as, but not limited to, an HTTP web server, a Telnet server, a NetBIOS server, an FTP server, An MS Exchange server (MAR) or a POP3 or IMAP4 mail server. According to some embodiments of the present invention, the administrator of the monitoring device may define which authentication servers are to be monitored. 
         [0025]    According to further embodiments of the present invention, the monitoring device may determine login success/failure based on the communication between the unauthenticated device and an authentication server. According to further embodiments of the present invention, a reply from the authentication server indicating success may be interpreted as a successful login, and a reply from the authentication server indicating failure or error may be interpreted as a login failure. 
         [0026]    According to some embodiments of the present invention, should the authentication succeed, the monitoring device may change the record in a device status data table associated with the unauthenticated device to indicate that the device is a non-guest device, and therefore may be allowed to access network resources which are limited to authenticated users only. According to some embodiments of the present invention, should the authentication fail the monitoring device may retain the guest status for the unauthenticated device and let it attempt authentication again, or may update its status to rogue device and further limit its access to the network. 
         [0027]    According to some embodiments of the present invention, a network monitoring device may be computer software or computer hardware that can intercept traffic passing over a digital network or part of a network, such as a network traffic monitor, or integrated into a packet-forwarding device such as a router, firewall, switch, hub, or any other network-connected device. 
         [0028]    According to some embodiments of the present invention, an authentication server may be a server that provides authentication services to users or other systems. Users and other servers may authenticate to such a server, and may receive cryptographic tickets. These tickets may then be exchanged with one another to verify identity. 
         [0029]    According to further embodiments of the present invention, an authentication server may be a network-connected device running an authentication service (such as RADIUS, Kerberos, or any other service whose primary use is authentication) or a network service that supports authentication (such as SSH, HTTP, POP3, or IMAP). 
         [0030]    Turning now to  FIG. 1 , there is shown a general topological diagram showing an integration of a network monitoring device into a network, in accordance with some embodiments of the present invention. According to some embodiments of the present invention, monitoring device  10  may be connected to the network in a way that will allow it to monitor data traffic between one or more clients  52  and one or more authentication servers  20 . 
         [0031]    Various techniques for monitoring network traffic are known in the art and shall not be described in detail in the present application. The present invention is not limited to the use of any particular network monitoring technique. Rather, in accordance with some embodiments of the present invention, any network monitoring technique presently known or to be devised in the future may be used to determine the status of network devices. 
         [0032]    Turning now to  FIG. 2 , there is shown a block diagram depicting several possible configurations for connecting the monitoring device, in accordance some embodiments of the present invention. According to some embodiments of the present invention, the monitoring device may be connected to an access router or switch, allowing it to monitor and control network traffic related to client systems. According to some embodiments of the present invention, the monitoring device may be connected to a distribution router or switch, allowing it to monitor and control network traffic related to server systems. According to some embodiments of the present invention, the monitoring device may be connected to a core router or switch, allowing it to monitor and control most of the network traffic. 
         [0033]    Reference is now made to  FIG. 3 , which is a block diagram showing the functional blocks of a network monitoring device, according to some embodiments of the present invention. The functionality of the network monitoring device depicted in  FIG. 3  may be best described in conjunction with: (1)  FIG. 4 , which is a symbolic data flow diagram of an exemplary monitoring device which is adapted to monitor data traffic between a client and an authentication server, and (2)  FIG. 5 , which is a flow chart listing the steps of an exemplary method by which a device, in accordance with some embodiments of the present invention, may determine a network devices status. According to some embodiments of the present invention, a network monitoring device  10  may monitor network traffic using the network monitoring module  230  over the network connection  72 , as shown in step  2000 . According to some embodiments of the present invention, the monitoring module may inspect all data packets forwarded to it to identify network-connected systems and analyze their communications with various authentication servers. According to further embodiments of the present invention, the monitoring may be performed inline. According to alternative embodiments of the present invention, the monitoring may be performed not inline, where the monitoring device receives data replicated by the communication equipment (e.g. switches, hubs, routers etc.). 
         [0034]    According to some embodiments of the present invention, the monitoring device  10  may compare the source and/or destination of some or all of the data packets on the network to its device status table  250  to identify unauthenticated systems. Should the monitoring device  10  identify an unauthenticated system  30  connected to the network, as shown in step  2100 , it may add a record for it in the device status table  250  and mark it as a guest system, as shown in step  2200 . According to some embodiments of the present invention, the monitoring device  10  may look for authentication attempts by the unauthenticated system  30  to an authentication server  20 , as shown in step  2300 . According to further embodiments of the present invention, the monitoring device  10 &#39;s logic unit  230  may identify the unauthenticated system&#39;s login attempts by analyzing the communication protocol. 
         [0035]    According to some embodiments of the present invention, the monitoring device  10  may monitor the network traffic between the unauthenticated system  30  and the authentication server  20 , and the logic unit  230  may analyze the server&#39;s responses, as shown in step  2400 . According to further embodiments of the present invention, the logic unit  230  may analyze the communication protocol and look for data packets containing indication of successful logins, failed logins and/or errors. 
         [0036]    According to some embodiments of the present invention, should the monitoring device  10  detect successful authentication, as shown in step  2500 , it may change the unauthenticated system  30 &#39;s status in the device status table  250  from guest to authenticated. According to further embodiments of the present invention, the monitoring device  10  may instruct or otherwise cause other network equipment to change the system  30 &#39;s access permissions to allow it access to various network resources. 
         [0037]    According to some embodiments of the present invention, should the monitoring device  10  detect failed authentication or an error, it may increment a login failure counter in the device status table  250 , as shown in step  2600 . 
         [0038]    According to some embodiments of the present invention, should the login failure counter in the device status table  250  exceed a pre-defined value, the monitoring device  10  may change the unauthenticated system  30 &#39;s status in the device status table  250  from guest to rogue, as shown in step  2700 . According to further embodiments of the present invention, the monitoring device  10  may instruct or otherwise cause other network equipment to change the system  30 &#39;s access permissions to block its access to various network resources. According to some embodiments of the present invention, if login failure counter in the device status table  250  has not exceeded the pre-defined number of failures, the monitoring device  10  may retain the unauthenticated system  30 &#39;s guest status, as shown in step  2700 , and may continue monitoring its authentication attempts (step  2400 ). 
         [0039]    Reference is now made to: (1)  FIG. 3 , which is a block diagram showing the functional blocks of a device according to some embodiments of the present invention, (2)  FIG. 4 , which is a symbolic data flow diagram showing an example of how our device may monitor data traffic between a client and an authentication server, and (3)  FIG. 6 , which is a flow chart listing the steps of an exemplary method by which a device in accordance with some embodiments of the present invention may determine a network devices status. According to some embodiments of the present invention, a network monitoring device  10  may monitor network traffic using the network monitoring module  230  over the network connection  72  (step  3000 ). When the monitoring device  10  identifies an unauthenticated system  30  connecting to POP3 server  20  (step  3100 ) it marks it as a guest system in its device status table  250  and waits for data packets containing the USER and PASS keywords (step  3200 ). The monitoring device  10  monitors the network traffic between the unauthenticated system  30  and the authentication server  20  via the network monitoring module  230 , and the logic unit  220  analyzes the server  20 &#39;s response packets (step  3300 ). Should the authentication succeed (server  20  responds with +OK), the monitoring device  10  changes the unauthenticated system&#39;s status from guest to authenticated (step  3400 ). Should the authentication fail (server  20  responds with −ERR), the monitoring device  10  may retain the unauthenticated system&#39;s guest status (step  3500 ), and may let it attempt authentication again (step  3000 ). 
         [0040]    While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention.