Como o software é hackeado e corrigido?

11

É realmente estranho ver que quase todo software famoso e bom está quebrado e corrigido. Software Adobe, Windows, IDM e muitos outros ...

É tão fácil assim? Quais são as técnicas que eles usam? Como podemos proteger nosso software contra patches ou rachaduras?

Editar:

Bem, eu estou claro para as respostas atuais que existem muito menos maneiras de proteger seu software " .... o único método que eu já vi trabalhar é colocar lógica importante em um servidor externo em algum lugar ... por @Phoshi", mas como isso é feito? os softwares possuem arquivos criptografados, .exe, etc., então qual é o benefício de criptografá-los .. não deve apenas deixá-los abertos ... se as pessoas os quebrarem mesmo assim?

Chetan Sharma
fonte
Quem pirateia o software não o compra independentemente, para que você não perca nenhum cliente legítimo. Apenas considere o software pirateado como "Experimente antes que você nunca o compre de qualquer maneira". Parar a pirataria de software é como tentar fútil a guerra contra as drogas. Coloque seu tempo, dinheiro e esforço na qualidade do produto.
Moab
Ah, re: criptografia, o arquivo precisa ser descriptografado para que o aplicativo o leia e, se o aplicativo souber decifrá-lo, você também o fará. No entanto, ele adiciona outra camada de segurança - assim como trancar as portas da sua casa pode não impedir alguém que queira roubar você, se você não fizer isso, seu seguro não estará pagando.
Phoshi
2
Bem. Obrigado a todos por todas as suas respostas e apoio .. Uma coisa que eu tenho certeza é que .. há quase 100% de garantia de que todos os softwares podem ser quebrados ... por isso não vale a pena colocar esforços extras em segurança, devemos preferir foco na qualidade. Obrigado a todos
Chetan Sharma

Respostas:

19

Você não pode. Qualquer pessoa executando algo localmente tem controle total sobre o que faz - se você ligar para casa, poderá ser desativado ou interceptado. Se você fizer verificações de chave, elas poderão ser alteradas para aceitar qualquer chave. Verificações de hardware e, novamente, você pode alterar isso para sempre retornar verdadeiro. Nenhuma proteção executada inteiramente em um computador local aberto será 100% eficaz - o único método que já vi funcionar é colocar lógica importante em um servidor externo em algum lugar e verificar quando solicitado - mas isso acrescenta latência e complexidade e aborrecimento.

Simplificando, eu não me esforçarei muito, ele estará quebrado e a única coisa que fará é irritar clientes legítimos. Se o seu software for bom, as pessoas importantes o comprarão, especialmente se ele tiver aplicativos de negócios.

Phoshi
fonte
2
"... eu não tentaria demais, seria quebrado ....... Se o seu software for bom, as pessoas importantes o comprarão, especialmente se ele tiver aplicativos de negócios". Phoshi .. Obrigado pela resposta
Chetan Sharma
5

Existem apenas alguns produtos de proteção de software no mundo, usados ​​por todos os fabricantes de software. Como tal, eles são bem conhecidos pelos hackers.

Esses produtos de proteção são confrontados com grupos de jovens gênios, grupos que são continuamente renovados pelos recém-chegados. Além disso, eles competem entre si, correndo para quebrar qualquer novo produto ou esquema de segurança. Eles mantêm a conta de suas façanhas usando sites dedicados.

Para esses grupos, quebrar um novo produto é apenas uma questão de descobrir qual proteção ele usa e depois anulá-lo. É mais interessante para eles quando uma nova versão do produto de proteção é lançada, quebrando-os geralmente dentro de dias (!).

Muitos proprietários legítimos de jogos / vídeo / música preferem fazer o download de versões quebradas, pois os produtos de proteção podem ser piores que os vírus, causando grandes problemas após a instalação.

Em conclusão, usar o seu próprio esquema de proteção é a melhor ideia, em vez de comprar um, mas sabendo que se o seu produto se tornar conhecido, ele será quebrado.

