Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
Tools/GitHubGitHub/ashok523/cve-2026-31431
Container SecurityVulnerability AnalysisThreat IntelligenceIntrusion DetectionIncident ResponseLog Analysis
GitHubashok523/cve-2026-31431

cve-2026-31431

Defensive IR playbook and detection package for CVE-2026-31431 (Copy Fail) Linux kernel LPE, including Sigma, auditd, Falco, Wazuh, YARA, eBPF, and SIEM hunt queries.

View Repository
3 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-31431 "Copy Fail" — IR Playbook & Detection Package

CVE CVSS ATT&CK License

Production-ready IR playbook, detection rules, and SOC triage guidance for CVE-2026-31431 — a Linux kernel local privilege escalation in the algif_aead crypto interface. Includes an interactive HTML playbook, Sigma rules, auditd configs, Falco container rules, Wazuh correlation rules, YARA signatures, eBPF real-time monitors, and SIEM hunt queries across Splunk, Sentinel KQL, Elastic EQL, and QRadar AQL.

No exploit code — purely defensive content for SOC analysts and detection engineers.

Author: Ashok Reddy


⚠️ Critical: RHEL-Family Mitigation Failure

The widely recommended modprobe blacklist does not work on RHEL, CentOS, AlmaLinux, Rocky Linux, or CloudLinux. The algif_aead module is compiled directly into the kernel (CONFIG_CRYPTO_USER_API_AEAD=y). The commands run without errors but leave the system completely unprotected.

Correct mitigation for RHEL-family:

root@kitploit:~
grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
reboot
# Verify:
cat /proc/cmdline | grep initcall_blacklist

See mitigate/ for platform-specific scripts.


Vulnerability Summary


Repository Structure

root@kitploit:~
├── README.md                      # This file
├── LICENSE                        # MIT License
├── playbook/
│   ├── index.html                 # Interactive IR Playbook (13 tabs)
│   └── triage_playbook.md         # SOC analyst triage guide
├── sigma/
│   ├── afalg_socket_creation.yml  # AF_ALG socket by non-root
│   ├── afalg_bind_aead_string.yml # authencesn algorithm string
│   └── afalg_splice_chain.yml     # Behavioral chain rule
├── auditd/
│   └── cve-2026-31431.rules       # Complete auditd ruleset
├── falco/
│   └── afalg_container.yml        # Container AF_ALG detection
├── wazuh/
│   └── cve-2026-31431.xml         # Wazuh correlation rules
├── yara/
│   └── copyfail_artifacts.yar     # PoC file artifact detection
├── ebpf/
│   └── copyfail_monitor.bt        # bpftrace real-time monitor
├── queries/
│   ├── splunk.spl                 # Splunk SPL hunt queries
│   ├── defender_sentinel.kql      # Sentinel/MDE KQL queries
│   ├── elastic.eql                # Elastic EQL sequences
│   └── qradar.aql                 # QRadar AQL queries
├── mitigate/
│   ├── mitigate_debian.sh         # Debian/Ubuntu mitigation
│   └── mitigate_rhel.sh           # RHEL-family (grubby method)
└── check/
    └── is_vulnerable.sh           # Safe vulnerability check

Interactive IR Playbook

The playbook/index.html is a full interactive playbook with 13 tabs:

Live: https://ashok523.github.io/cve-2026-31431/


Detection Coverage


Alert Noise Reduction


Quick Start

root@kitploit:~
# 1. Check if vulnerable
sudo bash check/is_vulnerable.sh

# 2. Apply mitigation
sudo bash mitigate/mitigate_rhel.sh    # RHEL-family
sudo bash mitigate/mitigate_debian.sh  # Debian/Ubuntu

# 3. Deploy auditd rules
sudo cp auditd/cve-2026-31431.rules /etc/audit/rules.d/
sudo augenrules --load

# 4. Deploy Wazuh rules
sudo cp wazuh/cve-2026-31431.xml /var/ossec/etc/rules/local_rules.xml
sudo systemctl restart wazuh-manager

