Question

Toute personne visitant un outil de suivi de torrent est sûre de trouver des quantités de & "fissures &"; des programmes allant du simple shareware aux suites logicielles coûtant des milliers de dollars. Il semble que tant que le programme ne repose pas sur un service distant (par exemple, un MMORPG), toute protection contre la copie intégrée ou toute authentification d'utilisateur est inutile.

Est-il effectivement impossible d'empêcher un cracker de contourner la protection contre la copie? Pourquoi?

Était-ce utile?

La solution

Désolé de vous arrêter sur un ancien fil, mais c’est ce que nous faisons pour gagner notre vie et nous y excellons vraiment. C'est tout ce que nous faisons. Donc, certaines des informations ici sont fausses et je tiens à mettre les choses au clair.

Une protection théoriquement non-craquable n’est pas seulement possible, c’est ce que nous vendons. Le modèle de base suivi par les principaux fournisseurs de protection contre la copie (y compris nous) consiste à utiliser le chiffrement des fichiers exe et dll et une clé secrète à déchiffrer au moment de l'exécution.

Il y a trois composants:

  1. Cryptage très fort: nous utilisons le cryptage AES 128 bits qui est efficacement immunisé contre les attaques par force brute. Un jour où les ordinateurs quantiques sont courants, il peut être possible de le casser, mais il est déraisonnable de supposer que vous allez déchiffrer ce cryptage renforcé pour copier un logiciel plutôt que des secrets nationaux.

  2. Stockage de clé sécurisée: si un pirate informatique peut obtenir la clé du cryptage, vous êtes bloqué. Le seul moyen de GARANTIR une clé ne peut être volée est de la stocker sur un périphérique sécurisé. Nous utilisons un dongle (il en existe de nombreuses variantes, mais le système d’exploitation le voit toujours comme un lecteur flash amovible). Le dongle stocke la clé sur une puce de carte à puce qui est renforcée contre les attaques par canaux latéraux comme le DPA. La génération de clés est liée à de multiples facteurs non déterministes et dynamiques, de sorte qu'aucune fissure clé / clé principale n'est possible. La communication entre la clé de stockage et le moteur d’exécution de l’ordinateur étant également cryptée, une attaque par interception est contrecarrée.

  3. Détection du débogueur: vous voulez essentiellement empêcher un pirate de prendre un instantané de la mémoire (après le déchiffrement) et d’en faire un exécutable. Certaines des choses que nous faisons pour empêcher cela sont secrètes, mais en général, nous permettons la détection du débogueur et verrouillons la licence en présence d'un débogueur (paramètre facultatif). De plus, nous ne décryptons jamais complètement l’ensemble du programme en mémoire, vous ne pouvez donc jamais obtenir tout le code en & "Voler" & "; mémoire.

Nous avons un cryptologue à plein temps qui peut déchiffrer le système de protection de quiconque. Il passe tout son temps à étudier comment casser des logiciels pour que nous puissions les empêcher. Donc, vous ne pensez pas que ce soit juste un coup bon marché pour ce que nous faisons, nous ne sommes pas uniques: d'autres sociétés telles que SafeNet et Arxan Technologies peuvent également bénéficier d'une protection très solide.

Il est facile de craquer un grand nombre de schémas logiciels uniquement ou d’obscurcissement, car le pirate informatique peut simplement identifier le point d’entrée du programme et se connecter à toute vérification de licence ou autre élément mis en place par le fournisseur de logiciels indépendant pour tenter d’empêcher le piratage. Certaines personnes, même avec des dongles, lancent une boîte de dialogue lorsque la licence n'est pas trouvée - la définition d'un point d'arrêt sur cette erreur donnera au cracker une place de choix dans le code d'assemblage pour effectuer un correctif. Encore une fois, cela nécessite du code machine non crypté pour être disponible - quelque chose que vous n’obtenez pas si vous effectuez un cryptage fort du fichier .exe.

Une dernière chose: je pense que nous sommes uniques en ce que nous avons eu plusieurs concours ouverts où nous avons fourni un système aux gens et les avons invités à le résoudre. Nous avons eu des prix en argent assez lourds mais personne n'a encore fissuré notre système. Si un éditeur indépendant prend notre système et le met en œuvre de manière incorrecte, ce n'est pas différent de la pose d'un cadenas sur votre porte d'entrée fixé à un moraillon bon marché avec des vis à bois - facile à contourner. Mais si vous utilisez nos outils, nous pensons que votre logiciel ne peut pas être fissuré.

