Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
alg_check — Audita e endurece sistemas Linux contra escalonamento local de privilégios via AF_ALG (CVE-2026-31431), verificando a exposição da API de criptografia do kernel, restringindo módulos e fornecendo scripts de restauração. | Kitploit
Ferramentas/GitHubGitHub/professional-slacker/alg_check
Ferramentas DefensivasAnálise de VulnerabilidadesAuditoria de Configuração
GitHubprofessional-slacker/alg_check

alg_check

Audita e endurece sistemas Linux contra escalonamento local de privilégios via AF_ALG (CVE-2026-31431), verificando a exposição da API de criptografia do kernel, restringindo módulos e fornecendo scripts de restauração.

Ver Repositório

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 →
há 3 mesesAinda não revisado
Compartilhar

⚠️ Aviso Importante: Riscos do Endurecimento Estrutural

Esta ferramenta implementa Bloqueio Estrutural para mitigar a CVE-2026-31431 renomeando fisicamente os módulos do kernel e purgando-os da memória. Antes de usar, esteja ciente dos seguintes riscos arquiteturais:

  • Volatilidade de Atualizações do Kernel: Os efeitos do endurecimento são temporários. Uma atualização do kernel implantará módulos vulneráveis novos em um diretório /lib/modules/ novo, anulando a obstrução anterior.
  • Efeitos Colaterais Funcionais: Desabilitar o AF_ALG (API de Criptografia do Kernel) pode quebrar aplicativos ou serviços específicos que dependem de aceleração de hardware em nível de kernel (por exemplo, VPNs especializadas, utilitários de criptografia de disco ou ferramentas de segurança personalizadas).[cite: 3]
  • Mitigação vs. Correção: Isto é um paliativo, não uma correção permanente. Destina-se a preencher a lacuna até que um kernel corrigido fornecido pela distribuição esteja disponível.

Use por sua conta e risco. Sempre verifique as funções críticas do seu sistema após executar solution.sh.[cite: 3]

SSIA - Auditoria de Integridade Estrutural do Sistema

Um kit de ferramentas para descobrir, diagnosticar e conter vetores de LPE (Escalação Local de Privilégios) através da API de Criptografia do Kernel Linux (AF_ALG).

⚠️ Aviso Importante: Riscos do Endurecimento Estrutural

A ferramenta usa Bloqueio Estrutural para abordar a CVE-2026-31431 renomeando módulos do kernel e purgando-os da memória. Os principais riscos arquiteturais incluem:

  • Volatilidade de Atualizações do Kernel: Os efeitos são temporários. Uma atualização do kernel implanta módulos vulneráveis novos sob um diretório /lib/modules/ novo, anulando a obstrução anterior.
  • Efeitos Colaterais Funcionais: Desabilitar o AF_ALG pode interromper serviços que dependem de aceleração de hardware em nível de kernel, como VPNs especializadas, utilitários de criptografia de disco ou ferramentas de segurança personalizadas.
  • Mitigação vs. Correção: Isto é um paliativo, não uma correção permanente, destinado a servir como ponte até que um kernel corrigido esteja disponível.

Use por sua conta e risco.

Visão Geral

Este repositório fornece dois scripts que formam um fluxo de trabalho diagnosticar → conter → verificar contra ataques de escalada de privilégios via AF_ALG (socket(38, 5, 0)):

  • check.sh — Auditoria de postura de segurança em múltiplas camadas (executa sem privilégios)
  • solution.sh — Remove à força os módulos AF_ALG da memória + verifica arquivos de módulo físicos (requer root)
  • restore.sh — Recarrega os módulos AF_ALG e restaura o sistema ao estado anterior ao solution.sh (requer root)

Verificações

Uso

Auditoria (sem privilégios)

root@kitploit:~
./check.sh

Contenção (requer root)

root@kitploit:~
sudo ./solution.sh

Restauração (requer root)

root@kitploit:~
sudo ./restore.sh

Restauração

restore.sh reverte os efeitos do solution.sh recarregando os módulos do kernel AF_ALG (af_alg, algif_rng, algif_aead, algif_skcipher, algif_hash). Se o arquivo de módulo físico (af_alg.ko.xz) foi renomeado ou removido, o script avisará e solicitará a restauração manual antes de tentar carregar os módulos.

⚠️ AVISO

