Resultados 1 a 8 de 8

Tópico: [Source] Validar Seriais

  1. #1
    Wannabe Avatar de h1h4x0r
    Data de Ingresso
    May 2007
    Localização
    localhost
    Posts
    592
    Post Thanks / Like

    Post [Source] Validar Seriais

    Salve pessoal!!

    Bem nesse source eu mostro como validar seriais é bastante simples o exemplo mas é um bom método para segurança em aplicações Desktop. Para tentar evitar que o seu programa seja debbugado e feito serial fishing é muito melhor fazer a validação do serial Online, é claro que vai envolver mais coisas nesse caso a função retorna true se o serial for valido ou false se for inválido.

    Código:
    <?php
    ################################
    # Função para Validar Seriais
    #      Autor: Marcelo Moraes
    #    www.forum-invaders.com.br
    #  www.compilandoideias.com.br
    ################################
    function validaSerial($nome,$serial){
    #inicia a variável serialV sendo nula
    $serialV=null;
    #Laço para gerar o serial
    for($i=0;$i<strlen($nome);$i++){
        $convert[$i]=ord($nome{$i}) . " ";
        if ($convert[$i]%2==0)
            $convert[$i]=$convert[$i]/2;
            else
                $convert[$i]=$convert[$i]*2;
        $serialV.=(int)$convert[$i];
    }
    #Condição para comparar os seriais
        if ((int)$serial==(int)$serialV)
            return true;
            else
                return false;
    }
    ?>
    A função utiliza de uma matemática bastante simples, ela converte cada letra do nome digitado em seu valor decimal correspondente a tabela ASCII, se o valor for par então divide por 2, se for impar multiplica por 2.

    A função pode ser muito bem implementada e trabalhada para dificultar as coisas

    Exemplos:
    Nome: MARCELO
    Serial: 123456
    FALSE

    --------------------------------------------

    Nome:MARCELO
    Serial:1541304113413838158
    TRUE


    Bem é isso espero que tenham entendido!!

    Fonte: http://www.compilandoideias.com.br/novo/?p=469

    Abraços,
    Att,
    Marcelo Moraes.
    Última edição por h1h4x0r; 29 Oct 2011 às 18:29.

  2. #2
    Hacker ingresso Avatar de guedes.acp
    Data de Ingresso
    Sep 2010
    Localização
    #!/usr/bin/env perl
    Posts
    1.444
    Post Thanks / Like
    muito bom mesmo, o mesmo esquema, para iniciantes, pode ser usado em uma pequena pagina....
    o cliente digita a senha e e no prorprio pc do cara converte paea ASCII divide os pares e multiplica os impares...

    assim dificulta mais um pouco a quebra de sigilo por força bruta...

    claro que tem muitas outras maneras

    parabens Marcelo, gostei desse post
    So respondo se a consiencia perguntar!!!
    Não Respondo MP's de perguntas, as faça em um tópico!

    Perl User, Bioinformatcs Programmer!


    just another biomedical perl hacker try to learn Delphi

  3. #3
    Wannabe Avatar de h1h4x0r
    Data de Ingresso
    May 2007
    Localização
    localhost
    Posts
    592
    Post Thanks / Like
    Salve acpguedes ,

    Sim, da para você implementar isso como quiser como limitar o tamanho do serial exemplo formatar ele para ficar XXXX-XXXX-XXXX-XXXX fazer um algorítimo para que os valores fiquem apenas com 1 casa decimal, bem é só utilizar a imaginação.

    Realmente os Softwares que utilizam para Validar os seus seriais via Online é praticamente impossível de se realizar um serial fishing pois ele é calculado remoto então não adianta debugar. Porém tem a força bruta, mas mesmo assim você não terá acesso a função que calcula o serial então inviável. Lembrando isso apenas para serial fishing ;D

    Abraços,
    Marcelo Moraes.

  4. #4
    Hacker ingresso Avatar de guedes.acp
    Data de Ingresso
    Sep 2010
    Localização
    #!/usr/bin/env perl
    Posts
    1.444
    Post Thanks / Like
    Quando vc fala remoto, tah falando que é calculado no servidor ou no pc do usuario... pq se no servidor a informação pode ser facilmente interceptada mas se no pc do usuario, um script que faria essa convaersão para ASCII seria o suficiente, a não ser que consiga ver o codigo do script ou vigiar o pc do cliente...

    Mas na verdade eu n entendo muito dessa parte...

    Vou estudar um poquiso sobre o assunto...

    Abraços...
    So respondo se a consiencia perguntar!!!
    Não Respondo MP's de perguntas, as faça em um tópico!

    Perl User, Bioinformatcs Programmer!


    just another biomedical perl hacker try to learn Delphi

  5. #5
    Wannabe Avatar de h1h4x0r
    Data de Ingresso
    May 2007
    Localização
    localhost
    Posts
    592
    Post Thanks / Like
    Salve,

    O serial é calculado no Servidor. Isso tem muito mais segurança do que ser calculado localmente, pois em um simples Debugger principalmente se o programa não tiver nenhuma proteção é possível fazer Serial Fhishing.

    A vantagem de o serial ser calculado Remotamente é que não é possível fazer o Debugger para ter acesso ao código que calcula o serial. Você disse que os dados podem ser interceptados, SIM porém do que vai adiantar?? Com certeza podemos utilizar n maneiras de retornar se o serial está OK ou não, se interceptar os dados você da mesma forma não terá acesso a rotina que calcula o serial =)

    Comendador pode explicar melhor isso do que eu =D

    Abraços,
    Marcelo.

  6. #6
    White Hat Avatar de C0M3ND4D0R
    Data de Ingresso
    Oct 2007
    Localização
    Lins - SP
    Posts
    3.477
    Post Thanks / Like
    ...Comendador pode explicar melhor isso do que eu =D
    Bom, como fui citado pelo amigo Marcelo....vou dar uma pequena explanação, talves não ajude muito no esclarecimento....enfim.

    Para mim falar em cima de suposições não dá pessoal....eu prefiro, e gosto de analisar o código do produto final....passar horas e muitas vezes a madrugada em cima do código. O exemplo do amigo Marcelo é uma suposição, acredito ser uma idéia ainda para ser posto á prova. A idéia em principio é evitar a "pescaria de serial"...serial fishing, uma técnica usada para encontrar o serial válido (hardcoded ou hardcoding) serial "embutido" no código ou uma rotina desenvolvida para gerar o serial correto pegando como base alguma informação digitada no produto....ou em alguns casos do computador do cliente, como por exemplo numero do HD, numero do processador, o ID da maquina, enfim.
    Lembrando que existem outras possibilidades e métodos que podem ser usado para se ter um produto registrado sem a necessidade de um serial válido, por esse motivo fica dificil dar uma resposta correta em relação a esse exemplo em si, já que existem outros meios além da "pescaria", como por exemplo: patch (burlando a rotina de verificação), inline patching...(manipulando o code cave).

    Repito, eu prefiro analisar o código do programa (debugger ou decompiler) para poder saber o poderia ser feito, dar uma analise conclusiva em cima de uma idéia, de uma suposição...ainda não tenho todo esse gabarito.

    Mais é uma excelente idéia de segurança, válida para se ter já em programação....como por exemplo, você dividir em sub-rotinas o código local onde irá gerar o serial....e não criar uma rotina única para fazer isso. É uma idéia já sendo utilizada.


    Valeu.....abraços
    Última edição por C0M3ND4D0R; 09 Nov 2011 às 13:52.
    Eu não crio falhas em Softwares, eu exploro as já existentes...I'm not a Cracker, I am a "Professional Reverse Engineers"

    http://img192.imageshack.us/img192/9291/c0mq.png
    http://img807.imageshack.us/img807/3460/vb2008bar3.png
    http://img85.imageshack.us/img85/6213/overallsig2.png
    http://img692.imageshack.us/img692/8666/5uy6z.png
    Minha Regra: ...(Do or Die)
    É extremamente proibido pedir: CHAVE DE ATIVAÇÃO/SERIAL/CRACKS/PATCHS/KEYGENS/…

  7. #7
    Hacker ingresso Avatar de guedes.acp
    Data de Ingresso
    Sep 2010
    Localização
    #!/usr/bin/env perl
    Posts
    1.444
    Post Thanks / Like
    Código PHP:
    talves não ajude muito no esclarecimento.... 
    Apesar de ser iniciante, ajudou muito mesmo...

    Gosto de praticar ER contra mim mesmo pra ver as falhas de segurança, como uma vez vc falou num topico que iniciei sobre perl e java, o povo n costuma se preucupar com segurança...

    Deu para entender a explicação dos dois... bem legal...
    So respondo se a consiencia perguntar!!!
    Não Respondo MP's de perguntas, as faça em um tópico!

    Perl User, Bioinformatcs Programmer!


    just another biomedical perl hacker try to learn Delphi

  8. #8
    Novato ingresso
    Data de Ingresso
    Jul 2014
    Localização
    USA
    Posts
    28
    Post Thanks / Like

    escort agency Milwaukee

    This post requires you to click the Likes button to read this content. This post requires you to click the Likes button to read this content.

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •