¿Es posible construir software que no pueda ser pirateado?

Es imposible escribir software útil que no pueda ser pirateado. También es imposible escribir software inútil que no pueda ser pirateado.

El pirateo implica no solo explotar el software en sí, sino también el sistema operativo subyacente, el hardware en el que se ejecuta y las personas que lo usan. A veces puede usar canales laterales para obtener / configurar la información que necesita sin tocar directamente el software. Los ejemplos incluyen analizar el tiempo de procesamiento / interferencia electromagnética para debilitar un sistema criptográfico, o incluso sobornar a un empleado de entrada de datos.

En cuanto al software inútil, si un programa fue escrito en una computadora sin E / S, sin conexiones de red, encerrado en una bóveda en un edificio protegido, y su objetivo era simplemente detener la ejecución del programa, entonces simplemente podría cortar poder a ese edificio.

La conclusión de esto: escribir software con el supuesto de que el código fuente, las interfaces, los archivos y las comunicaciones son legibles por terceros. Supongamos también que pueden leer la memoria activa de la computadora. Luego, escriba el código para proteger la información confidencial (generalmente contraseñas y claves de cifrado). Minimice las áreas de superficie de ataque: mantenga las cosas sensibles encriptadas, incluso en la memoria hasta el punto en que se necesitan, y límpielas de la memoria una vez que ya no sean necesarias. Use hashes unidireccionales para contraseñas y observe hashes lentos, como BCrypt u otros.

Su software seguirá siendo pirateable, pero puede esperar que los atacantes pasen a objetivos más suaves.

Puedo hacerlo de forma gratuita: desconecte la máquina de la red y protéjala de tal manera que violar la seguridad física destruya la computadora.

Más allá de eso, no. Siempre hay alguien que maneja sus contraseñas estúpidamente, un error que puede filtrar algunos datos o acceso falso (no solo del software en sí, sino de todo lo que depende), conexiones al mundo exterior que pueden verse comprometidas, datos externos para ser robados y analizado, y así sucesivamente.

Tampoco hay protección contra los colaboradores que comparten y transmiten información o análisis de efectos secundarios como estallidos de actividad.

Es por eso que la primera regla de cualquier trabajo de seguridad es hacer que sea más costoso adquirir los datos de lo que valen los datos. Si cuesta dos millones de dólares robar uno, romper el sistema es efectivamente imposible.

La seguridad de la piratería no depende solo del software y su interfaz.

Software, hardware, humanos, sistema, protocolo, etc.

Aunque, afaik, el eslabón más débil es a menudo el humano que opera ese software.

¿Quieres probar la piratería social? 😉

http://en.m.wikipedia.org/wiki/S

OMI, no es posible. Ningún sistema es perfecto porque somos nosotros, los seres humanos imperfectos, quienes tienden a construirlo.

Esto es similar al campo de la criptografía: el creador cree que su cifrado es perfecto hasta que alguien logra descifrarlo 🙂

Si al piratear, quiere decir que el software no se está utilizando para un propósito para el que se suponía, se diría que no. La razón es que un creador de software solo puede controlar lo que escribe, y no lo que un usuario hace con ese software respectivo. La ingeniería inversa es solo cuestión de tiempo y cerebro. En el peor de los casos, el código binario de su código podría ser modificado y reescrito con cualquier vulnerabilidad que el atacante quiera.

Es imposible hacer algo a prueba de tontos porque los tontos son muy ingeniosos.

Yo diría que depende. Si planea construir una máquina inviolable para ejecutar un software que no necesita ningún tipo de entrada de otros componentes externos, diría que es posible. Puede ser inútil en el 99.9999% de los casos en que se implementa el software. Aparte de este caso extremo, si el software va a procesar datos externos o interactuar con otros componentes o personas, puede ser imposible hacerlo 100% a prueba de piratería.

No importa cuán bueno sea su software, dado el tiempo ilimitado y la potencia informática, cualquier cosa puede ser pirateada por la fuerza bruta.

Siempre que su software se ejecute en un sistema operativo, puede ser pirateado ya que el pirateo puede pasar por inseguridades en el sistema operativo.

Si. ¡Constrúyalo, pero no lo libere! 😉

¿Puedes dirigir una tienda en un distrito de ladrones sin que te roben?

Por supuesto no.