LPIC-303 Objectives V2

From LPI Wiki
Revision as of 16:56, 24 February 2015 by FabianThorns (Talk | contribs) (321.2 Host Intrusion Detection)

Jump to: navigation, search

Introduction

The description of the entire LPIC-3 programme is listed here.

Version Information

These objectives are version 2.0.0 DRAFT.

The version 1.x objectives can be found here.


Translations of Objectives

The following translations of the objectives are available on this wiki:


Objectives

Topic 320: Cryptography

320.1 X.509 Certificates and Public Key Infrastructures

Weight To be determined
Description Candidates should understand X.509 certificates and public key infrastructures. They should know how to configure and use OpenSSL to implement certification authorities and issue SSL certificates for various purposes.

Key Knowledge Areas:

  • Understanding of X.509 certificates, X.509 certificate lifecycle, X.509 certificate fields and X.509v3 certificate extensions.
  • Understanding of trust chains and public key infrastructures.
  • Generating and managing public and private keys.
  • Creating, operating and securing a certification authority.
  • Requesting, signing and managing server and client certificates.
  • Revocation of certificates and certification authorities.

The following is a partial list of the used files, terms and utilities:

  • openssl, including relevant subcommands
  • OpenSSL configuration
  • PEM, DER, PKCS
  • CSR
  • CRL
  • OCSP


320.2 X.509 Certificates for Encryption, Signing and Authentication

Weight To be determined
Description Candidates should know how to use X.509 certificates for both server and client authentication. Candidates should be able to implement user and server authentication for Apache HTTPD.

Key Knowledge Areas:

  • Understanding of SSL and TLS and protocol versions.
  • Understanding of common transport layer security threats (i.e. Man-in-the-Middle)
  • Configuration of Apache HTTPD with mod_ssl to provide HTTPS service.
  • Configuration of Apache HTTPD with mod_ssl to authenticate users using certificates.
  • Configuration of Apache HTTPD with mod_ssl to provide OSCP stapling.
  • Using openssl for SSL/TLS client and server tests.

The following is a partial list of the used files, terms and utilities:

  • Intermediate Certificates
  • Cipher configuration (no cipher-specific knowledge)
  • httpd.conf
  • openssl


320.3 Advanced GPG

Weight To be determined
Description Candidates should know how to use GPG. This includes key generation, signing and publishing to key servers. Managing multiple private keys and IDs is also included.

Key Knowledge Areas:

  • GPG encryption and signing
  • private/public key management
  • GPG key servers
  • GPG configuration

The following is a partial list of the used files, terms and utilities:

  • gpg
  • gpgv
  • gpg-agent
  • ~/.gnupg/


320.4 Encrypted Filesystems

Weight To be determined
Description Candidates should be able to setup and configure encrypted file systems.

Key Knowledge Areas:

  • Understanding of block device and file system encryption.
  • Using dm-crypt with LUKS to encrypt block devices.
  • Using eCryptfs to encrypt file systems, including home directories and PAM integration.
  • Awareness of plain dm-crypt and EncFS.

The following is a partial list of the used files, terms and utilities:

  • cryptsetup
  • cryptmount
  • /etc/crypttab
  • ecryptfsd
  • ecryptfs-* tools
  • mount.ecryptfs, umount.ecryptfs
  • pam_ecryptfs


320.5 DNS and cryptography

Weight To be determined
Description Candidates should have experience and knowledge of cryptography in the context of DNS and its implementation using BIND.

Key Knowledge Areas:

  • Understanding of DNSSEC and DANE.
  • Configure and troubleshoot BIND as an authoriative nameserver serving DNSSEC secured zones.
  • Configure BIND as an recursive nameserver that performs DNSSEC validation on behalf of its clients.
  • Use DANE to publish X.509 certificate information in DNS.

The following is a partial list of the used files, terms and utilities:

  • DNS, EDNS, Zones, Resource Records
  • DNS resource records: DS, DNSKEY, RRSIG, NSEC, NSEC3, NSEC3PARAM, TLSA
  • DO-Bit, AD-Bit
  • Key Signing Key, Zone Signing Key, Key Tag
  • Key generation, Key storage, Key management, Key rollover
  • Maintenance and re-signing of zones
  • named.conf
  • dnssec-keygen
  • dnssec-signzone
  • dnssec-settime
  • dnssec-dsfromkey
  • rndc
  • dig
  • delv
  • openssl


320.6 OpenSSH

Weight To be determined
Description Candidates should have experience and knowledge of security issues in use and configuration of OpenSSH SSH services.

Key Knowledge Areas:

  • OpenSSH configuration and command line tools
  • OpenSSH key management and access control
  • Awareness of SSH protocol v1 and v2 security issues