# 5. Deploy Falco rule (Kubernetes)
sudo cp falco/afalg_container.yml /etc/falco/rules.d/
sudo systemctl restart falco

# 6. Run eBPF monitor (real-time)
sudo bpftrace ebpf/copyfail_monitor.bt

# 7. Scan for PoC files
yara yara/copyfail_artifacts.yar /tmp/ /dev/shm/ /var/tmp/

MITRE ATT&CK Mapping

  • T1068 — Exploitation for Privilege Escalation ★
  • T1611 — Escape to Host (container)
  • T1548.001 — Setuid and Setgid
  • T1059.006 — Python execution
  • T1027 — Defense Evasion (zero disk writes)
  • T1562.001 — Disable/Modify Tools (blacklist removal)
  • T1098.004 — SSH Authorized Keys (persistence)
  • T1552.001 — Credentials in Files (post-root)

Patch Status (2 May 2026)


References

  • copy.fail — Official disclosure
  • Xint Code Research — Full technical analysis
  • NVD CVE-2026-31431
  • Wiz Blog — auth.log detection signal
  • Tenable FAQ
  • oss-security — Mailing list disclosure

Disclaimer

This repository contains defensive detection content only. No exploit code, proof-of-concept scripts, syscall offsets, or shellcode are included or will be added.

Download Tool
FieldDetail
CVECVE-2026-31431
NicknameCopy Fail
ComponentLinux kernel algif_aead (AF_ALG crypto interface)
TypeLocal Privilege Escalation (LPE)
CVSS7.8 (HIGH)
PrimitiveDeterministic 4-byte write into any readable file's page cache
Exploit size732 bytes Python (standard library only, Python 3.10+)
Reliability100% — no race condition, no retries
Disk writesZero — page-cache only, invisible to FIM tools
ScopeEvery major Linux distro since 2017 (kernel 4.13–6.18)
Container riskContainer-escape primitive if host kernel unpatched (T1611)
PoC statusPublic since 29 April 2026
PatchCommit a664bf3d603d — reverts in-place AEAD operations
Discovered byTaeyang Lee (Theori) · Exploit chain by Xint Code (AI-assisted)
TabContent
OverviewAttack graph, exploit chain, stats
Phases 1–6Complete IR lifecycle with checklists
Intel FeedSOC detection methodology, VAPT vs SOC, community tools, patch status
IOCsSyscall, process, filesystem, behavioral indicators
MITRE ATT&CKTechnique mapping with detection signals
Detection Use Cases8 TTP-based use cases (UC-CF-001 through UC-CF-008)
SIEM Hunting18 queries across all platforms
AI DetectionUEBA/ML capabilities and limitations
StageDetectionTool
AF_ALG socket by non-rootSigma · auditd · Falco · eBPFPrimary signal
splice() chain (same PID, 10s)auditd · eBPFNear-zero FP
authencesn AEAD stringSigma · auditdCritical if observed
uid→euid=0 without authauditd · Splunk · KQLLPE confirmed
su with missing usernameauth.log (Wiz signal)Post-exploitation
PoC on filesystemYARAStaging detection
Container escapeFalco with K8s contextT1611
Post-root persistenceauditd FIM · WazuhSSH keys, SUID, cron
ApproachVolumeConfidence
❌ Alert on all splice()~10,000/hrVery Low
⚠️ Alert on socket(AF_ALG) alone~5–50/dayMedium
✅ AF_ALG + splice same PID/10s~0–2/dayVery High
✅ AF_ALG + splice + su / 60s~0/dayCritical
DistributionStatusCommand
Ubuntu✅ Patchedapt update && apt install linux-image-generic
AlmaLinux✅ Patcheddnf clean metadata && dnf upgrade
CloudLinux✅ Patched + livepatchkcarectl --update
Debian✅ Trackedapt update && apt upgrade
Mainline✅ Fixed 7.0-rc7Commit a664bf3d603d
RHEL⏳ PendingErrata not yet released
Amazon Linux🔄 Trackingyum update kernel