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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
masm32-kernel-programming — masm32 programação de kernel, drivers, tutoriais, exemplos e ferramentas (créditos Four-F) | Kitploit
Ferramentas/GitHubGitHub/therealdreg/masm32-kernel-programming
Engenharia ReversaAnálise de MalwareAnálise de BináriosAprendizado e EducaçãoRecursos CuradosLabs e Prática
GitHubtherealdreg/masm32-kernel-programming

masm32-kernel-programming

masm32 programação de kernel, drivers, tutoriais, exemplos e ferramentas (créditos Four-F)

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 →
Ver RepositórioSite
1301810há 3 anosRevisado pelo Kitploit
Compartilhar

masm32-kernel-programming

Repositório do Dreg para as suas próprias necessidades

programação de kernel masm32, drivers, tutoriais, exemplos e ferramentas (créditos Four-F)

Instruções

  • baixe/clone este repositório
  • execute masm32v11r_install.exe
  • clique na imagem de instalação (terra)
  • instale o masm32 em C:\
  • recomendo adicionar as seguintes entradas à variável de ambiente PATH:
    • C:\masm32\bin
    • C:\masm32
  • copie o conteúdo de KmdKit18\include\ para C:\masm32\include\
  • copie o conteúdo de KmdKit18\macros\ para C:\masm32\macros\
  • copie o conteúdo de KmdKit18\lib\ para C:\masm32\lib\

Exemplo básico

  • copie beeper.asm para C:\
  • copie beeper.bat para C:\
  • execute beeper.bat

Neste momento, um .sys é criado em C:\

Como carregar/descarregar um driver

w2k_load.exe - melhor forma

carregar driver:

  • w2k_load.exe C:\beeper.sys

w2k_load.exe ou osrloader.exe apresentam um erro ao carregar beeper.sys, apenas ignore-o.

Esse erro é gerado pelo próprio código do driver quando ele termina a sua própria execução (com esse truque você não precisa descarregá-lo)

mov eax, STATUS_DEVICE_CONFIGURATION_ERROR
ret

Então, se beep.sys estiver carregado corretamente no kernel, você deve ouvir um bipe nos seus alto-falantes (o código do driver gera um bipe)

Quando precisar descarregar um driver, use:

  • w2k_load.exe PATH_SYS_FILE /unload

Eu modifiquei o w2k_load.exe do Sven B. Schreiber para funcionar do Windows 2000 ao Windows 10 (manifesto...)

osrloader

descompacte osrloaderv30.zip e use este programa GUI:

  • Selecione um arquivo .sys (caminho do driver)
  • Registre o serviço
  • Inicie o serviço

Como visualizar mensagens de depuração sem o windbg

para Windows mais antigos, basta usar o DbgView.exe anexado neste repositório. Aliás, eu o modifiquei (manifesto...)

Para Windows modernos, use o dbgview.exe mais recente do site da Sysinternals e verifique isto para solução de problemas:

  • https://stackoverflow.com/questions/12494300/no-output-from-debugview
  • http://msdn.microsoft.com/en-us/library/windows/hardware/ff551519(v=vs.85).aspx
  • https://learn.microsoft.com/en-us/sysinternals/downloads/debugview

Próximos passos

Leia os arquivos .pdf neste repositório e veja os exemplos no diretório KmdKit18/examples

AVISO: TODO o código-fonte ASM está dentro de arquivos .bat (código batch + asm misturados no mesmo arquivo)

Exemplo com advanced\FindShadowTable\FindShadowTable.bat

;@echo off
;goto make

ASM DRIVER CODE GOES HERE

:make
set drv=FindShadowTable
\masm32\bin\ml /nologo /c /coff %drv%.bat
\masm32\bin\link /nologo /driver /base:0x10000 /align:32 /out:%drv%.sys /subsystem:native %drv%.obj
del %drv%.obj
echo.
pause

Este arquivo contém código BATCH que gera um .sys e também contém o próprio código-fonte do driver. Então, sim, é muito complicado; o script de compilação e o código-fonte estão juntos.

advanced/FindShadowTable

advanced/FindShadowTable

