Pergunta

Qualquer pessoa que visite um rastreador de torrent certamente encontrará uma grande quantidade de programas “crackeados”, que vão desde simples shareware até pacotes de software que custam milhares de dólares.Parece que, desde que o programa não dependa de um serviço remoto (por exemplo,um MMORPG) que qualquer proteção integrada contra cópia ou autenticação de usuário é inútil.

Não é efetivamente possível impedir que um cracker contorne a proteção contra cópia?Por que?

Foi útil?

Solução

Desculpe interromper um tópico antigo, mas é isso que fazemos para viver e somos realmente muito bons nisso.É tudo o que fazemos.Portanto, algumas das informações aqui estão erradas e quero esclarecer as coisas.

A proteção teoricamente inquebrável não é apenas possível, mas também o que vendemos.O modelo básico que os principais fornecedores de proteção contra cópia (incluindo nós) seguem é usar criptografia de exe e dlls e uma chave secreta para descriptografar em tempo de execução.

Existem três componentes:

  1. Criptografia muito forte:usamos criptografia AES de 128 bits, que é efetivamente imune a ataques de força bruta.Algum dia, quando os computadores quânticos forem comuns, talvez seja possível quebrá-los, mas não é razoável supor que você quebrará essa criptografia de força para copiar software em vez de segredos nacionais.

  2. Armazenamento seguro de chaves:se um cracker conseguir a chave da criptografia, você estará perdido.A única maneira de GARANTIR que uma chave não pode ser roubada é armazená-la em um dispositivo seguro.Usamos um dongle (ele vem em vários sabores, mas o sistema operacional sempre o vê apenas como uma unidade flash removível).O dongle armazena a chave em um chip de cartão inteligente que é protegido contra ataques de canal lateral como o DPA.A geração de chave está ligada a múltiplos fatores que são não determinísticos e dinâmicos, de modo que nenhuma chave única/quebra mestre é possível.A comunicação entre o armazenamento de chaves e o tempo de execução no computador também é criptografada, de modo que um ataque man-in-the-middle é frustrado.

  3. Detecção do depurador:Basicamente, você deseja impedir que um cracker tire um instantâneo da memória (após a descriptografia) e transforme-o em um executável.Algumas das coisas que fazemos para evitar isso são secretas, mas em geral permitimos a detecção do depurador e bloqueamos a licença quando um depurador está presente (esta é uma configuração opcional).Também nunca descriptografamos completamente o programa inteiro na memória, portanto você nunca poderá obter todo o código "roubando" a memória.

Temos um criptologista em tempo integral que pode quebrar o sistema de proteção de qualquer pessoa.Ele passa o tempo todo estudando como hackear software para que possamos evitá-lo.Então você não acha que isso é apenas uma farsa barata para o que fazemos, não somos os únicos:outras empresas, como SafeNet e Arxan Technologies, também podem oferecer proteção muito forte.

Muitos esquemas somente de software ou de ofuscação são fáceis de quebrar, já que o cracker pode simplesmente identificar o ponto de entrada do programa e contornar qualquer verificação de licença ou outras coisas que o ISV tenha colocado para tentar impedir a pirataria.Algumas pessoas, mesmo com dongles, abrirão uma caixa de diálogo quando a licença não for encontrada - definir um ponto de interrupção nesse erro dará ao cracker um bom lugar no código assembly para fazer um patch.Novamente, isso requer a disponibilidade de código de máquina não criptografado - algo que você não obterá se fizer uma criptografia forte do .exe.

Uma última coisa:Acho que somos únicos porque tivemos vários concursos abertos onde fornecemos um sistema às pessoas e as convidamos a quebrá-lo.Recebemos alguns prêmios em dinheiro bem substanciais, mas ninguém ainda quebrou nosso sistema.Se um ISV ​​pegar nosso sistema e implementá-lo incorretamente, não será diferente de colocar um grande cadeado na porta da frente preso a um ferrolho barato com parafusos de madeira - fácil de contornar.Mas se você usar nossas ferramentas conforme sugerimos, acreditamos que seu software não pode ser quebrado.

HTH.

Outras dicas

Não, não é realmente possível evitá -lo. Você pode tornar isso extremamente difícil - algumas versões da Starforce aparentemente conseguiram que, às custas de irritar seriamente vários "usuários" (as vítimas podem ser mais precisas).

Seu código está em execução no sistema deles e eles podem fazer o que quiserem com ele. Anexe um depurador, modifique a memória, qualquer que seja. É assim que é.

Spore parece ser um exemplo elegante de onde os esforços draconianos nessa direção não apenas falharam totalmente em impedir que seja compartilhado em torno de redes P2P etc., mas tem significativamente prejudicou a imagem do produto E quase certamente as vendas.

