15-412. Factotum Sep. 23, 2013



Similar documents
Kerberos. Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, BC. From Italy (?).

CSE331: Introduction to Networks and Security. Lecture 29 Fall 2006

Bypassing Local Windows Authentication to Defeat Full Disk Encryption. Ian Haken

Kerberos and Single Sign-On with HTTP

Connecting Web and Kerberos Single Sign On

Basic network security threats

System Security Services Daemon

Authentication Applications

Two SSO Architectures with a Single Set of Credentials

Integration with Active Directory. Jeremy Allison Samba Team

Password Power 8 Plug-In for Lotus Domino Single Sign-On via Kerberos

Security in OSG. Tuesday afternoon, 3:15pm. Igor Sfiligoi Member of the OSG Security team University of California San Diego

IceWarp Server - SSO (Single Sign-On)

Mac OS X Directory Services

Network Security Protocols

Guide to SASL, GSSAPI & Kerberos v.6.0

How To Use Kerberos

Module 8. Network Security. Version 2 CSE IIT, Kharagpur

Authentication Types. Password-based Authentication. Off-Line Password Guessing

Theorie Practical part Outlook. Kerberos. Secure and efficient authentication and key distribution. Johannes Lötzsch and Meike Zehlike

2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries

TOPIC HIERARCHY. Distributed Environment. Security. Kerberos

OPC UA vs OPC Classic

Kerberos authentication made easy on OpenVMS

Cryptography and network security CNET4523

MAPI Connector Overview

Going in production Winbind in large AD domains today. Günther Deschner (Red Hat / Samba Team)

CS 494/594 Computer and Network Security

Hadoop Security Design

How to build an Identity Management System on Linux. Simo Sorce Principal Software Engineer Red Hat, Inc.

Chapter 4. Authentication Applications. COSC 490 Network Security Annie Lu 1

Secure PostgreSQL Deployments

Architecture of Enterprise Applications III Single Sign-On

Single Sign-on (SSO) technologies for the Domino Web Server

ENABLING SINGLE SIGN-ON: SPNEGO AND KERBEROS Technical Bulletin For Use with DSView 3 Management Software

Leverage Active Directory with Kerberos to Eliminate HTTP Password

Kerberos and Single Sign On with HTTP

Kerberos planning, and then we're going to take a deep dive look at how we actually configure Kerberos for the relational database engine.

MIT Kerberos Software Development Roadmap

Use Enterprise SSO as the Credential Server for Protected Sites

SYSTEM MODEL KERBEROS OBJECTIVES PHYSICAL SECURITY TRUST: CONSOLIDATED KERBEROS MODEL TRUST: BILATERAL RHOSTS MODEL

CRYPTOGRAPHY AS A SERVICE

Secure Remote Password (SRP) Authentication

Go2Group JaM Plugin. Atlassian JIRA add-on for HP Quality Center. Quick Install Guide

Configuring Security Features of Session Recording

Hadoop Security Analysis NOTE: This is a working draft. Notes are being collected and will be edited for readability.

Jeff's Crystal Ball, and theisco Extreme Network Infrastructure

Kerberos-Based Authentication for OpenStack Cloud Infrastructure as a Service

Deploying PostgreSQL in a Windows Enterprise

Authentication in WLAN

NIST PKI 06: Integrating PKI and Kerberos (updated April 2007) Jeffrey Altman

Stealing credentials for impersonation

OpenID Single Sign On and OAuth Data Access for Google Apps. Ryan Dave Primmer May 2010

GNU Network Security Labyrinth. - or: an howto for network application authors. TLS SASL Kerberos GSS-API

Kerberos and Active Directory symmetric cryptography in practice COSC412

Configuring Integrated Windows Authentication for JBoss with SAS 9.3 Web Applications

NODE4 SERVICE DESK SYSTEM

Toolbox 3.3 Client-Server Configuration. Quick configuration guide. User manual. For the latest news. and the most up-todate.

G-Lock EasyMail7. Admin Guide. Client-Server Marketing Solution for Windows. Copyright G-Lock Software. All Rights Reserved.

Attestation and Authentication Protocols Using the TPM

