A zero-day exploit is one that takes advantage of a security
vulnerability on the same day that the vulnerability becomes
generally known. Ordinarily, after someone detects that a software
program contains a potential exposure to exploitation by a hacker,
that person or company can notify the software company and
sometimes the world at large so that action can be taken to repair
the exposure or defend against its exploitation. Given time, the
software company can repair and distribute a fix to users. Even if
potential hackers also learn of the vulnerability, it may take them
some time to exploit it; meanwhile, the fix can hopefully become
available first.
With experience, however, hackers are becoming faster at
exploiting a vulnerability and sometimes a hacker may be the first
to discover the vulnerability. In these situations, the
vulnerability and the exploit may become apparent on the same day.
Since the vulnerability isn't known in advance, there is no way to
guard against the exploit before it happens. Companies exposed to
such exploits can, however, institute procedures for early
detection of an exploit.