Este é um exemplo de como encontrar ServiceDescriptorTableShadow.

Ele apenas examina threads com ID 80h-400h tentando encontrar uma thread cujo KTHREAD.ServiceTable não seja igual a KeServiceDescriptorTable. Se tal thread for encontrada, seu KTHREAD.ServiceTable contém o endereço de ServiceDescriptorTableShadow.

Observe a saída de depuração do driver com o DbgView (www.sysinternals.com) ou use o SoftICE.

Testado em: Windows 2000, XP e Server 2003.

advanced/KbdSpy

advanced/KbdSpy

Este é um exemplo de um simples driver de filtro de teclado PS/2 legado (não PnP). AVISO: Você não conseguirá anexá-lo à pilha de teclado USB.

Testado em: Windows 2000, XP e Server 2003.

advanced/MouSpy

advanced/MouSpy

Four-F, [email protected] arquivos de macro são do meu pacote cocomac.

Este é um exemplo de um simples driver de filtro de mouse PS/2 legado (não PnP). AVISO: Você não conseguirá anexá-lo à pilha de mouse USB.

Testado em: Windows 2000, XP e Server 2003.

advanced/SecureDevices

advanced/SecureDevices

Este é um exemplo de como aplicar configurações de segurança específicas a um objeto de dispositivo nomeado chamando IoCreateDeviceSecure em vez de IoCreateDevice.

Como a rotina IoCreateDeviceSecure não faz parte do sistema operacional, vinculamos wdmsec.lib, que contém todas as rotinas necessárias.

A biblioteca wdmsec.lib que você encontrará aqui não é a que acompanha o DDK. Tive que reconstruí-la para reduzir seu tamanho, removendo membros desnecessários.

basic/FileWorks

basic/FileWorks

Este é um exemplo de como criar, gravar, ler e excluir o arquivo.

Use o KmdManager para registrar/cancelar o registro e iniciá-lo. Observe sua saída de depuração com o DbgView (www.sysinternals.com) ou use o SoftICE.

Testado em: Windows 2000, XP e Server 2003.

basic/HiddenDriver

basic/HiddenDriver

Este é um exemplo de como empacotar o driver em recursos.

Testado em: Windows 2000, XP e Server 2003.

basic/IsSafeBootMode

basic/IsSafeBootMode

A maneira de saber se o sistema está sendo executado em modo de segurança ou não.

Use o KmdManager para registrar/cancelar o registro e iniciá-lo. Observe sua saída de depuração com o DbgView (www.sysinternals.com) ou use o SoftICE.

Testado em: Windows 2000, XP e Server 2003.

basic/MemoryWorks/LookasideList

basic/MemoryWorks/LookasideList

Este é um exemplo de como usar lookaside list e lista duplamente vinculada para gerenciar os blocos de memória alocados a partir da lookaside list.

Use o KmdManager para registrar/cancelar o registro e iniciar/parar. Observe sua saída de depuração com o DbgView (www.sysinternals.com) ou use o SoftICE.

Testado em: Windows 2000, XP e Server 2003.

basic/MemoryWorks/seh

basic/MemoryWorks/seh

Este é um exemplo de como lidar com exceções usando SEH. Mas lembre-se. VOCÊ NÃO PODE LIDAR COM TODAS AS EXCEÇÕES COM SEH EM MODO KERNEL !

Use o KmdManager para registrar/cancelar o registro e iniciar/parar. Observe sua saída de depuração com o DbgView (www.sysinternals.com) ou use o SoftICE.

Testado em: Windows 2000, XP e Server 2003.

basic/MemoryWorks/SharedSection

basic/MemoryWorks/SharedSection

Este é um exemplo de como usar um objeto de seção nomeado para compartilhar memória entre um processo em modo de usuário e um driver em modo kernel.

Testado em: Windows 2000, XP e Server 2003.

basic/MemoryWorks/SharingMemory

basic/MemoryWorks/SharingMemory

Este é um exemplo de uma possível maneira de compartilhar o buffer de memória entre o modo de usuário e o modo kernel.

Testado em: Windows 2000, XP e Server 2003.

basic/MemoryWorks/SystemModules

Baixar ferramenta