HTH.

Autres conseils

Non, ce n’est pas vraiment possible de l’empêcher. Vous pouvez rendre la tâche extrêmement difficile - certaines versions de Starforce ont apparemment réussi à le faire, au détriment de sérieusement énerver un certain nombre & "; Utilisateurs &"; (les victimes pourraient être plus précises).

Votre code est en cours d'exécution sur leur système et ils peuvent faire ce qu'ils veulent avec. Attachez un débogueur, modifiez la mémoire, peu importe. C'est comme ça.

Spore semble être un exemple élégant d’endroits où des efforts draconiens dans cette direction ont non seulement totalement échoué à l’empêcher d’être partagés entre réseaux P2P, etc., mais ont considérablement a porté atteinte à l'image du produit et presque certainement aux ventes.

Il convient également de noter que les utilisateurs peuvent avoir besoin d’une protection contre la copie anti-piratage pour leur propre usage; Je me souviens d’avoir joué à Diablo sur mon ordinateur portable il ya quelques années, qui n’avait pas de lecteur optique interne. Alors je suis tombé dans une fissure sans disque, et j'ai ensuite été diverti pendant plusieurs heures sur un long vol d'avion. Forcer ce type de vérification, et donc les utilisateurs à contourner le problème, est un dysfonctionnement du genre le plus stupide.

Il est impossible de l'arrêter sans casser votre produit. La preuve:

Donné: Les personnes que vous essayez d'empêcher de pirater / voler seront inévitablement beaucoup plus sophistiquées sur le plan technique qu'une grande partie de votre marché.
Étant donné que votre produit sera utilisé par certains membres du public.
Étant donné: L'utilisation de votre produit nécessite un accès à ses données à un certain niveau.

Par conséquent, vous devez rendre publique vos données de méthode / programme de protection contre la copie / la protection contre la copie / copie de manière à ce que les données aient été visualisées sous une forme utilisable / non chiffrée.
Par conséquent, certains ont rendu vos données accessibles aux pirates.
Par conséquent, vos données seront plus facilement accessibles aux pirates que votre public légitime.
Par conséquent, TOUT passé la méthode de protection la plus simpliste finira par traiter votre public légitime comme des pirates et à le rendre aliéné.

Ou, en bref, la façon dont l'utilisateur final le voit:
Voler cette bande dessinée

Parce que c'est une défense fixe contre un adversaire pensant.

Les théoriciens militaires ont battu celui-ci à mort il y a plusieurs millénaires?

La protection contre la copie est synonyme de sécurité: il est impossible d’atteindre la perfection à 100%, mais vous pouvez ajouter des couches qui le rendent plus difficile à résoudre.

La plupart des applications ont un moment où elles se posent la question, & "La licence est-elle valide? &"; Le pirate informatique doit simplement trouver ce point et modifier le code compilé pour renvoyer & "Oui. &"; Sinon, les pirates peuvent utiliser la force brutale pour essayer différentes clés de licence jusqu'à ce que l'une d'entre elles fonctionne. Il existe également des facteurs sociaux: une fois qu'une personne a acheté l'outil, elle peut afficher un code de licence valide sur Internet.

Par conséquent, l’obscurcissement du code rend plus difficile (mais pas impossible) la recherche du code à modifier. La signature numérique des fichiers binaires rend le changement de code plus difficile, mais pas impossible. Les méthodes de force brute peuvent être combattues avec des codes de licence longs avec beaucoup de bits de correction d'erreur. Les attaques sociales peuvent être atténuées en exigeant un nom, une adresse électronique et un numéro de téléphone faisant partie du code de licence lui-même . J'ai utilisé cette méthode à bon escient.

Bonne chance!

La différence entre sécurité et protection contre la copie réside dans le fait qu'en sécurité, vous protégez un actif contre un attaquant tout en permettant l'accès à un utilisateur autorisé. Avec la protection contre la copie, l'attaquant et l'utilisateur autorisé sont la même personne. Cela rend impossible la protection parfaite contre la copie.

