Some New Attacks Upon Security Protocols

Total Page:16

File Type:pdf, Size:1020Kb

Some New Attacks Upon Security Protocols Some New Attacks upon Security Protocols Gavin Lowe Oxford University Computing Laboratory, Wolfson Building, Parks Road, Oxford, OX1 3QD, United Kingdom. [email protected] 1 Abstract messages , etc. Some of the attacks we present are implementation- Many security protocols have appeared in the literature, dependent, and we will describe necessary conditions for the with aims such as agreeing upon a cryptographic key, or attacks to succeed. We believe that a protocol speci®cation achieving authentication. However, many of these have can be considered secure only if all its implementations are been shown to be ¯awed. In this paper we present a number secure: if the security of a protocol depends upon certain as- of new attacks upon security protocols, and discuss ways in sumptions about the way it is implemented, then those as- which we may avoid designing incorrect protocols in the fu- sumptions need to be clearly stated. ture. Further, we believe that it is a bad idea to base the security of a protocol upon an assumption that is very hard to imple- ment. For example, the original design for the Kerberos pro- 1. Introduction tocol [19, 27] stated that live authenticators should be stored to detect replay attacks. However, Bellovin and Merritt [3] report that this was never implemented, and point out that a Many security protocols have appeared in the literature; security feature is not very useful if it is too hard to imple- these have various aims, such as agreeing upon a crypto- ment. We believe that it is better to design a protocol in such graphic key, or achieving authentication, where each agent a way that its security does not depend upon such implemen- becomes assured of the other's identity. Unfortunately, a tation requirements. large proportion of these protocols are subject to attacks, In the next section we de®ne precisely what we mean leading to them not correctly achieving their goals. In this by the term authentication. In the following sections, we paper, we present a few more attacks upon such protocols. present attacks upon four different protocols. We close by The main point of this paper is to highlight the fact that, summing up, and suggesting ways of producing more reli- despite much research on the subject, many insecure pro- able protocols. tocols are still being produced. Further, most of the weak- nesses that allow the attacks are well known. Our hope is that by highlighting these errorsÐonce againÐprotocol de- 2. What is authentication? signers will avoid making the same mistakes in future. We will have more to say on this subject in the concluding sec- Most of the errors caused by the attacks in this paper are tion. errors of authentication, and so we make clear here what we Our notation is very standard. The protocols are be- understand by the term ªauthenticationº. B A tween agents A and , sometimes with the help of a trusted We say that an agent accepts the identity of another S N B server . We denote nonces by a , etc.; the subscripts agent if it has completed enough of the protocol that it B denote their origin. We denote a key shared between A should be assured of 's identity. This will normally be im- B K m A and by ab , etc. We denote message encrypted with mediately after the last message that is supposed to re- k fmg m A key by k . We denote message signed by agent ceive in the protocol; note that this may be before the ®nal S (m) A by A : we do not specify how this signing is imple- message of the protocol run, if, for example, then sends B mented. We denote an attacker by I ; when the attack im- some acknowledgement back to . A I personates an agent to send a message, we denote this A ; We say that a protocol correctly achieves authentica- A we use the same notation to denote I intercepting a message tion if whenever an agent accepts the identity of another B B intended for A. When an attack requires several runs of the agent , it must be the case then believes that he has been A protocol, we will denote the runs , , etc., and denote the running the protocol with , and the records of the messages sent and received at the two ends should match (and simi- server S . A B larly when B accepts 's identity). That is, if sent a mes- 1 A B : A N Msg a A A m sage m intended for , then received a message appar- 2 B A : B N Msg b ently from B , and vice versa. We further require that there 3 A B : fA B N N g b K Msg a as B is a one-one relationship between A's runs and those of , fA B N N g 4 B S : fA B N N g a b K b K Msg a as bs B so A does not believe he has completed two runs, when 5 S B : fB N N K g b ab K Msg a has carried out only a single run, for example. as fA N N K g a b ab K bs fN N g B A : fB N N K g This de®nition of authentication is Roscoe's intensional 6 a b K b ab K Msg a as ab A B : fN g speci®cation [23]. It is the same as Gollmann's speci®ca- 7 K Msg b ab tion G4 in [11]: B If A wants to establish a session with , he sends him a nonce (message 1). B responds by returning another nonce The origin of all messages in the protocol has to (message 2). A then prepares an encrypted message for the be authenticated. server, containing the two agents' identi®ers and the two B nonces, and sends it to B (message 3). forwards this mes- sage to the server, along with a similar message of his own Dif®e et al. [10] have a similar de®nition of authentica- creation (message 4). When the server receives this mes- B tion. They specify that if A accepts the identity of , then sage, he checks that the agent identities and nonces agree, B A B 's record of the run must match 's: every message that K and if so selects a new key ab to be used in the subsequent B sends or receives during the run must correspond to a mes- session between A and . The server creates two encrypted A B B sage received or sent by , and vice versa. This differs from components, one for each of A and , and returns both to B our de®nition in that may have been intending his mes- (message 5). B decrypts his component to obtain the key, C sages to be received by a third agent, say. The de®nitions and then forwards the other component to A, along with a A coincide if each message contains the identities of the (ap- K component encrypted with ab to convince that he knows parent) sender and the (intended) recipient, as will be the the key (message 6). Finally, A decrypts his component to case in most implementations. learn the key, and returns a message to B to convince him Our de®nition of authentication is quite strong, but we that he knows the key (message 7). believe that it is the right one. It essentially insists that all The attack we will present depends upon a couple of as- protocol runs are as the protocol designer intended. sumptions. We assume that nonces and keys are simply se- quences of bits, without any typing information; hence any Some de®nitions of authentication, such as Gollmann's such bit sequence of the right length will be accepted as a B speci®cation G3 [11], insist that if A accepts 's identity nonce or a key. Further, we assume that the bit sequences then B must mearly be present, rather than necessarily tak- representing agent identi®ers, nonces and keys are all of the ing part in a run matching A's. This weaker speci®cation same length, which means, for example, that a nonce may allows the case where B thinks he has been running the pro- be accepted as a key. A tocol with some other agent, and may never have heard of . 0 In the following, ªbit-stringº, ªbit-string º, etc. represent It also allows cases where B agrees that it has been running any sequences of bits that may be accepted as being of the the protocol with A, but the two agents disagree about some fA B N N g b k form a by an agent who does not possess the of the details; for example: (1) both agents may believe that key k Ðthat is, any bit sequences of the appropriate length; it was they who initiated the protocol run; or (2) the agents in the attack, no agent ever tries to decrypt these messages, may disagree over the value of some nonce exchanged dur- so any such sequences of bits will do. The attack can be de- ing the run. In these cases, it would be incorrect for either scribed as follows: agent to take some action in the resulting session that de- 1 I B : A B pended upon the exact form of the protocol run. Msg A 2 B I : B N b Msg A 3 I B : Msg A bit-string 4 B I : fA B B N g b K Msg S bit-string 3.
Recommended publications
  • Pluggable Authentication Modules
    Who this book is written for This book is for experienced system administrators and developers working with multiple Linux/UNIX servers or with both UNIX and Pluggable Authentication Windows servers. It assumes a good level of admin knowledge, and that developers are competent in C development on UNIX-based systems. Pluggable Authentication Modules PAM (Pluggable Authentication Modules) is a modular and flexible authentication management layer that sits between Linux applications and the native underlying authentication system. The PAM framework is widely used by most Linux distributions for authentication purposes. Modules Originating from Solaris 2.6 ten years ago, PAM is used today by most proprietary and free UNIX operating systems including GNU/Linux, FreeBSD, and Solaris, following both the design concept and the practical details. PAM is thus a unifying technology for authentication mechanisms in UNIX. This book provides a practical approach to UNIX/Linux authentication. The design principles are thoroughly explained, then illustrated through the examination of popular modules. It is intended as a one-stop introduction and reference to PAM. What you will learn from this book From Technologies to Solutions • Install, compile, and configure Linux-PAM on your system • Download and compile third-party modules • Understand the PAM framework and how it works • Learn to work with PAM’s management groups and control fl ags • Test and debug your PAM confi guration Pluggable Authentication Modules • Install and configure the pamtester utility
    [Show full text]
  • Kerberos: an Authentication Service for Computer Networks by Clifford Neuman and Theodore Ts’O
    Kerberos: An Authentication Service for Computer Networks by Clifford Neuman and Theodore Ts’o Presented by: Smitha Sundareswaran Chi Tsong Su Introduction z Kerberos: An authentication protocol based on cryptography z Designed at MIT under project Athena z Variation of Needham Schroeder protocol - Difference: Kerberos assumes all systems on the network to be synchronized z Similar function as its mythological namesake: “guards” the access to network protocols Contribution z Defines ideas of authentication, Integrity, confidentiality and Authorization z Working of Kerberos z Limitations z Utilities z How to obtain and use Kerberos z Other methods to improve security Why Kerberos? z Foils threats due to eavesdropping z More convenient than password based authentication { Allows user to avoid “authentication by assertion” z Authentication based on cryptography: attacker can’t impersonate a valid user How Kerberos Works z Distributed authentication service using a series of encrypted messages {Password doesn’t pass through the network z Timestamps to reduce the number of messages needed for authentication z “Ticket granting Service” for subsequent authentication Kerberos Authentication and Encryption zAuthentication proves that a client is running on behalf of a particular user zUses encryption key for authentication {Encryption key = Password zEncryption implemented using DES {Checksum included in message checksum and encryption provide integrity & confidentiality The Kerberos Ticket z Initially, client and Server don’t share an encryption
    [Show full text]
  • Feature Description
    NTLM Feature Description UPDATED: 19 March 2021 NTLM Copyright Notices Copyright © 2002-2021 Kemp Technologies, Inc. All rights reserved. Kemp Technologies and the Kemp Technologies logo are registered trademarks of Kemp Technologies, Inc. Kemp Technologies, Inc. reserves all ownership rights for the LoadMaster and Kemp 360 product line including software and documentation. Used, under license, U.S. Patent Nos. 6,473,802, 6,374,300, 8,392,563, 8,103,770, 7,831,712, 7,606,912, 7,346,695, 7,287,084 and 6,970,933 kemp.ax 2 Copyright 2002-2021, Kemp Technologies, All Rights Reserved NTLM Table of Contents 1 Introduction 4 1.1 Document Purpose 6 1.2 Intended Audience 6 1.3 Related Firmware Version 6 2 Configure NTLM Authentication 7 2.1 Configure Internet Options on the Client Machine 7 2.2 Configure the LoadMaster 11 2.2.1 Enable NTLM Proxy Mode 13 2.2.2 Configure the Server Side SSO Domain 13 2.2.3 Configure the Client Side SSO Domain 15 2.2.4 Configure the Virtual Service 15 2.3 Configure Firefox to Allow NTLM (if needed) 17 2.4 Troubleshooting 18 References 19 Last Updated Date 20 kemp.ax 3 Copyright 2002-2021, Kemp Technologies, All Rights Reserved NTLM 1 Introduction 1 Introduction NT LAN Manager (NTLM) is a Windows Challenge/Response authentication protocol that is often used on networks that include systems running the Windows operating system and Active Directory. Kerberos authentication adds greater security than NTLM systems on a network and provides Windows-based systems with an integrated single sign-on (SSO) mechanism.
    [Show full text]
  • OK: Oauth 2.0 Interface for the Kerberos V5 Authentication Protocol
    OK: OAuth 2.0 interface for the Kerberos V5 Authentication Protocol James Max Kanter Bennett Cyphers Bruno Faviero John Peebles [email protected] [email protected] [email protected] [email protected] 1. Problem Kerberos is a powerful, convenient framework for user authentication and authorization. Within MIT, Kerberos is used with many online institute services to verify users as part of Project Athena. However, it can be difficult for developers unfamiliar with Kerberos development to take advantage of its resources for use in third-party apps. OAuth 2.0 is an open source protocol used across the web for secure delegated access to resources on a server. Designed to be developer-friendly, OAuth is the de facto standard for authenticating users across sites, and is used by services including Google, Facebook, and Twitter. Our goal with OK Server is to provide an easy way for developers to access third-party services using Kerberos via OAuth. The benefits of this are twofold: developers can rely on an external service for user identification and verification, and users only have to trust a single centralized server with their credentials. Additionally, developers can request access to a subset of Kerberos services on behalf of a user. 2. Implementation overview Our system is composed of two main components: a server (the Kerberos client) to retrieve and process tickets from the MIT KDC, and an OAuth interface (the OAuth server) to interact with a client app (the app) wishing to make use of Kerberos authentication. When using our system, a client application uses the OAuth protocol to get Kerberos service tickets for a particular user.
    [Show full text]
  • Chapter 15-70-411FINAL[1]
    Lesson 15: Configuring Service Authentication MOAC 70-411: Administering Windows Server 2012 Overview • Exam Objective 5.1: Configure Service Authentication • Configuring Service Authentication • Managing Service Accounts © 2013 John Wiley & Sons, Inc. 2 Configuring Service Authentication Lesson 15: Configuring Service Authentication © 2013 John Wiley & Sons, Inc. 3 Authentication • Authentication is the act of confirming the identity of a user or system and is an essential part used in authorization when the user or system tries to access a server or network resource. • Two types of authentication that Windows supports are NT LAN Manager (NTLM) and Kerberos. • Kerberos is the default authentication protocol for domain computers. • NTLM is the default authentication protocol for Windows NT, standalone computers that are not part of a domain, and situations in which you authenticate to a server using an IP address. © 2013 John Wiley & Sons, Inc. 4 Understanding NTLM Authentication • NT LAN Manager (NTLM) is a suite of Microsoft security protocols that provides authentication, integrity, and confidentiality to users. • NTLM is an integrated single sign-on mechanism. • NTLM uses a challenge-response mechanism for authentication in which clients are able to prove their identities without sending a password to the server. © 2013 John Wiley & Sons, Inc. 5 Managing Kerberos Kerberos: • Is a computer network authentication protocol, which allows hosts to prove their identity over a non-secure network in a secure manner. • Can provide mutual authentication
    [Show full text]
  • Security and Performance of Single Sign-On Based on One-Time Pad Algorithm
    cryptography Article Security and Performance of Single Sign-On Based on One-Time Pad Algorithm Maki Kihara *,†,‡ and Satoshi Iriyama ‡ Department of Information Science, Tokyo University of Science, Yamazaki 2641, Noda, Chiba 278-8510, Japan; [email protected] * Correspondence: [email protected] † Research Fellow of Japan Society for the Promotion of Science. ‡ These authors contributed equally to this work. Received: 13 April 2020; Accepted: 9 June 2020; Published: 12 June 2020 Abstract: Single sign-on (SSO) techniques allow access control for multiple systems with a single login. The aim of our study is to construct an authentication algorithm that provides the authentication information of a user to a requester without requiring any specific token, thereby achieving domain-free access control. In this study, we propose an authentication algorithm for SSO based on a verifiable encryption (VE)-based authentication algorithm and implementation. VE is a kind of cryptosystem that allows calculation on cyphertexts, generating an encrypted result, which matches the distance between two plaintexts when decrypting. In our approach, we first construct the mathematical SSO algorithm based on the VE-based algorithm, and then implement the algorithm by applying the one-time pad to the algorithm and using sample data. We also consider robustness against theoretical attacks such as man-in-the-middle attack. In addition to that, our algorithm is robust against the well-known classical and theoretical attacks, the man-in-the-middle attack against the proposed algorithm is also impracticable. Furthermore, with security analysis using Proverif, the algorithm has been shown to be secure. The execution speed is less than 1 ms even with a text length of 8192 bits.
    [Show full text]
  • Weaknesses and Best Practices of Public Key Kerberos with Smart Cards
    iSEC Partners, Inc. – Brad Hill, Principal Consultant Weaknesses and Best Practices of Public Key iSEC Partners, Inc. is Kerberos with Smart Cards a information security firm that specializes in Kerberos V with smart card logon is the “gold standard” of network application, network, authentication for Windows Active Directory networks and interop- host, and product erating systems. Smart cards and Public Key Kerberos are already security. For more widely deployed by governments and large enterprises to protect information about their networks and critical infrastructure, and decreasing prices and iSEC, please refer to an increase in threats against password-based authentication are the Appendix A or making these technologies attractive to even small and medium www.isecpartners.com sized businesses. Unfortunately, network architects, administrators and even experi- enced security professionals tend to place a sort of blind faith in smart cards and Kerberos. The low level details of the protocols and configuration options are little known. Myths and misunder- standings about the limits of these technologies are the norm. This whitepaper will: Give a brief introduction to Kerberos and smart cards Dispel some common myths about smart cards Explore the certificate validation practices of common PKINIT implementations Discuss a practical elevation of privilege exploit possible in common configurations of Windows KDCs Provide step-by-step advice to network architects and administra- tors for securing their smart card deployments While smart cards have definite advantages over passwords, they should be deployed with a realistic understanding of the actual pro- tections they provide. Installations should take advantage of the latest configuration and hardening options available, administrators should continue to audit and work to eliminate outdated protocols like NTLM from their networks, and privileged users should always exercise caution when authenticating to low-integrity workstations, even with a smart card.
    [Show full text]
  • Leveraging the Kerberos Credential Caching Mechanism for Faster Re-Authentications in Wireless Access Networks
    UBICOMM 2010 : The Fourth International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies EAP-Kerberos: Leveraging the Kerberos Credential Caching Mechanism for Faster Re-authentications in Wireless Access Networks Saber Zrelli Yoichi Shinoda Nobuo Okabe Center for Information Science Corporate R&D Headquarters Japan Advanced Institute of Science and Technology Yokogawa Electric Corporation Ishikawa, Japan Tokyo, Japan [email protected] saber.zrelli,[email protected] Abstract—Although the wireless technology nowadays provides support cross-domain authentication that enables an access satisfying bandwidth and higher speeds, it still lacks improve- network to authenticate a roaming client that belongs to a ments with regard to handoff performance. Existing solutions remote domain. The cross-domain authentication requires for reducing handoff delays are specific to a particular network technology or require expensive upgrades of the whole infras- message exchange between the AAA server of the visited tructure. In this paper, we investigate performance benefits of network and the AAA server of the roaming station’s home leveraging the Kerberos ticket cashing mechanism for achieving network. Because these inter-domain exchanges occur over the faster re-authentications in IEEE 802.11 wireless access networks. Internet, they are subject to degradations such as packet loss For this purpose, we designed a new EAP authentication method, and network delays which increases the overall authentication EAP-Kerberos, and evaluated re-authentication performance in different scenarios. time. When a roaming station changes of access point, the same authentication procedure takes place again, disrupting Keywords-Wireless; Authentication; Handoff; Performance the user traffic at each handoff. I.
    [Show full text]
  • Kerberos Cross-Realm Authentication: Unraveling the Mysteries Stuart J
    Paper SAS623-2017 Kerberos Cross-Realm Authentication: Unraveling the Mysteries Stuart J. Rogers, SAS Institute Inc., Cary, NC ABSTRACT How do you enable strong authentication across different parts of your organization in a safe and secure way? We know that Kerberos provides us with a safe and secure strong authentication mechanism, but how does it work across different domains or realms? In this paper, we examine how Kerberos cross- realm authentication works and the different parts that you need ready in order to use Kerberos effectively. Understanding the principles and applying the ideas we present will make you successful at improving the security of your authentication system. INTRODUCTION Kerberos security is being implemented by a growing number of customers to enable strong authentication across different parts of an organization in a safe and secure way. SAS® is designed to work within this secure environment. I hope that this paper will help you to unravel the mysteries of Kerberos for SAS administrators, and enables you to work more closely with your IT and Security counterparts when SAS is deployed in an environment that uses Kerberos for basic authentication, and in the more complex case of cross-realm authentication. Kerberos authentication provides us with a strong mechanism to authenticate users across a network, enabling us to have confidence in the authentication of end-users to our networked applications. However, as organizations grow in size and complexity, so does the network across which we need to authenticate users. In this paper we will examine how Kerberos authentication operates, the different components used to authenticate the users, and we will take a step-by-step view of how the Kerberos protocol messages enable strong authentication (see the section titled “Kerberos 101”).
    [Show full text]
  • Section E.2.1 Kerberos Authentication and Authorization System by S
    PROJECT ATHENA TECHNICAL PLAN Section E.2.1 Kerberos Authentication and Authorization System by S. P. Miller, B. C. Neuman, J. I. Schiller, and J. H. Saltzer Κερβεροσ; also spelled Cerberus. "n. The watch dog of Hades, whose duty it was to guard the entranceÐagainst whom or what does not clearly appear; . is known to have had three heads. ." ÐAmbrose Bierce, The Enlarged Devil's Dictionary This document describes the assumptions, short and long term goals, and system model for a network authentication system, named Kerberos, for the Athena environment. An appendix specifies the detailed design and protocols to support these goals, and a set of UNIX1 manual pages, not included here, describes an implementation for Berkeley 4.3 UNIX of both user interface commands and also library interfaces for clients and servers. The next section of the technical plan, E.2.2, describes a set of network applications that use Kerberos for authentication. Definitions Accounting Measuring resource usage attributable to a particular client. Authentication Verifying the claimed identity of a client or service. Authorization Allowing an authenticated client to use a particular service. Client A program that makes use of a network service, on behalf of a user. KDBM Kerberos Data Base Manager, a system that maintains and provides an interface for update of authoritative Kerberos data consisting of principal identifiers and private keys for both clients and services. Kerberos Aside from the 3-headed dog guarding Hades, the name given to the Athena authentication service, the protocol used by that service, and the libraries used to invoke the authentication and authorization services.
    [Show full text]
  • Analysis and Literature Review of IEEE 802.1X (Authentication) Protocols
    International Journal of Engineering and Advanced Technology (IJEAT) ISSN: 2249 – 8958, Volume-3, Issue-5, June 2014 Analysis and Literature Review of IEEE 802.1x (Authentication) Protocols Umesh Kumar , Praveen Kumar, Sapna Gambhir Abstract — This paper gives us detailed study of some of the commonly used EAP authentication protocol. But before understanding these authentication methods we have to understand what EAP is and how EAP work because it’s all start with EAP. So our aim in this paper is to provide detailed study of EAP and its architecture. This paper also covers literature review of authentication protocols. EAP is a frame work and it consists of different types of protocols nearly forty but we will study only those protocols which are very common in use and also their advantages and disadvantages. Index Terms —EAP, MD5, LEAP, TLS, TTLS, PEAP. I. INTRODUCTION The IEEE 802.11 standard is most popular standard for WLANs.802.1x protocol known as Port based protocol and proposed by IEEE. Its main task is to solve WLAN user authentication. Authentication is the process of verifying user’s identities when they want to use the server resources. Figure 1 There are different types of authentication methods but before It consists of two logic ports: controlled port and study these we have to understand the basic mechanism of its non-controlled port. If the user is certified then controlled port working. is used but when user is not certified then non-controlled port are used for communication. II. EAP OVERVIEW AS (Authentication Server): Authentication Server also EAP [1] is stands for Extensible Authentication Protocol.
    [Show full text]
  • Framework External Authentication Reference Manual
    Framework External Authentication Reference Manual Kerberos External Authentication 9/29/2021 Kerberos External Authentication Kerberos External Authentication Contents • 1 Kerberos External Authentication • 1.1 Overview • 1.2 Deploying Kerberos External Authentication • 1.3 Character Case Considerations • 1.4 Redundant Configuration Servers • 1.5 Using Kerberos with Multiple Windows Active Directory Domains • 1.6 Configuration Options • 1.7 Troubleshooting Framework External Authentication Reference Manual 2 Kerberos External Authentication This chapter describes how Configuration Server supports Kerberos external authentication for Genesys user interface applications. Overview Configuration Server and Configuration Server Proxy support the use of the Kerberos authentication protocol for user authentication in Genesys user interface applications. Kerberos enables secure communication between nodes over a non-secure network, using tickets to enable the nodes to prove their identity to each other in a secure manner. Configuration Server uses Windows Active Directory and MIT key distribution centers to implement Kerberos authentication. Kerberos vs RADIUS/LDAP Kerberos, RADIUS, and LDAP are all types of external authentication. However, Kerberos differs from the existing external authentication protocols (RADIUS, LDAP, and others) by when the authentication is performed, as follows: • Existing external authentication protocols operate in “in behind” mode. That is, the authentication is carried out when the interface application sends the request to Configuration Server, which then forwards it to the authentication system. • Kerberos operates in “in front” mode. The authentication is activated on the client side before a connection to Configuration Server is made. When the actual connection to Configuration Server is made, the interface gets an authentication ticket (a Kerberos token) that is already authenticated.
    [Show full text]