Comment conditionner une application ASP.NET pour empêcher les clients de la modifier?

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

  •  06-07-2019
  •  | 
  •  

Question

Existe-t-il un outil ou une approche générale pour compresser tous les fichiers d’une application ASP.NET sous forme binaire afin d’empêcher toute modification une fois celle-ci déployée? Je pense qu'il y aurait un ensemble de fichiers binaires signés et un fichier de configuration pour les paramètres que nous permettons au client de modifier. Est-ce que quelqu'un a déjà essayé, est-ce même possible?

Je paierais un montant raisonnable pour un produit commercial lisse qui le faisait avec un minimum de tracas.

MISE À JOUR

Désolé, les réponses montrent que je n’étais pas clair. Je voulais dire littéralement empaqueter TOUS les fichiers, pas seulement les fichiers de code. Cela signifie aspx, scripts, images, etc. Je n’essaie pas d’empêcher le reverse engineering, c’est un problème de prise en charge, c’est-à-dire d’éviter de traiter les problèmes causés par les problèmes de fichiers causés par les clients.

Pas de solution correcte

Autres conseils

Si vous avez créé un projet d’application Web, vous pouvez compiler votre code dans un fichier DLL unique. Vous pouvez le trouver dans le dossier bin.

Utilisez simplement aspnet_compiler.exe pour tout pré-compiler, puis aspnet_merge.exe pour regrouper tous les assemblys compilés en un seul assemblage. Vous pouvez utiliser un outil d’obscurcissement tel que DotFuscator si vous souhaitez rendre plus difficile le désossage. Visual Studio Pro et versions ultérieures incluent un "lite". édition de Dotfuscator que vous pouvez utiliser pour cela.

Vos fichiers codebehind seront compilés dans une seule DLL comme ZippyV l'a déjà mentionné. Les fichiers aspx seront déployés normalement sur le serveur Web.

Cependant, vos fichiers dll peuvent être désassemblés assez facilement. Donc, pour être sûr que vous devez utiliser un obfuscateur.

Si vous voulez parler de TOUS les fichiers, y compris l’aspx, vous pouvez également considérer ngen. Il précompile tout dans une DLL afin que vous ne puissiez même pas accéder aux pages aspx.

Bien que ngen ait été conçu pour se débarrasser de la fonctionnalité de compilation JIT du framework, ce n’est certainement pas une approche généralement recommandée, mais cela peut bien fonctionner dans votre cas.

À partir de VS2008, sélectionnez l’option de menu "Outils". et ensuite "Dotfuscator Community Edition". Vous aurez un " En savoir plus " lien après qu'il commence.

Je signe également le mien en utilisant SN.exe pour lui donner un nom fort. Compte tenu de tout cela, je pense qu’il est assez compliqué de trouver un système si on vous donne le code source et de l’aide ... alors je ne me fais plus de soucis.

peut-être Dotfuscator , votre client ne pourra ni le modifier ni le désosser. :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top