Também vale a pena notar que os usuários podem precisar quebrar a proteção de cópias para seu próprio uso; Lembro -me de jogar Diablo no meu laptop há alguns anos, que não tinha unidade óptica interna. Então, caí em uma rachadura sem CD e fiquei entretida por várias horas em um longo voo de avião. Forçar esse tipo de cheque, e, portanto, os usuários a contornar isso é um mau desempenho do tipo mais estúpido.

É impossível parar com isso sem quebrar seu produto. A prova:

Dado: As pessoas que você está tentando impedir de invadir/roubar serão inevitavelmente muito mais tecnicamente sofisticadas do que uma grande parte do seu mercado.
Dado: Seu produto será usado por alguns membros do público.
Dado: o uso do seu produto requer acesso aos dados em algum nível.

Portanto, você deve lançar os dados do método/Programa de Proteção de Chave/Cópia Encrypt-Key/Copy ao público de maneira suficiente para que os dados tenham sido vistos em sua forma utilizável/não criptografada.
Portanto, você tem em algum A moda tornou seus dados acessíveis a piratas.
Portanto, seus dados serão mais facilmente acessíveis aos hackers do que ao seu público legítimo.
Portanto, qualquer coisa após o método de proteção mais simplista acabará tratando seu público legítimo como piratas e alienando -os

Ou, em suma, a maneira como o usuário final vê:
Steal This Comic

Porque é uma defesa fixa contra um oponente pensante.

Os teóricos militares venceram este até a morte há quantos milênios atrás?

A proteção de cópias é como segurança-é impossível obter 100% de perfeição, mas você pode adicionar camadas que tornam sucessivamente mais difícil de quebrar.

A maioria dos aplicativos tem algum ponto em que eles perguntam (eles mesmos): "A licença é válida?" O hacker só precisa encontrar esse ponto e alterar o código compilado para retornar "sim". Como alternativa, os biscoitos podem usar a força bruta para experimentar diferentes chaves de licença até que alguém funcione. Também existem fatores sociais - uma vez que uma pessoa compra a ferramenta, pode publicar um código de licença válido na Internet.

Portanto, a ofuscação do código torna mais difícil (mas não impossível) encontrar o código para alterar. A assinatura digital dos binários torna mais difícil alterar o código, mas ainda não é impossível. Os métodos de força bruta podem ser combatidos com códigos de licença longos com muitos bits de correção de erros. Ataques sociais podem ser atenuados exigindo um nome, email e número de telefone que é parte do próprio código de licença. Eu usei esse método com grande efeito.

Boa sorte!

A diferença entre segurança e proteção de cópias é que, com a segurança, você está protegendo um ativo de um invasor enquanto permite o acesso por um usuário autorizado. Com a proteção de cópias, o invasor e o usuário autorizado são a mesma pessoa. Isso torna a proteção perfeita da cópia impossível.

Acho que, com o tempo suficiente, um possível cracker pode contornar qualquer proteção de cópia, mesmo os que usam retornos de chamada para servidores remotos. Só é preciso redirecionar todo o tráfego de saída através de uma caixa que filtrará essas solicitações e responderá com as mensagens apropriadas.

Em um cronograma longo o suficiente, a taxa de sobrevivência dos sistemas de proteção de cópias é 0. Tudo é engenheiro reverso, com tempo e conhecimento suficientes.

Talvez você deva se concentrar em maneiras de tornar seu software mais atraente com versões reais, registradas e não cracked. Atendimento ao cliente superior, vantagens para registro, etc. Recompense usuários legítimos.

Basicamente, a história nos mostrou mais que você pode comprar com a proteção de cópias é um pouco de tempo. Fundamentalmente, como existem dados que você deseja que alguém veja uma maneira, existe uma maneira de chegar a esses dados. Como existe uma maneira de alguém pode explorar essa maneira de acessar os dados.

A única coisa que qualquer proteção de cópia ou criptografia pode fazer é dificultar a obtenção de alguma coisa. Se alguém é motivado o suficiente, sempre há a maneira de força bruta de contornar as coisas.

Mais importante, porém, no espaço de software de computador, temos toneladas de ferramentas que vamos ver como as coisas estão funcionando e, depois de obter o método de como a proteção de cópias funciona, é uma questão muito simples para obter o que deseja.

A outra questão é que a proteção da cópia na maioria das vezes frustra seus usuários que estão pagando pelo seu software. Dê uma olhada no modelo de código aberto que eles não se incomodam e algumas pessoas estão ganhando muito dinheiro incentivando as pessoas a copiar seu software.

"Tentar tornar os bits incopiáveis ​​é como tentar fazer com que a água não fique molhada." -Bruce Schneier

