¿Cómo empaquetar una aplicación ASP.NET para evitar que los clientes la modifiquen?

StackOverflow https://stackoverflow.com/questions/1216897

  •  06-07-2019
  •  | 
  •  

Pregunta

¿Existe una herramienta o algún enfoque general para empaquetar todos los archivos de una aplicación ASP.NET en forma binaria para evitar modificaciones una vez que se implementa? Estoy pensando que habría un conjunto de archivos binarios firmados y un archivo de configuración para la configuración que permitimos que el cliente modifique. ¿Alguien ha intentado esto, es posible?

Pagaría una cantidad razonable por un producto comercial ingenioso que hiciera esto con una molestia mínima.

UPDATE

Lo siento, por las respuestas puedo ver que no estaba claro. Me refería literalmente a empaquetar TODOS los archivos, no solo los archivos de código. Esto significa aspx, scripts, imágenes, etc. No estoy tratando de evitar la ingeniería inversa ... este es un problema de compatibilidad, es decir, para evitar lidiar con los problemas provocados por el cliente que se mete con los archivos.

No hay solución correcta

Otros consejos

Si realizó un proyecto de aplicación web, puede compilar su código en un solo archivo dll. Puede encontrarlo en la carpeta bin.

Simplemente use aspnet_compiler.exe para precompletar todo y luego use aspnet_merge.exe para enrollar todos los ensamblados compilados en un solo ensamblaje. Puede usar una herramienta de ofuscación como DotFuscator si desea que sea más difícil realizar ingeniería inversa. Visual Studio pro y superior incluyen un " lite " edición de Dotfuscator que puedes usar para esto.

Sus archivos de código subyacente se compilarán en un solo dll como ya se mencionó en ZippyV. Los archivos aspx se implementarán normalmente en el servidor web.

Pero aún así, sus archivos dll se pueden desmontar con bastante facilidad. Entonces, para asegurarse de que tiene que usar un ofuscador.

Si te refieres a TODOS los archivos, incluido el aspx, también podrías considerar ngen. Precompila todo en un dll para que ni siquiera pueda acceder a las páginas aspx.

Aunque, ngen fue diseñado para deshacerse de la función de compilación JIT del marco y definitivamente no es un enfoque generalmente recomendado, pero puede funcionar bien en su caso.

Desde VS2008, seleccione la opción de menú " Herramientas " y luego "Dotfuscator Community Edition". Tendrá un " Más información " enlace después de que se inicie.

También firmo el mío usando SN.exe para que tenga un nombre seguro. Dado todo esto, creo que es bastante complicado descifrar un sistema si se le da el código fuente y la ayuda ... así que ya no me preocupo por eso.

quizás Dotfuscator su cliente no podrá modificarlo ni realizar ingeniería inversa. :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top