Hardening Flashcards

1
Q

What is Hardening?

A

Configuring an operating system and applications to reduce security vulnerabilities

**Relevant for servers, AND mobile devices

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Another definition for hardening

A

Comprehensive approach to keeping organization safe from intruders by reducing vulnerabilities

Attack surface reduction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Why is physical security important in hardening?

A

Compromised devices are hard to detect, and encryption helps protect data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How can digital forensics techniques be used?

A

To retrieve data from disposed of hard drives or SSD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Zero-day vulnerabilities

A

Vulnerabilities that have already been discovered therefore there are zero days to patch it

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

2 Main activities in reducing attack surface

A
  • remove ALL unnecessasry components
  • Update management (what, when, manual, automatic?)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Sandboxing

A

Separate as much as possible the execution of processes

EX: (Each service provided by a different virtual machine, or MAC)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What access control do typical consumer systems (Linux, windows) use

A

Discretionary Access Control (DAC), where each user owns resources and grants access to other users

single user granularity (coarse-grained)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What has a very large and exposed attack surface, and why

A

web browser because it can access every file in home directory and every resource in local network

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Two solutions with better granularity for controlling access to resources

MAC Hardening

A
  1. SELinux (security enhanced linux) expressive but complex
  2. AppArmor (application armor) easier to use and the default in Ubuntu

android uses selinux
ubuntu use apparmor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Two examples of DAC in Unix/Linux allowing binaries to dynamically change their execution user/group at runtime (SUID)

A
  1. Mail server (must run as superuser to deliver email, but shouldn’t always run like so)
  2. Password change (requires access to restricted file!)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the purpose of SUID/SGID binaries?

A

Temporarily elevate privileges for specific tasks (e.g., password management).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is a major risk of SUID binaries?

A

If there is a vulnerability, unauthorized code could be run as a superuser by an ATTACKER!!!

They can also modify shell binary, for example, and permit privilege escalation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

If an attacker hides a malicious SUID binary in file system, how do we find it?

A
  • capabilities (POSIX 1003.1e) allow control over binary files without requiring SUID/GUID
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Advantage of capabilities instead of SUID/GUID

A

fine-grained control over specific privileges for binary files reducing need for full root privileges and lowering the attack surface for privilege escalation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Disadvantage of capabilities

A

Can be complex and error prone, not all systems are familiar with it, older software could lack support

17
Q

Anti-Forensics Techniques

A

Encrypt storage to make data harder to recove after deletion

18
Q

What is full disk encryption, and what is a common problem?

A

Encrypts the entire disk. Without the key, the system cannot boot.

19
Q

What is Nmap, and what is it used for?

A

A network scanner to identify exposed attack surfaces.

20
Q

What are common steps for SSH hardening?

A

Disable password access, enforce public key authentication, and enable MFA.