2.3 Explain various types of vulnerabilities.
A vulnerability is a weakness that a threat can exploit. Knowing the families of vulnerability helps you pick the right defence: input validation for injection, patching for OS flaws, isolation for VM escape, vendor due diligence for supply chain.
Application
- Memory injection
- Inserting malicious code into the memory of a running process, often to hide from disk-based scanning.
- Buffer overflow
- Writing more data than a buffer holds, overwriting adjacent memory and possibly hijacking execution. Mitigated by bounds checking, ASLR, DEP and safe languages.
- Race conditions
- Outcome depends on the timing of events; an attacker manipulates timing to get an unintended result.
- Time-of-check (TOC)
- The moment a program checks a condition, such as file permissions.
- Time-of-use (TOU)
- The moment it acts on that check. A TOCTOU flaw lets an attacker change things between check and use.
- Malicious update
- A software update that has been tampered with to deliver malware, often via a compromised vendor build pipeline.
Operating system and web
- Operating system (OS)-based
- Flaws in the OS kernel, services or drivers; usually fixed by vendor patches.
- Structured Query Language injection (SQLi)
- Untrusted input changes a database query, e.g. ' OR 1=1 --. Prevent with parameterised queries and input validation.
- Cross-site scripting (XSS)
- An attacker injects script into a page that other users load, running in their browser. Prevent with output encoding and Content Security Policy.
Hardware
- Firmware
- Low-level software in devices; flaws are hard to detect and patch, and can survive OS reinstall.
- End-of-life
- The vendor no longer sells or supports the product; no more patches.
- Legacy
- Older systems still in use, often because critical apps depend on them; may not support modern security.
Virtualization
- Virtual machine (VM) escape
- Code in a guest VM breaks out to the hypervisor or other VMs. Very serious in shared environments.
- Resource reuse
- Memory or storage from one VM is reassigned to another without being cleared, leaking data.
Other categories
- Cloud-specific
- Misconfigured storage buckets, overly permissive IAM, exposed management APIs, insecure multi-tenancy.
- Supply chain: service provider
- A provider you depend on is breached or fails.
- Supply chain: hardware provider
- Components are counterfeit or tampered with.
- Supply chain: software provider
- Third-party code or libraries contain vulnerabilities or backdoors.
- Cryptographic
- Weak algorithms, short keys, poor random numbers, or bad implementation.
- Misconfiguration
- Insecure settings: default passwords, open shares, debug enabled, public buckets. One of the most common causes of breaches.
Mobile device
- Side loading
- Installing apps from outside the official store, bypassing app vetting.
- Jailbreaking
- Removing manufacturer restrictions (rooting on Android), which disables built-in protections.
Zero-day
- Zero-day
- A vulnerability unknown to the vendor or without a patch. Defend with layered controls, behaviour-based detection and fast response.
Check your understanding
Knowledge quiz · pass mark 80%
- Which best prevents SQL injection?
- Installing an app from a website instead of the official store is:
- Malicious script stored in a forum post runs in visitors' browsers. This is:
- A zero-day vulnerability has a vendor patch available.
- Code in a guest VM gains access to the hypervisor. This is:
- A program checks a file permission, and an attacker swaps the file before the program opens it. This is a:
Original CoreQ Academy material, mapped to objective 2.3 of the publicly available CompTIA Security+ SY0-701 exam objectives (Exam objectives V7, document version 7.0). Not affiliated with or endorsed by CompTIA. Contains no exam questions.