Je pense qu'avec suffisamment de temps, un éventuel pirate informatique peut contourner toute protection contre la copie, même lorsque celle-ci utilise des rappels vers des serveurs distants. Il suffit de rediriger tout le trafic sortant via une boîte qui filtrera ces demandes et répondra avec les messages appropriés.

Sur un calendrier suffisamment long, le taux de survie des systèmes de protection contre la copie est de 0. Tout est ingénierie inverse, avec suffisamment de temps et de connaissances.

Peut-être devriez-vous vous concentrer sur les moyens de rendre votre logiciel plus attrayant avec de vraies versions enregistrées et non piratées. Service à la clientèle supérieur, avantages pour l’enregistrement, etc. récompensent les utilisateurs légitimes.

En gros, l’histoire nous a montré qu’un peu plus de temps que vous pouvez acheter avec la protection de copie est un peu long. Fondamentalement, étant donné que vous souhaitez que les données soient visualisées d'une manière, il existe un moyen d'obtenir ces données. Comme il existe un moyen d'exploiter ce moyen pour accéder aux données.

Seule une protection contre la copie ou un cryptage peut rendre l’obtention de quelque chose de difficile. Si quelqu'un est suffisamment motivé, il existe toujours un moyen brutal de contourner les problèmes.

Mais plus important encore, dans l’espace logiciel, nous avons une multitude d’outils qui nous permettent de voir comment les choses fonctionnent et une fois que vous avez compris comment fonctionne la protection contre la copie, c’est très simple d’obtenir ce que vous voulez.

L’autre problème tient au fait que la protection contre la copie est en grande partie frustrante pour vos utilisateurs qui paient pour votre logiciel. Jetez un coup d'œil au modèle open source qui ne les dérange pas et certaines personnes gagnent énormément d'argent en encourageant les gens à copier leur logiciel.

& "Essayer de rendre les bits incopiables, c'est comme essayer de ne pas mouiller l'eau. &"; - Bruce Schneier

La protection contre la copie et les autres formes de gestion des restrictions numériques sont intrinsèquement fragiles, car il est impossible de rendre un flux de bits visible pour un ordinateur tout en empêchant simultanément cet ordinateur de les copier. Cela ne peut tout simplement pas être fait.

Comme d'autres l'ont souligné, la protection contre la copie ne sert qu'à punir les clients légitimes. Je n'ai aucune envie de jouer à Spore, mais si je le faisais, je l'achèterais probablement, mais installerais ensuite la version fissurée, car il s'agit en fait d'un meilleur produit en raison de l'absence de système SecuROM préjudiciable pour le système ou d'activation qui prive de propriété.

}} Pourquoi?

Vous pouvez acheter le coffre-fort le plus cher du monde et l'utiliser pour protéger quelque chose. Une fois que vous avez donné la combinaison pour ouvrir le coffre-fort, vous avez perdu votre sécurité.

Il en va de même pour les logiciels. Si vous voulez que les gens utilisent votre produit, vous devez leur donner la possibilité d’ouvrir le coffre-fort proverbial et d’accéder au contenu, masquer la méthode pour ouvrir la serrure n’aide en rien. Vous leur avez donné la possibilité de l'ouvrir.

Vous pouvez faire confiance à vos clients / utilisateurs, ou vous pouvez perdre un temps et des ressources démesurés à essayer de les vaincre au lieu de fournir les fonctionnalités pour lesquelles ils souhaitent payer.

Ça ne paye pas de s'inquiéter. Vraiment. Si vous ne protégez pas votre logiciel, et que c'est bon, quelqu'un le piratera sans aucun doute. La barrière sera basse, bien sûr. Mais le temps que vous gagnerez en épargnant ne vous gênera pas, vous pourrez investir dans votre produit, votre marketing, vos relations avec la clientèle, etc., et ainsi bâtir votre clientèle à long terme.

Si vous passez le temps nécessaire à la protection de votre produit au lieu de le développer, vous réduirez définitivement le piratage. Mais à présent, vos concurrents pourront peut-être développer des fonctionnalités pour lesquelles vous n’auriez pas eu le temps, et vous pourriez très bien finir par vendre moins, même à court terme.

