Definition: A zero-day vulnerability is a security flaw in software or hardware for which no patch exists yet, because the vendor does not know about it or has only just learned of it. Attackers can exploit it before anyone can protect themselves with an update.
What does zero day mean?
The count starts on the day the vendor learns about the flaw. If attackers exploit it before then, the vendor has had zero days to fix it.
All software has bugs. Most are never noticed, or they are found and quietly fixed. A bug becomes dangerous when someone with bad intentions finds it first. Then there is an attack, but no defense in the form of an update.
A simple picture: a burglar finds out that a certain door lock can be opened with a trick. The lock maker does not know. Until a new lock ships, every door with that model is open.
Vulnerability, exploit and attack
Several terms come up around zero days, and they are often mixed up:
- Zero-day vulnerability: the flaw itself, for example a missing input check.
- Zero-day exploit: the code that takes advantage of the flaw. See zero-day exploit and exploit.
- Zero-day attack: the actual use of the exploit against a target.
- N-day vulnerability: a known flaw that usually already has a patch. It stays dangerous as long as systems are not updated.
From discovery to patch
Every zero-day vulnerability goes through similar stages:
- The bug is created: a weakness slips in during development. It can go unnoticed for years.
- Someone finds it: a security researcher, a participant in a bug bounty program, a government agency or a criminal group.
- An exploit is built: attackers write code that exploits the flaw reliably. Such exploits are also traded.
- The flaw becomes known: the vendor learns about it, either through responsible disclosure or because attacks are noticed.
- The patch is released: the vendor publishes an update. Temporary mitigations (workarounds) often come first.
- Organizations install it: only now is the flaw closed. Until then it is an n-day vulnerability, and attackers keep exploiting it.
The last stage is often underestimated. Once a patch is out, attackers can study the changes and build their own exploits quickly. The time between patch and installation is therefore especially critical. Solid patch management shortens it.
Who looks for zero-day vulnerabilities
- Security researchers: they report flaws to the vendor and give it time for a patch. Google’s Project Zero team, for example, usually publishes details 90 days after reporting.
- Vendors: they review their own software and pay rewards for reported flaws.
- Criminal groups: they use flaws for ransomware and data theft, or sell them on.
- State actors: intelligence agencies and state-backed groups use zero days for espionage and sabotage, often as part of an advanced persistent threat.
Well-known examples
- Stuxnet (2010): the computer worm sabotaged uranium centrifuges in Iran. It used several previously unknown Windows flaws.
- ProxyLogon (2021): flaws in on-premises Microsoft Exchange servers were exploited before a patch was available. Tens of thousands of servers worldwide were affected.
- Log4Shell (2021): a flaw in the widely used Java library Log4j (CVE-2021-44228). It sat inside countless applications, often without their operators knowing. Germany’s BSI issued its highest alert level.
- MOVEit Transfer (2023): the ransomware group Cl0p used a flaw in the file transfer software to steal data from hundreds of organizations.
The examples show a pattern: flaws in internet-facing systems are in highest demand, such as mail servers, VPN gateways, firewalls and file transfer services.
Why zero-day vulnerabilities are so dangerous
- No update: the most important defense, patching, is not available.
- No signatures: classic antivirus detects attacks by known patterns. A new exploit has no such pattern yet.
- Unnoticed attacks: an attack is often only discovered weeks or months later, when the flaw becomes public.
- Mass exploitation: once a flaw is public, attackers scan the internet automatically for vulnerable systems.
How organizations protect themselves
No update helps against an unknown flaw. But organizations can make an attack harder to pull off, quicker to spot and less damaging. See zero-day protection.
Prevent
- Keep an inventory: only if you know which software and versions you run can you react quickly to a warning.
- Shrink the attack surface: turn off unneeded services, features and plugins. Do not expose admin interfaces directly to the internet.
- Segment the network: with network segmentation, an attacker stays confined to a small area.
- Limit rights: under the principle of least privilege, every account gets only the rights it needs.
Detect
- Behavior instead of signatures: endpoint detection and response (EDR) spots suspicious activity even when the exploit itself is unknown.
- Monitor the network: an intrusion detection system and central log analysis reveal unusual connections.
- Follow warnings: alerts from vendors, national authorities and threat intelligence feeds show early which flaws are being actively exploited.
Respond
- Apply workarounds right away: until the patch arrives, temporary measures often help, such as disabling a feature or blocking access.
- Virtual patching: a web application firewall or an intrusion prevention system can block attacks on a known flaw before the update is installed.
- Patch fast: install critical updates for internet-facing systems within hours or a few days, not in the next maintenance window.
- Practice the plan: a well-rehearsed incident response plan defines who does what during an attack.
Conclusion
A zero-day vulnerability is a flaw for which no update exists yet. Such flaws cannot be prevented completely. But organizations that know their systems, keep the attack surface small, rely on behavior-based detection and patch quickly make attackers’ lives much harder. What often matters most is not day zero, but how fast you react once the flaw is public.
FAQ about Zero-Day Vulnerability
What is a zero-day vulnerability in simple terms?
A zero-day vulnerability is a security flaw that the vendor does not know about yet, or for which no update exists. Attackers can exploit it, and nobody can protect themselves with a patch. The vendor has had “zero days” to fix it.
Why is it called zero day?
“Zero day” refers to the day the vendor learns about the flaw. If attackers exploit it before or on that same day, the vendor has had zero days to ship an update.
What is the difference between a zero-day vulnerability, exploit and attack?
The zero-day vulnerability is the flaw in the software. The zero-day exploit is the code that takes advantage of that flaw. The zero-day attack is the actual use of the exploit against a target. In everyday use the terms are often mixed up.
What is an n-day vulnerability?
An n-day vulnerability is already public, and a patch usually exists. It is still dangerous as long as organizations have not installed the update. Many successful attacks use such known but unpatched flaws.
Can you protect against zero-day vulnerabilities?
You cannot prevent them completely, because there is no update for an unknown flaw. But you can lower the risk a lot: with a smaller attack surface, network segmentation, least privilege, behavior-based detection such as EDR and a well-practiced incident response plan.
What should you do when a zero-day vulnerability becomes public?
First check whether affected software is in use. Then apply the vendor’s or the authorities’ temporary mitigations, such as disabling a feature or blocking access from the internet. Look for signs of compromise and install the patch as soon as it is released.
More terms in “Vulnerabilities”
- Code Injection
- Code Obfuscation
- Cross-Site Request Forgery (CSRF)
- Cross-Site Scripting
- EOL (End of Life)
- JMX Console
- OWASP Top 10
- Server-Side Request Forgery (SSRF)
- SQL Injection
- Supply Chain Attack
- Vulnerability Management
- Vulnerability Scanning