Egna frågor 2 (tekniska termer) Flashcards
Explain what a flooding attack is
An Internet Control Message Protocol (ICMP) flood attack, also known as a Ping flood attack, is a common Denial-of-Service (DoS) attack in which an attacker attempts to overwhelm a targeted device with ICMP echo-requests (pings). Normally, ICMP echo-request and echo-reply messages are used to ping a network device in order to diagnose the health and connectivity of the device and the connection between the sender and the device. By flooding the target with request packets, the network is forced to respond with an equal number of reply packets. This causes the target to become inaccessible to normal traffic.
Explain a reflective attack
Reflection Denial of Service attacks makes use of a potentially legitimate third party component to send the attack traffic to a victim, ultimately hiding the attackers’ own identity. The attackers send packets to the reflector servers with a source IP address set to their victim’s IP therefore indirectly overwhelming the victim with the response packets.
The reflector servers used for this purpose could be ordinary servers not obviously compromised, which makes this kind of attack particularly difficult to mitigate. A common example for this type of attack is Reflective DNS Response attack.
Explain what a amplification attack is
DNS amplification is a Distributed Denial of Service (DDoS) attack in which the attacker exploits vulnerabilities in domain name system (DNS) servers to turn initially small queries into much larger payloads, which are used to bring down the victim’s servers.
What are the capabilities of a firewall
Defines a single choke point. Provides a location for monitoring security events.
Convenient platform for some Internet functions such as NAT, usage monitoring, IPSEC VPNs
What are the limitations of a firewall
cannot protect against attacks bypassing firewall
may not protect fully against internal threats
improperly secure wireless LAN
laptop, PDA, portable storage device infected outside then used inside
What are the two default firewall policies?
Whitelisting (Discard)- prohibit unless expressly permitted
more conservative, controlled, visible to users:
Blacklisting (Forward) - permit unless expressly prohibited:
easier to manage/use but less secure
What is a Bastion host?
A bastion host is a special-purpose computer on a network specifically designed and configured to withstand attacks. The computer generally hosts a single application, for example a proxy server, and all other services are removed or limited to reduce the threat to the computer. It is hardened in this manner primarily due to its location and purpose, which is either on the outside of a firewall or in a demilitarized zone (DMZ) and usually involves access from untrusted networks or computers.
What are the two intrusion detection systems?
Host-based IDS: monitor single host activity
Network-based IDS: monitor network traffic
What is the IDS principle?
assume intruder behavior differs from legitimate users
expect overlap
What are the two main approaches to host based IDS?
Anomaly detection - defines normal/ expected behaviour
-Threshold
-Profile
Signature detection - defines proper behaviour
What are the limitations of IDS?
Detecting viruses as hard as the halting problem
2-types of intrusion: error causing or not
encrypted traffic hard to analyze
internet too noisy, leads to false positives
How does buffer overflow work?
The attacker must first identify somehow (e.g. tracing, fuzzing tools) the buffer overflow vulnerability in a program. The idea is to input more data to the buffer than it is supposed to handle. By overwriting the return address in the stack frame, one can get a segmentation fault or an illegal instruction error. This happens when the function returns and tries to execute instructions at the location pointed by the return address. There is a very high chance that the overwritten return address will not point to a valid address inside the process address space or the instruction be valid if the attacker used some random input, and the program will crash.
How do you run arbitrary code in a buffer overflow attack?
To run arbitrary code, an attacker should put executable code in the buffer that is being overflowed and overwrite the return pointer to point to the buffer. The attacker has to guess the address of the buffer to succeed. The attacker can add NOP instructions at the beginning of the buffer, then add the executable code, and then the return address. This greatly increases the chances of guessing the address, because even if the pointer does not point precisely to the beginning of the injected code but points instead to one of the NOP instructions, the NOP instructions will be executed and eventually the injected code will be executed after them.
Explain how safe libraries work
Well-written and tested abstract data type libraries which centralize and automatically perform buffer management, including bounds checking, can reduce the occurrence and impact of buffer overflows. The two main building-block data types in these languages in which buffer overflows commonly occur are strings and arrays; thus, libraries preventing buffer overflows in these data types can provide the vast majority of the necessary coverage. Still, failure to use these safe libraries correctly can result in buffer overflows and other vulnerabilities; and naturally, any bug in the library itself is a potential vulnerability.
How does a guard-page work?
A guard page provides a one-shot alarm for memory page access. This can be useful for an application that needs to monitor the growth of large dynamic data structures. For example, there are operating systems that use guard pages to implement automatic stack checking.
What is stack protection?
Add entry and exit code to check stack for signs of corruption
Check for overwrite between local variables and saved frame pointer and return address
What is executable address space protection?
In computer security, executable-space protection marks memory regions as non-executable, such that an attempt to execute machine code in these regions will cause an exception. If an operating system can mark some or all writable regions of memory as non-executable, it may be able to prevent the stack and heap memory areas from being executable. This helps to prevent certain buffer-overflow exploits from succeeding, particularly those that inject and execute code, such as the Sasser and Blaster worms. These attacks rely on some part of memory, usually the stack, being both writeable and executable; if it is not, the attack fails.
What is address space randomization?
Address space layout randomization (ASLR) is a memory-protection process for operating systems (OSes) that guards against buffer-overflow attacks by randomizing the location where system executables are loaded into memory.
The success of many cyberattacks, particularly zero-day exploits, relies on the hacker’s ability to know or guess the position of processes and functions in memory. ASLR is able to put address space targets in unpredictable locations. If an attacker attempts to exploit an incorrect address space location, the target application will crash, stopping the attack and alerting the system.