Windows NTFS and SMB permission auditor with effective-access analysis, security risk detection, snapshots, and HTML/PDF reports. Built with C++20, Qt 6, and CMake.
🇺🇸 English • 🇧🇷 Português • 🛒 Microsoft Store • 📖 Docs • 🚀 Quick Start • 💬 Discussions • 🐛 Issues
Clique para expandir / recolher
ACL Auditor is an enterprise-grade, native Windows desktop application and CLI tool engineered in C++20 and Qt 6.11.1 for systems administrators, SecOps engineers, IT auditors, and cybersecurity consultancies.
Unlike legacy command-line tools (such as icacls or accesschk) that output raw, unstructured ACL dumps, ACL Auditor is purpose-built to answer the fundamental question in Windows file system governance:
“Why does this specific user have permission to read, modify, or execute this file?”
Identity: john.doe (S-1-5-21-100234-...)
└── Group Membership: IT-Support (S-1-5-21-445892-...)
└── Nested Group: Infra-Operations
└── Rule Inheritance: Inherited from D:\Departments
└── Effective Access: MODIFY (FILE_GENERIC_WRITE | FILE_GENERIC_READ | DELETE)
- 🔒 100% Autonomous & Offline: Operates strictly locally with zero external network connections, zero telemetry, and zero third-party cloud dependencies.
- 🛡️ Strictly Read-Only Analysis: File system inspection, service queries, and SMB share audits never modify security descriptors or metadata.
- 🔄 Safe Remediation with Rollback: Remediation plans generate auditable scripts enforcing mandatory backups (
icacls /save) and guaranteed rollback (icacls /restore).
Below are previews of the running application interface (Windows 11 Dark Theme). Click any thumbnail to view the full-resolution screenshot:
| Capability / Feature | Status | Description |
|---|---|---|
| Virtualized NTFS Permissions Explorer | ✅ | Asynchronous virtual tree capable of rendering volumes with 200,000+ files smoothly. |
| Visual Effective Access Explainer | ✅ | Token simulation resolving primary, local, domain, and universal SIDs (Everyone, Authenticated Users). |
| Heuristic Risk & Compliance Scanner | ✅ | Flags World-Writable folders, Binary Planting, DLL Hijacking, excessive WRITE_DAC/WRITE_OWNER & orphaned SIDs. |
| Windows Services & SMB Shares Audit | ✅ | Uncovers Unquoted Service Paths, writable service executables, and share DACL vs. NTFS discrepancies. |
| Historical Snapshots & Temporal Diff | ✅ | Embedded SQLite3 storage with SHA-256 forensic hashing and automated compliance drift detection. |
| Multi-Format Executive Reporting | ✅ | Interactive HTML dashboards, formatted executive PDF (A4 with signature lines), CSV, and SIEM JSON. |
| Non-Destructive Remediation Planner | ✅ | Generates ready-to-run .ps1 and .bat (icacls) scripts with guaranteed rollback. |
| Windows Explorer Shell Integration | ✅ | Right-click context menu integration registered in HKCU without requiring admin rights. |
Standalone Headless CLI (acl-auditor-cli) |
✅ | Scriptable console tool for pipelines, DevOps, and headless server environments. |
| Windows 11 Native Theme & Dark Mode | ✅ | DWM Mica accent rendering and dynamic runtime bilingual translation (EN / PT). |
- Windows 11 / Windows 10 / Windows Server 2022+ (x64)
- CMake 3.21+
- Qt 6.x (Core, Gui, Widgets, Sql, PrintSupport)
- Visual Studio 2022 (MSVC v143) or MinGW GCC 13+
- Ninja build tool (recommended)
# 1. Clone the repository
git clone https://github.com/fernandoncidade/ACL_Auditor_cpp.git
cd ACL_Auditor_cpp
# 2. Configure and build with MSVC (Visual Studio 2022)
cmake --preset host-qt6-msvc-release
cmake --build --preset host-qt6-msvc-release
# 3. Run automated test suite
ctest --preset host-qt6-msvc-release --output-on-failurecmake --preset host-qt6-mingw-release
cmake --build --preset host-qt6-mingw-release
ctest --preset host-qt6-mingw-release --output-on-failureThe headless CLI tool enables automated security checks inside CI/CD pipelines and administrative scripts:
# 1. Scan directory for NTFS security risks (JSON output for automation)
acl-auditor-cli.exe scan "C:\inetpub\wwwroot" --format json > report.json
# 2. Check effective access for a user on a sensitive file
acl-auditor-cli.exe access "D:\Finance\Payroll.xlsx" --user "CORP\Accounting"
# 3. Audit Windows services for Unquoted Service Paths
acl-auditor-cli.exe services --risks-only
# 4. Audit SMB network shares
acl-auditor-cli.exe sharesTip: When installed via Microsoft Store or MSIX package with
AppExecutionAlias, the commandacl-auditor-clican be invoked globally from any PowerShell or Command Prompt window without modifying%PATH%.
See the CLI Reference for complete options and pipeline exit codes.
- 🏛️ System Architecture — Engine design, virtualized models, and Win32 security APIs.
- 🛡️ Security Model & Threat Analysis — Canonical ACE precedence, read-only guarantees, and risk heuristics.
- 📋 Regulatory Compliance Mappings — CIS Benchmarks, NIST SP 800-53, ISO/IEC 27001, and GDPR/LGPD.
- ⚖️ Licensing & Commercial Clarification — GNU AGPLv3 open-source terms, Microsoft Store packaging, and rights grant.
- 📖 User Operations Guide — End-user instructions, scanning workflows, snapshots, and reports.
- ⚙️ CLI Reference — Command syntax, JSON schemas, and automation parameters.
- 📦 Release Notes v2026.11.6.0 — Hashes (SHA-256), release assets, and changelog.
The source code in this repository is 100% licensed under the GNU Affero General Public License v3 (AGPLv3).
Rights Holder Statement:
I, Fernando Nillsson Cidade, as the sole creator and copyright owner of the ACL Auditor project, license the source code of this software under the terms of the GNU AGPLv3, granting any person or organization the freedom to use, study, copy, modify, and redistribute it under the same copyleft terms.
- Open Source (GNU AGPLv3): The full codebase is free to fork, build, study, and adapt in accordance with the AGPLv3.
- Documentation in
source/assets/: Created specifically for the Microsoft Store release. Developers and forks have complete freedom to alter, delete, add, or customize this documentation for their own platforms and target markets, provided they comply with their local laws and platform regulations. - Official Microsoft Store Edition: The official pre-compiled and digitally signed binary distributed by the author on the Microsoft Store is a turnkey commercial package. Third parties are not authorized to commercially resell, redistribute, or reverse-engineer the author's official compiled binaries (anyone wishing to distribute builds may compile their own binaries from the open source code).
- Complete details: docs/licensing.md.
Version: v2026.11.6.0
Technical revision date: November 6, 2026
Author: Fernando Nillsson Cidade
Clique para expandir / recolher
ACL Auditor é uma aplicação corporativa nativa para Windows e utilitário CLI de alto desempenho, desenvolvida em C++20 e Qt 6.11.1 para administradores de rede, equipes de SecOps, peritos forenses, auditores e consultorias de governança de TI.
Diferente de utilitários legados de linha de comando (como icacls ou accesschk), que apenas geram despejos brutos e desestruturados de ACLs, o ACL Auditor foi concebido para responder à dúvida fundamental na gestão de privilégios do sistema de arquivos Windows:
“Por que este usuário específico possui permissão para ler, modificar ou executar este arquivo?”
Identidade: joao.silva (S-1-5-21-100234-...)
└── Associação a Grupos: Suporte-TI (S-1-5-21-445892-...)
└── Grupo Aninhado: Operacoes-Infra
└── Herança de Regras: Herdado de D:\Departamentos
└── Acesso Efetivo: MODIFICAR (FILE_GENERIC_WRITE | FILE_GENERIC_READ | DELETE)
- 🔒 100% Autônomo e Offline: Opera estritamente no host local, sem conexões externas à rede, sem telemetria e sem dependências de nuvem.
- 🛡️ Análise Estritamente Somente Leitura: Varreduras no sistema de arquivos, consultas de serviços e auditorias SMB nunca alteram descritores de segurança ou metadados.
- 🔄 Remediação Segura com Rollback: Os planos de remediação geram scripts auditáveis com backup prévio obrigatório (
icacls /save) e script de reversão imediata (icacls /restore).
Abaixo estão as capturas de tela do aplicativo em execução (Tema Escuro nativo do Windows 11). Clique em qualquer miniatura para abrir a imagem em resolução máxima:
| Recurso / Funcionalidade | Status | Descrição |
|---|---|---|
| Explorador Virtualizado de Permissões NTFS | ✅ | Árvore virtual assíncrona capaz de navegar em volumes com mais de 200.000 arquivos sem congelar a interface. |
| Explicador Visual de Acesso Efetivo | ✅ | Simulação de token resolvendo SIDs primários, locais, de domínio e universais (Todos, Usuários Autenticados). |
| Varredura Heurística de Riscos e Conformidade | ✅ | Identifica pastas com escrita aberta (World-Writable), Binary Planting, DLL Hijacking, WRITE_DAC/WRITE_OWNER excessivos e SIDs órfãos. |
| Auditoria de Serviços do Windows e Compartilhamentos SMB | ✅ | Detecta Unquoted Service Paths, binários de serviços vulneráveis e discrepâncias entre permissões de compartilhamento e NTFS. |
| Snapshots Históricos e Comparação Temporal (Diff) | ✅ | Armazenamento SQLite3 embutido com hash forense SHA-256 e detecção automatizada de desvio de conformidade (drift). |
| Relatórios Executivos Multiformato | ✅ | Painéis HTML interativos, relatórios executivos em PDF (A4 formatado com campos de assinatura), CSV e JSON para SIEM. |
| Planejador de Remediação Não Destrutivo | ✅ | Gera scripts prontos em .ps1 e .bat (icacls) com backup obrigatório e script de reversão imediata (rollback). |
| Integração com o Menu do Windows Explorer | ✅ | Menu de contexto pelo botão direito registrado em HKCU, sem necessidade de privilégios de administrador. |
Utilitário CLI Standalone Headless (acl-auditor-cli) |
✅ | Ferramenta de linha de comando para automação em pipelines de CI/CD, DevOps e ambientes de servidor sem interface gráfica. |
| Tema Nativo do Windows 11 e Modo Escuro | ✅ | Suporte a estilos visuais modernos com realce DWM Mica e alternância dinâmica de idioma (Inglês / Português). |
- Windows 11 / Windows 10 / Windows Server 2022+ (x64)
- CMake 3.21+
- Qt 6.x (Core, Gui, Widgets, Sql, PrintSupport)
- Visual Studio 2022 (MSVC v143) ou MinGW GCC 13+
- Ninja build tool (recomendado)
# 1. Clonar o repositório
git clone https://github.com/fernandoncidade/ACL_Auditor_cpp.git
cd ACL_Auditor_cpp
# 2. Configurar e compilar com MSVC (Visual Studio 2022)
cmake --preset host-qt6-msvc-release
cmake --build --preset host-qt6-msvc-release
# 3. Executar a suíte de testes automatizados
ctest --preset host-qt6-msvc-release --output-on-failurecmake --preset host-qt6-mingw-release
cmake --build --preset host-qt6-mingw-release
ctest --preset host-qt6-mingw-release --output-on-failureA ferramenta CLI headless permite verificações automatizadas de segurança dentro de esteiras de CI/CD e rotinas administrativas:
# 1. Realizar varredura de diretório em busca de riscos NTFS (saída JSON para automação)
acl-auditor-cli.exe scan "C:\inetpub\wwwroot" --format json > relatorio.json
# 2. Consultar o acesso efetivo de um usuário específico em um arquivo sensível
acl-auditor-cli.exe access "D:\Financeiro\Folha.xlsx" --user "CORP\Contabilidade"
# 3. Auditar serviços do Windows em busca de caminhos sem aspas (Unquoted Service Paths)
acl-auditor-cli.exe services --risks-only
# 4. Auditar compartilhamentos de rede SMB
acl-auditor-cli.exe sharesDica: Quando instalado via pacote MSIX da Microsoft Store com
AppExecutionAlias, o utilitário pode ser executado diretamente em qualquer janela do PowerShell, CMD ou Windows Terminal digitando apenasacl-auditor-cli.
Consulte a Referência da CLI para opções completas e códigos de saída para pipelines.
- 🏛️ Arquitetura do Sistema — Design do motor, modelos virtualizados e integração com as APIs de segurança do Win32.
- 🛡️ Modelo de Segurança e Análise de Ameaças — Precedência canônica de ACEs, garantias de somente leitura e heurísticas de risco.
- 📋 Mapeamento de Conformidade Regulatória — Benchmarks CIS, NIST SP 800-53, ISO/IEC 27001 e GDPR/LGPD.
- ⚖️ Licenciamento e Esclarecimento Comercial — Termos da Licença GNU AGPLv3, empacotamento para a Microsoft Store e concessão de direitos.
- 📖 Guia de Operação do Usuário — Instruções para o usuário final, fluxos de varredura, snapshots e relatórios.
- ⚙️ Referência da Linha de Comando — Sintaxe dos comandos, esquemas JSON e parâmetros para automação.
- 📦 Notas de Versão v2026.11.6.0 — Hashes forenses (SHA-256), binários de lançamento e changelog.
- 📄 Manual do Usuário em Português & Observações Técnicas — Documentação estendida em língua portuguesa.
O código-fonte deste repositório é 100% licenciado sob a GNU Affero General Public License v3 (AGPLv3).
Declaração do Titular dos Direitos:
Eu, Fernando Nillsson Cidade, na qualidade de único criador e detentor dos direitos autorais do projeto ACL Auditor, licencio o código-fonte deste software sob os termos da GNU AGPLv3, concedendo a qualquer pessoa ou organização a liberdade de usar, estudar, copiar, modificar e redistribuir o software sob os mesmos termos copyleft da licença.
- Código Aberto (GNU AGPLv3): O código-fonte integral é livre para bifurcação (fork), compilação, estudo e adaptação sob os termos da AGPLv3.
- Documentação em
source/assets/: Desenvolvida especificamente para a publicação na Microsoft Store. Desenvolvedores e mantenedores de forks têm total liberdade para alterar, excluir, adicionar ou personalizar essa documentação para seus próprios ecossistemas e plataformas, desde que respeitem as diretrizes e leis de seus respectivos países. - Edição Oficial da Microsoft Store: O binário pré-compilado e assinado digitalmente distribuído oficialmente pelo autor na Microsoft Store é um pacote comercial pronto para uso. Terceiros não possuem autorização para comercializar, redistribuir ou realizar engenharia reversa sobre os binários oficiais compilados pelo autor (qualquer pessoa ou organização que deseje distribuir binários pode compilá-los livremente a partir do código-fonte aberto).
- Detalhes completos: docs/licensing.md.
Versão: v2026.11.6.0
Data técnica desta revisão: 6 de novembro de 2026
Autor: Fernando Nillsson Cidade
Note
Sobre o Desenvolvimento e Contribuições Externas / Project Maintenance & Contributions:
🇧🇷 Este projeto é desenvolvido primariamente como uma iniciativa pessoal e educacional pelo autor, que é iniciante e está em contínuo aprendizado em programação. Sugestões, issues e PRs são bem-vindos, mas a análise técnica e incorporação de código ocorrem voluntariamente no ritmo do autor. Caso não haja resposta imediata ou merge, não reaja com alarde; a licença GNU AGPLv3 garante total liberdade para você evoluir o projeto em seu próprio fork.
🇺🇸 This project is developed primarily as a personal and educational initiative by the author, who is a beginner and in continuous software engineering learning. Suggestions, issues, and PRs are welcome, but technical reviews and upstream merges occur voluntarily at the author's own pace. If there is no immediate response or merge, please do not be alarmed; the GNU AGPLv3 license guarantees complete freedom to evolve the project in your own fork.
Contributions are welcome! / Contribuições são muito bem-vindas!
Please read our Contributing Guide and Code of Conduct. / Por favor, consulte nosso Guia de Contribuição e Código de Conduta.
- 💡 Have an idea or question? Open a topic in GitHub Discussions! / Tem uma ideia ou dúvida? Abra um tópico no GitHub Discussions!
- 🐛 Found a bug? Use our Bug Report Template. / Encontrou um problema? Utilize nosso Modelo de Relato de Bug.
- 🛡️ Security vulnerability? Report privately via GitHub Security Advisories. / Vulnerabilidade de segurança? Reporte com privacidade via GitHub Security Advisories.












