drm - removal - Prevenir la elusión de la protección contra copia
drm removal (18)
Cualquiera que visite un rastreador de torrents seguramente encontrará una gran cantidad de programas "crackeados" que van desde el simple shareware hasta las suites de software que cuestan miles de dólares. Parece que mientras el programa no dependa de un servicio remoto (por ejemplo, un MMORPG), cualquier protección de copia incorporada o autenticación de usuario es inútil.
¿No es posible evitar que un cracker eluda la protección contra copia? ¿Por qué?
Básicamente, la historia nos ha demostrado que lo máximo que puede comprar con protección contra copia es un poco de tiempo. Fundamentalmente, dado que hay datos que quiere que alguien vea de una manera, hay una forma de llegar a esos datos. Ya que hay una manera en que alguien puede explotar de esa manera para llegar a los datos.
Lo único que cualquier protección de copia o cifrado puede hacer es dificultar algo. Si alguien está lo suficientemente motivado siempre existe la manera de la fuerza bruta de evitar las cosas.
Pero más importante aún, en el espacio del software informático tenemos toneladas de herramientas que nos permiten ver cómo funcionan las cosas, y una vez que obtienes el método de cómo funciona la protección contra copia, es una cuestión muy simple obtener lo que deseas.
El otro problema es que la protección contra copias en su mayor parte solo frustra a los usuarios que están pagando por su software. Eche un vistazo al modelo de código abierto que no molesta y algunas personas están haciendo una tonelada de dinero animando a la gente a copiar su software.
Creo que dado el tiempo suficiente, un aspirante a cracker puede eludir cualquier protección de copia, incluso las que utilizan devoluciones de llamada a servidores remotos. Todo lo que se necesita es redirigir todo el tráfico saliente a través de un cuadro que filtrará esas solicitudes y responderá con los mensajes apropiados.
En una línea de tiempo suficientemente larga, la tasa de supervivencia de los sistemas de protección contra copia es 0. Todo es de ingeniería inversa con suficiente tiempo y conocimiento.
Quizás debas enfocarte en formas de hacer que tu software sea más atractivo con versiones reales, registradas y sin descifrar. Servicio al cliente superior, ventajas de registro, etc. recompensa a usuarios legítimos.
La protección contra copias es como la seguridad: es imposible alcanzar el 100% de perfección, pero puede agregar capas que lo hacen sucesivamente más difícil de descifrar.
La mayoría de las aplicaciones tienen algún punto donde preguntan (ellos mismos): "¿Es válida la licencia?" El hacker solo necesita encontrar ese punto y alterar el código compilado para devolver "sí". Alternativamente, los crackers pueden usar fuerza bruta para probar diferentes claves de licencia hasta que uno funcione. También hay factores sociales: una vez que una persona compra la herramienta, puede publicar un código de licencia válido en Internet.
Entonces, la ofuscación del código hace que sea más difícil (pero no imposible) encontrar el código para alterar. La firma digital de los binarios hace que sea más difícil cambiar el código, pero aún así no es imposible. Los métodos de fuerza bruta se pueden combatir con códigos de licencia largos con muchos bits de corrección de errores. Los ataques sociales pueden mitigarse requiriendo un nombre, correo electrónico y número de teléfono que es parte del código de la licencia en sí . He usado ese método con gran efecto.
¡Buena suerte!
No, no es realmente posible prevenirlo. Puedes hacerlo extremadamente difícil: algunas versiones de Starforce aparentemente lograron eso, a costa de molestar seriamente a varios "usuarios" (las víctimas podrían ser más precisas).
Su código se está ejecutando en su sistema y pueden hacer lo que quieran con él. Adjunte un depurador, modifique la memoria, lo que sea. Así es como es.
Spore parece ser un elegante ejemplo de cómo los esfuerzos draconianos en esta dirección no solo han impedido totalmente que se comparta con las redes P2P, etc., sino que también ha perjudicado significativamente la imagen del producto y casi con seguridad las ventas.
También vale la pena señalar que los usuarios pueden necesitar descifrar la protección contra copia para su propio uso; Recuerdo haber jugado a Diablo en mi computadora portátil hace algunos años, que no tenía unidad óptica interna. Así que caí en un crack sin cd, y luego me entretuvieron durante varias horas en un largo vuelo en avión. Obligar a ese tipo de control y, por lo tanto, a los usuarios a evitarlo es un error del tipo más estúpido.
Porque es una defensa fija contra un oponente pensante.
¿Los teóricos militares le ganaron a la muerte hace cuántos milenios?
Puede confiar en sus clientes / usuarios, o puede perder grandes cantidades de tiempo y recursos tratando de vencerlos en lugar de proporcionar las características que desean pagar.
Simplemente no vale la pena molestarse. De Verdad. Si no protege su software, y es bueno, sin dudas alguien lo piratará. La barrera será baja, por supuesto. Pero el tiempo que ahorre para no molestar será el momento en que pueda invertir en su producto, mercadeo, relaciones con los clientes, etc., al construir su base de clientes a largo plazo.
Si dedica tiempo a proteger su producto en lugar de desarrollarlo, definitivamente reducirá la piratería. Pero ahora sus competidores pueden desarrollar características para las que no tuvieron tiempo y es posible que terminen vendiendo menos, incluso a corto plazo.
}} ¿Por qué?
Puede comprar la caja de seguridad más cara del mundo y usarla para proteger algo. Una vez que regala la combinación para abrir la caja fuerte, ha perdido su seguridad.
Lo mismo es cierto para el software, si desea que las personas usen su producto, debe darles la posibilidad de abrir la caja fuerte proverbial y acceder a los contenidos, ocultar el método para abrir el candado no ayuda. Les has otorgado la posibilidad de abrirlo.
Como otros señalan, puede terminar frustrando usuarios reales y legítimos más de lo que frustra a los ladrones. Siempre tenga en cuenta a sus usuarios que pagan cuando desarrolle una técnica de elusión.
Si su software es buscado, no tiene ninguna esperanza contra el ejército de aburridos de 17 años. :)
Creo que alguien presentará una forma dinámica de AI de derrotar a todos los métodos estándar actuales de protección contra copia; diablos, me encantaría que me pagaran para trabajar en ese problema. Una vez que lleguen allí, se desarrollarán nuevos métodos, pero ralentizarán las cosas.
La segunda mejor manera para que la sociedad detenga el robo de software es penalizarlo fuertemente y aplicar las sanciones.
La mejor manera es revertir el declive moral y, por lo tanto, aumentar el nivel de integridad en la sociedad.
Esta es una ocasión en la que el software de calidad es malo, porque si nadie es su software, no perderán tiempo tratando de descifrarlo, por otro lado cosas como Master Collection CS3 de Adobe, estuvieron disponibles pocos días después del lanzamiento.
Entonces, la moraleja de esta historia es que si no quieres que alguien robe tu software, hay una opción: no escribir nada que valga la pena robar.
En el caso de copia personal / infracción de copyright no comercial, el factor clave parece ser la relación entre el precio del artículo y la facilidad de copiarlo. Puede aumentar la dificultad para copiarlo, pero con rendimientos decrecientes, como se destaca en algunas de las respuestas anteriores. El otro paso a seguir sería bajar el precio hasta que el esfuerzo de descargarlo a través de bittorrent sea más engorroso que simplemente comprarlo.
En realidad, hay muchos ejemplos exitosos en los que un autor ha encontrado un buen punto de fijación de precios que sin duda ha resultado en grandes ganancias para sí mismos. Intentar perseguir una copia 100% de prevención no autorizada es una causa perdida, solo necesita obtener un gran grupo de clientes dispuestos a pagar en lugar de descargar ilegalmente. Lo que hace que piratear softweare sea barato es también lo que hace que sea barato publicar software.
La diferencia entre la seguridad y la protección contra copia es que, con la seguridad, está protegiendo un activo de un atacante mientras permite el acceso de un usuario autorizado. Con la protección de copia, el atacante y el usuario autorizado son la misma persona. Eso hace que la protección de copia perfecta sea imposible.
"Tratar de hacer que las piezas no se puedan copiar es como tratar de hacer que el agua no se moje". - Bruce Schneier
La protección contra copia y otras formas de administración de restricciones digitales son intrínsecamente frágiles, ya que no es posible hacer que una secuencia de bits sea visible para una computadora al mismo tiempo que impide que esa computadora los copie. Simplemente no se puede hacer.
Como han señalado otros, la protección contra copia solo sirve para castigar a los clientes legítimos. No tengo ningún deseo de jugar Spore, pero si lo hiciera, probablemente lo compraría, pero luego instalaría la versión agrietada porque en realidad es un producto mejor por su falta del sistema de activación SecuROM o privación de propiedad.
Una causa perdida, si alguna vez escuché una ... por supuesto, eso no significa que no deberías intentarlo.
Personalmente, me gusta el enfoque de Penny Arcade: "Un argumento cíclico con un literal Strawman" alt text http://sonicloft.net/im/52
Hay una manera fácil, me sorprende que no lo haya dicho en las respuestas anteriores. Mueva la protección contra copia a un área segura (comprenda su servidor en su laboratorio seguro). Su servidor recibirá un número aleatorio de los clientes (compruebe que el número no se usó antes), cifre algunos resultados de cálculo / código binario en constante evolución con el número del cliente y su clave privada y envíela de regreso. Ningún hacker puede eludir esto ya que no tienen acceso a su código de servidor.
Lo que estoy describiendo es básicamente otro servicio web SSL, que es donde la mayoría de la compañía va hoy en día.
Contras: un competidor desarrollará una versión fuera de línea del mismo producto presentado durante el tiempo que termine su código criptográfico.
Lamento haber entrado en un hilo antiguo, pero esto es lo que hacemos para vivir y somos realmente buenos en eso. Es todo lo que hacemos. Entonces, parte de la información aquí es incorrecta y quiero dejar las cosas claras.
La protección teóricamente no fisurable no solo es posible sino que es lo que vendemos. El modelo básico que siguen los principales proveedores de protección contra copia (incluido nosotros) es utilizar el cifrado de los archivos exe y dlls y una clave secreta para descifrar en tiempo de ejecución.
Hay tres componentes:
Cifrado muy fuerte: utilizamos encriptación AES de 128 bits que es efectivamente inmune a un ataque de fuerza bruta. Algún día, cuando las computadoras cuánticas sean comunes, es posible que se rompa, pero no es razonable suponer que descifrarás esta encriptación de fuerza para copiar software en lugar de secretos nacionales.
Almacenamiento de claves seguras: si un cracker puede obtener la clave del cifrado, se te aplicará una manguera. La única forma de GARANTIZAR que una llave no puede ser robada es almacenarla en un dispositivo seguro. Usamos un dongle (viene en muchos sabores, pero el sistema operativo siempre lo ve como una unidad flash extraíble). El dongle almacena la clave en un chip de tarjeta inteligente que está reforzado contra ataques de canal lateral como DPA. La generación de claves está ligada a múltiples factores que no son deterministas y dinámicos, por lo que no es posible ningún crack de clave / maestro. La comunicación entre el almacenamiento de claves y el tiempo de ejecución en la computadora también está encriptada, por lo que se frustra un ataque de hombre en el medio.
Detección del depurador: básicamente, desea evitar que un cracker tome una instantánea de la memoria (después del descifrado) y hacer un ejecutable de eso. Algunas de las cosas que hacemos para evitar esto son secretas, pero en general, permitimos la detección del depurador y bloqueamos la licencia cuando hay un depurador presente (esta es una configuración opcional). Tampoco desciframos completamente el programa completo en la memoria, por lo que nunca se puede obtener todo el código "robando" la memoria.
Tenemos un criptólogo a tiempo completo que puede descifrar casi cualquier sistema de protección. Él pasa todo su tiempo estudiando cómo descifrar software para que podamos prevenirlo. Por lo tanto, no cree que esto sea solo un chelín barato por lo que hacemos, no somos únicos: otras compañías como SafeNet y Arxan Technologies también pueden ofrecer una protección muy sólida.
Muchos esquemas de software u ofuscación son fáciles de descifrar, ya que el cracker puede identificar el punto de entrada del programa y ramificarse en cualquier verificación de licencia u otras cosas que el ISV haya puesto para tratar de prevenir la piratería. Algunas personas, incluso con dongles, lanzarán un cuadro de diálogo cuando no se encuentre la licencia: establecer un punto de interrupción en ese error le dará al cracker un lugar agradable en el código ensamblador para hacer un parche. De nuevo, esto requiere que el código de máquina sin cifrar esté disponible, algo que no se obtiene si se realiza una encriptación fuerte del .exe.
Una última cosa: creo que somos únicos porque tuvimos varios concursos abiertos en los que proporcionamos un sistema a las personas y las invitamos a resolverlo. Hemos tenido algunos premios en efectivo bastante grandes, pero nadie ha descifrado nuestro sistema. Si un ISV toma nuestro sistema y lo implementa incorrectamente, no es diferente de colocar un gran candado en la puerta de su casa sujeto a un cerrojo barato con tornillos para madera, fácil de eludir. Pero si usa nuestras herramientas, le sugerimos que creemos que su software no se puede descifrar.
HTH.
En protecciones que no requieren red:
De acuerdo con las notas flotando alrededor tomó dos años para descifrar una aplicación popular que utilizó un esquema similar al descrito en la respuesta de John. (protección de dongle de hardware personalizada)
Otro esquema que no involucra un dongle es la "protección expansiva". Lo inventé hace un momento, pero funciona así: hay una aplicación que guarda los datos de los usuarios y para la cual los usuarios pueden comprar expansiones y otros de terceros. Cuando el usuario carga los datos o utiliza una nueva expansión, las expansiones y los datos guardados también contienen código que realiza comprobaciones. Y, por supuesto, estos controles también están protegidos por checksum checksum. No es tan seguro en papel como el otro esquema, pero en la práctica esta aplicación ha estado medio rajada todo el tiempo, por lo que funciona como una prueba a pesar de estar resquebrajada ya que las grietas siempre fallarán algunos controles y tendrán que parchear estas expansiones como bien.
El punto clave es que, si bien se pueden descifrar, si suficientes proveedores de software usaban tales esquemas, esto sobrecargaría a las pocas personas en el mundo de las comunicaciones que estuvieran dispuestas a dedicarse a ellos. Si hace las matemáticas, las protecciones no tienen que ser tan buenas, siempre y cuando suficientes vendedores usen estas protecciones personalizadas que cambian constantemente, simplemente abrumarían a las galletas y la escena de warez terminaría en ese momento. *
La única razón por la que esto no sucedió es porque los editores compran una protección única que usan en todas partes, lo que la convierte en un gran objetivo como Windows para malware, cualquier protección utilizada en más de una aplicación es un objetivo más grande. Entonces, todos deben hacer su propia protección expansiva multicapa personalizada y única. La cantidad de versiones de warez bajaría a tal vez una docena de lanzamientos al año si lleva meses crackear un solo lanzamiento de las mejores crackers.
Ahora, para algunas habilidades teóricas en el software de marketing:
Si crees que warez ofrece un valor de mercadeo que vale la pena, entonces eso debe tenerse en cuenta en el plan de negocios. Esto podría implicar una versión lite (muy) muy muy (muy) básica que aún cuesta unos pocos dólares para asegurar que se rompió. Luego, engancharía a los usuarios con las ofertas de "tiempo limitado de actualización de la versión lite" de forma regular y otras tácticas de venta. La versión lite realmente debería tener como máximo una característica digna de comprarse y, de lo contrario, estaría muy paralizada. El precio probablemente debería ser <10 $. La versión completa probablemente debería ser el doble del precio de actualización de la versión demo de $ 10 lite-demo. p.ej. Si la versión completa es de $ 80, ofrecerá actualizaciones de la versión lite a la versión completa por $ 40 o algo que realmente parezca una ganga asesina. Por supuesto, evitará revelar estas gangas a los compradores que fueron directos a la edición de $ 80.
Sería fundamental que la versión completa no tenga similitud en el código con la versión lite. Usted tiene la intención de que la versión lite sea almacenada y la versión completa requerirá mucho tiempo para descifrar o la dependencia de la red en una funcionalidad que será difícil de imitar a nivel local. Los crackers probablemente sean más especializados en descifrar que tratar de codificar / replicar partes de la funcionalidad que tiene la aplicación en el servidor web.
* adenda: para aplicaciones / juegos, la escena podría terminar en circunstancias tan poco probables y teóricas, para otras cosas como música / películas y, en la práctica, me gustaría hacer que sea barato para los compradores digitales de dl obtener artículos físicos coleccionables adicionales o en línea. solo valor: muchas personas son coleccionistas de cosas (especialmente los piratas) y podrían ser tentados a comprar si gana algo lo suficientemente deseable como una copia digital.
Sin embargo, ten cuidado: hay algo llamado "la ley de las expectativas crecientes". Ejemplo de juegos: la caja estándar Ultima 4-6 incluye un mapa hecho de tela, y la edición de Skyrim Collectors tiene un mapa hecho de papel. Las expectativas han aumentado y algunas personas no estarán contentas con un mapa en papel. Desea mantener constante la calidad del producto o servicio o gestionar las expectativas con anticipación. Creo que esto es crítico cuando se consideran estas cosas de valor agregado como se desea que sean deseablemente pero no cada vez más costosas de hacer y que no se conviertan en algo que parece tan inútil que derrota el propósito.
Es imposible detenerlo sin romper su producto. La prueba:
Dado: las personas a las que intentas evitar piratear / robar serán inevitablemente mucho más sofisticadas técnicamente que una gran parte de tu mercado.
Dado: su producto será utilizado por algunos miembros del público.
Dado: el uso de su producto requiere acceso a sus datos en algún nivel.
Por lo tanto, debe divulgar al público los datos del método / método de protección contra cifrado / copia de manera que los datos se hayan visto en su forma utilizable / no encriptada.
Por lo tanto, de alguna manera ha hecho que sus datos sean accesibles para los piratas.
Por lo tanto, sus datos serán más accesibles para los piratas informáticos que su audiencia legítima.
Por lo tanto, CUALQUIER COSA más allá del método de protección más simple terminará tratando a su audiencia legítima como piratas y alienándolos