
Ansible 플레이북으로 Linux 호스트에서 CVE-2026-31431을 점검하고 완화하며, 로컬, 원격, 컨테이너 환경용 스크립트와 CI/CD 통합을 포함합니다.
Linux 호스트가 CVE-2026-31431에 취약한지 확인하고 완화 조치를 적용합니다.
check_cve_2026_31431.yml - 확인 및 패치를 위한 Ansible 플레이북revert_cve_2026_31431.yml - 완화 조치를 되돌리기 위한 Ansible 플레이북run_check.sh - 로컬 또는 원격으로 확인을 실행하는 스크립트run_revert.sh - 로컬 또는 원격으로 변경 사항을 되돌리는 스크립트./run_check.sh
# 로컬 실행 시 'l' 선택
또는 직접 실행:
ansible-playbook -i "localhost," -c local --ask-become-pass check_cve_2026_31431.yml -v
run_check.sh가 적용한 완화 조치를 되돌립니다:
./run_revert.sh
# 로컬 실행 시 'l' 선택
또는 직접 실행:
ansible-playbook -i "localhost," -c local --ask-become-pass revert_cve_2026_31431.yml -v
되돌리기는 /etc/modprobe.d/disable-algif.conf를 삭제하고 algif_aead 모듈을 다시 로드하려고 시도합니다.
ansible-playbook -i "192.168.1.100," -u ubuntu --ask-become-pass check_cve_2026_31431.yml -v
여러 호스트 사용 시 (hosts.ini 생성):
[servers]
192.168.1.100
192.168.1.101
ansible-playbook -i hosts.ini --ask-become-pass check_cve_2026_31431.yml -v
./run_revert.sh
# 로컬 실행 시 'l' 선택
docker run -it --privileged ubuntu:22.04 /bin/bash
# 컨테이너 내부에서:
apt update && apt install -y ansible python3
# 플레이북을 컨테이너로 복사하거나 curl/wget 사용
ansible-playbook -i "localhost," -c local check_cve_2026_31431.yml -v
또는 호스트에서 플레이북을 마운트:
docker run -it --privileged -v $(pwd)/check_cve_2026_31431.yml:/check.yml ubuntu:22.04
# 내부에서: ansible-playbook -i "localhost," -c local /check.yml -v
GitHub Actions (.github/workflows/check-cve.yml):
name: Check CVE-2026-31431
on:
push:
branches: [ main ]
pull_request:
jobs:
check-vulnerability:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build test image
run: docker build -t test-image .
- name: Check for CVE-2026-31431 in container
run: |
docker run --rm \
-v ${{ github.workspace }}/check_cve_2026_31431.yml:/check.yml \
test-image \
/bin/bash -c "apt update && apt install -y ansible python3 && \
echo 'no' | ansible-playbook -i 'localhost,' -c local /check.yml -v"
- name: Fail if vulnerable
run: |
# 플레이북은 취약한 경우 != 0을 반환해야 합니다
# 또는 출력에서 "VULNERABLE"을 검색하여 파싱
GitLab CI (.gitlab-ci.yml):
stages:
- build
- security
build_image:
stage: build
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
check_cve:
stage: security
script:
- docker run --rm -v $(pwd)/check_cve_2026_31431.yml:/check.yml $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA
/bin/bash -c "apt-get update && apt-get install -y ansible python3 &&
ansible-playbook -i 'localhost,' -c local /check.yml -v | grep -q 'SAFE' || exit 1"
rules:
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
빌드 시 확인이 포함된 Dockerfile:
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y ansible python3 wget
# 빌드 중 확인 복사 및 실행
COPY check_cve_2026_31431.yml /tmp/
RUN echo "no" | ansible-playbook -i "localhost," -c local /tmp/check_cve_2026_31431.yml -v | \
grep -q "SAFE" || (echo "VULNERABLE - Fix before building" && exit 1)
# 나머지 이미지 구성...
authencesn 알고리즘이 AF_ALG를 통해 접근 가능한지 확인algif_aead 모듈 비활성화 (/etc/modprobe.d/disable-algif.conf 생성)/etc/modprobe.d/disable-algif.conf 삭제algif_aead 모듈 다시 로드 시도authencesn 알고리즘이 AF_ALG를 통해 접근 가능한지 확인algif_aead 모듈 비활성화Status: SAFE - System is protected
© 2026 EximiaIT
보안 평가 도구 – CVE-2026-31431 (Copy Fail)
이 프로젝트는 승인된 보안 테스트, 감사 및 교육 목적으로만 사용됩니다. 적절한 승인 없이 이 소프트웨어를 사용하는 것은 엄격히 금지됩니다.
EximiaIT는 이 도구로 인한 오용 또는 손해에 대해 책임을 지지 않습니다.