Una vulnerabilidad de día cero es un fallo de seguridad de software que se descubre al inicio de una liberación (salida a producción) para el que aún no existe un parche de seguridad porque los desarrolladores del software aún desconocen su existencia. El equipo de desarrollo descubre una vulnerabilidad de día cero únicamente después de que suceda el ataque, de modo que tienen cero días de advertencia para crear un parche antes del ataque.
A veces, una persona que descubre una vulnerabilidad de día cero e informa al desarrollador o a la empresa dueña del software, sin embargo no todos los descubrimientos son tan reflexivos y son aprovechados para delinquir.