“Resilient Authentication Service”
Master’s thesis, Faculty of Sciences, University of Lisbon, Jan. 2013
Abstract: The increasing use of the wireless networks in the last years has created the demand for authentication and authorization for these networks. The basic model usually requires a user, to access the network, authenticate itself before the authentication server using its credentials. Authentication and authorization in networks with the large number of users is usually achieved using the WPA-Enterprise mode. WPA-Enterprise allows the use of the external authentication server to validate user credentials and determinate his rights. Most common and widely used protocol for WPA-Enterprise is RADIUS, which follows AAA architecture. Normally RADIUS servers are running in a single machine and in a single process. If RADIUS server stops users are unable to authenticate and access the network. To solve this problem, most RADIUS servers are replicated for redundancy and load management. AAA architecture and RADIUS protocol fail completely in case of server Byzantine behavior, i.e., if a failure makes the system present arbitrary behavior. In case of intrusion on authentication server, the attacker is able to access user credentials and other sensible data, such as server certificates. The major focus of this work is to develop a resilient, fault- and intrusion-tolerant authentication server for WPA-Enterprise wireless networks, without changing existent systems. To meet these objectives we implemented a replicated RADIUS-compliant protocol, which uses EAP-TLS as its authentication method. Fault and intrusion tolerance is ensured using state machine replication, together with a tamper-proof component used for storing cryptographic keys related with user credentials. The service was evaluated and compared with a popular non-fault-tolerant solution, which is used in the eduroam network, FreeRADIUS. Initial results demonstrate the applicability of the proposed solution.
Research line(s): Fault and Intrusion Tolerance in Open Distributed Systems (FIT)