Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Web-Cache-Vulnerability-Scanner — Go 기반 CLI 스캐너로 웹 캐시 포이즈닝 및 디셉션을 위한 도구입니다. 10가지 포이즈닝 기법, 여러 디셉션 방법, 내장 크롤러, JSON 보고, 그리고 침투 테스트를 위한 프록시 통합을 지원합니다. | Kitploit
도구/GitHubGitHub/hackmanit/web-cache-vulnerability-scanner
Vulnerability ScannersWeb Vulnerability ScannersWeb SecurityPenetration TestingCrawler
GitHubhackmanit/web-cache-vulnerability-scanner

Web-Cache-Vulnerability-Scanner

Go 기반 CLI 스캐너로 웹 캐시 포이즈닝 및 디셉션을 위한 도구입니다. 10가지 포이즈닝 기법, 여러 디셉션 방법, 내장 크롤러, JSON 보고, 그리고 침투 테스트를 위한 프록시 통합을 지원합니다.

저장소 보기

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
1.2k16117개월 전Kitploit 검토 완료

Release Go Report Card GitHub go.mod Go version License

Web Cache Vulnerability Scanner (WCVS)는 Hackmanit과 Maximilian Hildebrand가 개발한 웹 캐시 포이즈닝 및 웹 캐시 디셉션을 위한 빠르고 다재다능한 CLI 스캐너입니다.

이 스캐너는 다양한 웹 캐시 포이즈닝 및 웹 캐시 디셉션 기법을 지원하며, 추가로 테스트할 URL을 식별하기 위한 크롤러를 포함하고, 특정 웹 캐시에 적응하여 더 효율적인 테스트를 수행할 수 있습니다. 또한 높은 사용자 정의가 가능하며 기존 CI/CD 파이프라인에 쉽게 통합될 수 있습니다.

  • 기능
  • 설치
    • 옵션 1: 미리 빌드된 바이너리
    • 옵션 2: Kali Linux / BlackArch 저장소
    • 옵션 3: Go를 사용하여 설치
    • 옵션 4: Docker
  • 사용법
    • 헤더, 매개변수, 쿠키 등 지정
    • JSON 보고서 생성
    • URL 크롤링
    • 프록시 사용
    • 속도 제한 또는 가속화
    • 추가 플래그
  • 배경 정보
  • 라이선스

기능

  • 10가지 웹 캐시 포이즈닝 기법 지원:
    1. Unkeyed header poisoning
    2. Unkeyed parameter poisoning
    3. Parameter cloaking
    4. Fat GET
    5. HTTP response splitting
    6. HTTP request smuggling
    7. HTTP header oversize (HHO)
    8. HTTP meta character (HMC)
    9. HTTP method override (HMO)
    10. Parameter pollution
  • 여러 웹 캐시 디셉션 기법 지원:
    1. Path Parameter
    2. Path Traversal (.css 파일, /static 디렉토리 및 /robots.txt)
    3. 추가된 특수 문자 (인코딩된 것과 인코딩되지 않은 것 모두)
  • 테스트 전 웹 캐시를 분석하고 적응하여 더 효율적인 테스트 수행
  • JSON 형식의 보고서 생성
  • 추가 스캔을 위한 웹사이트 크롤링
  • 프록시를 통한 트래픽 라우팅 (예: Burp Suite)
  • 초당 요청 수 제한을 우회하기 위한 속도 제한

설치

옵션 1: 미리 빌드된 바이너리

WCVS의 미리 빌드된 바이너리는 릴리스 페이지에서 제공됩니다.

옵션 2: Kali Linux / BlackArch 저장소

  • Kali Linux: apt install web-cache-vulnerability-scanner
  • BlackArch: pacman -S wcvs

옵션 3: Go를 사용하여 설치

Go를 사용하여 저장소를 설치할 수 있습니다.

go1.21 이상

root@kitploit:~
go install -v github.com/Hackmanit/Web-Cache-Vulnerability-Scanner@latest

옵션 4: Docker

1. 저장소를 클론하거나 최신 소스 코드 릴리스를 다운로드하세요

2. 이미지 빌드 (wordlists 폴더도 복사됩니다)

root@kitploit:~
$ docker build .
Sending build context to Docker daemon  29.54MB
Step 1/10 : FROM golang:latest AS builder
 ---> 05c8f6d2538a
