CHAPTER 11

             MICROSOFT WINDOWS 2000 SECURITY

 

 

Lesson 1:  Public Key Infrastructure

 

 

Public key cryptography is a critical technology for e-commerce, intranets, extranets, and other

Web-enabled applications.

 

The Windows 2000 operating system includes a native public key infrastructure (PKI) that is

designed from the ground up to take full advantage of the Windows 2000 security architecture.

 

 

Security Properties

 

Computer security includes everything from the physical computing environment to the software

environment.  In a software environment, security should provide four functions:  authentication,

integrity, confidentiality, and anti-replay.

 

 

1.  Authentication

 

Authentication is the process or reliably determining the genuine identity of the communicating

computer (host) or user.    Authentication is based on cryptography, it ensures that an attacker

eavesdropping on the network cannot gain the information needed to impersonate a valid user

or entity.

 

 

2.  Integrity

 

Integrity is the correctness of data as it was originally sent.  Integrity services protect data from

unauthorized modification in transit.  Without data integrity, any data and the host it is sent from

is suspect.

 

 

3.  Confidentiality

 

Confidentiality ensures that data is disclosed only to intended recipients.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 2                                                          2002/01/28

 

 

 

 

4.  Anti-Replay

 

Anti-replay, also called replay prevention, ensures that datagrams are not retransmitted.  Each

datagram sent is unique.  This uniqueness prevents attacks in which a message is intercepted and

stored, then re-used later to attempt illegal access to information.

 

 

Cryptography

 

Cryptography is a set of mathematical techniques for encrypting and decrypting data so it can be

transmitted securely and not be interpreted by unauthorized parties.  Cryptography uses keys in

conjunction with algorithms to secure data.

 

A key is a value used to encrypt or decrypt information.  Even if the algorithm is publicly known,

security is not compromised because the data cannot be read without the key.  Even if the algorithm

is publicly known, security is not compromised because the data cannot be read without the key. 

For example, the algorithm of a combination lock is common knowledge:  the dials are moved in a

specific order to open the lock.  However, the key to the lock --  the numbers of the combination

CODE – is secret an known only to the person with the combination.

 

The algorithm provides the infrastructure in which the key is applied.  Security systems can be

based on public key or secret key cryptographic algorithms:

 

======================================================================

Algorithm                    Description

======================================================================

Rivest, Shamir           A general purpose algorithm that can support digital

Adleman (RS)             signatures, distributed authentication, secret key

                                    Agreement via public key, a bulk data encryption

                                    Without prior shared secrets.

 

Digital Signature        A public key algorithm, used for digital signatures.

Standard (DSA)

 

Diffie-Hellman           A public key cryptography algorithm that allows two

                                    Communicating entities to agree on a shared key

                                    Without requiring encryption during the key generation.

 

Hash Message           A secret key algorithm that provides integrity,

Authentication            authentication, and anti-reply. A hash is also known as

Code (HMAC)           a message digest.

 

 

========================================================================

 

winser11.html                                                 PAGE 3                                                          2002/01/28

 

 

 

HMAC-Message       A hash function that produces a 160-bit digital

Digest function 5        signature and that is used for authentication, integrity,

(MD5)                         and anti-relay.

 

Data Encryption         A secret key algorithm used for confidentiality.  A

Standard-Cipher         random number is generated and used with the secret

Chaining                     key to Block encrypt data.

(DES-CBC)

 

=========================================================================

 

 

Public Key Cryptography

 

Public key cryptography is an asymmetric scheme that uses a pair of keys for encryption.  It is called

asymmetric because it uses two encryption keys that are mathematically related.  These related keys

are called the public and private key pair.  To use public key encryption, an object (such as a user)

must generate a public and private key pair.  Objects obtain public keys in one of two ways:

 

  •   The owner of the private key (a bank) sends the receiver the matching public key, (user).
  •   The receiver obtains the key from a directory service such as the Active Directory service or

Domain Name System (DNS).

 

A public and private key pair are typically used for two purposes:  data encryption and digital

message singing.

 

 

 

1.  Data Encryption

 

Data encryption provides confidentiality by ensuring that only the intended recipient is able to decrypt

and view the original data.  When secure data must be transmitted, the sender obtains the recipient’s

public key.  The sender then uses the recipient’s public key to encrypt data and then send it.  When

the recipient receives the data, the recipient uses his or her own private key to decrypt the data. 

Encryption is only secure if the sender uses the recipient’s public key for encryption.  If a sender

uses his or her private key to encrypt data, anyone can capture the data and decrypt it by

obtaining the sender’s public key.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 4                                                          2002/01/28

 

 

 

 

2.  Digital Message Signing

 

 

When a sender signs a message, a message digest is created.  A message digest is a representation

of the message and is similar to a cyclic redundancy check (CRC).

 

The recipient then creates a message digest from the message and compares the message digest to

the decrypted message digest.  If the message digests match, integrity is guaranteed.

 

 

Authentication is provided through the key pair.  Since the message digest was encrypted by using

the sender’s private key (and only the sender’s public key will decrypt the message digest), the

recipient can be certain that the message came from the owner of the key pair.

 

The recipient, however, must have a mechanism for ensuring that the key pair belongs to the intended

sender and not someone impersonating the sender.

 

This is don through a certificate issued by a trusted third party, which confirms the identity of the

owner of the public key.  The trusted third party is known as a Certificate Authority (CA).

 

 

Secret Keys

 

A secret key (also known as shared secret or shared secret key) is used in much the same way as a

public key; however, there is only one key that provides security. 

 

NOTE:  An eavesdropper is someone using a network-monitoring tool to capture packets on the

network.

 

 

