-
Remote Access Service
- any combination of hardware and software to enable the remote access tools or information that typically reside on a network of IT devices. A remote access service connects a client to a host computer, known as a remote access server.
-
Challenge Handshake Authentication Protocol (CHAP)
- A layer 2 authentication protocol, used to authenticate a user or network host to an authenticating entity.
- CHAP provides protection against replay attacks by the peer, through the use of an incrementally changing identifier and a variable challenge-value.
- CHAP requires that both the client and server know the plaintext of the secret, although it is never sent over the network. Because of this, CHAP provides better security compared to Password Authentication Protocol (PAP) which is vulnerable for both these reasons.
- The version of CHAP specific to Microsoft, MS-CHAP, does not require either peer to know the plaintext and does not transmit it, but it has been broken.
- CHAP is specified in RFC 1994.
-
CHAP, PPP, and LCP:
- CHAP is an authentication scheme used by Point-to-Point Protocol (PPP) servers to validate the identity of remote clients.
- CHAP periodically verifies the identity of the client by using a three-way handshake.
- This happens at the time of establishing the initial link using Link Control Protocol (LCP), a protocols used with PPP, and may happen again at any time afterwards.
- The verification is based on a shared secret (such as the client's password).
-
CHAP authentication follows these steps:
- After the completion of the link establishment phase, the authenticator sends a "challenge" message to the peer.
- The peer responds with a value calculated using a one-way hash function on the challenge and the secret combined.
- The authenticator checks the response against its own calculation of the expected hash value. If the values match, the authenticator acknowledges the authentication; otherwise it should terminate the connection.
- At random intervals the authenticator sends a new challenge to the peer and repeats steps 1 through 3.
-
Virtual Private Networks
-
Virtual Private Network (VPN):
- A technology that extends a private network across a public network, and enables users to send and receive data across shared or public networks as if their computing devices were directly connected to the private network.
- Applications running across a VPN may benefit from the functionality, security, and management of the private network.
-
List secure VPN connection protocols:
- IPsec
- SSL/TLS
- Secure Shell (Rarely)
-
Older VPNs use either:
-
Point-to-Point Protocol (PPTP):
- Port 1723
-
Layer 2 Tunneling Protocol (L2TP):
- Port 1701
- L2TP may use IPsec.
-
OpenVPN:
- A free and open-source software application that implements virtual private network (VPN) techniques to create secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities.
- Uses a custom security protocol that utilizes SSL/TLS for key exchange. Because TLS operates at the Application Layer, OpenVPN is capable of traversing network address translators (NATs) and firewalls.
- OpenVPN allows peers to authenticate each other using pre-shared secret keys, certificates or username/password.
- When used in a multiclient-server configuration, it allows the server to release an authentication certificate for every client, using signatures and certificate authority. It uses the OpenSSL encryption library extensively, as well as the TLS protocol, and contains many security and control features.
- OpenVPN has been ported and embedded to several systems.
-
Explain the concept of split tunneling:
- A computer networking concept which allows a user to access dissimilar security domains, like a public network and a local LAN or WAN, at the same time, using the same network connections.
- This connection state is usually facilitated through the simultaneous use of a LAN NIC, radio NIC, WLAN NIC, and VPN client software application without access control.
- A split tunnel configured to only tunnel traffic destined to a specific set of destinations is called a split-include tunnel.
- When configured to accept all traffic except traffic destined to a specific set of destinations, it is called a split-exclude tunnel.
-
Generic Routing Encapsulation (GRE):
- A tunneling protocol developed by Cisco Systems that can encapsulate a wide variety of Layer 3 protocols inside virtual point-to-point links over an IP network.
-
GRE may be used:
- with PPTP, to create a VPN
- with an IPsec VPN, to allow routing between connected networks
- with Linux and BSD systems, to establish ad-hoc IP over GRE tunnels that are interoperable with Cisco equipment
- to connect a DDoS-protected device to an otherwise unprotected endpoint device, with the goal of protecting the second device from the DDoS attack.
- with MPLS, to provide security from the open nature of MPLS network architecture.
-
RADIUS and TACACS+
-
RADIUS:
-
Remote Authentication Dial-In User Service
- AAA protocol mainly used to provide network access services.
- The authentication and authorization parts are specified in RFC 2865, while the accounting part is specified in RFC 2866.
-
RADIUS is a client-server protocol:
- In the context of RADIUS, the client is the access server, which is the entity to which a user sends the access request.
- The server is usually a machine running RADIUS services and that provides authentication and authorization responses containing all the information used by the access server to provide service to the user.
- The RADIUS server can act as proxy for other RADIUS servers or other authentication systems.
- RADIUS can support several types of authentication mechanisms, such as PPP PAP, CHAP, and EAP. It also allows protocol extension via the attribute field.
-
RADIUS AAA consists of three processes:
- Authentication
- Authorization
-
Accounting
- Performed over UDP port 1813
- The accounting exchange consists of two messages:
- ACCOUNTING-REQUEST
- ACCOUNTING-RESPONSE
- Accounting can be used to specify how long a user has been connected to the network (the start and stop of a session).
-
Performed together over UDP port 1812
- This phase consists of two messages:
- The access server sends an ACCESS-REQUEST to the RADIUS server that includes the user identity, the password, and other information about the requester of the access (for example, the IP address).
- The RADIUS exchange is authenticated by using a shared secret key between the access server and the RADIUS server.
- Only the user password information in the ACCESS-REQUEST is encrypted; the rest of the packets are sent in plaintext.
- The RADIUS server may reply with three different messages:
- ACCESS-ACCEPT if the user is authenticated. This message will also include in the Attribute field authorization information and specific vendor information used by the access server to provide services.
- ACCESS-REJECT if access for the user is rejected.
- ACCESS-CHALLENGE if additional information is needed, RADIUS server needs to send an additional challenge to the access server before authenticating the user. The ACCESS-CHALLENGE will be followed by a new ACCESS-REQUEST message.
-
TACACS+:
-
Terminal Access Controller Access Control System Plus (TACACS+)
- A proprietary protocol developed by Cisco.
-
It also uses a client-server model:
- The TACACS+ client is the access server
- The TACACS+ server is the machine providing TACACS+ services (that is, authentication, authorization, and accounting).
- Similar to RADIUS, TACACS+ also supports protocol extension by allowing vendor-specific attributes and several types of authentication protocols.
- TACACS+ uses TCP as the transport protocol, and the TACACS+ server listens on port 49. Using TCP ensures a more reliable connection and fault tolerance.
- TACACS+ performs authentication, authorization, and accounting as three separate steps. This allows the use of different protocols (for example, RADIUS) for authentication or accounting.
- Additionally, the authorization and accounting capabilities are more granular than in RADIUS (for example, allowing specific authorization of commands). This makes TACACS+ the preferred protocol for authorization services for remote device administration.
-
Packet Types used by TACACS+:
- START, REPLY and CONTINUE packets are used during the authentication process.
- REQUEST and RESPONSE packets are used during the authorization and accounting process.
-
TACACS+ AAA consists of three processes:
-
Authentication
- The access server sends a START authentication request.
- The TACACS+ server sends a REPLY to acknowledge the message and ask the access server to provide a username.
- The access server sends a CONTINUE with the username.
- The TACACS+ server sends a REPLY to acknowledge the message and ask for the password.
- The access server sends a CONTINUE with the password.
- The TACACS+ server sends a REPLY with authentication response (pass or fail).
- Authorization
- Accounting
-
Discuss the differences between TACACS+ and RADIUS:
-
RADIUS:
-
Transport Protocol:
- UDP
-
Security:
- Encrypts user password in ACCESS-REQUEST packets.
-
AAA Phases:
- Authentication and authorization are performed with the same exchange. Accounting is done with a separate exchange.
-
Command Authorization:
- No support for granular command authorization.
-
Accounting:
- Strong accounting capabilities.
-
Standards:
- RFC 2865 (authentication and authorization)
- RFC 2866 (accounting)
-
TACACS+:
-
Transport Protocol:
- TCP
-
Security:
- Can optionally encrypt the full payload.
-
AAA Phases:
- Authentication, authorization, and accounting are performed with separate exchanges.
-
Command Authorization:
- Allows command authorization.
-
Accounting:
- Basic accounting capabilities.
-
Standard:
- Cisco proprietary