harrymc
fonte
4

Você não pode. Qualquer pessoa pode alterar qualquer bolha de dados em seu próprio computador (é uma declaração sobre possibilidade, não capacidade, legalidade ou licença).

knitti
fonte
4

O software rachado é uma parte do ecossistema proprietário. Quebrar o software livre não faz sentido. A aplicação de patches em software livre é um direito fundamental do usuário.

vtest
fonte
1
  1. Não é realmente fácil, você precisa ter uma curiosidade angustiada para querer desmontar as coisas para ver como elas funcionam. Além disso, há o burburinho de espancar as pessoas que escreveram o software em primeiro lugar.
  2. Existem vários aplicativos disponíveis para descompilar o software, mas eles não são perfeitos ou abrangentes. É preferível obter todo ou parte do código original de um servidor inseguro ou de um "amigo". Você pode executar o programa em cima de uma camada de software que monitora suas funções. Também há boas tentativas e erros antiquados.
  3. Você não pode evitá-lo, desde que hackers / crackers queiram dar uma olhada, eles encontrarão um caminho (eventualmente).
Tog
fonte
1

Aqui está uma resposta para a edição.

A razão pela qual a proteção contra cópia ainda existe é tempo e inércia.

Tome jogos de computador, por exemplo. Os fãs de séries famosas ficam empolgados antes do lançamento da mais nova edição do jogo. Os editores esperam que as pessoas comprem o jogo original em vez de esperar a versão quebrada aparecer em cena. Como já foi dito, os grupos correm para publicar suas rachaduras. Os editores geralmente tentam fazer verificações ocultas em programas que não são imediatamente óbvios. Por exemplo, nos colonizadores 3, se bem me lembro, os edifícios que deveriam produzir carne fabricada em aço nas versões trincadas. Portanto, se um grupo perder isso, outro grupo se tornará "adequado" e esperará ganhar prestígio, corrigindo problemas que o primeiro grupo perdeu. Esse ciclo pode durar algum tempo e frustrará os usuários de versões piratas. Os editores esperam que, nesse período, eles decidam obter a versão original.

Outra maneira que foi pioneira em Stardock, eu acho, é o uso de conteúdo para download. Os proprietários de jogos originais terão que fazer login em um serviço da Web e baixar alguns novos extras, disponíveis apenas para os proprietários de jogos originais. Dessa forma, eles esperam que os piratas obtenham a versão original para obter os extras.

Quanto à parte da inércia, aqui está uma analogia. Nos tempos dos meus avós, poucas pessoas no meu país usavam fechaduras nas portas da frente. Ter uma tranca era um pouco estranho. À medida que o nível de urbanização aumentou, a taxa de criminalidade aumentou e as fechaduras foram necessárias por algum tempo. O aumento do crime foi afetado pelo aumento da atividade policial e as coisas estão bem seguras agora, mas as pessoas ainda usam trancas porque isso se tornou parte da tradição. Eles não pensam se vão trancar a porta da frente ou não. Eles apenas conseguem um com uma fechadura, como todo mundo. Eles ainda usam designs de cadeados com 20 a 30 anos de idade, embora saibam que esses cadeados podem ser escolhidos por qualquer criminoso profissional com pouco esforço.

Sinto que é a mesma situação na indústria de software. Tornou-se normal ter algum tipo de proteção de software. Sim, existem programadores que apenas exibem uma mensagem como "Eu sei que você está usando a versão pirata!" e deixe o usuário continuar, mas a resposta padrão é obter algum tipo de proteção. Às vezes, para programas com base de usuários pequena ou programas muito especializados, isso funcionará porque eles não são do interesse de warez d00dez. Outras vezes, ajudará a adiar o uso da versão mais recente de um programa até que o crack esteja disponível.