A proteção contra cópia e outras formas de gerenciamento de restrições digitais são inerentemente quebráveis, porque não é possível tornar um fluxo de bits visível para um computador e, ao mesmo tempo, impedir que esse computador os copie.Isso simplesmente não pode ser feito.

Como outros salientaram, a protecção contra cópia serve apenas para punir clientes legítimos.Não tenho vontade de jogar Spore, mas se o fizesse, provavelmente o compraria, mas depois instalaria a versão crackeada, porque na verdade é um produto melhor por não ter o SecuROM, que prejudica o sistema, ou o esquema de ativação que priva propriedades.

}} Por que?

Você pode comprar o seguro mais caro do mundo e usá -lo para proteger algo. Depois de dar a combinação para abrir o cofre, você perdeu sua segurança.

O mesmo vale para o software, se você deseja que as pessoas usem seu produto, você deve dar a eles a capacidade de abrir o cofre proverbial e acessar o conteúdo, ofuscar o método para abrir o bloqueio não ajuda. Você concedeu a eles a capacidade de abri -lo.

Você pode confiar em seus clientes/usuários ou pode desperdiçar quantidades excessivas de tempo e recursos tentando derrotá -los em vez de fornecer os recursos pelos quais desejam pagar.

Simplesmente não paga para se preocupar. Sério. Se você não proteger seu software, e é bom, sem dúvida alguém o pirate. A barreira estará baixa, é claro. Mas o tempo que você economiza por não incomodar será a hora de investir em seu produto, marketing, relacionamentos com clientes etc., construindo sua base de clientes a longo prazo.

Se você gastar tempo protegendo seu produto em vez de desenvolvê -lo, definitivamente reduzirá a pirataria. Mas agora seus concorrentes podem desenvolver recursos para os quais você não teve tempo, e você pode muito bem vender menos, mesmo no curto prazo.

Como outros apontam, você pode facilmente acabar frustrando os usuários reais e legítimos mais do que frustram os bandidos. Sempre lembre -se dos usuários pagantes quando desenvolver uma técnica de circunvenção.

Se o seu software for desejado, você não tem esperança contra o exército de 17 anos de idade. :)

No caso de violação de direitos autorais de cópia pessoal/não comercial, o fator-chave parece ser a relação entre o preço do item e a facilidade de copiá-lo. Você pode aumentar a dificuldade de copiá -lo, mas com retornos decrescentes, conforme destacado por algumas das respostas anteriores. A outra aderência a tomar seria diminuir o preço até que até o esforço para baixá -lo via BitTorrent seja mais pesado do que simplesmente comprá -lo.

Na verdade, existem muitos exemplos de sucesso em que um autor encontrou um ponto ideal de preços que certamente resultou em um grande lucro para si. Tentar perseguir uma prevenção de cópias 100% não autorizada é uma causa perdida, você só precisa obter um grande grupo de clientes dispostos a pagar em vez de baixar ilegalidade. O que torna o piratear softweare barato também é o que torna barato publicar software.

Há uma maneira fácil, estou surpreso que você não tenha dito isso nas respostas acima. Mova a proteção de cópia para uma área segura (entenda seu servidor em seu laboratório seguro). Seu servidor receberá um número aleatório dos clientes (verifique se o número não foi usado antes), criptografar alguns resultados de código binário / computação em evolução com o número dos clientes e sua chave privada e enviá -lo de volta. Nenhum hacker pode contornar isso, pois eles não têm acesso ao código do seu servidor.

O que estou descrevendo é basicamente o WebService Other SSL, é aí que a maioria das empresas vai hoje em dia.

Contras: Um concorrente desenvolverá uma versão offline do mesmo produto em destaque durante o tempo em que você terminar seu código de criptografia.

Em proteções que não requerem rede:

De acordo com notas divulgadas, foram necessários dois anos para quebrar um aplicativo popular que usava um esquema semelhante ao descrito na resposta de John.(proteção de dongle de hardware personalizado)

Outro esquema que não envolve dongle é a “proteção expansiva”.Eu criei isso agora há pouco, mas funciona assim:Existe um aplicativo que salva os dados do usuário e para o qual os usuários podem comprar expansões e similares de terceiros.Quando o usuário carrega os dados ou usa uma nova expansão, as expansões e os dados salvos também contêm código que realiza verificações.E é claro que essas verificações também são protegidas por verificações de soma de verificação.Não é tão seguro no papel quanto o outro esquema, mas na prática este aplicativo tem sido meio crackeado o tempo todo, de modo que funciona principalmente como um teste, apesar de estar crackeado, pois as rachaduras sempre perderão algumas verificações e terão que corrigir essas expansões como bem.

