SEGURANÇA / CONTROLE PIRATARIA

13/08/2015

0

Olá,

Gostaria de saber como vocês estão fazendo para manter o controle contra pirataria do software.
Tenho a seguinte questão:
Pelo exe eu controlo e libero acesso através do número do HD. Grava criptografado no banco, etc...
Porém um "esperto" pode solicitar liberação de uma maquina como sendo de acesso a rede, e depois copiar a base para essa maquina e ajustar aquivos .ini para rodar local.
Como o hd esta liberado... foi pro espaço a proteção.

Como poderia fazer o controle do Servidor para evitar pirataria?

Delphi XE2
Firebird 2.5
Mauro Klowaski

Mauro Klowaski

Responder

Posts

14/08/2015

Rodrigo Oliveira

MCK, existe um post parece com o seu, pelo a questão de controle de pirataria:

[url]https://www.devmedia.com.br/forum/melhor-forma-de-evitar-pirataria/405894[/url]
Responder

14/08/2015

Mauro Klowaski

Olá Rodrigo, obrigado por responder.

Tinha visto sim esse tópico, também comprei o componente citado, porem ainda esta suscetível a cópia quando uma maquina liberada para uso em rede (cliente) for convertida em servidor.

Infelizmente com o firebird é fácil levar esses dados de um lado para outro e transformar um "SERVIDOR + CLIENTE" em dois "SERVIDORES"

Preciso encontrar uma solução para controlar o servidor, ou seja, só sobe como server na maquina/HD liberado. Se copiar para cliente que teve seu acesso a base liberado esse banco não deve permitir acesso. assim como os componentes sugeridos no tópico anterior fazem para liberar uma maquina.
Responder

14/08/2015

Rodrigo Oliveira

Agora você me pegou com essa situação.
Responder

17/08/2015

Alisson Santos

Boa noite MCK.
Referente o que informou você pode controlar a pirataria de algumas formas.
1ª - Pode fazer uso de autenticação online utilizando o cnpj como validador.
2ª - Pode criar um validador aonde ele le o código do serial da placa mae e do processador e o seu programa criptografar essa informação e gerar uma chave criptografada para o mesmo.

Existe outras formas que eu tenho conhecimento, ai depende muito do que precisa e qual o nivel de trava que vai querer para o seu sistema. Caso seja a liberação para a empresa fica mais facil. Agora se for controle de liberação pela empresa e usuário ai fica um pouco mais complicado mais tem como fazer isso.

Desenvolvi uma aplicação em c# que faço isso que te falei. Quando o pessoal loga ele verificar a chave de acesso que foi liberado, essa chave seja inválida ele não loga no sistema.
Responder

18/08/2015

Rodrigo Oliveira

Existem exemplos prontos do que descreveu, algum artigo?
Responder

18/08/2015

Ricardo

Eu utilizo os componentes TCF, porém tem realmente casos em que cliente liga e fala que trocou de PC, de HD .... e tenta ser esperto e usar o sistema em mais máquinas do que a quantidade licenciada.

Nesse caso eu tenho uma rotina para que o sistema consulte uma base de dados remota em meu servidor, e nela eu habilito e desabilito o acesso da máquinas. Então se o cara tentar usar um destes artifícios acima ou outros, eu libero outra máquina mas bloqueio a antiga, e se o sistema ficar mais de 2 dias sem logar na internet ele deixa de funcionar.
Responder

19/08/2015

Mauro Klowaski

Olá,

Bom, acho que vou seguir da seguinte forma:

1 - Vou usar o componente da TCF para controle através de liberação de chave.
2 Temos uma rotina que exige atualização mensal em base online. Essa atualização só é permitida através do servidor. Nesse momento ele compara o número de hd com o que esta gravado na base online. Se iguais, libera mais 30 dias, se diferentes, trava o sistema.

O problema dessa rotina é a obrigação de atualização quando por algum motivo o cara esta sem internet. Tenho alguns casos onde o cliente esta em cidades onde a unica forma de chegar é por barco ou avião pequeno. Nesses casos a internet é via satélite que na prática costuma ficar sem ate quando esta com muitas nuvens...

Outra situação é quando acontece algum outro tipo de problema voltado a infra no local que deixa o cliente sem net por maior período. Tivemos caso em que a operadora de internet do cliente o deixou sem link por 45 dias. Nesse caso tivemos que pedir ao mesmo pra copiar a base em pendrive e em outra maquina com net nos enviar para liberação.

Então, de certa forma a solução citada acima ajuda, mas ainda deixa brechas para os casos da falta de internet.

Pensei também em seguir uma ideia com base no que sugeriu o Alisson, onde poderia pegar numero de HD e montar um cálculo em que o resultado deve ser igual a um valor gravado e criptografado no banco, ao mudar o mesmo de máquina, o numero de HD muda e essa conta não fecharia mais. Não fechando o numero, pode-se gravar no banco um status de sistema como bloqueado, e nesse momento nenhuma máquina mais abrirá o sistema ao fazer essa checagem antes de abrir.

O problema dessa rotina é que só pegaria caso o cara use o servidor para trabalhar.
Responder

19/08/2015

Thiago Santana

Utilizo os componente do TCF!
TCF - Componentes Delphi
São muito legais, tem um deles que é utilizado para segurança, efetuando o bloqueio do uso do software!
Podem ser bloqueados por intervalo de tempo, quantidade de execuções e etc...
A segurança é feita via criptografia utilizando componente do PC, efetuando calculos com o numero do HD, tanto é que caso ocorra a formatação desta máquina o código registrado na mesma não terá acesso!
Vale apena conferir.
Espero ter ajudado!
Responder

19/08/2015

Mauro Klowaski

Ola Thiago Santana, obrigado por responder, mas como comentei no post anterior, esta solução não é 100% eficaz. Se você instalar e liberar uso do sistema com esse componente que você citou (que eu também comprei), uma estação liberada pode ser convertida em servidor porque o que ele manipula é o registro do windows, sem nenhum controle de cliente/servidor. Basta copiar o arquivo de base, pra esse cliente liberado e teremos dois servidores, um oficial e um que cliente conseguiu liberar sem autorização.
Responder

20/08/2015

Thiago Santana

Ai vai depender da configuração do seu sistema!
Nunca tive problema nesse tipo de situação, pois no servidor tenho apenas a base de dados e todos os outros PCs tem seus respectivos executáveis!
Cada um com sua chave de segurança.
Responder

23/05/2020

Ricardo

Infelizmente eu tive problemas com o componente do TCF. Não pelo componente em si, mas conseguiram crackear meu software, talvez por engenharia reversa, descobriram o ID que eu tinha setado no TCF e como a TCF disponibiliza uma calculadora online, ficou fácil fazer as liberações, resultado, uma versão antiga que usava essa solução, está aberta rodando pela Internet com tutorial de como liberar. Então tive que desenvolver a minha própria solução com autenticação online. Infelizmente se o meu cliente não estiver com Internet, o software não abre.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar