Crack de Software
May 09, 2023
El crack, o crack de software, es un cambio específico en los archivos de un programa o en su parte integral que tiene como objetivo desactivar el mecanismo de verificación de licencia. El nombre de todo el proceso relacionado con el cracking de software se llama piratería de software. Se puede utilizar en cualquier tipo de software, desde juegos hasta una herramienta especial de modelado 3D. La única cosa que condiciona la creación de un crack es la necesidad de pagar por la licencia. En ciertas comunidades, los cracks creados por ciertos usuarios se volvieron tan populares como las marcas, y su uso actúa como una especie de marca de calidad.
El incumplimiento del mecanismo de verificación de licencia va en contra de las leyes de la gran mayoría de los países europeos y de los Estados Unidos. Su uso también es ilegal, la única diferencia es el tamaño de la multa que tendrás que pagar por ello. Además de los actos legales locales, el uso de cracks de cualquier tipo va en contra del EULA del juego, por lo que los desarrolladores tendrán derecho a prohibir tu cuenta. Aun así, descubrir el uso de una copia sin licencia no es tan fácil.
¿Cómo se crackean los programas de software?
Dependiendo de la complejidad del mecanismo de verificación de licencia, puede haber diferentes formas de sortearlo. Los juegos y programas antiguos utilizaban una simple comprobación de un archivo específico, que supuestamente contenía la clave de licencia. Su ausencia o la falta de una clave era igual a fallar la comprobación de licencia. La forma obvia de hackearlo era crear un archivo de este tipo y agregar una clave de licencia, que podía ser generada al azar o tomada de una copia genuina. Este tipo de verificación se utilizaba en juegos distribuidos en discos CD-R. Al menos, esa circunstancia hacía que el hacking fuera más difícil, ya que las unidades de CD/DVD no eran tan comunes, y la mayoría de los discos eran de solo lectura; no se podían hacer cambios y guardarlos. Los delincuentes resolvían este problema copiando simplemente el contenido del disco original a una computadora, implementando los cambios y guardando las versiones modificadas en los nuevos discos.
Windows, uno de los mayores puntos de interés de todos los tiempos para hackers y usuarios deshonestos, también tiene su propia historia. Las primeras versiones que incluían licencias, Windows 95 y NT 3.1, tenían una lista limitada de claves. Por lo tanto, los usuarios astutos podían seleccionar una que se adaptara a su producto a través de una simple fuerza bruta. Posteriormente, el número de claves aumentó y comenzaron a diferir de un paquete de servicios a otro. Esto hizo que el proceso de activación falsa fuera más difícil, pero aún era posible. Es por eso que cambiaron al método de verificación de licencia basado en MSDM.
En los programas modernos que se distribuyen como una copia digital en lugar de en un disco u otro medio físico, la circunvención de la licencia involucra la cancelación del procedimiento de verificación mediante la falsificación de los mecanismos internos. Esto puede implicar la inyección de una clave genuina y la configuración de los "saltadores" en la parte de la aplicación que verifica la clave de licencia. Sin embargo, esto último requiere algo de ingeniería inversa y no garantiza que todo funcionará bien. La configuración de los puntos de interrupción DLL busca los llamados "temporizadores" que cuentan el tiempo hasta la desactivación de la aplicación debido a una copia no autorizada. Por ejemplo, en GTA, a partir de Vice City, este tipo de hack permitió a los usuarios jugar el juego. Sin embargo, después de aproximadamente media hora de juego fluido, te encontrarás con problemas. Tu cámara comenzará a temblar como si estuvieras borracho, empezará a llover eternamente y no funcionarán los métodos de guardado de juego.
¿Son seguras las versiones crackeadas de software?
Por diseño, las versiones crackeadas no son seguras, ya que interrumpen los procesos internos del programa. Solo puedes adivinar si el usuario que lo creó solo desactivó la protección del software o también agregó un pequeño fragmento de código que descarga cierto malware en tu dispositivo. En general, los programas crackeados son una base perfecta para la inserción de malware. La mayoría de los programas antivirus detectarán incluso las versiones "normales" crackeadas como una amenaza, ya que se producen cambios en el código interno de la aplicación. Los foros aconsejan ignorar cualquier advertencia en ese caso, ¿por qué no agregar algo malicioso? Esa es una pregunta retórica, y su respuesta depende únicamente de la integridad y benevolencia de los hackers.
Además del riesgo de malware, las versiones crackeadas aún no son legítimas para su uso. ¿Quieres hornear algunas galletas para vender y descubrir que alguien te ha robado toda una bandeja de ellas? Los programas son productos igual que las galletas o el café, y deben pagarse en correspondencia con su precio. Es por eso que la mayoría de los países civilizados han desarrollado leyes de derechos digitales, que protegen los derechos de los programadores y emisores de programas para ganar dinero. Como se mencionó, no es fácil ser castigado por usar versiones crackeadas si no eres una persona pública. Sin embargo, muchos programas tienen un mecanismo especial que permite a las autoridades rastrear la autenticidad de una copia de software utilizada. Por ejemplo, Photoshop agrega varias etiquetas de metadatos que difieren según si la aplicación puede o no confirmar si la copia es legítima. Si alguien detecta una firma no autorizada en el producto que tu empresa lanza al mercado (o en alguna de sus partes), puede provocar litigios.
Parche vs. Crack - ¿cuál es la diferencia?
Los parches y los cracks son similares por su naturaleza. Ambos son creados para alterar la funcionalidad del programa inicial. Ambos pueden ser creados por la comunidad. Sin embargo, los parches son más benévolos: a menudo son emitidos por el desarrollador para solucionar problemas o vulnerabilidades en la versión actual del software. Los parches de la comunidad son una práctica común en el software de código abierto: un usuario hábil detecta un problema, lo encuentra en el código, lo parchea y luego hace este parche disponible para toda la comunidad. En algunos casos, los desarrolladores pueden tomar esos cambios y aplicarlos en su nueva versión, como parte de una actualización menor o mayor.
Mientras tanto, los cracks nunca son aceptados por los desarrolladores. Imagínate – estás haciendo tu mejor esfuerzo para crear un juego o un programa, y un solo tramposo disminuye tus ingresos por órdenes de magnitud simplemente hackeando el producto final. ¿Es eso justo? No lo creemos. Y así lo piensan los gobiernos de muchos países, que castigan cualquier interrupción en el código de un producto con licencia. Sí, incluso los cracks para programas abandonados – los programas que ya no son compatibles con sus desarrolladores – entran en esta categoría. Algunos de los programas pueden no estar protegidos por la ley de derechos de autor debido a su antigüedad, pero solo algunos son utilizados con frecuencia. Después de la expiración de la protección por derechos de autor, puedes revertir su ingeniería libremente y hacer lo que desees. Pero si no estás seguro de si el programa está protegido por la ley de derechos de autor o no, verifica manualmente o pregunta a los especialistas.
¿Cómo se detiene el cracking?
La esencia original del cracking se basa en una regla "algo creado por un ser humano puede ser hackeado por otro ser humano". Eso es cierto a menos que se trate de mecanismos complicados de verificación de licencias que pueden detectar eficazmente la versión pirateada y aplicar sanciones sobre ella. Eso puede ser los cambios mencionados en la jugabilidad o los bloqueos a la funcionalidad principal de un programa. Sin embargo, esto solo aplica a hacks mal hechos, cuyos autores no estaban al tanto de las medidas de contraataque. Una vez que se detecta esto último, los expertos encontrarán una manera de eludir tanto las verificaciones de licencias como la protección contra cracking.
Incluso los sistemas considerados inquebrantables pueden tener un método alternativo. Por ejemplo, el mencionado MSDM, que crea una clave de activación única para cada ordenador en particular, se puede eludir fácilmente mediante licencias corporativas y el infame servicio KMS. Sirve para facilitar la activación de grandes conjuntos de sistemas bajo una sola licencia corporativa. Sin embargo, nada impide que los usuarios agreguen sus ordenadores a una lista con la clave corporativa filtrada. Nadie puede evitarlo: este "hack" solo se puede cancelar eliminando manualmente los ordenadores excesivos.
La única esperanza para la posible desactivación de cualquier intento de hacking es el uso de la criptografía cuántica. Afortunadamente o no, no hay computadoras cuánticas disponibles para realizar el cifrado y descifrado de rutina: tienen tareas más importantes ahora. El uso de la criptografía cuántica evitará cualquier ataque de fuerza bruta de claves u otros enfoques que puedan recuperar la información inicial. En este caso particular, la información es una clave de licencia de una persona que ha comprado una copia digital de un programa.