04 설정
필요에 맞게 커스터마이즈
vexlit.config.js를 생성하여 규칙 비활성화, 심각도 재정의 또는 경로 무시를 설정하세요.
vexlit.config.js
export default {
languages: ["javascript", "typescript", "python"],
ignore: ["vendor/", "generated/"],
rules: {
"VEXLIT-019": false, // Disable a rule
"VEXLIT-004": { severity: "critical" }, // Override severity
},
};기본 무시 경로
node_modules, .git, dist, build, .next, __pycache__, .venv, coverage
07 설정 가이드
프로젝트별 설정
일반적인 프로젝트 유형별 권장 설정입니다.
모노레포
Nx, Turborepo, Lerna 모노레포는 루트에서 스캔합니다. VEXLIT이 패키지별 언어 경계를 자동 감지합니다.
# 전체 모노레포 스캔 vexlit scan . # 특정 패키지 스캔 vexlit scan packages/api # CI에서 diff 스캔 (권장) vexlit scan --diff --fail-on medium
Next.js / React
VEXLIT이 JSX/TSX를 자동 감지합니다. 사용자 입력이 민감한 작업으로 흘러가는 API 라우트와 서버 컴포넌트에 집중합니다.
# app 디렉토리 스캔 vexlit scan src/app # API 라우트 + 컴포넌트 포함 vexlit scan src/ --fail-on critical
Django / Flask (Python)
Python 프로젝트는 SQL 인젝션, SSTI, SSRF, 안전하지 않은 역직렬화를 검사합니다. 가상환경 디렉토리는 자동 무시됩니다.
# Django 프로젝트 스캔 vexlit scan myproject/ # migrations 제외 vexlit scan . --ignore 'migrations/'
Spring Boot (Java)
Java/Kotlin 프로젝트는 완전한 taint 분석을 받습니다. VEXLIT이 컨트롤러, 서비스, 리포지토리를 통해 사용자 입력을 추적합니다.
# Java 소스 스캔 vexlit scan src/main/java # Kotlin 소스 포함 vexlit scan src/main --fail-on high