Difference between revisions of "LPIC-303 Objectives V3.0"

From LPI Wiki
Jump to: navigation, search
(327.1 Discretionary Access Control (weight: 3))
(325.4 DNS and Cryptography (weight: 5))
Line 103: Line 103:
 
|}
 
|}
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
* Understanding of DNSSEC and DANE.
+
* Understand the concept of DNS, Zones and resource records
* Configure and troubleshoot BIND as an authoritative name server serving DNSSEC secured zones.
+
* Understand DNSSEC, including Key Signing Keys, Zone Signing Keys and relevant DNS records such as DS, DNSKEY, RRSIG, NSEC, NSEC3 and NSEC3PARAM
* Configure BIND as an recursive name server that performs DNSSEC validation on behalf of its clients.
+
* Understand CAA and DANE, including relevant DNS records such as CAA and TLSA
* Key Signing Key, Zone Signing Key, Key Tag
+
* Configure and troubleshoot BIND as an authoritative name server serving DNSSEC secured zones
* Key generation, key storage, key management and key rollover
+
* Configure BIND as an recursive name server that performs DNSSEC validation on behalf of its clients
* Maintenance and re-signing of zones
+
* Manage DNSSEC signed zones, including key generation, key rollover and re-signing of zones
* Use DANE to publish X.509 certificate information in DNS.
+
* Use CAA and DANE to publish X.509 certificate and certificate authority information in DNS
* Use TSIG for secure communication with BIND.
+
* Use TSIG for secure communication with BIND
'''The following is a partial list of the used files, terms and utilities:'''
+
* Awareness of DNS over TLS and DNS over HTTPS
* DNS, EDNS, Zones, Resource Records
+
* Awareness of Multicast DNS
* DNS resource records: DS, DNSKEY, RRSIG, NSEC, NSEC3, NSEC3PARAM, TLSA
+
'''Partial list of the used files, terms and utilities:'''
* DO-Bit, AD-Bit
+
* TSIG
+
 
* named.conf
 
* named.conf
 
* dnssec-keygen
 
* dnssec-keygen

Revision as of 10:39, 24 February 2019

Introduction

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

Version Information

These objectives are version 2.0.0.

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 325: Cryptography

325.1 X.509 Certificates and Public Key Infrastructures (weight: 5)

Weight 5
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:

  • Understand X.509 certificates, X.509 certificate lifecycle, X.509 certificate fields and X.509v3 certificate extensions.
  • Understand trust chains and public key infrastructures.
  • Generate and manage public and private keys.
  • Create, operate and secure a certification authority.
  • Request, sign and manage server and client certificates.
  • Revoke 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


325.2 X.509 Certificates for Encryption, Signing and Authentication (weight: 4)

Weight 4
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. The version of Apache HTTPD covered is 2.4 or higher.

Key Knowledge Areas:

  • Understand of SSL, TLS and protocol versions.
  • Understand common transport layer security threats, for example Man-in-the-Middle.
  • Configure Apache HTTPD with mod_ssl to provide HTTPS service, including SNI and HSTS.
  • Configure Apache HTTPD with mod_ssl to authenticate users using certificates.
  • Configure Apache HTTPD with mod_ssl to provide OCSP stapling.
  • Use OpenSSL for SSL/TLS client and server tests.

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

  • Intermediate certification authorities
  • Cipher configuration (no cipher-specific knowledge)
  • httpd.conf
  • mod_ssl
  • openssl


325.3 Encrypted File Systems (weight: 3)

Weight 3
Description Candidates should be able to set up and configure encrypted file systems.

Key Knowledge Areas:

  • Understand block device and file system encryption.
  • Use dm-crypt with LUKS to encrypt block devices.
  • Use eCryptfs to encrypt file systems, including home directories and PAM integration.
  • Be aware 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-* commands
  • mount.ecryptfs, umount.ecryptfs
  • pam_ecryptfs


325.4 DNS and Cryptography (weight: 5)

Weight 5
Description Candidates should have experience and knowledge of cryptography in the context of DNS and its implementation using BIND. The version of BIND covered is 9.7 or higher.

Key Knowledge Areas:

  • Understand the concept of DNS, Zones and resource records
  • Understand DNSSEC, including Key Signing Keys, Zone Signing Keys and relevant DNS records such as DS, DNSKEY, RRSIG, NSEC, NSEC3 and NSEC3PARAM
  • Understand CAA and DANE, including relevant DNS records such as CAA and TLSA
  • Configure and troubleshoot BIND as an authoritative name server serving DNSSEC secured zones
  • Configure BIND as an recursive name server that performs DNSSEC validation on behalf of its clients
  • Manage DNSSEC signed zones, including key generation, key rollover and re-signing of zones
  • Use CAA and DANE to publish X.509 certificate and certificate authority information in DNS
  • Use TSIG for secure communication with BIND
  • Awareness of DNS over TLS and DNS over HTTPS
  • Awareness of Multicast DNS

Partial list of the used files, terms and utilities:

  • named.conf
  • dnssec-keygen
  • dnssec-signzone
  • dnssec-settime
  • dnssec-dsfromkey
  • rndc
  • dig
  • delv
  • openssl



Topic 326: Host Security

326.1 Host Hardening (weight: 4)

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

Key Knowledge Areas:

  • Configure BIOS and boot loader (GRUB 2) security.
  • Disable useless software and services.
  • Use sysctl for security related kernel configuration, particularly ASLR, Exec-Shield and IP / ICMP configuration.
  • Limit resource usage.
  • Work with chroot environments.
  • Drop unnecessary capabilities.
  • Be aware of the security advantages of virtualization.

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

  • grub.cfg
  • chkconfig, systemctl
  • ulimit
  • /etc/security/limits.conf
  • pam_limits.so
  • chroot
  • sysctl
  • /etc/sysctl.conf