Securing your Virtual Datacenter. Part 1: Preventing, Mitigating Privilege Escalation

Cloud Services ADM. Agent Deployment Guide

SIMIAN systems. Sitellite LDAP Administrator Guide. Sitellite Enterprise Edition

Configuring Integrated Windows Authentication for Oracle WebLogic with SAS 9.2 Web Applications

CS 356 Lecture 28 Internet Authentication. Spring 2013

Remote access. Contents

Basic network security threats

Defender EAP Agent Installation and Configuration Guide

QUANTIFY INSTALLATION GUIDE

Security in Plan 9. Russ Cox, MIT LCS Eric Grosse, Bell Labs Rob Pike, Bell Labs Dave Presotto, Avaya Labs and Bell Labs Sean Quinlan, Bell Labs

Configuring Squid Proxy, Active Directory Authentication and SurfProtect ICAP Access

Authentication. Computer Security. Authentication of People. High Quality Key. process of reliably verifying identity verification techniques

Configuring Integrated Windows Authentication for JBoss with SAS 9.2 Web Applications

Kerberos on z/os. Active Directory On Windows Server William Mosley z/os NAS Development. December Interaction with.

KERBY KERBEROS CREDENTIALS MANAGER SYSTEM FOR ANDROID. Deborah Chen, Catherine Zuo, Shiyang Liu, Isra Shabir

Network Security. Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

LDAP User Service Guide 30 June 2006

Integrating Kerberos into Apache Hadoop

Authentication. Agenda. IT Security course Lecture April 14 th Niels Christian Juul 2. April 14th, 2003

Integrating Mac OS X 10.6 with Active Directory. 1 April 2010

CAC AND KERBEROS FROM VISION TO REALITY

Open Directory. Apple s standards-based directory and network authentication services architecture. Features

BUSINESS ONLINE BANKING QUICK GUIDE For Company System Administrators

FreeIPA 3.3 Trust features

1 Introduction FrontBase is a high performance, scalable, SQL 92 compliant relational database server created in the for universal deployment.

CS 416: Opera-ng Systems Design

Cryptography and Network Security

/ Preparing to Manage a VMware Environment Page 1

Windows Advanced Audit Policy Configuration

Dashlane Security Whitepaper

Lecture 10 - Authentication

Active Directory Management. Agent Deployment Guide

A Secure Authenticate Framework for Cloud Computing Environment

FreeIPA - Open Source Identity Management in Linux

User Guide. Copyright 2003 Networks Associates Technology, Inc. All Rights Reserved.

OpenAFS Backup Strategies

Author: Joshua Meckler

CS 4803 Computer and Network Security

Authentication Applications

Using Kerberos tickets for true Single Sign On

Transcription:

15-412 Factotum Sep. 23, 2013 Dave Eckhardt 1 Factotum

Left Out (of P9/9P Lecture) The whole authentication thing There is an auth server much like a Kerberos KDC There is an authentication fle system for each user logged in to the system (system meaning all the nodes) All authentication code (client, server) is in the auth server or in the per-user authentication fle system (called factotum) A story for another day 2

Outline Kerberos in a hurry Factotum in a hurry Monkey in the middle 3

Kerberos Philosophy exam question Defne: universe. Give two examples. 4

Kerberos System description N users, M servers, mutual authentication Symmetric aka private-key crypto for speed N+M secret keys instead of N*M Good luck getting users to remember M keys! 5

Kerberos System description N users, M servers, mutual authentication Symmetric aka private-key crypto for speed N+M secret keys instead of N*M Good luck getting users to remember M keys!» That would be like the web or something! 6

Kerberos Implementation User remembers one secret key (often a password ) User obtains a ticket-granting ticket From a KDC, key-distribution center Works for 24 hours (by default) User obtains server tickets From TGS, ticket-granting server Using a valid, non-expired TGT each time Server tickets generally expire when the TGT expires User presents server ticket to each server Side effect: user and server get a symmetric-cipher key» Ephemeral session key - just for this conversation 7

Kerberos Implementation - really???? What do we mean user I thought the user remembered only one password? What's with the TGT, server tickets, session keys, etc.? 8