Step 2/10 : WORKDIR /go/src/app
 ---> Using cache
 ---> f591f24be8cf
Step 3/10 : COPY . .
 ---> 38b358dd3472
Step 4/10 : RUN go get -d -v ./...
 ---> Running in 41f53de436c5
....
Removing intermediate container 9e2e84d14ff3
 ---> 1668edcf6ee3
Successfully built 1668edcf6ee3

3. wcvs 실행

root@kitploit:~
$ docker run -it 1668edcf6ee3 /wcvs --help
https://github.com/Hackmanit/Web-Cache-Vulnerability-Scanner
version 1.0.0

사용법

WCVS는 플래그를 사용하여 높은 사용자 정의가 가능합니다. 많은 플래그는 값을 직접 포함하거나 파일 경로를 포함할 수 있습니다.

유일한 필수 플래그는 -u/--url로, 웹 캐시 포이즈닝/디셉션을 테스트할 대상 URL을 제공합니다. 대상 URL은 다양한 형식으로 제공될 수 있습니다.

WCVS는 처음 5가지 기법을 테스트하기 위해 두 개의 단어 목록이 필요합니다. 하나는 헤더 이름 목록이고 다른 하나는 매개변수 이름 목록입니다. 단어 목록은 WCVS가 실행되는 동일한 디렉토리에 있거나 --headerwordlist/-hw 및 --parameterwordlist/-pw 플래그를 사용하여 지정할 수 있습니다.

예시:

root@kitploit:~
wcvs -u 127.0.0.1
wcvs -u http://127.0.0.1
wcvs -u https://example.com
wcvs -u file:path/to/url_list

wcvs -u https://example.com -hw "file:/home/user/Documents/wordlist-header.txt"
wcvs -u https://example.com -pw "file:/home/user/Documents/wordlist-parameter.txt"
wcvs -u https://example.com -hw "file:/home/user/Documents/wordlist-header.txt" -pw "file:/home/user/Documents/wordlist-parameter.txt"

헤더, 매개변수, 쿠키 등 지정

  • --cacheheader/-ch는 캐시 적중 및 누락을 확인할 사용자 정의 캐시 헤더를 지정합니다.
  • --setcookies/-sc는 요청에 추가할 쿠키를 지정합니다.
  • --setheaders/-sh는 요청에 추가할 헤더를 지정합니다.
  • --setparameters/-sp는 요청에 추가할 매개변수를 지정합니다. URL에 직접 추가하는 것도 가능하지만, 어떤 경우에는 이 플래그를 통해 추가하는 것이 더 유용할 수 있습니다.
  • --post/-post는 HTTP 메서드를 GET에서 POST로 변경합니다.
  • --setbody/-sb는 요청에 추가할 본문을 지정합니다.
  • --contenttype/-ct는 Content-Type 헤더의 값을 지정합니다.
  • --useragentchrome/-uac는 User-Agent를 WebCacheVulnerabilityScanner v{Version-Number}에서 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36으로 변경합니다. 동일한 효과를 -sh "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) ..."로 얻을 수 있지만, 이 플래그가 더 빠른 방법을 제공합니다.

1개 이상의 쿠키, 매개변수 또는 헤더를 지정하려면 이를 포함하는 파일을 지정해야 합니다. 사용 가능한 템플릿을 참조하세요.

예시:

root@kitploit:~
wcvs -u https://example.com -ch "X-Custom-Header-ABC"

wcvs -u https://example.com -sc "PHPSESSID=123"
wcvs -u https://example.com -sc "file:/home/user/Documents/cookies.txt"

wcvs -u https://example.com -sh "Referer: localhost"
wcvs -u https://example.com -sh "file:/home/user/Documents/headers.txt"

wcvs -u https://example.com -sp "admin=true"
wcvs -u https://example.com -sp "file:/home/user/Documents/parameters.txt"

wcvs -u https://example.com -post -sb "admin=true"
wcvs -u https://example.com -post -sb "file:/home/user/Documents/body.txt"

wcvs -u https://example.com -post -sb "{}" -ct "application/json"

wcvs -u https://example.com -uac

wcvs -u https://example.com -ch "X-Custom-Cache-Header"

JSON 보고서 생성