Secret Key Exchange

 

A common solution to providing the secret key to both parties is using public keys.  Public keys

make it possible to encrypt the secret key as it is sent across the network.  Public keys ensure

confidentiality, authentication, and integrity; therefore, security is not compromised when a secret

key is sent.

 

 

========================================================================

 

winser11.html                                                 PAGE 5                                                          2002/01/28

 

 

 

Data Encryption

 

In order to provide confidentiality, the data must be encrypted by suing the shared secret key. 

Because there is only one key known to both the sender and the receiver, encryption is a

straightforward process.  The sender and the receiver generally discard shared secret keys once

the session has been terminated.

 

 

Certificates

 

A digital certificate, also referred to simply as a certificate, is a set of data that completely identifies

an entity.  A trusted Certificate Authority (CA) issues certificates after the authority has verified the

entity’s identity.  The CA provides a trusted third party for both communicating parties.

 

 

 

X.509

 

The Windows 2000 certificate-based processes use the X.509 standard.  Because it is possible

to use certificates for different applications (for example, secure e-mil, file system encryption),

each certificate has different information contained within it.  However, certificates should, at a

minimum, contain the following attributes:

 

  • Version
  • Serial number
  • Signature algorithm ID
  • Issuer name
  • Validity period
  • Subject (user) name
  • Subject public key information
  • Issuer Unique identifier
  • Subject Unique identifier
  • Extensions
  • Signature on the above fields

 

 

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 6                                                          2002/01/28

 

 

 

Certificate Revocation Lists

 

 

The CA can also revoke them for other reasons.  In order to handle the existence of invalid

certificates, the CA maintains a certificate revocation list (CRL).  The CRL is available to

network users to determine the validity of any given certificate.  A great example can be a

Credit Bureau.  Before you do business with a company, you go to a third party business

and ask them if this company has a good standing within the community.

 

CAs are on the Internet, and you can check with them first.

 

 

 

CA Hierarchy

 

Rather than having one trusted CA provide authentication for the entire Internet or Intranet,

it is possible to have CAs certify other CAs.  This hierarchical structure, calling chaining,

allows users to trust a single CA rather than having to trust all CAs.  This chaining of

CAs provides several benefits:

 

  •   Flexibility.  It is easy to move, revoke, or chain CA’s without affecting other parts of the

organization.

     

  •   Distributed Administration.  Administrators can be responsible for their own sites.

 

  •   Security Policies.  Security policies can be different at each CA site.

 

The CA at the top of the chain is referred to as the root CA.  CAs below the root are

referred to as intermediate, subordinate, or issuing CAs.

 

 

 

Microsoft Certificate Services

 

This enables an organization to manage the issuance, renewal, and revocation of digital

certificates without having to rely on external certificate authorities.  In addition, Certificate

Services logs all transactions, enabling the administrator to track, audit, and manage certificate requests.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 7                                                          2002/01/28

 

 

 

Certificate Services Features

 

Microsoft Certificate Services has a number of features that make it valuable to organizations

that do not choose to rely upon external certificate authorities and who require a flexible tool

that can be adapted to the needs of their organization.

 

 

Policy Independence:

 

In order to obtain a certificate, requesters must meet certain criteria.

 

Policies are implemented in policy components that can be written in Java, Visual Basic, or

Microsoft C/C++.  The default policy for Certificate Services allow users to request

certificates through an HTML page.  Policies are usually written initially and altered by Programmers.

 

 

 

Transport Independence

 

Certificate Services can request and distribute certificates through any transport mechanism. 

That is, it can accept certificate requests from an applicant and post certificates to the applicant

through Hypertext Transfer Protocol (HTTP), remote procedure call (RPC), disk file, or custom

transport.  NOTE:  Disk file, was similar to the example Mr. E. did in class where he put it on

the diskette, and transferred it to Adams machine.

 

 

Adherence to Standards

 

Microsoft Certificate Services can perform the following services:

 

  • Accept standard Public Key Cryptography Standards (PKCS) #10 requests.
  • Support PKCS #7 cryptographically signed data.
  • Issue X.509 version 1.0 and 3.0 certificates.

 

 

 

Key Management

 

The security of a certification system depends on the protection of private keys.  The design of

Certificate Services ensures that individuals cannot access private keys information without

authorization.

 

========================================================================

 

winser11.html                                                 PAGE 8                                                          2002/01/28

 

 

 

 

Certificate Services Architecture   (only quick review)

 

Certificate Services architectural elements include the server engine that handles certificate

requests and other modules that perform tasks by communicating with the server engine. 

(see page 630).

 

 

Server Engine

 

The core component of Certificate Services.  The engine acts as a broker for all requests it

receives from the entry modules, driving the flow of information between components

during the processing of a request and generation of a certificate.

 

 

Intermediary

 

This receives new certificate request from clients and submits them to the server engine. 

Microsoft Internet Information Services (IIS) is an intermediary application that provides

support for clients over HTTP.

 

 

Server Database

 

They maintain status information and a log of all issued certificates and certificate revocation

lists (CRLs).  The database is composed of two parts:  The server log and the server queue.

 

Server Log.  Stores all certificates and CRLs issued by the server so that administrators can

track, audit, and archive server activity.

 

Server Queue.  Maintains status information (receipt, parsing authorization, signing and

dispatch) as the server processes a certificate request.

 

Policy Module

 

All requests received by the server engine are passed to the policy module for validation.

 Policy modules are also used to parse any supplemental information provided within a

request and set properties on the certificate accordingly.  See the picture page 630.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 9                                                          2002/01/28

 

 

 

Extension Handlers

 

Extension handlers work in tandem with the policy module to set custom extensions

on a certificate.  It can act as a template.

 

 

Exit Modules

 

Exit modules publish completed certificates and CRLs through any number of transports or

protocols.  By default, the server notifies each exit module installed on the server whenever

a certificate or CRL is published.

 

Certificate Services provides a Component Model (COM) interface for writing custom

exit modules for different transports and protocols or for custom delivery options.

 

 

 

Processing Certificate Requests

 

Certificate Services provides services for processing certificate requests and issuing

digital certificates.

 

  •   The certificate request is sent by the client to an intermediary application.  The intermediary

formats it into a PKCS #10 format request and submits it to the server engine.

  •   The server engine calls the policy module, which queries request properties, decides

whether or not the request is authorized, and sets optional certificate properties.

  •   If the request is approved, the server engine takes the request and builds a complete certificate.
  •   The server engine stores the completed certificate in the certificate store and notifies the

intermediary application of the request status. The intermediary gets the published certificate

from the certificate store and passes it back to the client.

 

 

Enrolling Certificates

 

The process of obtaining a digital certificate is called certificate enrollment.

 

The process begins with a client submitting a certificate request and ends with the installation

of the issued certificate in the client application.

 

 

========================================================================

 

winser11.html                                                 PAGE 10                                                        2002/01/28

 

 

 

 

CA Certificates  (Authorized)

 

In the process of issuing a digital certificate, the CA validates the identify of the individual

requesting the certificate and then signs the certificate with its own private key.

 

A client application, such as Microsoft Internet Explorer, checks the CA signature before

accepting a certificate.  If the CA signature is not valid or if it comes from an unknown source,

Internet Explorer warns the user by displaying a security message and may prevent the user

from accepting the certificate.

 

NOTE:  If Internet Explorer is set to the low security level, it will not warn the user of invalid

certificates.  This setting is appropriate for highly trusted intranet environments and is inappropriate

for Internet access.

 

A self-assigned CA certificate is also called a root certificate because it is the certificate for the

 root CA.  The root CA must sign its own CA certificate because by definition there is no higher

certifying authority to sign its CA certificate.

 

 

 

Distribution and Installation of CA Certificates

 

In contrast, the CA certificate does not require issuance upon demand.  Instead, it is created once

and then made readily available to all servers or clients who request certificates from the CA.  It is

done one at the Installation.

 

 

Installing Certificate Services

 

You can install Certificate Services by using the Add/Remove Programs utility in Control Panel or

optionally during the installation of Windows 2000 Server.

 

 

Certificate Authority Type    **Excellent Quiz question **

 

The CA type allows selection of how the CA will be utilized in a CA hierarchy and whether or not

the CA will rely upon Active Directory services.

 

  • Enterprise Root CA.  This CA becomes the root CA for the hierarchy and requires

Active directory services.

 

========================================================================

 

winser11.html                                                 PAGE 11                                                        2002/01/28

 

 

 

 

  •   Enterprise Subordinate CA.  This CA becomes a subordinate CA to an Enterprise

Root CA.  It requires Active Directory Services.  It will request a certificate from the

Enterprise Root CA.

 

  •   Stand-alone Root CA.  This CA becomes the root CA for the hierarchy but does not

require Active Directory services.

 

  •   Stand-alone Subordinate CA.  This CA becomes a subordinate CA to a Stand-alone

Root CA.  It does not require Active Directory services.  It requests a certificate from

the Stand-Alone Root CA.

 

 

 

CA Information

 

You must supply information about the initial CA that is created when you install Certificate Services.

 

 

Advanced Configuration

 

The advanced configuration contains options for the type of cryptography algorithms to be used

for the CA that you are creating.  The advanced options are the name of the cryptographic provider,

the hash algorithm, the option to use existing public keys and private keys, and the key length.

 

 

The snap-in allows you to perform a variety of administrative tasks:

 

  • Start or stop the CA services
  • Set security permissions and delegate control of a CA
  • View a CA certificate
  • Back up a CA
  • Restore a CA from a backup copy
  • Renew a root CA
  • Renew a subordinate CA
  • Manage certificate requests
  • Manage certificate templates
  • Change Policy settings
  • Map certificate to user account
  • Modify the Policy Module or Exit Module

 

 

Certutil.exe is a command-line utility used for administering certificate services.  Running certutil

without any command-line switches displays summary information about the local certificate authority.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 12                                                        2002/01/28

 

 

 

If you need to set security fro the CA Web pages, you should use the Internet Information Services

 snap-in.  Expand the Default Web Site from the console tree and then select CertSrv.

 

You will need to have NTFS permissions.

 

 

Lesson Summary:

 

  •   Public key cryptography is an asymmetric scheme that uses a pair of keys for encryption.
  •   Windows 2000 certificate-based processes use the X.509 standard.
  •   You can install Certificate Services by using the Add/Remove Programs utility in Control Panel

or optionally during Windows 2000 Server installation.

  •   Certutil utility, and the Certificate Services enrollment Web page.

 

 

 

Lesson 2:  Public Key Technologies

 

Windows 2000 extends security by supporting a number of technologies that are based on public

key security, including the Secure Channel authentication package, smart cards, Authenticode, the

Encrypting file System (EFS),  and Internet Protocol Security (IPSec).

 

 

 

Secure Channel Authentication Package

 

In Windows 2000, a Secure Channel (Schannel) authentication package is located below the Security

Support Provider Interface (SSPI), see page 645.

 

The Schannel authentication package implements the Secure Sockets Layer (SSL) 3.0 protocol and

the Transport Layer Security (TLS) 1.0 protocol.

SSL and TLS are flexible security protocols that can be layered on top of other transport protocols.

 

The TLS protocol is based on the SSL 3.0 protocol and moves forward as the Internet Engineering

Task Force (IETF) standard.  The difference between TLS 1.0 and SSL 3.0 are not significant, but

they are enough that TLS 1.0 and SSL 3.0 cannot interoperate.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 13                                                        2002/01/28

 

 

 

Both the SSL and TLS protocols provide secure data communication through data encryption and

decryption, client authentication, and optional server authentication.  Both are typically used to send

and receive private communication across the Internet by using public key cryptography and its

authentication method.

 

 

The benefits of SSL and TLS include the following:

 

  •   Authentication that assures the client that data is sent to the correct server and that the

server is secure.

  •   Encryption that assures that nothing other than the secure target server can read the data.
  •   Data integrity that assures that the transferred data has not been altered.

 

 

 

Smart Cards

 

Smart Cards, which are the size of a credit card, can be used to store a user’s public key, private key,

and certificate.  Smart cards are a secure way to protect and control a user’s keys, instead of storing

them on a computer. 

 

Security-critical computations are performed by the smart card, instead of exposing a user’s private

key to the computer.

 

To use a smart card, a computer must have a smart card reader.  A smart card is an ISO 7816-

compatible device that contains an embedded microprocessor, an RSA or equivalent cryptography

coprocessor, and local storage.  The local storage includes the following:

 

  • 6 to 24 KB ROM for the smart card operating system and applications.
  • 128-512 bytes of RAM for run-time data
  • 1-16KB EEPROM for user data

 

 

Smart Card Logon

 

Windows 2000 introduces PC-based smart card logon as an alternative to passwords for domain

authentication.

 

During operation, the system recognized a smart card insertion event as an alternative to the standard

Ctrl+Alt+Del secure attention sequence to initiate a logon.

 

========================================================================

 

winser11.html                                                 PAGE 14                                                        2002/01/28

 

 

 

 

The user is then prompted for a smart card PIN code.  Much like when you want to take money out

of the bank,  maybe our banking cards are infact a type of smart card.

 

In this system, the smart card also contains a copy of the user’s certificate (issued

by an enterprise CA).  This allows the user to roam within the domain.

 

 

 

Authenticode

 

 

The growing use of the Internet has led to increased reliance on downloaded active content, such

as Windows-based applications, ActiveX controls, and Java applets.  The result has been a

heightened concern for the safety of such downloads, since they often occur as a side effect of

Web scripts without any specific user notification.

 

Authenticode technology, a security feature in Microsoft’s Internet Explorer, assures accountability

and authenticity for software components on the Internet.  Authenticode verifies that the software

hasn’t been tampered with and identifies the publisher of the software.

 

 

Authenticode technology allows software publishers to digitally sign any form of active content,

including multiple-file archives.  These signatures may be used to verify both the publishers of the

content and the content integrity at download time.

 

 

Encrypting File System

 

EFS is an extension to the NTFS file system that provides strong data protection and encryption

for files and folders.  The encryption technology is based on use of public keys and runs as an

integrated system service, making it easy to manage, difficult to attack and transparent to the user.

 

The encrypting user’s public key is used in the encryption process, ensuring data privacy.  Decryption

is denied to any user without the corresponding private key.  A special key is also generated for each

encrypted file.  This key is for emergency use by a qualified administrator in the event that an employee

leaves or a private key is lost.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 15                                                        2002/01/28

 

 

 

Encryption and decryption is done transparently during the I/O process.  EFS imposes no discernible

performance penalty during the encryption/decryption process.

 

EFS also supports encryption and decryption of files stored on remote NTFS volumes.  Although

encrypted files can be exported, data is transferred over the network in a clear (unencrypted) format

by default.  Windows 2000 provides network protocols such as SSL, TLS, and IPSec to encrypt data

during transfer over the network.

 

 

Data Protection

 

EFS uses a combination of the user’s public and private keys as well as a randomly generated file

encryption key (FEK).    The FEK is a 128-bit key for North America, and 40-bit key for international releases.

 

 

Data Recovery

 

The Encrypted Data Recovery Policy (EDRP) is used to specify who can recover data in case a

user’s private key is lost.  An EDRP is automatically generated on stand-alone computers to

minimize administration.

 

 

Encrypted Backup and Restoration

 

Because members of the Backup Operators group do not have the keys necessary for decryption,

encrypted data is read and stored in the backup as an opaque stream of data.

 

 

Fault Tolerance

 

Encryption and Decryption are sensitive operations because failure could result in data loss. 

Therefore, EFS makes all operations automatic.  If an operation cannot be completed, it is

completely undone.  For example, if a computer loses power during an encryption operation,

EFS undoes the operation on restart so that the file is in a consistent state.   You cannot have a

file that is ½ encrypted and not ½ encrypted.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 16                                                        2002/01/28

 

 

 

Once a file is encrypted, the processes of encryption and decryption are automatic and

transparent to users and applications whenever the file is used.  You can perform encryption on

one file at a time or one folder at a time.

 

You can encrypt a file or folder in Windows Explorer and from the command prompt.

 

NOTE:  It is not possible to use NTFS compression and encryption on the same file. 

Compression and encryption are mutually exclusive.

 

 

EFS Encryption             

 

EFS encrypts, decrypts, and recovers files.  When a user encrypts a file in EFS, the following

 process occurs:

 

  •   The EFS service opens the file for exclusive access.
  •   All data streams in the file are copied to a temporary file.
  •   A file key is randomly generated and used to encrypt the file according to the DES encryption

scheme.

  •   A Data Decryption Field (DDF) is created that contains the file key, which is encrypted with the

user’s public key.

  •   A Data Recovery Field (DRF) is created that contains the file key, this time encrypted with the

recovery agent’s public key.  The recovery agent’s public key is obtained from the Encrypted

  •   Data Recovery Policy (EDRP).
  •   The EFS server writes the encrypted data, along with the DDF and DRF, back to the file.

 

 

EFS Decryption          ** Users Private Key **

 

The decryption process uses the DDF, created during encryption, to decrypt a file.  When a file is

decrypted in EFS, the following process occurs:

 

  •  When an application accesses an encrypted file, NTFS recognizes the file as encrypted and sends a

request to the EFS driver.

  •   The EFS driver retrieves the DDF and passes it to the EFS service.
  •   The EFS service decrypts the DDF with the user’s private key to obtain the file key.
  •   The EFS service passes the file key back to the EFS driver.
  •   The EFS driver uses the file key to decrypt the file.
  •   The EFS driver returns the decrypted data to NTFS, which then completes the file request, and

sends the data to the requesting application.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 17                                                        2002/01/28

 

 

 

EFS Recovery           ** Agents Private Key **

 

Similar to the decryption process.  When a file is recovered in EFS, the following process occurs:

 

  •   NTFS sends a request to the EFS driver.
  •   The EFS driver retrieves the DRF and passes it to the EFS service.
  •   The EFS service recovers the DRF by using the recovery agent’s private key to obtain the

file key.

  •   The EFS service passes the file key back to the EFS driver.
  •   The EFS driver uses the file key to recover the file.
  •   The EFS driver returns the recovered data to NTFS, which then completes the file request, and

sends the data to the requesting application.

 

 

Cipher Command-Line Utility

 

The cipher command-line utility allows you to encrypt and decrypt files from a command prompt.  If no

parameters are used, the cipher command displays the encryption state of the current folder and any

files it contains.

 

======================================================================

Parameter                   Description

======================================================================

/e                                 Encrypts the specified folders.

/d                                 Decrypts the specified folders.

/s:dir                            Performs the selected operation on folders in the specified

                                    folder and all subfolders.

/a                                 Performs the selected operation on files with the specified

                                    names.

/I                                  Continues performing the specified operation even after

                                    errors have occurred.  By default, cipher stops when an

                                    error is encountered.

/f                                  Forces the encryption or decryption of all specified objects.

 

/q                                 Reports only the most essential information.

 

/h                                 Displays files with hidden or system attributes.  By default,

                                    these files are not encrypted or decrypted.

 

/k                                 Creates a new file encryption certificate on the computer

                                    where CIPHER is run.

 

pathname                    Specifies a pattern, file or folder.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 18                                                        2002/01/28

 

 

 

IP Security                              *** CIA ***

 

IPSec in Windows 2000 is designed to protect sensitive data on a TCP/IP network.  IPSec is useful

when the network between two communicating computers is not secure.  It provides confidentiality,

integrity, and authentication of IP traffic for each packet traversing the network.

 

When using IPSec, the two computers communicating over the network first agree on the highest

security policy, then each handles the IP Security at its respective end.

 

Using IPSec to encrypt all IP network traffic ensures that any TCP/IP-based communication is secure

from network eavesdropping.  Any routers or switches that are in the path between the communicating

computers can simply forward the encrypted IP packets.

 

 

IPSec Policies

 

With Windows 2000 IPSec, you can create policies that define the type and level of security to be used

during network communication.  See Active Directory User and Computers menu, Domain Controllers,

right click on Properties.  Group Policies/Edit.

 

 

1.  Negotiation Policies

 

The security protocol chosen for negotiation policies is the basis for the security services.  For example, if

the IP Authentication Header protocol is chosen, integrity, authentication, and anti-replay services will be

provided but not confidentiality, which means that the encryption is not performed.

 

Integrity, which means that yes the data has not changed, Authorization yes it is the authenticated user, and

not confidential, the data will not be encrypted.  If you have several policies, you have more levels of the

CIA to worry about.

 

2.  IP Filters

 

IP filters direct actions based on the destination of an IP packet, what IP protocol is in effect, and the

related ports that the protocol uses.  Each IP packet is checked against the IP filter, and if a match is

found, the properties of the associated security policy are used to send the communication.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 19                                                        2002/01/28

 

 

 

3. Security Policies

 

Security policies are used to configure IPSec attributes.  These policies are made up of associated

negotiation policies and IP filters, and are associated with domain controller policies.

 

A computer logging onto a domain automatically obtains the properties of the default domain and

local policies, including the IPSec policy assigned to the domain policy.

 

 

IPSec Components

 

The Windows 2000 installation process installs the services, protocols, and drivers necessary for IPSec:

 

  • IPSec Policy Agent service
  • Internet Security Association and Key Management Protocol (ISAKMP)
  • Oakley Key Management protocol
  • IPSec driver

 

 

 

IPSec Policy Agent Service

 

The IPSec Policy Agent service passes the policy information to the IPSec network driver and the

ISAKMP/Oakley protocols.  The IPSec Policy Agent service does not store policies locally; instead

it must retrieve them from the Active Directory store.

 

 

 

ISAKMP/Oakley IKE Protocols

 

Using the information in the IPSec policy, the ISAKMP/Oakley (IKE) protocols negotiate and

establish a Security Association (SA) between computers.

 

 

IPSec Driver

 

This driver examines all IP packets for a match with an IP filter.  If a match is found, the IPSec

driver holds the packets in a queue while the ISAKMP/Oakley (IKE) protocols generates the

necessary SA and key to secure the packet.

 

========================================================================

 

winser11.html                                                 PAGE 20                                                        2002/01/28

 

 

 

 

IPSec Communication  (see diagram page 661)

 

 

At the user level, the process of securing the IP packets is transparent and works as follows:

 

  •   User 1 launches an application that communicates on the network by using TCP/IP to

send data to User 2.  The security policies assigned to Computer A and Computer B

determine the level of security for the network communication.

  •   The IPSec Policy Agent service retrieves the policies and passes them to the ISAKMP/Oakley
  •   (IKE) protocols and IPSec driver.
  •   The ISAKMP/Oakley (IKE) protocols on each computer use the negotiation policies

associatedwith the assigned security policy to establish the key and a common negotiation

method, or Security

  •   Association (SA).  The results of the policy negotiation are passed between the two

computers to the

  •   IPSec driver, which uses the key to encrypt the data.
  •   Finally, the IPSec driver sends the encrypted data to Computer B.  The IPSec driver on

Computer B decrypts the data and passes it on to the receiving application.

 

 

Lesson Summary:

 

  •   Windows 2000 extends security by supporting a number of technologies that are based on public key

security, including the Schannel authentication package, smart card, Authenticode, the Encrypting File

  •   System (EFS), and Internet Protocol Security (IPSec).
  •   Smart Cards are credit-card-sized devices that can be used to store a user’s public key, private key,

and certificate.

  •   Authenticode technology allows software publishers to digitally sign any form of active content, including

multiple-file archives.

  •   EFS is an extension to the NTFS file system that provides strong data protection and encryption for

files and folders.

  •   IPSec in Windows 2000 is designed to protect sensitive data on a TCP/IP network.  IPSec is useful

when the network between two communicating computers is not secure.  It provides confidentiality,

integrity, and authentication of IP traffic per packet.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 21                                                        2002/01/28

 

 

 

Lesson 3:  The Kerberos Protocol in Windows 2000

 

A standard process within computer security is to include a function that requires users to prove that they

are who they claim to be.  This affirmation of identity is accomplished when the user supplies the correct

password for the user account.

 

 

 

Overview of the Kerberos Protocol

 

The Kerberos protocol is the default authentication provider in Windows 2000 and the primary security

protocol.  It allows users to use a single logon to access all resources.  The Kerberos protocol verifies

both the identity of the user and the integrity of the session data.  This is accomplished by having a

Kerberos service installed on each domain controller and the Kerberos client installed on all computers

running Windows 2000.

 

NOTE:  The Active directory client for Windows 95 and Widows 98 allows users to log on by using the

Kerberos V5 authentication protocol.

 

 

When the Kerberos authentication protocol is used, a trusted Kerberos service on a server verifies the

user’s identity.  Before connecting to the server the user requests a ticket from the Kerberos service,

called the Kerberos Key Distribution Center service, to confirm the user’s identity.

 

The Kerberos service operates as a trusted third-party to generate session keys and grant tickets for

specific client/server sessions.

 

 

 

When the Kerberos service issues a ticket, it contains the following components:

 

  • Session key
  • Name of the user to whom the session key was issued
  • Expiration period of the ticket
  • Any additional data fields or settings that may be required

 

 

The expiration period of a ticket is defined by the domain policy.  If a ticket expires during an

active session, the Kerberos service notifies the client and the server to refresh the ticket.  The

Kerberos service then generates a new session key and the session is resumed.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 22                                                        2002/01/28

 

 

 

 

Kerberos Protocol Terms

 

Review the following components of Kerberos:

 

Principal.  A principal, is a uniquely named user, client, or server that participates in a network

communication.

 

Realm.  A realm is an authentication boundary, which can be compared to a Windows 2000 domain. 

Each organization wishing to run a Kerberos server established its own realm.

 

Secret Key.   A secret key is an encryption key that is shared by a client or a server and a

trusted third party to encrypt the information that is to be moved between them.

 

Session Key.  The session key is a temporary encryption key used between two principals, with a

lifetime limited to the duration of a single login session.

 

Authenticator.  An authenticator is a record that is used to verify that a request actually originated

from the principal.  An authenticator contains information that verifies the identity of the sender and

the time the request was initiated.  This information is encrypted with the shared session key that is

known only by the communicating principals.

 

Key Distribution Center.  KDC provides two functions:  the authentication server (AS and the ticket

granting service (TGS).  The TGS distributes tickets to clients that wish to connect to services on the network.

 

Privilege Attribute Certificate.  PAC is a structure that contains the user’s security ID (SID).

 

Tickets.  In a basic Kerberos exchange, the client will contact the TGS and request a ticket for the

target server before contacting the target server.  A ticket is a record that allows a client to

authenticate itself to a server; it is simply a certificate issued by the Kerberos service.  Tickets are

reusable within their life span, which is usually 8 hours.

 

Ticket Granting Tickets.  One Kerberos method is to simply request a ticket for each target server

from the TGS portion of the Kerberos service whenever a user wants to access the specified target

server.  This method results in a component of the user’s secret key being exposed on the network

every time a new ticket request is made.  A TGT is a request for a ticket and a random session key

to be used with the TGS portion of the Kerberos service.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 23                                                        2002/01/28

 

 

 

 

Features of the Kerberos Protocol

 

The kerberos protocol has several advantages over traditional challenge/response authentication

systems.

 

Mature Open Standard.  Kerberos clients on other platforms, such as UNIX, can be authenticated

by Windows 2000.

 

Faster Connection Authentication.  A server running Windows 2000 can verify the client credentials

by using the client-supplied ticket, without having to query the kerberos service.

 

Mutual Authentication.  Of both the client and the server.  The Windows NTLM authentication

protocol provides only client authentication, and it assumes that all servers are trusted.

 

Delegation of Authentication.  Delegation of authentication allows a user to connect to an

application server, which in turn can connect to one or more additional servers on the client’s behalf,

by using the client’s credentials.

 

Transitive Trust.  Authentication credentials issued by one Kerberos service are accepted by all

Kerberos services within the domain.

 

 

 

Kerberos Authentication Process

 

The Kerberos authentication process involves the client computer negotiating exchanges between

the target server and the KDC.  It works as follows:

 

The client sends an initial AS request to the AS portion of the Kerberos service, were the principal

name is included.  The Kerberos service generates an AS reply and sends it to the client.

 

  •   A TGT for the TGS portion of the Kerberos service.  The TGT is encrypted with the TGS

secret key.

  •   A session key for exchanges with the TGS portion of the Kerberos service.  The session key

is encrypted with the client’s secret key. 

 

The client generates and sends a TGS request that contains the client’s and target server’s

principal names etc.

 

The TGS portion of the Kerberos service generates and sends a TGS reply to the client.

The client extracts the session key for the target server and generates a request for the server.

The target server decrypts the ticket by using its secret key to obtain the session key.  The

server then uses the session key to decrypt the authenticator to verity the client.

 

NOTE:  The AS and TGS exchanges with the Kerberos service operate over User Datagram

Protocol (UDP) port 88.  The exchanges between the client and target server are dependent

on the protocol in use between the two principals.

 

 

========================================================================

 

winser11.html                                                 PAGE 24                                                        2002/01/28

 

 

 

 

Kerberos Delegation

 

Occasionally, it is necessary for an application server to connect to another server on behalf

of a client.

 

The Kerberos authentication protocol supports delegated authentication.  This type of

authentication is used when a client transaction involves multiple servers.  There is no

restriction on the number of consecutive servers that can delegate authentication. 

 

 

The following steps describe the access of resources involving two servers:

 

The client requests and receives a ticket for target Server A from the Kerberos service.

The client sends the ticket directly to Server A.

Server A sends a request, impersonating the client, to the Kerberos service for a ticket for target

Server B.  The Kerberos service responds with a ticket that allows the client to access Server B.

Server A can then send the ticket to Server B, Accessing Server B as the client.  See page 670.

 

 

Kerberos Logon Processes

 

 

The addition of Kerberos as an authentication package in Windows 2000 affects various aspects

of the logon process.

 

Local Interactive Logon

 

When a local interactive logon occurs, the user logs on with a user account that exists on the local

computer rather than with a domain user account.  For local user accounts, the following occurs in

Windows 2000:

 

  •   When the Graphical Identification and Authentication DLL (GINA) receives the logon request,

it forwards the request to the Local Security Authority (LSA). 

 

 

========================================================================

 

winser11.html                                                 PAGE 25                                                        2002/01/28

 

 

 

  •   LSA processes the request and sends it to the Kerberos authentication package.
  •   When Kerberos receives the logon request.   Kerberos returns an error because it is used only

when authenticating logon request for domain user accounts, not local user accounts.

  •   LSA receives the error and returns an error to the GINA.
  •   The GINA resubmits the logon request to LSA specifying the “MSV1_0” authentication package. 
  •   The logon process then occurs as it would for a local interactive logon under Windows NT 4.0

 

 

Domain Interactive Logon

 

The exchange that occurs when a user logs on to Windows 2000 with a domain user account is

similar to the basic Kerberos exchange.

 

  1.  The LSA passes the request to the Kerberos authentication package.
  2.  The Kerberos service generates an AS reply containing the TGT (encrypted with the

Kerberos secret key)and a session key for the TGS exchanges (encrypted with the

client’s secret key).

  1.  The client then generates and sends a TS request containing the client’s principal name

and realm, the TGT to identify the client, and the local workstation name as the target server.

  1.  The Kerberos service generates and sends a TGS reply.
  2.  The Kerberos authentication package returns the list of SIDs to the LSA.

 

 

Windows 2000 services use the Kernel Mode Security Support Provider Interface (SSPI)

 to perform authentication.

 

The Network communication occurs in two segments:  Protocol negotiation and session setup. 

Before a user can establish a session with the server, the client computer and the server must agree

on the security protocol to use by determining which version of security they both support.

 

 

Kerberos Public Key Support

 

Windows 2000 includes extensions to the Kerberos V5 authentication protocol to support public

key, based authentication.  The kerberos service verifies such a  request by using the user’s public

key that is obtained from the user’s X.509 certificate published to the Active Directory store.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 26                                                        2002/01/28

 

 

 

 

Lesson Summary:

 

  •   Kerberos is the default authentication provider in Windows 2000 and the primary security protocol.   
  •   The Kerberos terms include:  principal, realm, secret key, session key, authenticator, KDC, AS,
  •   TGS, PAC, ticket and TGT.
  •   The Kerberos authentication process involves the client computer negotiating exchanges between

the target server and the KDC.

  •   The exchange that occurs when a user logs on to Windows 2000 with a domain user account is

similar to the basic Kerberos exchange.

  •   Windows 2000 includes extensions to the Kerberos V5 authentication protocol to support public

key-base authentication.

 

 

Lesson 4:  Security Configuration Tools

 

Windows 2000 provides a set of security configuration tools that are designed to reduce the costs

associated with security configuration and analysis of Windows 2000 networks.  The security

configuration tools include three snap-ins:  the Security Configuration And Analysis snap-in, the

Security Templates, snap-in, and the Group Policy snap-in.

 

 

Security Configuration and Analysis Snap-in

 

This allows you to configure and analyze local system security.

 

Security Configuration.  You can import security. Templates created with the Security Templates

snap-in, and apply these templates to the group policy object (GPO) for the local computer.  This

immediately configures the system security with the levels specified in the template.

 

Security Analysis.  The state of the operating system and applications on a computer is dynamic. 

For example, security levels may be required to change temporarily to enable immediate resolution

of an administrative or network issue.  Regular analysis enables an administrator to track and ensure

an adequate level of security on each computer as part of an enterprise risk management program.

 

 

Using the Security Configuration and Analysis Snap-in

 

This Security Configuration and Analysis snap-in reviews and analyzes your system security setting

and recommends modifications to the current system settings.  Administrators can use the snap-in to

adjust the security policy and detect security flaws that arise in the system.  The security configuration

and Analysis snap-in allows you to perform a variety of tasks:

 

 

========================================================================

 

winser11.html                                                 PAGE 27                                                        2002/01/28

 

 

 

  • Set a working database
  • Import a security template
  • Analyze system security
  • Review security analysis results
  • Configure system security
  • Edit the base security configuration
  • Export a security template

 

 

 

Security Templates Snap-in

 

A security template is a physical representation of a security configuration; it is a file where a group

of security settings may be stored.   Windows 2000 includes a set of security templates, each based

on the role of a computer.

 

You can assign Templates snap-in can be used to create templates for one or more computers.

 

A security template is a physical file representation of a security configuration, and can be applied

to a local computer or imported to a Group Policy Object GPO in the Active Directory service. 

When you import a security template to a GPO, Group Policy processes the template and makes

the corresponding changes to the members of that GPO, which may be users or computers.

 

The security templates snap-in allows you to perform a variety of tasks:

 

  • Customize a predefined security template
  • Define a security template
  • Delete a security template
  • Refresh the security template list
  • Set a description for a security template

 

 

Group Policy Snap-in

 

Security settings define the security-relevant behavior of the system. 

 

When determining settings for a GPO that contains multiple computers, the organizational and functional

character of that given site, domain, or organizational unit (OU) must be considered.

 

 

 

========================================================================

 

winser11.html                                                 PAGE 28                                                        2002/01/28

 

 

 

 

The Group Policy snap-in allows you to configure security centrally in the Active Directory Store.  A

security Setting folder is located on the Computer configuration node and the User Configuration node.

 

 

 

Lesson Summary:

 

  •   Windows 2000 provides a set of security configuration tools that allow you to configure

Windows 2000 security settings and perform periodic analyses of the system to ensure that the

configuration remains intact or to make necessary changes over time.

  •   The Security Templates snap-in allows you to create an assign security templates for one or

more computers.

  •   The Group Policy snap-in allows you to configure security centrally in the Active Directory store.

 

 

 

Lesson 5:  Microsoft Windows 2000 Auditing

 

Auditing is a tool for tracking user activities and system-wide events.

 

 

 

Overview of Windows 2000 Auditing

 

Auditing in Microsoft Windows 2000 is the process of tracking both user activities and Windows

2000 activities, called events, on a computer.  An audit entry in the security log contains the

 following information:

 

  • The action that was performed
  • The user who performed the action
  • The success or failure of the event and when the event occurred

 

 

Using an Audit Policy

 

An audit policy defines the types of security events that Windows 2000 records in the security

log on each computer.

 

Windows 2000 writes events to the security log on the computer where the event occurs.  If

a user tries to log on and cannot, the security log will have an entry, but it will list the Domain

Controller who tried the authentication process.  You can set up an audit policy for a computer

to do the following:

 

 

========================================================================

 

winser11.html                                                 PAGE 29                                                        2002/01/28

 

 

 

 

  •   Track the success and failure of events, such as logon attempts by users, an attempt by a

particular user to read a specific file, changes to a user account or to group memberships, and

changes to your security settings.

  •   Eliminate or minimize the risk of unauthorized use of resources.

 

 

Planning an Audit Policy

 

 

When you plan an audit policy, you must determine the computers on which to set up auditing. 

Auditing by default is turned off.

 

The types of events that you can audit include the following:

 

  • Access to files and folders
  • Users logging on and off
  • Shutting down and restarting a computer running Windows 2000 Server
  • Changes to user accounts and groups
  • Attempts to make changes to Active Directory objects

 

 

Auditing Requirements

 

You must have the Manage and Security Log permission for the computer where you want to

configure an audit policy or review an audit log.  Windows 2000 grants these rights to the Administrators

group by default.

The files and folders to be audited must be on NTFS volume

 

 

Setting up Auditing

 

It is a two-part process:

 

  •   Setting up the audit policy.  The audit policy enables auditing of objects but does not activate

auditing of specific objects.

 

  •   Enabling auditing of specific resources.  You identify the specific events to audit for files, folders,

printers and Active Directory objects.  Windows 2000 then tracks and logs the specified events.

 

 

 

 

========================================================================

 

winser11.html                                                 PAGE 30                                                        2002/01/28

 

 

 

Auditing Access to Active Directory Objects

 

To audit Active Directory object access, you must configure an audit policy and then set auditing for

specific objects, such as users, computers, organization units (OUs), or groups by specifying which

types of access and access by which users to audit.

 

Go into Active Directory objects, enable the Audit Directory Service Access policy in the Group

Policy snap-in.

 

 

Windows 2000 Logs

 

Application Log.  Errors, warnings, or information that programs such as a database program or an

e-mail generate.

 

Security Log.  Success or failures of audited events.

 

System Log.  Errors, warnings and information that Windows 2000 generates.

 

 

Lesson Summary:

 

  •   Auditing is the process of tracking both user activities and Windows 2000 activities, called events on

a computer.

  •   The Security Log allows you to track events that you specify.
  •   You can also use the Event Viewer to view the contents of Security Log files and find specific events

within log files.