Chapter 5 Flashcards

1
Q

Buffer Overflow

A

Occurs when an attacker manipulates a program into placing more data into an area of memory than is allocated for that programs use. Goal is to overwrite other information in memory with instructions that may be executed by a different process running on the system.

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

Integer Overflow

A

Variant of buffer overflow, where the result of an arithmetic operation attempts to store an integer that is too large to fit in the specified buffer.

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

Stack Overflow

A

Target the stack, which stores variable values and is managed by the operating system.

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

Heap Overflows

A

Target the heap, which stores objects created by code and must be managed by application developers.

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

Rootkits

A

Are hacking tools designed to automate privilege escalation attacks. An attacker who gains access to a normal user account may use a rootkit to exploit a vulnerability and perform a privilege escalation attack, seeking to gain administrative privileges.

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

Arbitrary Code Execution

A

Vulnerabilities allow an attacker to run software of their choice on the targeted system. This can be a catastrophic event, particularly if the vulnerability allows the attacker to run the code with administrative privileges.

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

Remote Code Execution

A

Vulnerabilities are an even more dangerous subset of code execution vulnerabilities because the attacker can exploit the vulnerability over a network connection without having physical or logical access to the target system.

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

Debug Mode

A

That give developers crucial information needed to troubleshoot applications in the development process. Debug mode typically provides detailed information on the inner workings of an application and a server, as well as supporting databases. Although this information can be useful to developers, it can inadvertently assist an attacker seeking to gain information about the structure of a database, authentication mechanisms used by an application, or other details.

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

Communication between TLS/SSL protocols

A

By using ciphers for encryption methods, they’re able to use cryptographic ciphers that can be used with those protocols on a server-by-server basis. When a client and server wish to communicate using SSL/TLS, they exchange a list of ciphers that each system supports and agree on a mutually acceptable cipher. Solving this common problem requires altering the set of supported ciphers on the affected server and ensuring that only secure ciphers are used.

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

Use of Digital Certificates

A

SSL and TLS rely on the use of digital certificates to validate the identity of servers and exchange cryptographic keys. Digital certificates are useful only if the recipient of a certificate trusts the entity that issued it.

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

Virtual Machine Escape

A

Vulnerabilities are the most serious issue that may exist in a virtualized environment, particularly when a virtual host runs systems of differing security levels. In an escape attack, the attacker has access to a single virtual host and then manages to leverage that access to intrude on the resources assigned to a different virtual machine (VM). The hypervisor is supposed to prevent this type of access by restricting a VM’s access to only those resources assigned to that machine. Escape attacks allow a process running on the VM to “escape” those hypervisor restrictions.

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

Industrial Control Systems (ICSs)

A

Industrial control systems rely on a series of sensors and controllers distributed throughout the organization, collecting information and controlling activities.

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

Programmable Logic Controllers (PLCs)

A

Specialized hardware controllers designed to operate in an IoT environment. PLC’s often uses specialized communication protocol called Modbus

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

Modbus

A

Communicates with sensors and other IoT components over wired serial interfaces

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

Embedded Systems

A

Computers integrated into the operation of another device, such as a vehicle, camera or multifunction printer

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

Real-time operating systems (RTOSs)

A

Are slimmed-down operating systems designed to work quickly on IoT devices in a low-power environment.

17
Q

System on a Chip (SoC)

A

Is an entire embedded system packaged onto a single chip, often including a processor, memory, networking interfaces, and power management on the chip.

18
Q

Field-programmable gate arrays (FPGAs)

A

Are computer chips that allow the end user to reprogram their function, making them quite useful for embedded systems.

19
Q

Controller Area Network bus (CAN bus)

A

Networks are specialized networks designed to facilitate communication between embedded systems without the overhead of a TCP/IP network.

20
Q

Injection attacks

A

Occur when an attacker is able to send commands through a web server to a backend system, bypassing normal security controls and fooling the backend system into believing that the request came from the web server. Most common form is SQL injection attacks

21
Q

SQL Injection Attack

A

Exploits web applications to send unauthorized commands to a backend database server

22
Q

2 methods for protection of SQL Injection Attacks

A

Input validation and enforcement of least privilege restrictions on database access. Input validation ensures that users don’t provide unexpected text to the web server. It would block the use of the apostrophe that is needed to “break out” of the original SQL query. Least privilege restricts the tables that may be accessed by a web server and can prevent the retrieval of credit card information by a process designed to handle catalog information requests.

23
Q

Cross-site Scripting (XSS)

A

Attacker embeds scripting commands on a website that will later be executed by an unsuspecting visitor accessing the site. Idea is to trick a user visiting a trusted site into executing malicious code placed there by an untrusted third party.

24
Q

Persistent XSS

A

Attacks occur when the attacker is able to actually store the attack code on a server. This code remains on the server, waiting for a user to request the affected content. These attacks are also known as stored XSS attacks.

25
Q

Reflected XSS

A

Attacks occur when the attacker tricks a user into sending the attack to the server as part of a query string or other content. The server then sends the attack back to the user (reflecting it), causing the code to execute.

26
Q

Document Object Model (DOM)-based XSS

A

Attacks occur within a database maintained by the user’s web browser. These attacks are particularly insidious because they occur entirely on the user’s computer and are never seen by the remote web server.

27
Q

Directory Traversal

A

The attacker inserts filesystem path values into a query string, seeking to navigate to a file located in an area not normally authorized for public access. These attacks may occur when filenames are included in query strings. For example, if a web application retrieves policy documents from a remote storage device, it might include the name of the policy in a query string, such as this one:

28
Q

3 Ways to Prevent Directory Traversal Attacks

A

First, application designs should avoid including filenames in user-manipulatable fields, such as query strings. Second, input validation should prevent the use of special characters required to perform directory traversal. Finally, access controls on storage servers should restrict the web server’s access to files authorized for public access.

29
Q

Password Spraying Attacks

A

Occur when an attacker uses a list of common passwords and attempts to log into many different user accounts with those common passwords. The attacker only needs to find one valid username/password combination to gain access to the system. This attack is successful when users do not choose sufficiently unique passwords.

30
Q

Credential Stuffing

A

Attacks occur when an attacker takes a list of usernames and passwords that were stolen in the compromise of one website and uses them to attempt to gain access to a different, potentially unrelated, website. Credential stuffing attacks are successful when users reuse the same password across many different sites.

31
Q

Impersonation attack

A

Attacks occur when an attacker takes on the identity of a legitimate user

32
Q

MitM Attack

A

Attacks occur when an attacker is able to interfere in the communication flow between two systems.

33
Q

Session Hijacking

A

Focuses on taking over an already existing session, either by acquiring the session key or cookies used by the remote server to validate the session or by causing the session to pass through a system the attacker controls, allowing them to participate in the session. Much like impersonation and MitM attacks, securing the data that an attacker needs to acquire to hijack the session, either via encrypting network sessions or links or on the local system, can help limit opportunities for session hijacking.