En esencia, una vulnerabilidad de día cero es una falla. Es una vulnerabilidad desconocida en el mundo real que expone una vulnerabilidad en el software o el hardware y puede crear problemas complicados mucho antes de que alguien se dé cuenta de que algo anda mal. De hecho, un exploit de día cero no deja ninguna oportunidad de detección al principio.
Un ataque de día cero ocurre cuando se aprovecha esa falla o vulnerabilidad de software o hardware, y los atacantes liberan malware antes de que un desarrollador tenga la oportunidad de crear un parche para solucionar la vulnerabilidad, de ahí el nombre “día cero”. Analicemos los pasos de la ventana de vulnerabilidad: Los desarrolladores de una empresa crean software, pero no saben que contiene una vulnerabilidad. El agente de amenazas detecta esa vulnerabilidad antes que el desarrollador o actúa sobre ella antes de que el desarrollador tenga la oportunidad de solucionarla. El atacante escribe e implementa código de exploits mientras la vulnerabilidad aún está abierta y disponible. Después de lanzar la vulnerabilidad, el público la reconoce como robo de identidad o de información, o el desarrollador la detecta y crea un parche para detener el ciberderrame. Una vez que se escribe y usa un parche, el exploit ya no se denomina exploit de día cero. Estos ataques rara vez se descubren de inmediato. De hecho, a menudo, no solo se necesitan días, sino meses y, en ocasiones, años para que un desarrollador se entere de la vulnerabilidad que provocó un ataque.