
SDK de filtro de registro do kernel do Windows e interface nativa em C++ para auditoria/controle de gravação de chaves de aplicação com escopo definido. Altitude/assinatura pendentes; integração OEM: Discord titancsa.
Regras nativas em C++ para observar e negar gravações selecionadas no registro sob ramificações HKLM\SOFTWARE pertencentes à aplicação. Uma pequena interface de desktop explica a regra correspondida e o processo chamador.
[!IMPORTANT] Versão completa e licenciamento comercial
Nome de usuário do Discord:
titancsaAbra o Discord, escolha Amigos > Adicionar Amigo, insira
titancsae envie uma mensagem direta. Mencione RegistryGuard e pergunte sobre a versão completa / de produção, uso comercial ou redistribuição OEM.Inclua o uso pretendido e o tamanho da implantação para discutir preços, disponibilidade e as instruções apropriadas de licenciamento / acesso.
Prévia de engenharia: aplicação/SDK disponível; a alocação de altitude genuína da Microsoft, a assinatura e a qualificação ao vivo no kernel estão pendentes. Nenhum driver instalável foi publicado ainda.

Vendor\Product não seleciona também Vendor\ProductOther.Os casos de uso incluem testes de integridade de configurações de aplicações, testes de regressão de instaladores e um componente de política OEM. O escopo inicial aceito é uma ramificação nativa abaixo de \REGISTRY\MACHINE\SOFTWARE\; raízes de registro em todo o sistema, SAM, SECURITY e SYSTEM são rejeitadas. Em cenários de aplicação de 32 bits, selecione explicitamente a chave nativa real, incluindo WOW6432Node quando aplicável.
Esta versão não cobre criação de chaves, carregamento/restauração/substituição de hive, alterações de descritor de segurança, transações, alterações originadas no kernel ou todos os aliases de registro. Nomes desconhecidos/irresolvíveis ou truncados continuam e são contados; não há alegação de isolamento de registro à prova de adulteração. Outro filtro confiável pode influenciar o resultado final. Mantenha as ACLs do Windows e os backups em vigor.
Baixe o ZIP completo para Windows x64 em Releases. Extraia o arquivo antes de iniciar a aplicação.
Windows 10 versão 2004+ / Windows 11 x64 são os alvos de compilação. Consulte validação e implantação para as plataformas efetivamente exercitadas. Uma assinatura da Microsoft por si só não é prova de correção, compatibilidade ou endosso da Microsoft.
Compile SDK/RegistryGuard.cpp com seu programa e inclua SDK/RegistryGuard.h. Use C++17 e vincule setupapi.lib. Nenhum serviço em tempo de execução, conta na nuvem ou mecanismo de script executável é necessário para decisões de política.
#include "RegistryGuard.h"
int main() {
RegistryGuard::Session policy;
policy.Start({RegistryGuard::Rule(1,
L"\\REGISTRY\\MACHINE\\SOFTWARE\\Vendor\\Product",
RegistryGuard::Action::Deny)});
// Keep policy alive while your authorized application runs.
// Call policy.Read() to inspect attributed decisions.
}
O escopo deve existir conforme o pretendido na máquina de destino. As leituras permanecem disponíveis. O exemplo mínimo retorna imediatamente e, portanto, remove sua política; Examples/policy.cpp mantém a sessão aberta até que Enter seja pressionado. Nenhum valor de registro é criado ou reescrito pelo próprio SDK.
| Função | Finalidade |
|---|---|
Session::Start(rules) | Abre a interface exclusiva apenas para administradores e instala atomicamente até 16 regras. |
Session::SetRules(rules) | Substitui o conjunto completo de regras ativas; a primeira regra correspondente prevalece. |
Session::Read() | Drena imediatamente no máximo 16 registros de metadados. Um lote vazio significa que não há registros na fila. |
Session::Status() | Lê a geração da política, os contadores, a ocupação do anel e a frequência do QPC. |
Session::Stop() / destrutor | Fecha o handle do proprietário e remove sua política. |
Rule(id, path, action) | Cria uma regra limitada de auditoria/negação. id deve ser único e diferente de zero. |
Os eventos incluem sequência, tempo do QPC, ID/chave de início do processo, geração da política, operação, regra correspondente, decisão e um caminho nativo limitado. O anel de 256 registros relata overflow em vez de alocar sem limite. A UI exibe até 400 registros e atualiza a cada 200 ms; essa cadência de exibição não atrasa as decisões do kernel. Trata-se de atribuição de política pré-operação, não de uma auditoria completa dos resultados finais nem de uma medição de latência de hardware. As chamadas em uma mesma Session são serializadas; pare todos os chamadores antes de destruí-la.
Instale as ferramentas C++ do Visual Studio 2022, o CMake e um Windows SDK. Execute ./Build.ps1 no PowerShell. Ele compila o aplicativo nativo, o console, o exemplo, as fontes do instalador e os testes offline com um runtime C++ estático. ./Build.ps1 -Asan adiciona verificações do AddressSanitizer em modo usuário. As verificações offline não carregam um driver. A fonte do instalador aceita um pacote assinado opaco usando -DriverPackageDirectory; pacotes não assinados ou embutidos não relacionados são rejeitados em tempo de execução.
App/ Native Windows UI and console
SDK/ RegistryGuard.h + RegistryGuard.cpp
Examples/ Small integration example
Installer/ UI/console setup source; kernel implementation excluded
Tests/ Offline protocol validation
docs/ Usage boundaries, validation and commercial integration
O código-fonte da aplicação pública, do SDK e do instalador é licenciado sob MIT. A implementação do kernel entregue separadamente é privada e não é coberta por essa licença de código-fonte. Esta prévia de engenharia não implementa um temporizador de avaliação, ativação remota ou uma cota de licenciamento executável.