Chapter 5 Flashcards
Buffer Overflow
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.
Integer Overflow
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.
Stack Overflow
Target the stack, which stores variable values and is managed by the operating system.
Heap Overflows
Target the heap, which stores objects created by code and must be managed by application developers.
Rootkits
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.
Arbitrary Code Execution
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.
Remote Code Execution
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.
Debug Mode
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.
Communication between TLS/SSL protocols
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.
Use of Digital Certificates
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.
Virtual Machine Escape
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.
Industrial Control Systems (ICSs)
Industrial control systems rely on a series of sensors and controllers distributed throughout the organization, collecting information and controlling activities.
Programmable Logic Controllers (PLCs)
Specialized hardware controllers designed to operate in an IoT environment. PLC’s often uses specialized communication protocol called Modbus
Modbus
Communicates with sensors and other IoT components over wired serial interfaces
Embedded Systems
Computers integrated into the operation of another device, such as a vehicle, camera or multifunction printer