Comme d'autres l'ont fait remarquer, vous pouvez facilement frustrer davantage les utilisateurs réels et légitimes que les escrocs. Gardez toujours vos utilisateurs payants à l'esprit lorsque vous développez une technique de contournement.

Si votre logiciel est recherché, vous n’avez plus aucun espoir contre l’armée de jeunes de 17 ans qui s’ennuie. :)

Dans le cas de copie personnelle / violation du droit d'auteur non commerciale, le facteur clé semblerait être la relation entre le prix de l'article et la facilité de copie. Vous pouvez augmenter la difficulté à le copier, mais avec des rendements décroissants, comme le soulignent certaines des réponses précédentes. L'autre solution serait de baisser le prix jusqu'à ce que même l'effort de le télécharger via bittorrent soit plus lourd que de simplement l'acheter.

En fait, il existe de nombreux exemples de réussite dans lesquels un auteur a trouvé une tarification idéale qui lui a certainement permis d’obtenir un bénéfice important. Essayer de rechercher une prévention de copie non autorisée à 100% est une cause perdue, il vous suffit de convaincre un groupe important de clients de payer au lieu de télécharger illégalement. Ce qui rend le piratage de logiciels peu coûteux est également ce qui rend la publication de logiciels peu coûteuse.

Il y a un moyen facile, je suis étonné que vous ne l'ayez pas dit dans les réponses ci-dessus. Déplacez la protection contre la copie vers une zone sécurisée (comprenez votre serveur dans votre laboratoire sécurisé). Votre serveur recevra un nombre aléatoire de clients (vérifiez que le numéro n'a pas déjà été utilisé), cryptez des résultats de calcul / code binaire en constante évolution avec le numéro du client et votre clé privée, puis renvoyez-le. Aucun pirate informatique ne peut contourner ce problème car il n’a pas accès au code de votre serveur.

Ce que je décris est en gros un service Web autre que SSL, c’est là où la plupart des entreprises vont de nos jours.

Inconvénients: un concurrent développera une version hors ligne du même produit vedette pendant que vous aurez terminé votre code cryptographique.

Sur les protections ne nécessitant pas de réseau:

Selon les notes diffusées, il a fallu deux ans pour déchiffrer une application populaire utilisant un schéma similaire à celui décrit dans la réponse de John. (protection de la clé matérielle personnalisée)

Un autre schéma qui n'implique pas de dongle est la & "protection expansive &"; Je l’ai inventé tout à l’heure, mais cela fonctionne comme suit: Il existe une application qui enregistre les données d’utilisateur et pour laquelle les utilisateurs peuvent acheter des extensions, par exemple, auprès de tiers. Lorsque l'utilisateur charge les données ou utilise un nouveau développement, les extensions et les données enregistrées contiennent également du code permettant d'effectuer des contrôles. Et bien sûr, ces contrôles sont également protégés par des contrôles de somme de contrôle. Il n’est pas aussi sûr sur le papier que l’autre système, mais dans la pratique, cette application a toujours été à moitié craquée, de sorte qu’elle fonctionne principalement à titre d’essai, même si elle est fissurée, car les fissures manquent toujours des vérifications et doivent corriger ces extensions bien.

Le point essentiel est que, bien que ces problèmes puissent être résolus, si suffisamment de fournisseurs de logiciels utilisent de tels systèmes, cela surchargerait les quelques personnes de la warescene prêtes à s'y consacrer. Si vous faites le calcul, les protections n'ont pas besoin d'être aussi grandes, tant que suffisamment de vendeurs utilisent ces protections personnalisées qui changent constamment, cela écraserait simplement les crackers et la scène de warez se terminerait là et là. *

La seule raison pour laquelle cela n’a pas été le cas, c’est que les éditeurs achètent une protection unique, ce qui en fait une cible énorme, tout comme Windows est la cible de programmes malveillants. Toute protection utilisée dans plus d’une application est donc une cible plus grande. Chacun doit donc créer sa propre protection étendue, multicouche et unique. La quantité de rejets Warez tomberait à peut-être une douzaine de rejets par an s'il faut des mois pour craquer un relâchement par les meilleurs craqueurs.

