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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
zscan — 빠르고 사용자 정의 가능한 서비스 탐지 도구로, 유연한 핑거프린트 시스템을 기반으로 합니다. 인프라 전반의 서비스, API 및 네트워크 구성을 식별하는 데 도움을 줍니다. | Kitploit
도구/GitHubGitHub/zcyberseclab/zscan
ReconnaissanceVulnerability ScannersPort ScanningWeb SecurityNetwork SecurityPenetration Testing
GitHubzcyberseclab/zscan

zscan

빠르고 사용자 정의 가능한 서비스 탐지 도구로, 유연한 핑거프린트 시스템을 기반으로 합니다. 인프라 전반의 서비스, API 및 네트워크 구성을 식별하는 데 도움을 줍니다.

저장소 보기
4731개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

zscan

Go Report Card GoDoc License

유연한 핑거프린트 시스템을 기반으로 하는 빠르고 사용자 정의 가능한 서비스 탐지 도구입니다. 인프라 전반의 서비스, API 및 네트워크 구성을 식별하는 데 도움을 줍니다.

문서 | 기능 | 설치 | 사용법

✨기능

  • 능동 스캐닝 엔진: 고성능 동시 포트 스캔 및 서비스 탐지
  • 지능형 탐지:
    • MAC 벤더 식별 (200개 이상 OUI 매핑)
    • 가상 머신 탐지 (VMware, VirtualBox, Hyper-V, KVM 등)
    • OS 핑거프린팅
  • 정밀한 POC 대상 지정:
    • 핑거프린팅을 통한 고정밀 POC 대상 지정
    • 기존 스캐너보다 빠르고 정확함
  • 유연한 핑거프린트 시스템:
    • 사용자 정의 핑거프린트 정의 지원
    • 다중 프로토콜 지원 (HTTP, HTTPS, TCP, UDP)
    • 패턴 매칭 및 응답 분석
  • 서비스 탐지:
    • 웹 서비스 식별
    • 일반 애플리케이션 프레임워크 탐지
    • TLS/SSL 구성 분석
  • 출력 형식:
    • 통합을 위한 JSON 출력
    • 사람이 읽을 수 있는 콘솔 출력
    • HTTP API를 통한 원격 보고

📦 설치

바이너리

Releases에서 최신 버전을 다운로드하세요.

🚀 사용법

능동 스캐닝

root@kitploit:~
# 단일 IP 스캔
zscan -target 192.168.1.1

# CIDR 범위 스캔
zscan -target 192.168.1.0/24

# 여러 대상 스캔 (; 또는 ,로 구분)
zscan -target "192.168.1.0/24;10.0.0.0/24"
zscan -target "192.168.1.1,192.168.1.2,192.168.1.3"

# 특정 포트 스캔
zscan -target 192.168.1.1 -port 80,443,8080

# 결과를 JSON 파일로 저장
zscan -target 192.168.1.1 -output results.json

# 원격 서버에 결과 보고
zscan -target 192.168.1.0/24 -report http://server/api/assets

사용 가능한 옵션

Go 라이브러리로 사용하기

root@kitploit:~
package main

import (
	"flag"
	"log"
	"os"
	"time"

	"github.com/zcyberseclab/zscan/pkg/stage"
)

func main() {
	target := flag.String("target", "", "IP address or CIDR range to scan")
	configPath := flag.String("config", "config/config.yaml", "Path to config file")
	templatesDir := flag.String("templates-dir", "templates", "Path to templates directory")
	enableGeo := flag.Bool("geo", false, "Enable geolocation and IP info lookup")
	enableCensys := flag.Bool("censys", false, "Enable Censys data enrichment")
	censysAPIKey := flag.String("censys-api-key", "", "Censys API Key")
	censysSecret := flag.String("censys-secret", "", "Censys API Secret")
	flag.Parse()

	if *target == "" {
		log.Fatal("Target IP or CIDR range is required")
	}

	// Handle Censys credentials from environment if not provided
	if *enableCensys {
		if *censysAPIKey == "" || *censysSecret == "" {
			*censysAPIKey = os.Getenv("CENSYS_API_KEY")
			*censysSecret = os.Getenv("CENSYS_SECRET")
		}
		if *censysAPIKey == "" || *censysSecret == "" {
			log.Printf("Warning: Censys integration enabled but credentials not provided. Skipping Censys data enrichment.")
			*enableCensys = false
		}
	}

	// Create scanner
	scanner, err := stage.NewScanner(*configPath, *templatesDir, *enableGeo, *enableCensys, *censysAPIKey, *censysSecret)
	if err != nil {
		log.Fatalf("Failed to create scanner: %v", err)
	}
	defer scanner.Close()

	// Perform scan
	startTime := time.Now()
	results, err := scanner.Scan(*target)
	if err != nil {
		log.Fatalf("Scan failed: %v", err)
	}

	// Print results
	if err := stage.PrintResults(results); err != nil {
		log.Printf("Error printing results: %v", err)
	}

	duration := time.Since(startTime)
	log.Printf("\nScan completed in: %v\n", duration)
}

Dockerfile로 Docker 이미지 빌드

docker build -t zscan .를 실행하여 이미지를 빌드합니다.

docker run zscan --target 127.0.0.1 --config /app/config/config.yaml을 실행하여 컨테이너를 시작합니다.

🔍 POC 작성하기

ZScan은 YAML 형식의 사용자 정의 POC 개발을 지원합니다. POC 작성에 대한 자세한 내용은 POC 작성 가이드를 참조하세요.

POC 예시:

root@kitploit:~
type: Path Traversal
cve-id: CVE-2021-41773
severity: critical
rules:
  - method: GET
    path: /icons/.%2e/%2e%2e/etc/passwd
    expression: "response.status==200 && response.body.bcontains(b'root:')"

더 많은 예제와 상세 문법은 POC 작성 가이드를 확인하세요.

우리의 사명

기존의 자산 또는 취약점 스캐너는 수십 년 전에 구축되었습니다. 폐쇄형 소스이며, 매우 느리고, 벤더 중심적입니다. 오늘날의 공격자는 과거 몇 년이 걸리던 것과 달리, 며칠 만에 새로 발표된 CVE를 인터넷 전체에서 대량으로 악용하고 있습니다. 이러한 변화는 인터넷에서 유행하는 익스플로잇을 다루기 위해 완전히 다른 접근 방식을 요구합니다.

우리는 이 문제를 해결하기 위해 ZScan을 구축했습니다. 전체 스캐닝 엔진 프레임워크를 공개하고 사용자 정의 가능하게 만들어 전 세계 보안 커뮤니티가 협력하여 인터넷에서 유행하는 공격 벡터와 취약점을 해결할 수 있도록 했습니다. 현재 ZScan은 많은 기업, 정부 기관, 대학에서 사용되고 기여하고 있습니다.

코드, 템플릿 라이브러리에 기여하거나 팀에 합류하여 참여할 수 있습니다.

기여자

PR을 보내고 이 프로젝트를 계속 업데이트해 주신 모든 훌륭한 커뮤니티 기여자분들께 감사드립니다. ❤️

라이선스

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

도구 다운로드
옵션설명
-targetIP 주소 또는 CIDR 범위 (; 또는 , 구분자 지원)
-port스캔할 사용자 정의 포트 (쉼표로 구분)
-config설정 파일 경로 (기본값: config/config.yaml)
-geo지리적 위치 및 IP 정보 조회 활성화
-output출력 형식: json, html, 또는 md
-report스캔 결과를 보고할 URL
-apikey보고 인증을 위한 API 키 (Bearer 토큰)
-version버전 정보 표시