O ponto principal é que, embora estes possam ser quebrados, se um número suficiente de fornecedores de software usasse tais esquemas, isso sobrecarregaria as poucas pessoas no cenário de guerra que estão dispostas a se dedicar a eles.Se você fizer as contas, as proteções não precisam ser tão boas, contanto que um número suficiente de fornecedores use essas proteções personalizadas que mudam constantemente, isso simplesmente sobrecarregaria os crackers e a cena warez terminaria ali mesmo. *

A única razão pela qual isso não aconteceu é porque os editores compram uma única proteção que usam em todos os lugares, tornando-a um alvo enorme, assim como o Windows é alvo de malware, qualquer proteção usada em mais de um aplicativo é um alvo maior.Portanto, todos precisam fazer sua própria proteção expansiva em várias camadas, personalizada e exclusiva.A quantidade de lançamentos de warez cairia para talvez uma dúzia de lançamentos por ano se levasse meses para quebrar um único lançamento dos melhores crackers.

Agora, para algumas teorias em software de marketing:

Se você acredita que o warez oferece valor de marketing valioso, isso deve ser levado em consideração no plano de negócios.Isso poderia implicar uma versão lite muito (muito) básica que ainda custaria alguns dólares para garantir que fosse quebrada.Em seguida, você atrairia os usuários com ofertas regulares de "atualização por tempo limitado e barata da versão lite" e outras táticas de upsell.A versão lite realmente deveria ter no máximo um recurso que valesse a pena comprar e, caso contrário, seria muito prejudicada.O preço provavelmente deve ser <10 $.A versão completa provavelmente deve custar o dobro do preço de atualização da versão demo paga de US$ 10.por exemplo.Se a versão completa custar US$ 80, você oferecerá atualizações da versão lite para a versão completa por US$ 40 ou algo que realmente pareça uma pechincha matadora.É claro que você evitaria revelar essas pechinchas aos compradores que optaram diretamente pela edição de US$ 80.

Seria fundamental que a versão completa não tivesse nenhuma semelhança de código com a versão lite.Você pretende que a versão lite seja armazenada e a versão completa leve muito tempo para quebrar ou tenha dependência de rede em funcionalidades que serão difíceis de imitar localmente.Os crackers são provavelmente mais especializados em cracking do que em tentar codificar/replicar partes da funcionalidade que o aplicativo possui no servidor web.

* termo aditivo:para aplicativos/jogos, a cena pode terminar em circunstâncias tão improváveis ​​e teóricas, para outras coisas como música/filmes e na prática, eu procuraria tornar mais barato para os compradores de dl digital obterem itens físicos colecionáveis ​​adicionais ou valor somente online - muitas pessoas são colecionadores de coisas (especialmente os piratas) e podem ser atraídas a comprar se ganharem algo desejável o suficiente em vez de apenas uma cópia digital.

Porém, tenha cuidado - existe algo chamado “a lei das expectativas crescentes”.Exemplo de jogos:A caixa padrão do Ultima 4-6 incluía um mapa feito de tecido, e a edição Skyrim Collectors tinha um mapa feito de papel.As expectativas aumentaram e algumas pessoas não ficarão felizes com um mapa de papel.Você deseja manter a qualidade do produto ou do serviço constante ou gerenciar as expectativas com antecedência.Acredito que isso seja fundamental ao considerar essas coisas de valor agregado, pois você deseja que elas sejam desejáveis, mas não cada vez mais caras, e não se transformem em algo que pareça tão inútil a ponto de frustrar o propósito.

Esta é uma ocasião em que o software de qualidade é uma coisa ruim, porque se ninguém qual é o seu software, eles não gastarão tempo tentando quebrá -lo, por outro lado, coisas como a coleção mestre da Adobe, CS3, estavam disponíveis apenas alguns dias após o lançamento.

Portanto, a moral dessa história é se você não deseja que alguém roube seu software, existe uma opção: não escreva nada que valha a pena roubar.

Eu acho que alguém apresentará uma maneira dinâmica de IA de derrotar todos os métodos atualmente padrão de proteção de cópias; Caramba, eu certamente adoraria ser pago para trabalhar nesse problema. Quando chegarem lá, novos métodos serão desenvolvidos, mas isso diminuirá as coisas.

A segunda melhor maneira de a sociedade impedir o roubo de software é penalizá -lo fortemente e aplicar as penalidades.

A melhor maneira é reverter o declínio moral e, assim, aumentar o nível de integridade na sociedade.

Uma causa perdida, se alguma vez ouvi uma ... é claro que isso não significa que você não deve tentar.

Pessoalmente, eu gosto da opinião de Penny Arcade: "Um argumento cíclico com um palhaço literal"ALT TEXT HTTP://sonicloft.net/im/52

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top