Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
web-server-audit_CVE-2026-42945 — nginx 및 Apache용 트리거 인식 웹 서버 CVE 감사. 버전 일치를 넘어 취약한 코드 경로가 구성에서 실제로 도달 가능한지 확인. 결과를 활성 / 잠재 / 미검증으로 분류. 단일 파일 Python 3.5+, 종속성 없음. | Kitploit
도구/GitHubGitHub/sibersan/web-server-audit_cve-2026-42945
Vulnerability ScannersVulnerability AnalysisConfiguration AuditingWeb SecurityDevSecOpsMisconfiguration
GitHubsibersan/web-server-audit_cve-2026-42945

web-server-audit_CVE-2026-42945

nginx 및 Apache용 트리거 인식 웹 서버 CVE 감사. 버전 일치를 넘어 취약한 코드 경로가 구성에서 실제로 도달 가능한지 확인. 결과를 활성 / 잠재 / 미검증으로 분류. 단일 파일 Python 3.5+, 종속성 없음.

저장소 보기
134개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

web_server_audit

취약한지 묻지 마세요. 익스플로잇 가능한지 물으세요.

nginx 및 Apache의 알려진 CVE에 대해 설치된 버전 과 취약한 코드 경로가 설정을 통해 실제로 도달 가능한지 여부를 모두 확인하는 단일 파일 Python 도구입니다.

Why(이유)?

대부분의 CVE 스캐너는 버전 매칭에서 멈춥니다: "nginx 1.18.0 — CVE-2026-42945, HIGH 심각도, 취약합니다." 하지만 많은 CVE는 익스플로잇 가능하려면 특정 설정 패턴이 필요합니다. 구성을 무시하는 스캐너는 실제 위험을 반영하지 않는 빨간 경보로 당신을 압도할 뿐만 아니라, 더 나쁘게는 내일 설정이 변경되면 실제로 현실이 될 잠재적 위험을 숨길 수 있습니다.

web_server_audit는 CVE당 두 가지 별개의 질문에 답합니다:

  1. 설치된 버전이 취약한 범위에 속합니까?
  2. 트리거 패턴이 활성 구성에 존재합니까?

이 둘을 결합하면 세 가지 정직한 분류를 얻을 수 있습니다:

ClassificationMeaning
🔴 Active exploitation risk취약한 버전 그리고 트리거 존재함. 오늘 익스플로잇 가능.
🟡 Latent risk취약한 버전, 트리거 없음. 구성 변경으로 패턴이 도입되면 익스플로잇 가능해짐.
⚪ Unverified구성 읽을 수 없음; 상태 알 수 없음.

Features(기능)

  • 🎯 CVE별 트리거 탐지 (단순 버전 매칭 아님)
  • 🟢 실행 요약에서 활성 위험과 잠재 위험 분리
  • 🐧 Ubuntu Pro / ESM 인식 — ESM 범위 밖의 패키지 플래그
  • 🔬 ASLR 확인, 서비스 상태, 수신 포트, 최근 SIGSEGV 횟수
  • 🎨 색상 코드 출력, 자동화를 위한 JSON
  • 📦 단일 파일, Python 3.5+, 타사 종속성 없음
  • 🔌 쉽게 확장 가능 — 새 CVE를 약 10줄에 추가

Quick start(빠른 시작)

git clone https://github.com/YOUR_USERNAME/web-server-audit.git
cd web-server-audit
sudo python3 web_server_audit.py

Supported CVEs (nginx) - 지원되는 CVE (nginx)

CVE심각도트리거 패턴
CVE-2026-42945 (Rift)HIGHrewrite + 이름 없는 캡처($1,$2) + 치환 문자열 내 ?
CVE-2026-42946MEDIUMscgi_pass 또는 uwsgi_pass 사용 중
CVE-2026-40701MEDIUMssl_stapling on + resolver 함께 있음
CVE-2026-42934LOWcharset/charset_types/source_charset 지시어

Apache CVE 목록은 현재 비어 있지만 구조는 마련되어 있습니다. 아래 Extending(확장) 참조.

Additional checks(추가 확인)

CVE 외에도 도구는 다음을 보고합니다:

  • ASLR 상태 (/proc/sys/kernel/randomize_va_space) — 완전한 ASLR은 메모리 버그의 RCE 익스플로잇 가능성을 실질적으로 낮춥니다
  • OS 버전 및 EOL 상태 — 수명 종료 또는 ESM 전용 배포판 플래그
  • Ubuntu Pro (ESM) 구독 esm-infra 및 esm-apps 상태
  • 서비스 상태 — nginx/Apache가 실제로 실행 중인지, 어떤 포트에서 실행 중인지
  • 패키지 소스 — ESM, PPA, 표준 저장소 설치 구분 (Ubuntu)
  • 워커 크래시 — 최근 30일간의 SIGSEGV 이벤트 수를 활성 익스플로잇 지표로 카운트

Requirements(요구사항)

  • Python 3.5+ (Ubuntu 18.04에 포함된 Python 3.6에서 작동)
  • 타사 패키지 없음 — 표준 라이브러리만 사용
  • nginx, apache2, systemctl, ss, journalctl이 있으면 사용하고, 없으면 정상적으로 건너뜀