326.2 Host Intrusion Detection (weight: 5)

Weight 5
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:

  • Use and configure the Linux Audit system.
  • Use chkrootkit.
  • Use and configure rkhunter, including updates.
  • Use Linux Malware Detect.
  • Automate host scans using cron.
  • Configure and use AIDE, including rule management.
  • Be aware of OpenSCAP.

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

  • auditd
  • auditctl
  • ausearch, aureport
  • auditd.conf
  • audit.rules
  • pam_tty_audit.so
  • chkrootkit
  • rkhunter
  • /etc/rkhunter.conf
  • maldet
  • conf.maldet
  • aide
  • /etc/aide/aide.conf


326.3 Removed


326.4 Removed


326.5 Resource Control (weight: 3)

Weight 3
Description Candidates should be able to restrict the resources system services can consume.

Key Knowledge Areas:

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



Topic 327: Access Control

327.1 Discretionary Access Control (weight: 3)

Weight 3
Description Candidates should understand Discretionary Access Control and know how to implement it using Access Control Lists. Additionally, candidates are required to understand and know how to use Extended Attributes.

Key Knowledge Areas:

  • Understand and manage file ownership and permissions, including SUID and SGID
  • Understand and manage access control lists
  • Understand and manage extended attributes and attribute classes

Partial list of the used files, terms and utilities:

  • getfacl
  • setfacl
  • getfattr
  • setfattr


327.2 Mandatory Access Control (weight: 5)

Weight 5
Description Candidates should be familiar with Mandatory Access Control systems for Linux. Specifically, candidates should have a thorough knowledge of SELinux. Also, 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:

  • Understand the concepts of Type Enforcement, Role Based Access Control, Mandatory Access Control and Discretionary Access Control
  • Configure, manage and use SELinux
  • Awareness of AppArmor and Smack

Partial list of the used files, terms and utilities:

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



Topic 328: Network Security

328.1 Network Hardening (weight: 4)

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

Key Knowledge Areas:

  • Configure FreeRADIUS to authenticate network nodes.
  • Use nmap to scan networks and hosts, including different scan methods.
  • Use Wireshark to analyze network traffic, including filters and statistics.
  • Identify and deal with rogue router advertisements and DHCP messages.

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


328.2 Network Intrusion Detection (weight: 4)

Weight 4
Description Candidates should be familiar with the use and configuration of network security scanning, network monitoring and network intrusion detection software. This includes updating and maintaining the security scanners.

Key Knowledge Areas:

  • Implement bandwidth usage monitoring.
  • Configure and use Snort, including rule management.
  • Configure and use OpenVAS, including NASL.

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/*


328.3 Packet Filtering (weight: 5)

Weight 5
Description Candidates should be familiar with the use and configuration of the netfilter Linux packet filter using iptables and ip6tables.

Key Knowledge Areas:

  • Understand common firewall architectures, including DMZ
  • Understand and use iptables and ip6tables, including standard modules, tests and targets
  • Implement packet filtering for IPv4 and IPv6
  • Implement connection tracking and network address translation
  • Manage IP sets and use them in netfilter rules
  • Awareness of nftables and nft
  • Awareness of ebtables
  • Awareness of conntrackd

Partial list of the used files, terms and utilities:

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


328.4 Virtual Private Networks (weight: 4)

Weight 4
Description Candidates should be familiar with the use of OpenVPN, IPsec and WireGuard to set up remote access and site to site VPN.

Key Knowledge Areas:

  • Understand the principles of bridged and routed VPN
  • Understand the principles and major differences of the OpenVPN, IPsec, IKEv2 and WireGuard protocols
  • Configure and operate OpenVPN servers and clients
  • Configure and operate IPsec servers and clients using strongSwan
  • Configure and operate WireGuard servers and clients
  • Awareness of L2TP

Partial list of the used files, terms and utilities:

  • /etc/openvpn/
  • openvpn
  • /etc/strongswan.conf
  • /etc/strongswan.d/
  • /etc/swanctl/swanctl.conf
  • /etc/swanctl/
  • swanctl
  • /etc/wireguard/
  • wg
  • ip


Topic 329: Threats and Vulnerability Assessment

329.1 Common Vulnerabilities and Attacks (weight: 2)

Weight 2
Description Candidates should understand the principle of major types of security vulnerabilities and attacks.

Key Knowledge Areas:

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


329.2 Penetration Testing (weight: 4)

Weight 4
Description Candidates should be able to confirm the effectiveness of security measures by conducting penetration tests against their own systems.

Key Knowledge Areas:

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


Other Comments for consideration

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.)

Some aspects (i.e. Radius) are implemented in V2 (fth)

2) Related to IPv6: Not only IPv4, but also IPv6 should be considered.

Implemented in V2 wherever applicable (fth)

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.

Implemented in host hardening in V2 (fth)

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.

This is an interesting topic, but it goes beyond basic security in the sense it "prevention and defending". This is postmortal analysis. As the exam already contains a lot of topic this is postponed but up to discussion (fth)

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.

As the other software / service aspects beyond Linux system security have been dropped this is considered out of scope for now too (fth)

6) Related to OpenFlow: There are several points to be considered in terms of security measure about the configuration of OpenFlow.

This is considered as an application aspect which seems to be beyond the scope for not (fth).

7) RADIUS: This was covered in 301 though, this is not covered now. This should be covered.

Implemented in V2 (fth)

8) DNS: More DNSSEC and DANE.

Implemented in V2 (fth)

9) Secure development, hardening

Hardening has been implemented for both hosts and networks in V2 (fth), Secure development is considered out of scope for now (fth)

10) Certificate Transparency

11) polkit