Passons maintenant à la théorie dans les logiciels de marketing:

Si vous pensez que Warez fournit une valeur marketing intéressante, vous devez en tenir compte dans le plan commercial. Cela pourrait entraîner une version très (trop) basique de la version allégée, qui ne coûterait encore que quelques dollars pour s’assurer qu’elle était fissurée. Ensuite, vous attacheriez les utilisateurs avec & Quot; mise à jour peu coûteuse à partir de la version lite & Quot; offres régulièrement et autres tactiques de vente incitative. La version allégée devrait avoir au plus une fonctionnalité intéressante et être très handicapée. Le prix devrait probablement être & Lt; 10 $. La version complète devrait probablement être deux fois plus élevée que le prix de la mise à niveau de la version de démonstration payante 10 $ lite. par exemple. Si la version complète coûte 80 USD, vous proposez des mises à niveau de la version Lite à la version complète pour 40 USD ou quelque chose qui ressemble vraiment à une excellente affaire. Vous éviterez bien sûr d'éviter de révéler ces aubaines aux acheteurs qui ont opté pour l'édition à 80 $.

Il serait essentiel que la version complète ne partage aucune similarité de code avec la version lite. Vous voudriez que la version allégée devienne sérieuse et que la version complète prenne beaucoup de temps à craquer ou que les fonctionnalités du réseau soient difficiles à imiter localement. Les crackers sont probablement plus spécialisés dans la fissuration que d'essayer de coder / reproduire des parties des fonctionnalités de l'application sur le serveur Web.

* addendum: pour les applications / jeux, la scène pourrait se terminer dans des circonstances aussi improbables et théoriques, pour d'autres éléments tels que la musique / les films et, dans la pratique, il serait bon de ne pas utiliser la dl numérique les acheteurs peuvent obtenir des objets physiques de collection supplémentaires ou une valeur en ligne uniquement - de nombreuses personnes sont des collectionneurs d'objets (en particulier les pirates) et ils pourraient être incités à acheter s'ils gagnaient quelque chose d'assez souhaitable par rapport à une copie numérique.

Attention cependant - il existe quelque chose qui s'appelle & "la loi des attentes croissantes &"; Exemple tiré des jeux: la boîte standard Ultima 4-6 comprenait une carte en tissu et l’édition Skyrim Collectorsap fait de papier. Les attentes avaient augmenté et certaines personnes ne seraient pas satisfaites d'une carte papier. Vous voulez soit maintenir la qualité du produit ou du service constant ou gérer les attentes à l'avance. Je pense que cela est essentiel lorsque vous envisagez ces éléments à valeur ajoutée, car vous souhaitez qu'ils soient souhaitables, mais que leur coût ne soit pas de plus en plus coûteux et qu'ils ne deviennent pas quelque chose qui semble si inutile qu'il en va à l'encontre du but recherché.

C’est l’un des cas où un logiciel de qualité est une mauvaise chose, car si personne n’en modifie le logiciel, il ne perdra pas de temps à essayer de le déchiffrer. En revanche, des éléments tels que Master Collection CS3 d’Adobe étaient disponibles quelques jours seulement après leur sortie. .

La morale de cette histoire est donc que si vous ne voulez pas que quelqu'un vole votre logiciel, vous avez une option: n'écrivez rien qui vaille la peine d'être volé.

Je pense que quelqu'un trouvera un moyen dynamique de neutraliser toutes les méthodes de protection contre la copie actuellement standard de l'IA; diable, j'aimerais bien être payé pour travailler sur ce problème. Une fois qu'ils y seront arrivés, de nouvelles méthodes seront développées, mais cela ralentira les choses.

Le deuxième meilleur moyen pour la société de mettre fin au vol de logiciels est de le pénaliser lourdement et d'appliquer les sanctions.

Le meilleur moyen consiste à inverser le déclin moral et à accroître ainsi le niveau d'intégrité de la société.

Une cause perdue si j'en ai jamais entendu parler ... bien sûr, cela ne signifie pas que vous ne devriez pas essayer.

Personnellement, j'aime bien la version de Penny Arcade: " ; Un argument cyclique avec un homme de paille littéral & Quot; alt text http://sonicloft.net / im / 52

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