Usage(사용법)

# 간결한 보고서 (기본값 — OK 줄 숨김)
sudo python3 web_server_audit.py

# OK 줄 포함한 모든 결과
sudo python3 web_server_audit.py --verbose

# ANSI 색상 없음 (파이프, 로그, CI 출력에 적합)
sudo python3 web_server_audit.py --no-color

# 기계 판독 가능 JSON
sudo python3 web_server_audit.py --json

Exit codes(종료 코드)

코드의미
0문제 없음
1경고 또는 CVE가 아닌 중요 발견사항만 있음
2하나 이상의 CVE가 활성 익스플로잇 가능

종료 코드 2는 자연스러운 CI/CD 실패 신호입니다.

Example output(예제 출력)

========================================================================
Web Server Audit - 2026-05-16T01:24:55
Host: web-prod-01
web_server_audit.py v1.0.0 - SiberSAN - MIT License
========================================================================

[system]
------------------------------------------------------------------------
  [OK] OK    ASLR fully enabled (randomize_va_space=2)
  [i] INFO  OS: Ubuntu 18.04.6 LTS
  [!] WARN  Ubuntu 18.04 is in ESM-only support

[nginx] version 1.18.0 (active)
------------------------------------------------------------------------
  [i] INFO  nginx listening on: 0.0.0.0:80, 0.0.0.0:443
  [i] INFO  CVE-2026-42945 (HIGH): version vulnerable but NOT triggered
           Trigger: rewrite + unnamed capture ($1,$2) + '?' in replacement
           Evidence: No rewrite directives in configuration
  [i] INFO  CVE-2026-42946 (MEDIUM): version vulnerable but NOT triggered
  [!] WARN  nginx installed from PPA (1.18.0-3ubuntu1+bionic1)

========================================================================
Real-risk summary
------------------------------------------------------------------------
ACTIVE EXPLOITATION RISK: none detected.

LATENT RISK - vulnerable version, no trigger in config (3):
  - [nginx] CVE-2026-42945 (HIGH)
  - [nginx] CVE-2026-42946 (MEDIUM)
  - [nginx] CVE-2026-42934 (LOW)
  These become exploitable if config changes introduce the trigger.
  Mitigation: config-change discipline + plan upgrade.

========================================================================
Findings: 0 critical, 2 warnings
========================================================================

Extending(확장)

새 CVE를 추가하는 데는 두 단계가 필요합니다.

1. 전체 구성 텍스트(nginx -T 출력)를 받아 (triggered: bool, evidence: str)를 반환하는 트리거 함수를 작성합니다:

def _trigger_my_cve(conf):
    hits = [l for l in conf.splitlines() if re.search(r'risky_directive', l)]
    if hits:
        return True, "Found: " + hits[0]
    return False, "Pattern not present"

2. NGINX_CVES(또는 APACHE_CVES)에 항목을 추가합니다:

{
    "id": "CVE-XXXX-NNNNN",
    "name": "Descriptive name",
    "severity": "HIGH",
    "affected": ("1.10.0", "1.25.0"),
    "fixed_in": ["1.25.1"],
    "trigger_desc": "Human-readable trigger description",
    "trigger_fn": _trigger_my_cve,
},

이것으로 끝입니다. 프레임워크가 분류, 출력 형식, JSON, 종료 코드 및 실행 요약을 자동으로 처리합니다.

Limitations(제한사항)

  • 활성 익스플로잇 테스트 없음. PoC 요청을 전송하지 않습니다. 이는 순수 구성 + 버전 분석 도구입니다.
  • CVE 데이터베이스는 내장되어 있으며 수동으로 관리됩니다. 온라인 동기화가 없습니다. 목록을 최신 상태로 유지하는 것은 사용자의 책임입니다.
  • 트리거 탐지기는 휴리스틱입니다. 깊이 중첩된 include나 특이한 따옴표가 있는 복잡한 구성은 오탐 또는 미탐을 유발할 수 있습니다. 의심스러운 경우 --verbose를 사용하여 세부 정보를 확인하십시오.
  • Ubuntu 18.04, 20.04, 22.04, 24.04에서 테스트되었습니다. 이 도구는 다른 Linux 배포판에서도 실행될 가능성이 높지만, 패키지 소스 탐지(ESM/PPA)는 Ubuntu에 특화되어 있습니다.

Contributing(기여)

풀 리퀘스트, 이슈, 새 CVE 탐지기, 그리고 추가 웹 서버(lighttpd, Caddy, HAProxy 등) 지원을 환영합니다.

새 CVE 탐지기를 제안할 때는 다음을 포함해 주십시오:

  • CVE 기록에 대한 링크 (NVD, 공급업체 권고, 또는 업데이트 로그)
  • 탐지기를 트리거하는 최소 구성 스니펫
  • 트리거 되지 않아야 하는 반례

License(라이선스)

MIT 라이선스에 따라 배포됩니다.

Copyright (c) 2026 SiberSAN

도구 다운로드