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
copyfail-check — Arquivado, movido para codesource/cve-check. Script de shell para detectar a exposição e as mitigações da CVE-2026-31431 (Copy Fail) em sistemas Linux: verificação do kernel, estado do módulo, parâmetros de boot, acessibilidade do AF_ALG e status de patch da distribuição. | Kitploit
Ferramentas/GitHubGitHub/codesource/copyfail-check
Scanners de VulnerabilidadesAnálise de VulnerabilidadesAuditoria de ConfiguraçãoDevSecOpsResposta a Incidentes
GitHubcodesource/copyfail-check

copyfail-check

Arquivado, movido para codesource/cve-check. Script de shell para detectar a exposição e as mitigações da CVE-2026-31431 (Copy Fail) em sistemas Linux: verificação do kernel, estado do módulo, parâmetros de boot, acessibilidade do AF_ALG e status de patch da distribuição.

Ver Repositório
246há 5 diasAinda não revisado

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

copyfail-check

[!IMPORTANT] Este repositório está arquivado. A verificação Copy Fail agora reside em cve-check, juntamente com outras verificações de vulnerabilidades e um modo opcional --fix que aplica a remediação. Consulte checks/CVE-2026-31431 para esta verificação.

curl -fsSL https://raw.githubusercontent.com/codesource/cve-check/main/cve-check.sh | sudo bash -s -- CVE-2026-31431

O check_copyfail.sh abaixo ainda funciona, mas já não é atualizado.

Scripts de shell para detetar vulnerabilidades do kernel Linux, verificar o estado das mitigações e orientar a remediação — concebidos para serem executados localmente ou em frotas através de SSH, Ansible ou pssh.


CVE-2026-31431 — Copy Fail

Copy Fail é uma vulnerabilidade de escalada de privilégios local (LPE) de gravidade elevada no módulo criptográfico algif_aead do kernel Linux. Uma falha lógica introduzida em 2017 permite que qualquer utilizador local sem privilégios escreva 4 bytes controlados na page cache de qualquer ficheiro legível — o suficiente para sobrescrever um binário setuid e obter root. Existe uma prova de conceito funcional em Python de 732 bytes, publicamente disponível.

CVECVE-2026-31431
CVSS7.8 (Elevada)
Divulgada29 de abril de 2026
AfetadosKernels Linux 4.13 – 6.x (2017–2026)
DistribuiçõesUbuntu, RHEL, SUSE, Debian, Amazon Linux e a maioria das restantes
Explorável remotamenteNão — requer acesso local
Correção disponívelParcial — consulte os avisos da sua distribuição

O que o script verifica

VerificaçãoRequer root?
Versão do kernel — se está no intervalo afetado (≥ 4.13)Não
Módulo algif_aead — carregado, presente no disco ou na lista negraNão
Parâmetros de arranque — presença de initcall_blacklist=algif_aead_initNão
Acessibilidade do socket AF_ALG — se o caminho de exploração está abertoNão
Estado do SELinuxNão
Estado do AppArmorSim — apenas saída parcial sem root
Estado da correção da distribuição — CVE listada no changelog do kernelNão

Não é necessário root para executar o script — todas as verificações exceto o estado do AppArmor funcionam como utilizador normal. Recomenda-se executar com sudo para obter resultados completos, e é a opção mais segura quando se faz pipe a partir de curl.

Compatibilidade

O script foi concebido para funcionar em todas as principais distribuições Linux:

Família de distribuiçãoVerificação do gestor de pacotesCaminho dos módulos
Debian, Ubuntudpkg + changelog do kernel/lib/modules/
RHEL, CentOS, Amazon Linuxrpm (kernel, kernel-rt)/lib/modules/
SUSE, openSUSErpm (kernel-default)/lib/modules/
Arch Linuxpacman + link do aviso/usr/lib/modules/
Fedorarpm + fallback /usr/lib/modules//usr/lib/modules/