Kerberos We didn't really mean user Each user session has a ticket fle / credential cache (the old, V4, name is more accurate) Every program doing Kerberos authentication Checks tkfle/ccache for an existing server ticket Runs TGT-to-ticket protocol if not Stores server ticket in tkfle/ccache Luckily this is all encapsulated in a bunch of shared libraries 9

Kerberos We didn't really mean user Each user session has a ticket fle / credential cache (the old, V4, name is more accurate) Every program doing Kerberos authentication Checks tkfle/ccache for an existing server ticket Runs TGT-to-ticket protocol if not Stores server ticket in tkfle/ccache Luckily this is all encapsulated in a bunch of shared libraries If you consider shared libraries lucky» Krb4 Krb5: rebuild all clients As long as nobody dumps core containing your TGT in a public place As long as nobody yanks a disk containing your TGT 10

Kerberos Appl1 k4 KDC / TGS Appl2 k5 AFS PTS IMAP server ccache tkfile kinit k5 11

Factotum System description N users, M servers, mutual authentication Symmetric aka private-key crypto for speed N+M secret keys instead of N*M Good luck getting users to remember M keys! 12

Factotum Implementation User remembers one secret key (often a password ) User obtains server tickets From auth server Using user's secret key, each time Server tickets contain a response to a challenge, so they generally authenticate one long-lived connection User presents server ticket to each server Side effect: user and server get a symmetric-cipher key» Ephemeral session key - just for this conversation 13

Factotum vs. Kerberos Protocol architecture differences Kerberos libraries forget your password after obtaining TGT You hope Factotum uses your password to get each server ticket Expiration isn't part of the Plan 9 scheme Non-protocol architecture differences Factotum is a file system But of course! 14

Factotum vs. Kerberos Protocol architecture differences Kerberos libraries forget your password after obtaining TGT You hope Factotum uses your password to get each server ticket Expiration isn't part of the Plan 9 scheme Non-protocol architecture differences Factotum is a file system But of course!» More importantly, it isn't a shared library 15

Factotum Appl1 f Auth Appl2 f File server Factotum Keys 16

Factotum vs. Kerberos Non-protocol architecture differences Factotum is a file system Your keys never leave that fle system Held in RAM, marked as non-swappable Applications don't understand authentication protocols No library code to talk to auth server No library code that knows how to talk to tkfle/ccache No library code that speaks {CRAM-MD5,GSSAPI,SASL,...} Applications never have access to TGT All they can ever leak is the ephemeral session key» Which they need to know in order to swap bits with server 17

Applications vs. Factotum So how does it really work? Application server: Hi there Server application: I speak CRAM-MD5. xqz456! Application factotum: I need to authenticate to Joe using CRAM-MD5 and he said 'xqz456' Factotum application: Tell him 'XL234LSDF'. Application server: XL234LSDF. Server application: 3278FLDSKJF. Application factotum: He said '3278FLDSKJF'. Factotum application: Great, you're done! (CRAM-MD5 doesn't do encryption, only authentication) 18

Factotum vs. Kerberos Observations Application factotum protocol is static Library is small and essentially never changes Adding a new authentication protocol is easy Rebuild factotum» Don't rebuild 50 applications or 20 servers Restart each client's factotum» For free if you wait for next login session Restart each server's factotum» One per server machine» Easy (not implemented) to do this without restarting server processes on that machine 19

Monkey in the Middle Man in the middle attack Evil person listening to authentication conversation might be able to do bad things For example, replay the conversation and authenticate Good systems distribute no privilege to man in the middle Observation In Plan 9, applications are in the middle too They overhear authentication conversations But they don't learn how to do authentication conversations Versus Kerberos Every application can leak you authority (for 24 hours) 20

Summary Kerberos reminder Plan 9 authentication architecture Differences vs. Kerberos Ticket fle authentication fle system Strong modularity (much more modular than libssl, libkrb4, libheimdal)» Application API independent of security protocols» No need to rebuild applications, servers» Maybe one set of system calls mapped onto one RPC protocol really is a universal API. 21

Related Work TLS SASL ssh-keyagent 22