Kerberos was conceived as a secure network authentication technology at Massachusetts Institute of Technology (MIT), where it continues to evolve. Using encryption as a seal, Kerberos credentials, or tickets, vouch for authenticated users. Because every node on the network exclusively trusts the Kerberos server, users’ credentials are valid throughout the network. This way, they theoretically have to log in only once. In addition, Kerberos can provide support for real-time encryption of network communications.
This is like keeping the doors in your city locked, but giving authorized citizens a key to every door. (Salowey) In the Open Systems Interconnect (OSI) model, Kerberos sits above the Network and Transport layers (above TCP/IP), meaning that it’s not as simple as adding a Kerberos module to your existing desktop operating system. Using Kerberos means replacing existing network applications with “Kerberized” applications that have been rewritten to take advantage of its services, such as automatic authentication and encrypted communications.
The question is, what is Kerberos and what can it do for my network? We implemented both Kerberos version 4 and beta releases of MIT’s new version 5 at our Syracuse University lab to get a better feel for this technology and to determine whether the protocol truly can solve network security problems. Examples cited in this workshop are in Kerberos 4 format, which is the version in use on most networks. Kerberos is an attractive technology, but it’s not a network security solution. We were disappointed to learn that Kerberos wasn’t going to solve our problems of networkwide user management.
Kerberos doesn’t replace even aged technology such as Sun Microsystems’ Network Information Service (NIS), since it doesn’t supply the necessary account information found in Unix’s /etc/passwd file or the ability to manage user rights or control access to network resources. Basically, Kerberos lacks the directory services that make products like Novell Directory Services (NDS) an attractive answer for network security management. (Anthes) The Kerberos protocol is designed to provide a networkwide user authority and includes support for applications to take advantage of its authentication and encryption services.
However, it doesn’t provide support for access control or auditing functions. This is like giving every citizen in your city a master key. In the Kerberos model, access rights are handled by individual services, not by Kerberos. It often is used to complement other services like TransArc’s Andrew File System (AFS) or the Open Software Foundation’s Distributed Computing Environment (DCE). These services use Kerberos to verify a user’s identity, but handle access control lists (ACLs) on their own. (Stallings) On its own, Kerberos shines in the UNIX environment.
Since most of the development is done there, Kerberos distributions contain a generous assortment of Kerberized applications. In fact, Kerberos does ship with some major versions of Unix, such as SunSoft’s Solaris. However, because of the federal government’s stringent export restrictions on the Data Encryption Standard (DES) encryption code used by Kerberos, the bundled Kerberos 4 utilities were stripped of their encryption functions. Our first task in installing Kerberos was to disable Solaris’ Kerberos support in favor of the real thing.
Microsoft Windows and Apple Macintosh client software, on the other hand, exist but support is quite spotty. Client support is usually broken into two pieces: ticket management utilities, which handle initial logins and manage service tickets, and Kerberized applications, which take advantage of pass-through authentication and encryption. We found that most Kerberized applications are often incompatible with ticket management utilities or simply didn’t work. DOS clients are provided by MIT, but are limited to a Novell LAN WorkPlace environment.
A dedicated user of Kerberos, the University of Michigan has developed fully functional Kerberos clients for both Windows95 and Macintosh, which are available via the Internet. However, we were unable to find Kerberized applications that worked with them. (Rubin) However, on the commercial side, we did find products like Cisco Systems’ (formerly TGV’s) TCP/IP Suite 100 that include ticket-management applications and Kerberized IP utilities. Also, QUALCOMM’s Eudora E-Mail package includes support for Kerberized Post Office Protocol (POP) sessions, providing users in a Kerberos environment with secure access to their e-mail.
However, if you’re looking for commercial support, consider DCE, which uses Kerberos as the foundation for its Security Service. The Kerberos Security Model. Kerberos is an implementation of a security model based on trust. It specifies an algorithm for authenticating users without transmitting passwords across the network in plain text. It provides a facility to distribute secret encryption keys in a secure fashion. Each host on a network trusts none other than the Kerberos server, pushing all security into a central ocation, which can be guarded more easily. To use Kerberos, a user first logs in and obtains a ticket-granting-ticket (TGT). This is later used to obtain service tickets from the Kerberos server when the user attempts to log into a remote host or service. Since the Kerberos server is trusted by every machine in the realm or region served by that Kerberos server, the tickets effectively vouch for users’ identities, granting them access to the machine. Also, Kerberos tickets contain session keys, which can be used to encrypt network traffic. Chappell) Since tickets provide unrestricted access to machines throughout the network, they are the target of any attacker wishing to break into the realm. We know that network transmissions can easily be intercepted, so Kerberos must protect these tickets from forgery. For this reason, Kerberos uses encrypted time stamps on transactions and adds an expiration time to every ticket. An intercepted ticket will become useless once it expires. By default, Kerberos rejects any tickets with a time stamp that is more than five minutes off.
This, however, means that nodes in the Kerberos realm should be set with the correct time. Kerberos Principals. User accounts in Kerberos are called principals. Every user, node or service on the network must have an entry in this database, and a corresponding encryption key (based on a password). Kerberos authenticates sessions between principals using tickets, which are encrypted using various principals’ keys. Authentication occurs when the server successfully decrypts a ticket to find the user’s identity. A Kerberos principal looks like this: dbackman. [email protected] syr. edu. This shows the administrative instance of a user named “dbackman” in a realm called “nwc. syr. edu. ” (Kerberos 5 separates the user name from the instance with a “/” character). The “admin” instance lets dbackman access the Kerberos database to update it. Be careful not to confuse instances with user groups. An instance is a separate account with a separate password; in this case, it controls who can edit the Kerberos database. Remember, Kerberos can’t assign user groups or rights; it can only verify a user’s identity. Stallings) Although Kerberos may not be where you want to go today, it’s a technology worth watching. MIT is working on the next generation of Kerberos, dubbed version 5, that will add features such as inter-realm authentication and credential-forwarding. Inter-realm authentication will let users authenticate with other realms throughout the Internet. Credential-forwarding will pass TGT to remote hosts when using a Kerberized network login instead of requiring the user to run kinit on the host. Works Cited Salowey, Joseph. Kerberos: A secure passport. http://www. csee. wvu. du/~cukic/Security/NotesKerberos. pdf#search=’Salowey%2C%20Joseph. 20%20Kerberos%3A%20A%20secure%20passport. ‘ Anthes, Gary. Kerberos code crack raises broader issues. http://static. highbeam. com/c/computerworld/february261996/kerberoscodecrackraisesbroaderissues/ Stallings, William. Kerberos keeps the enterprise secure. Rubin, Aviel. Kerberos Versus the Leighton-Micali Protocol. http://www. ddj. com/documents/s=879/ddj0011a/0011a. htm Chappell, David. Microsoft and the Kerberos Standard. http://www. microsoft. com/technet/prodtechnol/windows2000serv/evaluate/featfunc/msjkerb. mspx