Requer bash — o script utiliza sintaxe específica do bash e não será executado em sh, ash ou dash. No Alpine Linux (que utiliza busybox ash por predefinição), instale primeiro o bash:

apk add bash

Execução rápida (servidor único)

Sem root — a maioria das verificações funciona:

curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | bash

Com root — resultados completos, incluindo o status do AppArmor:

curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash

Dica: Fixe um SHA de commit específico em produção para que o script não mude sob você:

curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/COMMIT_SHA/check_copyfail.sh | sudo bash

Baixe e inspecione primeiro (recomendado)

curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh -o check_copyfail.sh
less check_copyfail.sh
bash check_copyfail.sh        # without root
sudo bash check_copyfail.sh   # full results

Executar em uma frota

Loop SSH

for HOST in server1 server2 server3; do
  echo "=== $HOST ==="
  ssh "$HOST" "curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash"
done

Ansible

- name: Check Copy Fail vulnerability
  hosts: all
  tasks:
    - name: Run check script
      script: check_copyfail.sh
      become: yes

SSH Paralelo

pssh -h hosts.txt -i \
  "curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash"

Exemplo de saída

============================================================
  Copy Fail CVE-2026-31431 – Vulnerability Check
============================================================

>>> Kernel Version
  [INFO]  Running kernel: 5.15.0-107-generic
  [WARN]  Kernel 5.15.0-107-generic is in the affected range (4.13 – 6.x).

>>> algif_aead Module Status
  [WARN]  algif_aead module is currently LOADED — system is exploitable.
  [WARN]  Module file found at: /lib/modules/5.15.0-107-generic/kernel/crypto/algif_aead.ko
  [WARN]  algif_aead is NOT blacklisted — it can be loaded on demand.

>>> Kernel Boot Parameter Mitigation
  [WARN]  initcall_blacklist=algif_aead_init is NOT set in boot parameters.

>>> AF_ALG Socket Reachability
  [WARN]  AF_ALG sockets are reachable by this user — exploit path is open.

>>> Mandatory Access Control (SELinux / AppArmor)
  [WARN]  Neither SELinux nor AppArmor tools detected — no MAC layer present.

>>> Distribution Patch Status
  [WARN]  Could not confirm CVE-2026-31431 is listed as fixed in running kernel's changelog.

============================================================
  SUMMARY
============================================================
  !! LIKELY VULNERABLE — No confirmed mitigation detected.

  Recommended actions (in order of preference):
  1. Apply your distro's kernel update as soon as available.
  2. Add to /etc/modprobe.d/copyfail.conf:
       blacklist algif_aead
       install algif_aead /bin/true
     Then run: sudo depmod -a && sudo update-initramfs -u
  3. Add to kernel boot parameters (grub):
       initcall_blacklist=algif_aead_init
  4. Immediately unload the module if loaded:
       sudo rmmod algif_aead
============================================================

Mitigações

Aplique estas medidas por ordem de preferência:

1. Corrija o seu kernel (melhor solução)

# Debian / Ubuntu
sudo apt update && sudo apt upgrade linux-image-$(uname -r)

# RHEL / CentOS / Amazon Linux
sudo yum update kernel

# SUSE
sudo zypper update kernel-default

2. Adicionar o módulo à lista de bloqueio (imediato, persistente)

sudo tee /etc/modprobe.d/copyfail.conf << 'EOF'
blacklist algif_aead
install algif_aead /bin/true
EOF

sudo depmod -a

# Debian/Ubuntu
sudo update-initramfs -u

# RHEL/Fedora
sudo dracut -f

3. Descarregue o módulo agora (imediato, não persistente entre reinicializações)

sudo rmmod algif_aead

4. Parâmetro de inicialização do kernel (alternativa à lista de bloqueio)

Adicione initcall_blacklist=algif_aead_init à sua configuração do GRUB e reinicie.


Referências

Baixar ferramenta