ppt.2

advertisement
ACCESS CONTROL MANAGEMENT
Project Progress (as of March 3)
By: Poonam Gupta
Sowmya Sugumaran
Kerberos Components
http://technet.microsoft.com/en-us/library/cc772815(WS.10).aspx
Getting the Tickets
• kinit –forwards request for TGT to KDC
• KDC encrypts TGT with pswrd and sends back
• kinit has following options
- l(lifetime)
- f(forwardable tickets)
-r(renewable life)
Listing the Tickets
• klist – lists the tickets of the authenticated
user.
Eg of the output of an unsuccessful
authentication is:
klist: No credentials cache file found (ticket
cache /tmp/krb5cc_1234)
Contd..
• klist provides:
– Information of all tickets
– Expiration time of each ticket
– Flags that apply to the ticket
Example:
Ticket cache: /tmp/krb5cc_1234
Valid starting
Expires
29 Jul 98 11:25:47
30 Jul 98 12:25:42
Destroying the Tickets
• Destroyed automatically on logging out
• Destroying by hand:
– Using kdestroy command
Output generated by klist when all the tickets are
destroyed:
klist: No credentials cache file found
Changing Kerberos Password
• Kpasswd is used for changing Kerberos passwords
–
–
–
–
–
kpasswd: Changing password
Old password: your_old_password
kpasswd:your_new_password
New password (again): your_new_password
Kerberos password changed
• password is controlled by the policy default, which
requires a minimum of 6 characters from at least 2
classes (the five classes are lowercase, uppercase,
numbers, punctuation, and all other characters).
What is in a Ticket?
Field Name
Description
Ticket version number
5
Realm
Domain that issued ticket(mostly server’s)
Server Name
Name of the server
Flags
Options that specify how & when to issue
Key
Client-Server session key
Client Realm
Requestor’s domain name
Client Name
Requestor’s name
Authentication Time
Initial authentication time
Start time
Time after which ticket is valid
End time
Ticket’s expiration time
Renewal Till
Max end time that can be set with flag
Client Address
1 or more addresses
Authorization Data
Contains access restrictions
What happens when tickets expire?
• KDC doesn’t notify client when the ticket is about
to expire
Expired service
ticket
CLIENT
SERVER
Error message
• Tickets-for authenticating new connections
• Ongoing operations are not interrupted
Renewable TGTs
• Only session keys are refreshed, without
issuing new tickets every time.
• When Renewable policy is permitted, KDC sets
a “Renewable” flag-R in the ticket.
• Sets 2 expiration time
– (i)limits life of current instance of ticket
– (ii)limit on the cumulative lifetime of all instances
KDC configuration
RFC 1510 recommends the following values:
Configuration Element
RFC 1510
Recommendation
Active Directory Domain
Default Setting
Maximum ticket
lifetime
One day
600 minutes (10 hours)
Maximum renewable
lifetime
One week
Seven days
The Authenticator
• The client includes an authenticator whenever
it sends ticket to the server(either TGS or
service server)
• Authenticator – verifies that the destination in
the ticket is really the ticket’s source.
Why is an Authenticator necessary
• The server trusts the ticket-ticket is encrypted
using server’s secret key
• Server doubts about the sender
• The ticket could be stolen and then sent by
the imposter
How does the Authenticator work
• The authenticator is encrypted with the session key created by the
KDC to be used between the client and the target server. Only the
client and the target server can access the session key.
• The target server uses its secret key to decrypt the ticket, finds the
session key inside the ticket, and uses it to decrypt the
authenticator.
• If the target server can successfully decrypt the authenticator and if
the authenticator's data is accurate, then the target server will trust
the source of the ticket.
Authenticator’s Timestamp
• Important piece of data
• Kerberos policy requires that authenticator’s
timestamp be within minutes of the time on
the server
• This prevents replay attack
Setting up KDC Hardware
• KDC – holds database with passwords and all
information
• KDC must be as secure as possible:
– Put the server machine into a physically secured
location, to which only a very few people have access.
– Do not run any network applications on it except the
KDC.
– It is probably a good approach to install a minimal
system first then check the list of installed packages
and remove any unneeded packages.
Clock Synchronization
• All clocks within the organization must be
synchronized
• Very important – Protects against replay
attack
• Possible solution:
– Installing time server on one machine and having
all clients synchronize their clocks with this
machine
Setting the Master Key
• Database master key – protects from
accidental disclosure
• Derived from pass phrase and stored in stash
file
• Don’t back up stash file while making backups
of database in a tape
– Master key:<enter pass phrase>
Verifying password –
Master key:<enter pass phrase again>
Thank You..!!
Download