Un exploit de día cero no es una cosa específica, es un exploit no descubierto y parcheado antes.
Los hackers lo encuentran de dos maneras, una es buscando activamente una. Por ejemplo, digamos que quieren explotar Adobe Acrobat Reader. Primero tienen que encontrar un error en esa aplicación para explotar. La forma más fácil de hacerlo es, por supuesto, bloquear la aplicación, como en, hacer algo que haga que entre en un mal estado y finalice.
El bloqueo suele ser el resultado de un error en el programa, lo que hace que entre en un estado que el programador no pretendía y, por lo tanto, es una puerta de entrada para explotar el software (con la entrada adecuada).
- ¿Por qué un país como Brasil no confía en el cifrado?
- ¿Puede un Amazon Firestick contraer un virus?
- ¿Cuáles son los posibles riesgos de seguridad al implementar la sincronización de archivos?
- ¿Por qué se considera Avast un buen antivirus?
- Cómo detener un ataque DDOS
Para encontrar el accidente, hay muchas formas. El más común es el fuzzing, que le proporciona millones de entradas diferentes y espera que se bloquee. Para aplicaciones robustas como Acrobat Reader, eso generalmente no producirá nada. Muchos otros métodos más avanzados están disponibles.
Una vez que se encuentra el choque, debe ser diseñado por ingeniería inversa. El hacker necesita comprender qué está sucediendo exactamente en el programa y, por lo tanto, por qué se está bloqueando exactamente. Una vez que se da cuenta de eso, sabe exactamente cómo puede manipular ese bloqueo, hacer otra cosa en lugar de fallar (por ejemplo, perder algo de memoria, ejecutar algún código).
En ese momento, el pirata informático desarrolla un exploit, un script relativamente simple que proporciona información a la aplicación de una manera que hace que su error haga algo que el pirata informático espera, como ejecutar código desde Internet (malware).
Ahora este exploit se llama exploit de día cero. Permanece en el día cero hasta que se distribuye lo suficiente como para que las personas noten la existencia de ese error en ese software y lo denuncien, y así los proveedores comienzan a corregirlo. Entonces ya no será día cero, pero sigue siendo útil para todas las versiones antiguas de ese software que tienen el error restante.
La segunda forma en que los piratas informáticos encuentran exploits de día cero, que es la forma más común, es pasivamente. Simplemente están trabajando con una aplicación y se bloquea. Voila! Simplemente atajan el primer / más largo paso.