--generatereport/-gr 플래그가 설정된 경우, 스캔된 각 URL 후에 JSON 보고서가 생성되고 업데이트됩니다. 로그 파일과 마찬가지로 보고서는 WCVS가 실행되는 동일한 디렉토리에 기록됩니다. 모든 출력 파일의 디렉토리를 변경하려면 --generatepath/-gp를 사용하세요. 보고서에서 HTML 특수 문자를 인코딩하려면 --escapejson/-ej를 사용하세요.

예시:

root@kitploit:~
wcvs -u https://example.com -gr
wcvs -u https://example.com -gr -ej
wcvs -u https://example.com -gr -gp /home/user/Documents
wcvs -u https://example.com -gr -gp /home/user/Documents -ej

URL 크롤링

URL을 크롤링하려면 --recursivity/-r를 설정해야 합니다. 이는 크롤러가 재귀적으로 얼마나 깊이 들어갈지 지정합니다. 기본적으로 WCVS는 동일한 도메인의 URL만 크롤링합니다. 다른 도메인도 크롤링하려면 --recdomains/red를 사용할 수 있습니다. 특정 문자열을 포함하는 URL만 크롤링하려면 --recinclude/-rin을 사용할 수 있습니다. --reclimit/-rl은 각 재귀 깊이에 대해 크롤링되는 URL 수를 제한합니다. 또한 크롤링하지 않을 URL 목록은 --recexclude/-rex로 지정할 수 있습니다. --generatecompleted/-gc는 예를 들어 이미 테스트된 모든 URL 목록을 생성하는 데 사용할 수 있습니다. 스캔을 반복하지만 WCVS가 동일한 URL을 다시 크롤링하고 테스트하지 않도록 하려면 이 목록을 --recexclude/-rex에 사용할 수 있습니다.

예시:

root@kitploit:~
wcvs -u https://example.com -r 5
wcvs -u https://example.com -r 5 -red /home/user/Documents/mydomains.txt
wcvs -u https://example.com -r 5 -rl 2
wcvs -u https://example.com -r 5 -rex /home/user/Documents/donttest.txt

프록시 사용

프록시를 사용하려면 --useproxy/-up을 지정하세요. Burp를 사용하는 경우 *"Settings > Network > HTTP > HTTP/2 > Default to HTTP/2 if the server supports it"*를 해제했는지 확인하세요. 그렇지 않으면 비RFC 준수 헤더에 의존하는 일부 기법이 작동하지 않습니다. 프록시의 기본 URL은 http://127.0.0.1:8080입니다. 변경하려면 --proxyurl/-purl을 사용하세요.

예시:

root@kitploit:~
wcvs -u https://example.com -up
wcvs -u https://example.com -up -purl http://127.0.0.1:8081

속도 제한 또는 가속화

초당 최대 허용 요청 수는 --reqrate/-rr로 설정할 수 있습니다. 기본적으로 이 수는 제한이 없습니다. 반대로, --threads/-t를 사용하여 WCVS가 사용하는 동시 스레드 수를 늘리면 초당 요청 수를 잠재적으로 늘릴 수 있습니다. 기본값은 20입니다.

예시:

root@kitploit:~
wcvs -u https://example.com -rr 10
wcvs -u https://example.com -rr 1
wcvs -u https://example.com -rr 0.5
wcvs -u https://example.com -t 50

추가 플래그

WCVS는 앞서 언급한 플래그와 옵션 이상을 제공합니다. --help/-h는 각 플래그, 그 의미 및 사용 방법 목록을 제공합니다.

예시:

root@kitploit:~
wcvs -h

배경 정보

웹 캐시 포이즈닝과 WCVS에 대한 더 자세한 정보를 제공하는 짧은 블로그 포스트 시리즈는 여기에서 찾을 수 있습니다:

  1. Is Your Application Vulnerable to Web Cache Poisoning?
  2. Web Cache Vulnerability Scanner (WCVS) - Free, Customizable, Easy-To-Use

Web Cache Vulnerability Scanner (WCVS)의 첫 번째 버전은 Maximilian Hildebrand의 학사 논문의 일부로 개발되었습니다.

라이선스

WCVS는 Hackmanit과 Maximilian Hildebrand가 개발했으며 Apache License, Version 2.0에 따라 라이선스가 부여됩니다.

도구 다운로드
  • --cacheheader/-ch는 사용자 정의 캐시 헤더를 지정합니다 (대소문자 구분 안 함).