Executar solution.sh em um sistema ativo que usa AF_ALG (por exemplo, um sistema com IPsec, dm-crypt/LUKS ou qualquer offload de criptografia por hardware) quebrará instantaneamente todas as operações de criptografia do kernel. Isso inclui:

  • Conexões VPN IPsec e WireGuard
  • Criptografia de disco (LUKS/dm-crypt)
  • Terminação TLS usando criptografia suportada pelo kernel
  • Qualquer contêiner ou aplicativo que dependa das interfaces de socket algif_*

O script força a remoção dos módulos do kernel AF_ALG. As operações de criptografia do kernel falharão até a reinicialização. Este script destina-se apenas a sistemas isolados, não-produtivos ou descartáveis para fins de teste e análise. Não o execute em produção ou infraestrutura crítica.

Requisitos

  • Linux (qualquer distribuição)
  • check.sh não requer dependências além de shell POSIX e /proc//sys
  • solution.sh requer privilégios de root
  • restore.sh requer privilégios de root
  • af_alg_block.so requer privilégios de root para instalação via /etc/ld.so.preload

Notas sobre WSL2

Este POC foi testado no WSL2. Esteja ciente do seguinte:

  • O WSL2 redefine todo o estado na reinicialização (wsl --shutdown). Isso inclui alterações de estado dos módulos do kernel do solution.sh, renomeações de arquivos, resultados do check.sh e quaisquer modificações locais de arquivos neste repositório.
  • Para endurecimento permanente no WSL2, considere configurar .wslconfig, /etc/wsl.conf ou um script de inicialização automática (por exemplo, /etc/rc.local) separadamente.
  • O WSL2 é adequado para fins de teste e validação, mas não para uso em produção ou mitigação de segurança persistente.

Mitigação

Para fechar definitivamente o vetor de ataque AF_ALG:

  1. Coloque o módulo do kernel na lista negra (mais confiável):

    root@kitploit:~
    echo "blacklist af_alg" | sudo tee /etc/modprobe.d/af_alg-blacklist.conf
    

    Ou renomeie o arquivo físico:

    root@kitploit:~
    sudo mv /lib/modules/$(uname -r)/kernel/crypto/af_alg.ko.xz \
            /lib/modules/$(uname -r)/kernel/crypto/af_alg.ko.xz.bak
    
  2. Desabilite o AF_ALG via sysctl:

    root@kitploit:~
    sudo sysctl -w net.core.af_alg_disabled=1
    
  3. Bloqueie a criação de socket AF_ALG via política SELinux / AppArmor

  4. Desabilite namespaces de usuário sem privilégios (ambientes de contêiner):

    root@kitploit:~
    sudo sysctl -w kernel.unprivileged_userns_clone=0
    
  5. Bloqueie o AF_ALG na chamada de sistema socket() via LD_PRELOAD (solução para WSL2):

    root@kitploit:~
    # Instalação em todo o sistema (requer root)
    echo /caminho/absoluto/para/af_alg_block.so | sudo tee -a /etc/ld.so.preload
    

    Uma biblioteca compartilhada pré-compilada (af_alg_block.so) está incluída no repositório. Ela intercepta e retorna quando o domínio é (38). Todas as outras chamadas de socket passam para a implementação real inalteradas.

Licença

MIT

Baixar ferramenta
VerificaçãoO que examinaSeveridade
Contexto do ProcessoUID/GID atual e capacidades efetivasBaixa
Socket de Criptografia AF_ALGAcessibilidade da API de Criptografia do Kernel via socket(AF_ALG, ...)Alta
kptr_restrictVisibilidade de ponteiros do kernel para o espaço do usuárioMédia
dmesg_restrictRestrição de acesso ao buffer de anel do kernelMédia
SELinuxEstado Impondo / Permissivo / DesabilitadoMédia
/proc hidepidSe /proc oculta informações de outros processosBaixa
socket(2)
EAFNOSUPPORT
AF_ALG

Esta abordagem destina-se principalmente ao WSL2, onde a semântica de usuário único e o comportamento de redefinição na reinicialização tornam o LD_PRELOAD em todo o sistema prático. Em sistemas Linux tradicionais multiusuário, prefira o método 1 (lista negra de módulos) — a injeção via /etc/ld.so.preload afeta todos os processos do sistema e pode quebrar silenciosamente serviços dependentes de AF_ALG.

Nota: Requer glibc (não musl). /etc/ld.so.preload requer root para modificar. A remoção é feita excluindo a linha correspondente do arquivo.