The following is a partial list of the used files, terms and utilities:

  • /etc/ssh/
  • ~/.ssh/
  • ssh-keygen
  • ssh-agent
  • ssh-vulnkey



Topic 321: Host security

321.1 Host Hardening

Weight 4
Description Candidates should be able to secure computers running Linux against common threats. This includes Kernel and software configuration.

Key Knowledge Areas:

  • BIOS and bootloader configuration
  • Disable useless software and services.
  • Security related kernel / sysctl configuration
  • chroot encapsulation
  • Awareness of the security advantages of Virtualization.

The following is a partial list of the used files, terms and utilities:

  • grub.cfg
  • chkconfig, systemctl
  • chroot
  • sysctl
  • /etc/sysctl.conf


321.2 Host Intrusion Detection

Weight 4
Description Candidates should be familiar with the use and configuration of common host intrusion detection software. This includes updates and maintenance as well as automated host scans.

Key Knowledge Areas:

  • chkrootkit usage
  • rkhunter usage, configuration and update
  • Scan automatition using cron
  • AIDE configuration, rules and use

The following is a partial list of the used files, terms and utilities:

  • chkrootkit
  • rkhunter
  • /etc/rkhunter.conf
  • aide
  • aide.conf


321.3 User Management and Authentication

Weight To be determined
Description Candidates should be familiar with management and authentication of user accounts. This includes configuration and use of NSS, PAM, SSSD and Kerberos for both local and remote directories and authentication mechanisms as well as enforcing a password policy.

Key Knowledge Areas:

  • NSS and NSS configuration
  • PAM and PAM configuration
  • Password complexity policies and periodic password changes
  • Automateic account locking after failed login attempts
  • SSSD daemon and command line tools
  • Configuring NSS and PAM for use with SSSD
  • Authenticate SSSD against Active Directory, IPA, LDAP, Kerberos and local domains
  • Obtain and manage Kerberos Tickets

The following is a partial list of the used files, terms and utilities:

  • nsswitch.conf
  • /etc/login.defs
  • pam_cracklib
  • chage
  • faillog
  • pam_sss
  • sssd
  • sssd.conf
  • sss_* commands
  • krb5.conf
  • kinit, klist, kdestroy


321.4 FreeIPA Installation and Samba Integration

Weight 4
Description Candidates should be familiar with FreeIPA v3.x installation process of creating a server instance. Knowledge of the components used by FreeIPA. Candidates should be able to integrate with Samba for group management, Kerberized CIFS and as an AD DC with FreeIPA.

Key Knowledge Areas:

  • System and configuration prerequisites for installing FreeIPA
  • FreeIPA Components: LDAP, Kerberos, PKI, DNS, Certmonger
  • Cross-realm trusts

The following is a partial list of the used files, terms and utilities:

  • ipa-server-install and options
  • ipa
  • ipa trust-add-ad
  • ipa config-mod
  • net
  • ldapadd



Topic 322: Access Control

322.1 Discretionary Access Control

Weight To be determined
Description Candidates are required to understand Discretionary Access Control and know how to implement it using Access Control Lists. Furthermore, Candidates are required to understand and know how to use Extended Attributes.

Key Knowledge Areas:

  • File ownership and permissions
  • Access Control Lists
  • Extended Attributes and attribute classes

The following is a partial list of the used files, terms and utilities:

  • getfacl
  • setfacl
  • getfattr
  • setfattr


322.2 Mandatory Access Control

Weight To be determined
Description Candidates should be familiar with Mandatory Access Control systems for Linux. In especially, Candidates should have a thorough knowledge of SELinux. Furthermore, Candidates should be aware of other Mandatory Access Control systems for Linux. This includes major features of these systems but not configuration and use.

Key Knowledge Areas:

  • SELinux configuration and command line tools
  • TE, RBAC, MAC and DAC concepts and use
  • Awareness of AppArmor

