
Recon-Scan: AI 기반 보안 분석을 갖춘 오픈 소스 수동 정찰. 제로 터치, 개발자 우선, 개인 정보 보호 중심.
ReconScan은 FastAPI 백엔드, 비동기 워커 파이프라인, 단일 페이지 프론트엔드를 갖춘 오픈소스 패시브 리콘 스캐너입니다. 배포된 사이트는 https://recon-scan.vercel.app/에서 확인할 수 있습니다.
핵심은 빠른 신호입니다. 스캔을 실행하고, 모듈별 결과를 얻고, AI 요약을 확인한 후 이를 정리된 PDF 보고서로 내보낼 수 있습니다.
빠르게 실행만 원한다면:
./start.sh
이 명령이 수행하는 작업:
.env.example이 없으면 .env 생성.venv 생성requirements.txt에서 의존성 설치http://localhost:8000에서 핫 리로드로 FastAPI 시작USE_ARQ_QUEUE=false 강제 설정Ctrl+C로 중단합니다.
./start-docker.sh
이 명령이 수행하는 작업:
.env.example이 없으면 .env 생성cp .env.example .env
docker compose up --build
pip install -r requirements.txt
cp .env.example .env
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
arq app.worker.WorkerSettings
http://localhost:8000
테스트 의존성 설치:
pip install -r requirements-dev.txt
전체 테스트 실행:
pytest -q
스캔 완료 후 UI에서 Download PDF를 클릭하세요.
백엔드 엔드포인트:
GET /scans/{scan_id}/report.pdf보고서 포함 내용:
GET /healthPOST /scans
{ "target": "example.com" }{ "target": "example.com", "byoapi_key": "...", "byoapi_provider": "your_provider" }byoapi_key는 ALLOW_BYO_API_KEY=true인 경우에만 허용user_id는 선택 사항이며 호환성을 위해 유지됨GET /scans/{scan_id}GET /scans/{scan_id}/report.pdf.env.example에서 가져옴:
DATABASE_URL (기본값: sqlite:///./reconscan.db)REDIS_URL (기본값: redis://localhost:6379)USE_ARQ_QUEUE (기본값: true)RATE_LIMIT_PER_MINUTE (기본값: 10)RATE_LIMIT_PER_DAY (기본값: 200)ALLOWED_HOSTS (기본값: localhost,127.0.0.1)CORS_ALLOWED_ORIGINS (기본값: 로컬 개발 오리진)ALLOW_BYO_API_KEY (기본값: )기여는 환영합니다. 특히 패시브 리콘 모듈, 보고, 프론트엔드 UX, 테스트 커버리지에 대한 기여를 환영합니다.
풀 리퀘스트를 열기 전에 전체 기여 가이드라인을 읽어주세요:
MIT. LICENSE 참조.
falseOPENROUTER_API_KEY, ANTHROPIC_API_KEY, OPENAI_API_KEY (선택 사항)VIRUSTOTAL_API_KEY, GOOGLE_SAFE_BROWSING_API_KEY (선택 사항)