por Marcos Elias
As informações de versão de executáveis e DLLs são confiáveis? Ou seja… É possível alterá-las?
Para quem não compreendeu, estou me referindo às informações do produtor de um programa e da versão do mesmo, que aparecem na guia “Versão” das propriedades do arquivo.
A resposta é: NÃO!
Não são confiáveis. Então a segunda pergunta tem como resposta o oposto, SIM, é possível alterar essas informações. Ao baixar um programa então, não dá para confiar 100% nisso. Um vírus ou espião, por exemplo, pode colocar informações de versão da Microsoft, dar um nome de arquivo parecido com alguma coisa do Windows e ficar na pasta system32, que é cheeeeia de arquivos do sistema. Ele passaria como sendo um programa do próprio Windows, para muita gente!
E como alterar essas informações?
Quando se cria programas, normalmente os ambientes de programação permitem inserir informações de versão. A pessoa digita então o que quiser… Mas dá para modificar de programas já prontos também.
Essas informações ficam armazenadas como recursos dentro do programa ou arquivo no formato win32/pe (DLLs, proteções de tela, etc; programas que no fundo contém código executável, apesar de não terem a extensão “.exe”). Se você acompanha o Explorando há um tempo deve lembrar da famosa dica de como alterar o texto do botão Iniciar do Windows… O procedimento é basicamente o mesmo: abra o programa num editor de recursos e altere a partir dali.
Dá-lhe Resource Hacker!
Veja:
Basta abrir o arquivo nele, ir no item “Version info > 1 > <Código do idioma>” e então modificar as informações. Você pode adicionar ou remover coisas, tomando cuidado para manter a estrutura. Ao terminar, clique em “Compilar script” e depois em “Arquivo > Salvar” ou “Salvar como”, para gerar o programa modificado.
Excluindo o recurso do grupo “Version info”, você elimina a guia de informações da versão. Experimente salvar e ver nas propriedades do arquivo!
Veja aqui instruções de onde encontrar e como usar o Resource Hacker, um explorador de recursos gratuito, muito bom.
Alguns arquivos podem ser protegidos, e não irão rodar se estiverem modificados. Muitos programas de instalação fazem isso, para evitar que o programa a ser instalado seja instalado corrompido. A maioria usa checagem de CRC ou CRC32 (naaada a ver com “CRC - Conselho Regional de Contabilidade”, pleeeease! rs), ou somatórias MD5, para checar isso.
Nota: a alteração dos recursos não funciona com exploradores de recursos se o programa estiver compactado por algum compressor de executáveis, como o UPX ou praticamente qualquer outro. Eles não conseguiriam ler a estrutura do arquivo para modificá-lo corretamente. Embora normalmente os programas comprimidos assim podem ser descompactados com um programa adequado; “se” existir esse programa ele provavelmente terá sido criado pelo mesmo criador do compactador. O UPX, por exemplo, permite compactar e depois descompactar arquivos que foram comprimidos por ele. A vantagem da compressão de executáveis é, além do tamanho do arquivo ficar bem menor sem depender de zip nem nada, a relativa proteção que isso causa. Editores hexadecimais, por exemplo, não conseguirão encontrar strings que existam no original se ele estiver compactado. Nada feito sem o descompactador adequado, que muitas vezes nem existe, afinal o executável é extraído somente em memória em tempo de execução. Falando em compactadores de executáveis, além do UPX com o KebraByte, um bom e gratuito é o Petite. Esse petite, pelo que parece, não possui um descompactador, sendo ideal para proteger programas shareware ou demos, para evitar que sejam crackeados. Embora… Talvez o autor dele tenha um descompactador próprio não divulgado, quem sabe, né?


















Nenhum comentário até agora ↓
Os comentários são postados pelos visitantes, e não expressam necessariamente a opinião da equipe do site ou do autor do artigo.
Tem algo a dizer? Faça um comentário :)
Postar comentário