The following is a partial list of the used files, terms and utilities:

  • getenforce, setenforce, selinuxenabled
  • getsebool, setsebol, togglesebool
  • fixfiles, restorecon, setfiles
  • newrole, runcon
  • semanage
  • sestatus, seinfo
  • apol
  • seaudit, seaudit-report, audit2why, audit2allow
  • /etc/selinux/*


322.3 Network file systems

Weight To be determined
Description Candidates should have experience and knowledge of security issues in use and configuration of NFSv4 clients and servers as well as CIFS client services. Earlier versions of NFS are not required knowledge.

Key Knowledge Areas:

  • NFSv4 ACLs
  • NFSv4 security improvements, issues and use
  • NFSv4 pseudo file system
  • NFSv4 authentication mechanisms (LIPKEY, SPKM, Kerberos)
  • CIFS Unix Extensions
  • Mapping and Handling of CIFS ACLs and SIDs in a Linux System
  • CIFS security modes (NTLM, Kerberos)

The following is a partial list of the used files, terms and utilities:

  • /etc/exports
  • /etc/idmap.conf
  • nfs4acl
  • mount.cifs parameters related to ownership, permissions and security modes
  • winbind
  • getcifsacl, setcifsacl



Topic 324: Network Security

324.1 Network Hardening

Weight To be determined
Description Candidates should be able to secure networks against common threats. This includes verification of the effectiveness of security measures.

Key Knowledge Areas:

  • Configuration of FreeRADIUS to authenticate network nodes.
  • Use of nmap to scan networks and hosts, including different scan methods.
  • Use Wireshark to analyze network traffic, including filters and statistics.
  • Understand and combat rogue router advertisements and DHCP servers.

The following is a partial list of the used files, terms and utilities:

  • radiusd
  • radmin
  • radtest, radclient
  • radlast,radwho
  • radiusd.conf
  • /etc/raddb/*
  • nmap
  • wireshark
  • tshark
  • tcpdump
  • ndpmon


324.2 Network Intrusion Detection

Weight To be determined
Description Candidates should be familiar with the use and configuration of network security scanning, network monitoring and network intrusion detection software. This includes updates and maintenance of security scanners.

Key Knowledge Areas:

  • Bandwith monitoring
  • Snort configuration, rules and use
  • OpenVAS configuration, NASL and use

The following is a partial list of the used files, terms and utilities:

  • ntop
  • Cacti
  • snort
  • snort-stat
  • /etc/snort/
  • openvas-adduser, openvas-rmuser
  • openvas-nvt-sync
  • openvassd
  • openvas-mkcert
  • /etc/openvas/


324.3 Packet Filtering

Weight To be determined
Description Candidates should be familiar with the use and configuration of packet filters. This includes netfilter, iptables and ip6tables as well as awareness of nftables, nft and ebtables.

Key Knowledge Areas:

  • Packet filtering for both IPv4 and IPv6.
  • Connection tracking and network address translation.
  • Firewall architectures, including DMZ.
  • netfilter, iptables and ip6tables, including standard modules, tests and targets.
  • Definition of ipsets and their usage in netfilter rules.
  • Basic knowledge of nftables and nft.
  • Basic knowledge of ebtables.
  • Awareness of conntrackd.

The following is a partial list of the used files, terms and utilities:

  • iptables
  • ip6tables
  • iptables-save/iptables-restore
  • ip6tables-save/ip6tables-restore
  • ipset
  • nft
  • ebtables


324.4 OpenVPN

Weight To be determined
Description Candidates should be familiar with the use of OpenVPN.

Key Knowledge Areas:

  • OpenVPN Server and Client configuration for both bridged and routet VPN networks

The following is a partial list of the used files, terms and utilities:

  • /etc/openvpn/*
  • openvpn server and client

Other Comments for consideration

Secure development, hardening

As examples, following items are not in the current objectives:

1) Related to Wireless LAN:

(Note: It’s not only for Linux though, it is necessary to consider because

there are many points to be taken care for configuration in terms of security

measure.)

2) Related to IPv6:

Not only IPv4, but also IPv6 should be considered.

3) Security features in Linux:

For example, ASLR and Exec-Shield (ASCII Armor) should be considered,

because it causes security level lower if those are disabled.

4) Related to Forensics:

In the survey of malware’s behavior, Sleuth Kit would be used to analyze

the hard disk on Linux machine. Also in some cases, LVM commands would be

used to restore the disk which became un-mountable.

So that this area should be learned.

5) Database (RDB, NoSQL) security:

Because Application Security (bind, apache, etc.) is covered now, this item

would be nice to cover. And this item is listed in the CIF, security contest

almost every time.

Also the counter-measure in server side is necessary.

6) Related to OpenFlow:

There are several points to be considered in terms of security measure about

the configuration of OpenFlow.

7) RADIUS

This was covered in 301 though, this is not covered now.

This should be covered.

8) DNS

More DNSSEC and DANE.

Changes since version 1

321.3

The following aspects have been removed from objective 321.3 User Management and Authentication:

Key Knowledge Areas:

  • Kerberos Key Distribution Centre
  • Kerberos Principals
  • Kerberos Tickets
  • password cracking

The following is a partial list of the used files, terms and utilities:

  • krb5.conf
  • krb5kdc/kdc.conf
  • kdb5_util
  • rb5kdc/kadm5.acl
  • kadmin, kadmin.local
  • john