Às vezes, a decisão não está nas mãos de pessoas competentes. Frequentemente, advogados ou vários funcionários decidem que tipo de proteção é necessária, mesmo que não tenham idéia se será eficaz ou não. Em vez disso, eles decidem o que é bom para eles ou o que seus colegas estão usando ou cuja brochura é mais brilhante ou mais barata e assim por diante. Lembro-me de quando o Vista era novo, algumas das críticas sobre o gerenciamento de restrições digitais mencionavam que as novas placas gráficas teriam que ser totalmente cobertas por coolers de todos os lados, para que os piratas não pudessem se conectar diretamente aos pinos expostos nas placas. e "roubar" o sinal dos discos blu-ray dessa maneira. Obviamente, quem pensou nisso não fazia ideia de que pessoas com conhecimento e equipamento suficientes para obter uma placa de vídeo da placa de vídeo durante o processamento não estão '

AndrejaKo
fonte
1

Para entender como isso funciona, você deve primeiro entender que um programa de computador executável é uma lista muito, muito, muito longa de instruções simples que o computador faz muito, muito, muito rápido.

Essas instruções são os bytes reais à espreita, por exemplo, um arquivo EXE, e não há nada de especial neles, exceto por fazer com que a CPU faça coisas úteis quando olha para eles como instruções.

Originalmente, os programadores escreviam todas as instruções manualmente, mas verificou-se ser muito mais rápido escrever um software que usa instruções humanamente legíveis como "SHOW TEMPERATURE IN WINDOW" e as converte nas muitas instruções que a CPU precisa fazer para realmente fazer isso .

A idéia é que um cracker analise as instruções da CPU e deduza quais delas fazem a parte de que não gostam - como verificar se o CD físico é ruim nos lugares certos - e substitua-as por OUTRAS instruções, ou, em outras palavras, substitua alguns bytes no arquivo EXE por outro conjunto de bytes cuidadosamente calculado. A CPU não se importa - apenas vê instruções.

A parte difícil é garantir que a parte ignorada acima não faça MAIS do que apenas a verificação, como definir informações importantes necessárias posteriormente ou que o restante do programa não faça verificações de consistência no EXE para verificar se foi adulterado. . Para arquivos EXE com muitos megabytes grandes, isso pode ser uma tarefa e tanto.

A abordagem usual para lidar com isso atualmente é afastar-se da verificação de mídia quebrada física, para um "você deve fazer login no nosso servidor para usar nosso software". As chaves de licença são as que você paga e deve administrar com cuidado.

Thorbjørn Ravn Andersen
fonte
1

Se você possui o software no seu computador, tem tudo o que o software tem para oferecer. Tudo o que você precisa fazer é separar o que você precisa do programa ou remover o que não deseja, por exemplo, verificações de segurança.

Para proteger seu software de verdade, é necessário mantê-lo afastado do usuário e fornecer apenas o serviço, e não o programa, como faz o google docs.

O que mantém as pessoas comprando o software? quem quiser ser legal comprará, especialmente firmas, empresas e corporações. ou se for mais fácil comprá-lo do que obter uma cópia invadida, porque as pessoas geralmente recorrem a piratas quando o software que desejam não está disponível ou, por exemplo, não está disponível no idioma desejado.

Timo Huovinen
fonte
0

Como em qualquer outra coisa, existem pessoas com as habilidades necessárias que fazem coisas boas com essas habilidades, como a criação de programas como o Adobe Acrobat, etc. Acrobat, etc.

Dois caras, engenheiros mecânicos, um cara usa esse conhecimento para construir cofres bancários, o outro cara usa o mesmo conhecimento que um cracker seguro.

Esse problema não é isolado para a indústria de software, é predominante em todas as indústrias.

joeqwerty
fonte
0

"Quase" é realmente apenas devido a recursos finitos.

Qualquer sistema de segurança deve distinguir entre um usuário legítimo e um usuário não autorizado. Com tempo e dinheiro suficientes, pessoas dedicadas podem confundir qualquer sistema de segurança.

Broam
fonte