업데이트로 돌아가기
New releaseSep 7, 2026

xalgorix v4.6.72

자율 AI 침투 테스트 에이전트 — 실시간 정찰, 취약점 탐지, 익스플로잇 오케스트레이션. Go + TypeScript.

공유
Xalgorix — AI Autonomous Penetration Testing Platform

Go License Platform Hosted GitHub stars GitHub forks GitHub release

Ask DeepWiki

xalgorix/xalgorix | Trendshift

Xalgorix — 취약점을 증명하는 오픈소스 AI 침투 테스터

대부분의 스캐너는 탐지합니다. Xalgorix는 증명합니다. 자율 LLM 에이전트가 전체 침투 테스트 방법론을 수행한 후, 독립 검증기가 모든 발견 사항을 재공격하여 보고하기 전에 검증합니다 — 그래서 분류해야 할 '아마도' 목록이 아닌 증거를 얻을 수 있습니다. 자체 호스팅, 프라이빗, 그리고 자체 LLM을 가져올 수 있습니다. Go + TypeScript로 구축되었습니다.

🚀 빠른 시작 · 💡 Xalgorix를 선택하는 이유 · ✨ 기능 · 🎯 사용 사례 · ☁️ 호스티드 클라우드 · 📖 문서


📸 스크린샷

🖥️ 자체 호스팅 대시보드127.0.0.1:9137에서 로컬로 실행됩니다

개요 대시보드스캔 상세발견 사항
Xalgorix overview dashboardXalgorix scan detailXalgorix findings

☁️ 호스티드 클라우드 대시보드www.xalgorix.com의 완전 관리형 버전

Xalgorix hosted cloud dashboard showing security score, vulnerability trends, remediation metrics, and open issues by category

🚀 빠른 시작

설치 (한 줄):```bash curl -sSL https://www.xalgorix.com/install | bash

플랫폼(Linux 또는 macOS, amd64/arm64)용 사전 빌드된 바이너리를 최신 릴리스에서 다운로드합니다. 그런 다음 대화형 설정 마법사를 실행합니다:```bash
xalgorix --setup

공급자를 선택하고, 모델을 확인한 다음, 프롬프트가 표시되면 API 키를 입력하세요. 최상의 결과를 얻으려면 강력한 추론 능력, 긴 컨텍스트 성능, 안정적인 도구 호출을 갖춘 최신 프론티어 모델(예: 사용 가능한 최신 GPT, Claude 또는 Gemini 모델)을 사용하세요. 더 작은 모델이나 로컬 모델도 지원되지만, 긴 자율 스캔 중에는 더 많은 감독이 필요할 수 있습니다. Xalgorix는 키를 ~/.xalgorix.env(모드 0600)에 비공개로 저장하며, 대시보드를 직접 실행할 수 있습니다. 로컬 Ollama는 API 키가 필요 없습니다.

즉시 실행하지 않기로 선택한 경우, 나중에 xalgorix --web으로 시작하고 http://127.0.0.1:9137을 여세요. Settings → LLM에서 언제든지 공급자나 고급 옵션을 변경하거나, xalgorix --setup을 다시 실행할 수 있습니다.

또는 Docker로 실행 — 모든 것이 포함되어 있어 툴체인이 필요 없습니다:```bash docker run --rm -p 9137:9137
--privileged
-v xalgorix-data:/data
xalgord/xalgorix:latest

`--privileged`는 도구 세트에 네이티브로 root로 실행될 때와 동일한 호스트 수준의 접근 권한을 부여합니다. Docker의 기본 샌드박스는 capabilities(예: `NET_ADMIN`)를 제거하고 seccomp 필터를 적용하여 저수준 도구(iptables/route 변경, ARP-spoof/MITM, tun/tap VPN, ptrace 기반 디버거, masscan 인터페이스 튜닝)를 깨뜨립니다. 이미지는 스스로 이러한 권한을 부여할 수 없으므로 실행 시점에 설정해야 합니다. 컨테이너는 root로 실행되는 일회용, 네트워크 격리 스캐닝 샌드박스입니다 — privileged는 의도된 포스처이며, 인증 없이 대시보드를 공개적으로 노출하지 마십시오. 최소 권한을 선호하시나요? `--privileged`를 `--cap-add=NET_ADMIN --cap-add=NET_RAW --cap-add=SYS_PTRACE --security-opt seccomp=unconfined`로 교체하세요.

`http://localhost:9137`을 여세요. 시작하려면 **LLM 키가 필요하지 않습니다** — 대시보드는 키 없이도 실행됩니다. **Settings → LLM**에서 모델과 API 키를 설정하세요(`/data` 볼륨에 저장됩니다). `XALGORIX_USERNAME`/`XALGORIX_PASSWORD`를 전달하지 않으면 임의의 관리자 비밀번호가 생성되어 첫 실행 시 컨테이너 로그에 출력됩니다.

**가장 쉬운 방법 — Docker Compose**(포트 매핑과 영구 볼륨을 자동으로 처리):```bash
curl -sSLO https://raw.githubusercontent.com/xalgorix/xalgorix/main/docker-compose.yml
docker compose up -d
docker compose logs -f   # shows the generated admin password on first start

이미지에는 사전 설치된 광범위한 공격적 보안 도구 세트(nmap, nuclei, httpx, subfinder, katana, ffuf, gobuster, sqlmap, masscan, dalfox, feroxbuster 등)가 포함되어 있으며, 또한 모든 패키지 관리자(apt, go, cargo, pipx, npm)를 사용할 수 있도록 유지하여 에이전트가 런타임에 누락된 항목을 자동 설치할 수 있게 합니다. 설계상 컨테이너 내부에서 root로 실행됩니다 — 컨테이너를 일회용, 네트워크 격리 스캐닝 샌드박스로 취급하고 인증 없이 대시보드를 노출하지 마십시오. 이미지는 amd64와 arm64 모두에 게시됩니다.

또는 소스에서 빌드 (Go 1.26+ 및 Node.js 필요):```bash git clone https://github.com/xalgorix/xalgorix.git cd xalgorix make build sudo install -m 755 build/xalgorix /usr/local/bin/xalgorix

> [!TIP]
> 제로 설정을 선호하시나요? 완전 관리형 버전이 [www.xalgorix.com](https://www.xalgorix.com/)에서 실행됩니다 — 클릭만으로 스캔 가능하며, 설치나 API 키가 필요 없습니다.

### 🤖 풀 리퀘스트 자동 검토 — 무료 GitHub App

제로 설정으로 모든 풀 리퀘스트에 대한 보안 검토를 원하시나요? **[Xalgorix GitHub App](https://github.com/apps/xalgorix)** 을 설치하세요. 각 PR의 diff를 읽고 인젝션, 손상된 인증/IDOR, SSRF, 시크릿, 안전하지 않은 패턴 등에 대한 보안 검토를 풀 리퀘스트에 직접 코멘트로 남깁니다. 새 커밋이 있으면 제자리에서 업데이트되며, **`@xalgorix review`** 코멘트로 필요 시 재실행할 수 있습니다. 워크플로 파일, API 키, 계정이 필요 없으며 무료입니다.

<div align="center">

[**➕ GitHub에 Xalgorix 추가 →**](https://github.com/apps/xalgorix/installations/new)

</div>

CI에서 병합 게이팅과 전체 익스플로잇 검증 펜테스트가 필요하다면 [호스팅 스캐너](https://www.xalgorix.com/) 또는 GitHub Action을 사용하세요.

> [!IMPORTANT]
> Xalgorix는 소유한 시스템이나 명시적 테스트 허가를 받은 시스템에서만 사용하세요.

> [!TIP]
> 자체 호스팅을 선호하지 않으시나요? 완전 관리형 버전이 [www.xalgorix.com](https://www.xalgorix.com/)에서 제공됩니다 — 클릭만으로 스캔 가능하며, 설치나 API 키가 필요 없습니다.

## 📚 목차

| | | |
| --- | --- | --- |
| 📸 [스크린샷](#-screenshots) | 🔩 [구성](#-configuration) | 🧾 [환경 변수](#-environment-variables) |
| 🚀 [빠른 시작](#-quick-start) | 🆙 [업그레이드](#-upgrading-from-previous-versions) | 🔤 [공급자 접두사](#-provider-prefixes) |
| 🔎 [개요](#-overview) | 🏃 [실행](#-running) | 💻 [CLI 참조](#-cli-reference) |
| 💡 [Xalgorix를 사용하는 이유](#-why-xalgorix) | 🧰 [서비스 모드](#-service-mode) | 📡 [API 요약](#-api-summary) |
| 🎯 [사용 사례](#-use-cases) | 🔁 [Web UI 워크플로](#-web-ui-workflow) | 💾 [데이터 저장](#-data-storage) |
| ✨ [기능](#-features) | 🔀 [스캔 모드](#-scan-modes) | 🧪 [개발](#-development) |
| 📥 [설치](#-installation) | 📂 [코드 스캔](#-scan-your-code-no-target-needed) | 🚨 [안전 참고 사항](#-safety-notes) |
| 🧭 [방법론](#-methodology) | 📄 [보고서](#-reports) | 📜 [라이선스](#-license) |
| 🔧 [설정](#-settings) | 🔗 [링크](#-links) | |

## 🔎 개요

Xalgorix는 승인된 보안 테스트, 취약점 평가 및 버그 바운티 워크플로를 위한 자체 호스팅 AI 침투 테스트 플랫폼입니다. LLM 기반 자율 에이전트, 브라우저 자동화, 터미널 도구, 포괄적인 22단계 테스트 방법론, 실시간 WebSocket 원격 측정, CVSS 점수를 포함한 발견 항목 관리, 브랜드 PDF 보고서 생성, AgentMail, Discord 및 Telegram 통합을 결합합니다.

클라우드 전용 DAST 스캐너와 달리 Xalgorix는 전적으로 사용자 머신에서 실행됩니다. 자체 LLM 공급자(OpenAI, Anthropic, DeepSeek, Gemini, Groq, Ollama, MiniMax)를 가져와 모델, 추론 노력, 속도 제한 및 프록시 구성을 제어합니다. 스캔 데이터, API 키 또는 대상 정보가 인프라를 벗어나지 않습니다.

기본 경험은 Web UI입니다. 하나의 로컬 대시보드에서 스캔 시작, 활성 실행 모니터링, 발견 항목 검사, 모델/공급자 설정 구성, 환경 변수 관리, 브랜드 PDF 보고서 생성, 과거 스캔 삭제 또는 재개가 가능합니다.

## 💡 Xalgorix를 사용하는 이유

대부분의 스캐너는 **탐지**합니다. Xalgorix는 **증명**합니다. 자율 에이전트가 22단계 방법론을 통해 작업한 후, 독립적인 검증기가 보고 전에 모든 후보 발견 항목을 다시 테스트합니다 — 그래서 분류해야 할 "아마도"의 벽이 아니라 증거가 포함된 익스플로잇 검증 결과를 얻을 수 있습니다.

- 🧠 **템플릿 엔진이 아닌 AI 에이전트** — 서명 스캐너가 놓치는 인증 흐름, 비즈니스 로직, IDOR/BOLA 및 체인 익스플로잇에 대해 추론합니다.
- ✅ **익스플로잇 검증 발견 항목** — 별도의 검증기가 각 발견 항목을 독립적으로 재현합니다. 불확실한 항목은 검토용으로 표시되며 확정된 것으로 포장되지 않습니다.
- 🔒 **자체 호스팅 및 프라이빗** — 자체 LLM 키로 사용자 머신에서 실행됩니다. 대상 데이터, 키 또는 발견 항목이 인프라를 벗어나지 않습니다.
- 🧩 **자체 LLM 사용** — OpenAI, Anthropic, DeepSeek, Gemini, Groq, Ollama 또는 MiniMax — 또는 [LiteLLM](#-litellm--openai-compatible-gateways-github-copilot-claude-opus-codex-openrouter-azure-local-models)과 같은 OpenAI 호환 게이트웨이(GitHub Copilot, Codex, OpenRouter, Azure)를 사용할 수 있습니다. 모델, 추론 노력 및 비용을 제어합니다.
- 📄 **감사 준비 보고서** — CVSS 점수, 개념 증명 및 수정 지침이 포함된 브랜드 PDF.

### 📊 비교

|                                              | **Xalgorix**             | 템플릿 스캐너 (예: Nuclei) | 크롤링 스캐너 (예: OWASP ZAP) | 상용 DAST        |
| -------------------------------------------- | ------------------------ | ------------------------------- | ---------------------------------- | ---------------------- |
| 접근 방식                                     | 자율 AI 에이전트      | 서명 / 템플릿          | 스파이더 + 활성 규칙              | 서명 + 휴리스틱 |
| 비즈니스 로직 / IDOR / 인증 우회 커버리지 | ✅                       | 제한적                         | 제한적                            | 부분적                |
| 익스플로잇 검증 (영향 증명)             | ✅ 독립 검증기  | ❌                              | ❌                                 | 부분적                |
| 오탐 부하                          | 낮음 (검증됨)             | 템플릿 의존적              | 높음                               | 중간                 |
| 자체 호스팅 / 데이터 로컬 유지                       | ✅                       | ✅                              | ✅                                 | 일반적으로 클라우드          |
| 자체 LLM 사용                           | ✅                       | —                               | —                                  | ❌                     |
| 브랜드 PDF 보고서                          | ✅                       | ❌                              | 기본                              | ✅                     |
| 비용                                         | 오픈소스 + 자체 LLM   | 무료                            | 무료                               | $$$                    |

> 방향성 비교 — Nuclei와 ZAP는 각자의 역할에서 탁월합니다. Xalgorix는 그 위에 추론 중심의 발견 및 익스플로잇 검증 계층을 추가합니다.

### ☁️ 자체 호스팅 vs 호스팅 클라우드

Xalgorix는 무료 오픈소스입니다 — 조건 없이 영원히 자체 호스팅하세요. [호스팅 클라우드](https://www.xalgorix.com/)는 **동일한** 익스플로잇 검증 엔진을 실행합니다. API 키, 인프라 및 예측 불가능한 LLM 비용을 관리하고 싶지 않은 사람들을 위해 존재합니다. 둘 다 일급 지원입니다 — 상황에 맞는 것을 선택하세요.

|                                    | **자체 호스팅** (이 저장소)              | **[호스팅 클라우드](https://www.xalgorix.com/)**   |
| ---------------------------------- | ---------------------------------------- | ----------------------------------------------- |
| 시작 가격                     | 무료, Apache-2.0                         | 무료 티어 · 전체 스캔 1회 $1부터               |
| LLM API 키                        | 자체 키 사용 및 관리                  | 포함 — 관리할 필요 없음                      |
| 스캔당 비용                      | 원시 LLM 토큰 — 변동 가능, 급증 가능     | 라이브 호스트당 1크레딧 — 예측 가능            |
| 설정 및 운영                        | 직접 설치, 업데이트 및 도구 체인 실행  | 실행할 것 없음 — 약 60초 내 스캔                   |
| 대역 외 인프라 (SSRF/블라인드 RCE) | 자체 OOB 서버 구축             | 관리형 OOB 포함                            |
| 스케줄링 · 팀 · RBAC           | 직접 구성                           | 내장                                        |
| 업데이트                            | `git pull` + 재빌드                     | 항상 최신 엔진                     |
| 데이터 보존 / 오프라인           | ✅ 인프라에 유지 · 에어갭 가능       | 당사 인프라에서 실행 (DPA 제공 가능)               |

**자체 호스팅은** 데이터가 네트워크에 유지되어야 하거나, 완전한 제어를 원하거나, 오프라인/에어갭 환경에서 실행해야 하는 경우에 적합합니다 — 정확히 그 목적을 위한 것입니다. **클라우드는** API 키, 인프라 및 예상치 못한 토큰 비용을 건너뛰고 실제로 스캔하는 라이브 호스트에 대해서만 비용을 지불하고 싶은 경우에 사용하세요.

<div align="center">

[**☁️ 호스팅 클라우드 무료 체험 →**](https://www.xalgorix.com/) &nbsp;·&nbsp; [**⚖️ 실제 비용 비교 (계산기) →**](https://www.xalgorix.com/hosted-vs-self-hosted)

</div>

Xalgorix가 분류 사이클을 절약해 준다면 **[⭐ 저장소에 스타를 남겨주세요](https://github.com/xalgorix/xalgorix)** — 다른 사람들이 찾는 데 진심으로 도움이 됩니다.

## 🎯 사용 사례

| 사용 사례 | Xalgorix가 도움을 주는 방법 |
| -------- | ------------------ |
| **침투 테스트** | 승인된 대상에 대해 전체 22단계 방법론을 실행합니다. AI 에이전트가 정찰, 취약점 발견, 인젝션 테스트, SSRF, IDOR, 인증 우회, 레이스 컨디션 등을 처리한 후 보고 전에 발견 항목을 검증합니다. |
| **버그 바운티 헌팅** | 범위 내 대상에 Xalgorix를 지정하고 에이전트가 공격 표면을 열거하고, 일반적인 취약점 클래스를 테스트하며, CVSS 점수와 개념 증명 증거가 포함된 검증된 발견 항목을 표면화하도록 합니다. |
| **레드 팀 운영** | 와일드카드 및 다중 대상 스캔 모드를 사용하여 조직의 외부 공격 표면을 매핑합니다. 브라우저 지원 DAST가 정적 스캐너가 놓치는 인증 흐름, 양식 및 런타임 동작을 처리합니다. |
| **보안 연구** | 신규 취약점 발견 단계가 에이전트를 알려진 템플릿 매칭을 넘어서도록 추진합니다. 자체 LLM(OpenAI, Anthropic, DeepSeek, Gemini, Ollama, MiniMax)을 가져와 추론 깊이와 비용을 제어합니다. |
| **지속적 보안 테스트** | `xalgorix --start`로 시스템 서비스로 실행합니다. 일정에 따라 스캔하고, 발견 항목을 Discord 또는 Telegram으로 스트리밍하며, 이해관계자를 위한 브랜드 PDF 보고서를 생성합니다. |
| **DAST 자동화** | 웹 애플리케이션에 대한 브라우저 기반 테스트 — 인증 흐름, 양식, JavaScript 렌더링 콘텐츠 및 런타임 동작. 프록시 트래픽 검사를 위해 Caido와 통합됩니다. |

## ✨ 기능

| 영역           | 기능                                                                                                                |
| -------------- | --------------------------------------------------------------------------------------------------------------------------- |
| 📊 대시보드      | 기본적으로 `127.0.0.1:9137`의 로컬 Web UI, 스캔 관리, 실시간 상태, 대량 스캔 작업 및 과거 스캔 복구. |
| 🔍 스캐닝       | 선택 가능한 방법론 단계가 포함된 단일 대상, DAST, 와일드카드 및 다중 대상 흐름.                                   |
| 📡 실시간 원격 측정 | WebSocket을 통한 도구 호출, 에이전트 메시지, 발견 항목, 오류, HTTP 활동 및 LLM 활동.                              |
| 🐞 발견 항목       | 스캔 상세 페이지, 심각도 필터, CVSS 세부 정보, 발견 항목 인덱스 및 검증된 발견 항목 워크플로.                           |
| 📄 보고        | 대상/회사 이름, 업로드된 로고가 포함된 브랜드 PDF 보고서, 보고서 목록, 열기/다운로드/삭제 작업.                     |
| 🔔 통합   | AgentMail 테스트 받은 편지함, 확인 이메일, OTP 흐름, 이메일 분류 이벤트, Discord 및 Telegram 알림.            |
| ⚙️ 구성  | LLM, AgentMail, Discord, Telegram, 프록시, 런타임, 브라우저, 인증, 속도 제한 및 리소스에 대한 대시보드 설정.       |
| 🛡️ 런타임 안전 | 리소스 인식 인스턴스 제한 및 외부 액세스가 인증으로 명시적으로 구성되지 않는 한 루프백 전용 바인딩.         |

## 📥 설치

가장 빠른 경로는 도구 체인이 전혀 필요 없습니다.

### ⚡ 원라인 설치 (사전 빌드 바이너리)```bash
curl -sSL https://www.xalgorix.com/install | bash

플랫폼(Linux 또는 macOS, amd64/arm64)에 맞는 최신 릴리스 바이너리를 다운로드하여 /usr/local/bin(또는 sudo 없이 ~/.local/bin)에 설치합니다. XALGORIX_INSTALL_DIR로 재정의하거나 XALGORIX_VERSION=vX.Y.Z로 버전을 고정할 수 있습니다.

최초 구성을 대화형으로 완료하세요—수동으로 환경 파일을 편집할 필요가 없습니다:```bash xalgorix --setup

마법사는 재실행 시 기존 설정을 유지하며, 터미널에서 API 키 입력을 숨기고, 완료 시 선택적으로 Web UI를 실행합니다.

### 🐳 Docker```bash
docker run --rm -p 9137:9137 \
  --privileged \
  -e XALGORIX_LLM=openai/gpt-5.6 \
  -e XALGORIX_API_KEY=your_openai_api_key \
  -v xalgorix-data:/data \
  ghcr.io/xalgord/xalgorix:latest

--privileged(또는 더 좁은 범위의 --cap-add=NET_ADMIN --cap-add=NET_RAW --cap-add=SYS_PTRACE --security-opt seccomp=unconfined)는 툴셋에 호스트와 유사한 접근 권한을 부여합니다. Docker의 기본 샌드박스는 capabilities를 제거하고 syscall을 필터링하므로, 저수준 도구(iptables/route/인터페이스 변경, ARP-spoof/MITM, tun/tap VPN, ptrace 기반 디버거)가 작동하지 않게 됩니다. 이미지는 스스로 이러한 권한을 부여할 수 없습니다. 이는 런타임 시점의 결정이므로, 플래그를 전달하거나 이를 설정해 주는 제공된 docker-compose.yml을 사용하세요.

이 이미지는 모든 것이 포함된(batteries-included) 상태입니다. 광범위한 공격적 보안 툴셋이 사전 설치되어 있으며(nmap, nuclei, httpx, subfinder, dnsx, naabu, katana, ffuf, gobuster, dalfox, feroxbuster, sqlmap, masscan, nikto, whatweb, hydra 등), 브라우저 지원 DAST를 위한 Chromium도 포함됩니다. 또한 전체 패키지 관리자 세트(apt, go, cargo, pipx, npm)를 유지하므로 에이전트가 런타임에 누락된 항목을 자동 설치할 수 있습니다. 스캔 데이터는 /data 볼륨에 유지되며, 서버는 컨테이너 내부의 0.0.0.0에 바인딩됩니다. localhost 범위를 넘어 노출하기 전에 XALGORIX_USERNAME/XALGORIX_PASSWORD를 설정하세요.

컨테이너는 설계상 root로 실행됩니다(엔진은 uid 0에 대해서만 런타임 자동 설치를 활성화하며, apt/go/cargo 설치는 시스템 쓰기 권한이 필요합니다). 이를 일회용, 네트워크 격리 스캐닝 샌드박스로 취급하세요. 동일한 태그는 linux/amd64linux/arm64용 멀티 플랫폼 매니페스트를 게시하므로 Docker가 기본 이미지를 자동으로 선택합니다.

첫 실행 시 대시보드 인증을 설정하지 않으면 컨테이너가 임의의 admin 비밀번호를 생성하여 로그에 출력합니다(이미지는 0.0.0.0에 바인딩되며, 엔진은 인증 없이는 이를 수행하지 않습니다). 자체 인증을 사용하려면 XALGORIX_USERNAME + XALGORIX_PASSWORD(또는 XALGORIX_PASSWORD_HASH)를 설정하세요. 바이너리는 컨테이너 내부에서 자체 업데이트를 수행하지 않습니다(XALGORIX_NO_AUTO_UPDATE=1). 업그레이드하려면 새 이미지 태그를 가져오세요. nuclei 엔진과 해당 취약점 템플릿은 모든 이미지 빌드 시 최신 버전으로 갱신됩니다(릴리스 CI와 redeploy.sh가 이를 강제합니다). 엔진을 고정하려면 --build-arg NUCLEI_VERSION=vX.Y.Z를 전달하거나, Docker 캐시를 재사용하려면 NUCLEI_REFRESH=0 ./redeploy.sh를 사용하세요.

📋 요구 사항(소스에서 빌드)

요구 사항참고 사항
OSLinux 또는 macOS(amd64/arm64).
Go1.26 이상.
Node.js + npm번들된 React Web UI를 소스에서 빌드할 때 필요합니다.
보안 도구자동 설치가 활성화된 경우에만 요청 시 설치됩니다.

Go 버전 확인:```bash go version

### 🔨 소스에서 빌드```bash
git clone https://github.com/xalgorix/xalgorix.git
cd xalgorix
make build
sudo install -m 755 build/xalgorix /usr/local/bin/xalgorix

make build는 React Web UI를 internal/web/static으로 빌드한 다음 Go 바이너리를 빌드합니다.

📦 Go로 설치하기```bash

GOPROXY=direct GOSUMDB=off go install github.com/xalgord/xalgorix/v4/cmd/xalgorix@latest

## 🔩 구성

Xalgorix는 다음 순서로 구성을 로드합니다. 이후의 소스가 이전 소스를 덮어씁니다.

| 순서 | 소스                                                          |
| ---- | ------------------------------------------------------------- |
| 1    | `/etc/xalgorix.env`                                           |
| 2    | `sudo`를 통해 실행될 때 `/home/<sudo-user>/.xalgorix.env`     |
| 3    | `~/.xalgorix.env`                                             |
| 4    | 프로세스에 이미 존재하는 환경 변수                            |

로컬 환경 파일을 생성합니다:```bash
nano ~/.xalgorix.env

🧩 최소 구성

가장 강력한 자율 스캔 결과를 얻으려면 최신 프론티어 모델을 선택하세요. 아래 모델 ID는 구체적인 예시이며, Xalgorix 릴리스를 기다리지 않고도 더 새로운 호환 모델 ID를 입력할 수 있습니다.```bash XALGORIX_LLM=openai/gpt-5.6 XALGORIX_API_KEY=your_openai_api_key

### 🔌 공급자 예시

OpenAI:```bash
XALGORIX_LLM=openai/gpt-5.6
XALGORIX_API_KEY=sk-...

Custom OpenAI 호환 제공자:```bash XALGORIX_LLM=custom/security-model XALGORIX_API_BASE=https://your-provider.example/v1 XALGORIX_API_KEY=your_provider_api_key

#### 🌉 LiteLLM / OpenAI 호환 게이트웨이 (GitHub Copilot, Claude Opus, Codex, OpenRouter, Azure, 로컬 모델)

`XALGORIX_API_BASE`가 모든 OpenAI 호환 `/v1/chat/completions` 엔드포인트를 허용하므로,
Xalgorix는 추가 설정 없이 [LiteLLM](https://docs.litellm.ai/) 프록시와 바로 작동합니다.
LiteLLM이 업스트림 제공자 인증(Copilot 디바이스 로그인, Azure 키, OpenRouter, Ollama 등)을 처리하고,
Xalgorix는 게이트웨이에 OpenAI 방식으로 통신하기만 하면 됩니다.

LiteLLM 실행(예시 `config.yaml`):```yaml
model_list:
  - model_name: claude-opus-5
    litellm_params:
      model: github_copilot/claude-opus-5   # or openrouter/…, azure/…, ollama/…
general_settings:
  master_key: sk-local-litellm-key

Point Xalgorix를 지정하세요 — 모델 이름이 그대로 전송되고 OpenAI 채팅 완료 프로토콜이 사용되도록 custom/ 접두사를 사용하세요:```bash XALGORIX_LLM=custom/claude-opus-5 # the LiteLLM model_name XALGORIX_API_BASE=http://localhost:4000/v1 # your LiteLLM proxy XALGORIX_API_KEY=sk-local-litellm-key # LiteLLM master_key / virtual key

The same pattern covers GitHub Copilot Business/CLI, Claude Opus, Codex-style models,
OpenRouter, Azure OpenAI, and local Ollama models — anything LiteLLM can route. Keep the
`custom/` (or `openai/`) prefix and a non-Anthropic/Gemini `XALGORIX_API_BASE` so Xalgorix
uses the standard OpenAI request shape that LiteLLM expects.

### 🔔 Optional Integrations```bash
GEMINI_API_KEY=AIza...
AGENTMAIL_POD=am_us_pod_47
AGENTMAIL_API_KEY=ak_...
XALGORIX_DISCORD_WEBHOOK=https://discord.com/api/webhooks/...
XALGORIX_DISCORD_MIN_SEVERITY=high

🔐 대시보드 인증```bash

XALGORIX_USERNAME=admin XALGORIX_PASSWORD=change-this-password

> [!TIP]
> 프로덕션 배포에는 `XALGORIX_PASSWORD_HASH`를 사용하는 것이 좋습니다.

## 🆙 이전 버전에서 업그레이드하기

이번 릴리스는 안정성 및 워크스페이스 격리 개선을 포함하며, 하나의 호환성 변경 사항과 몇 가지 새로운 설정 옵션이 도입되었습니다.

### 💥 호환성 변경: 기본 워크스페이스가 `~/.xalgorix/data/`로 이동

스캔 출력, 메모, 일정 및 기타 생성된 산출물은 이제 `$CWD`(바이너리가 실행된 디렉터리) 대신 `~/.xalgorix/data/` 아래에 저장됩니다.

이전 동작을 유지하려면 `XALGORIX_DATA_DIR`을 현재 작업 디렉터리로 지정하세요.```bash
export XALGORIX_DATA_DIR=$(pwd)

시작 시 $CWD에서 레거시 마커(notes.json, _schedules/, vulnerabilities.json 또는 YYYY-MM-DD/scan-* 디렉터리)가 감지되고 XALGORIX_DATA_DIR이 설정되지 않은 경우 [MIGRATION] 경고가 표시됩니다. Xalgorix는 해당 레거시 파일을 자동으로 읽거나, 복사하거나, 삭제하지 않습니다. 이 경고는 정보 제공용이며 프로세스당 한 번만 발생합니다.

🆕 새 환경 변수

변수기본값설명
XALGORIX_LLM_MAX_INFLIGHT4 × EffectiveMaxInstances실행 중인 모든 스캔에서 동시에 발생하는 아웃바운드 LLM 호출 수를 제한합니다. 최소값은 1입니다. 취소된 대기자는 슬롯을 소비하지 않습니다.

🩺 새 상태 엔드포인트 카운터

GET /api/status는 이제 다음을 노출합니다:

필드의미
panics_recovered충돌 없이 복구된 고루틴, HTTP 핸들러 및 도구 패닉.
path_rejectionsPath_Policy에 의해 거부된 파일시스템 쓰기(data_dir / ~/.xalgorix/ / /tmp 외부).
watchdog_kills도구별 하드 타임아웃 워치독에 의해 종료된 하위 프로세스.
admission_refusals동시성 상한으로 인해 거부된 스캔 승인 요청.
llm_inflight_cap이 프로세스에 대한 유효 XALGORIX_LLM_MAX_INFLIGHT 값.
data_dir사용 중인 확인된 Data_Dir.
allow_listPath_Policy가 허용하는 파일시스템 루트.

🏃 실행

🪟 웹 UI```bash

xalgorix --web

열기:```text
http://127.0.0.1:9137

다른 포트를 사용하세요:```bash xalgorix --web --port 8080

### 🌐 외부 접근

대시보드 인증을 활성화한 후에만 다른 인터페이스에 바인딩하세요:```bash
XALGORIX_USERNAME=admin XALGORIX_PASSWORD=change-this xalgorix --web --bind 0.0.0.0

[!WARNING] 서버는 대시보드 인증 없이 외부 바인딩을 거부합니다.

🏹 CLI 스캔```bash

xalgorix --target https://example.com

사용자 지정 지침 사용 시:```bash
xalgorix --target https://app.example.com --instruction "Focus on SQL injection, IDOR, and auth bypass. Avoid destructive tests."

🧰 서비스 모드

시스템 서비스로 설치 및 시작:```bash sudo xalgorix --start

서비스를 관리합니다:```bash
sudo xalgorix --restart
sudo xalgorix --stop
sudo xalgorix --uninstall

로그 보기:```bash journalctl -u xalgorix -f

### 🌍 원격 서비스 접근

대시보드 인증을 활성화한 후에만 원격 브라우저에 서비스를 노출하세요:```bash
sudo tee -a /root/.xalgorix.env >/dev/null <<'EOF'
XALGORIX_BIND=0.0.0.0
XALGORIX_USERNAME=admin
XALGORIX_PASSWORD=change-this
EOF

sudo xalgorix --restart

그런 다음 http://<server-ip>:9137을(를) 엽니다.

프로세스가 수신 중인데도 원격에서 페이지가 여전히 로드되지 않으면 서버 방화벽 또는 클라우드 보안 그룹에서 TCP 포트 9137을(를) 허용하세요.

🏠 로컬/내부 대상 스캔

기본적으로 Xalgorix는 루프백, localhost, 사설 대역 또는 자체 인터페이스 주소 스캔을 거부합니다. 이들은 Xalgorix가 실행되는 머신이지 대상이 아니기 때문입니다. 자체 호스팅, 단일 테넌트 상자에서는 로컬에서 호스팅되는 데모/스테이징 앱을 스캔하도록 선택할 수 있습니다.```bash echo 'XALGORIX_ALLOW_LOCAL_TARGETS=true' | sudo tee -a /root/.xalgorix.env sudo xalgorix --restart

대시보드 자체 리스너는 이 기능을 활성화하더라도 **항상** 보호됩니다.

> **⚠️ 공유 / 멀티 테넌트 / 호스팅 배포 환경: 이 기능은 OFF로 유지하세요.** 활성화하면
> 사용자의 스캔이 운영자의 자체 머신과 내부 네트워크에 도달할 수 있습니다.
> 기본적으로 꺼져 있으므로 안전을 유지하기 위해 조치가 필요하지 않습니다 — 
> `XALGORIX_ALLOW_LOCAL_TARGETS`를 설정하지 말고(또는 `XALGORIX_ALLOW_LOCAL_TARGETS=false`로 고정),
> 엔진의 Settings 페이지를 신뢰할 수 없는 사용자에게 노출하지 마세요.

## 🔁 웹 UI 워크플로우

1. `http://127.0.0.1:9137`에서 대시보드를 엽니다.
2. Settings로 이동하여 LLM 공급자, API 키, 속도 제한 및 선택적 통합을 확인합니다.
3. New Scan에서 스캔을 생성합니다.
4. 스캔 모드를 선택합니다.
5. 집중 실행이 필요할 때 방법론 단계를 선택합니다.
6. 특정 심각도만 실시간으로 보고해야 할 때 심각도 필터를 설정합니다. 이 필터는 실시간 대시보드 피드와 알림에만 영향을 줍니다. PDF 보고서와 `/api/findings`에는 에이전트가 발견한 모든 취약점이 항상 포함됩니다.
7. 브랜드 보고서를 위해 회사 이름을 추가하고 로고를 업로드합니다.
8. Overview, Scan Detail 또는 Live Feed에서 진행 상황을 모니터링합니다.
9. Scans and Reports에서 발견 항목 세부 정보를 열고, 보고서를 다운로드하거나 과거 스캔을 관리합니다.

## 🔀 스캔 모드

| 모드             | 용도                                                                        |
| ---------------- | ------------------------------------------------------------------------------- |
| 🎯 단일 대상    | 알려진 URL 또는 호스트 하나를 테스트합니다.                                                  |
| 🌐 와일드카드 / 다중 | 관련 대상을 열거하고 발견된 공격 표면을 스캔합니다.         |
| 🧭 DAST             | 웹 앱, 인증 흐름, 양식 및 런타임 동작에 대한 브라우저 지원 테스트입니다. |

## 📂 코드 스캔 (대상 불필요)

Git URL, 로컬 경로 또는 업로드된 zip과 같은 코드베이스를 Xalgorix에 지정하면
소스를 직접 스캔합니다. 배포된 URL도, 구축할 인프라도 필요 없습니다.```bash
# Source review (SAST): audit the code, no running target required
xalgorix --source ./my-app --code-scan review

# Provision + DAST: build & run the app locally, then pentest the running instance
xalgorix --source https://github.com/org/app.git --code-scan provision
코드 스캔 모드기능검증 수준
review소스 코드를 읽고, 진입점 → 위험한 싱크(sink)로 이어지는 사용자 입력을 추적하여 도달 가능한 취약점을 보고합니다. 라이브 대상이 필요 없습니다.소스 검증됨 — 코드에서 도달 가능함이 입증됨(런타임에서 악용되지 않음으로 명확히 표시).
provision저장소를 검사하고, 앱을 빌드하여 루프백 포트에서 실행한 후, 실행 중인 인스턴스에 대해 화이트박스 기반 DAST를 실행합니다. 앱을 빌드할 수 없으면 review 모드로 대체됩니다.악용 검증됨 — 실행 중인 앱에 대해 재현됨.
  • --source는 Git URL(얕은 클론), 로컬 디렉터리, 또는 업로드/추출된 아카이브 경로를 허용합니다. Web UI/호스팅 앱에서는 코드베이스의 .zip 파일을 업로드할 수도 있습니다(POST /api/upload-source).
  • 저장소 라이브 대상을 결합하여 기존의 화이트박스 증강을 수행할 수도 있습니다 — 해당 경로는 변경되지 않습니다. 코드 스캔 모드는 코드베이스 자체가 전체 대상일 때 사용합니다.

프로비전 모드는 에이전트의 샌드박스에서 앱의 빌드/시작 명령을 실행하며, 앱이 실행된 단일 루프백 포트만 펜테스트합니다 — 대시보드와 머신의 다른 모든 것은 범위에서 제외됩니다.

🧭 방법론

Xalgorix는 자율 테스트를 22개 단계로 구성합니다.

단계초점
1정찰(Reconnaissance)
2수동 취약점 발견
3디렉터리 및 파일 발견
4CORS 및 쿠키 분석
5인증 및 세션 테스트
6인젝션 테스트
7SSRF 테스트
8IDOR 및 손상된 접근 제어
9API 및 GraphQL 테스트
10파일 업로드 테스트
11역직렬화 및 RCE
12경쟁 조건 및 비즈니스 로직
13서브도메인 탈취
14오픈 리다이렉트 테스트
15이메일 보안 테스트
16클라우드 및 인프라
17WebSocket 테스트
18CMS 특화 테스트
19손상된 링크 하이재킹 및 콘텐츠 스푸핑
20악용 검증
21신규 취약점 발견
22최종 보고서

Web UI의 단계 선택 기능을 사용하면 모든 단계를 실행하거나 특정 작업에 필요한 하위 집합만 실행할 수 있습니다.

📄 보고서

보고서는 PDF 파일로 생성되며 다음을 포함할 수 있습니다:

섹션포함 콘텐츠
📌 요약경영진 요약, 대상 메타데이터, 스캔 메타데이터 및 심각도 개요.
🐞 발견 사항검증된 발견 사항, CVSS 세부 정보, 기술 분석 및 악용 증명.
🔬 증거개념 증명 명령, 스크립트, 페이로드 메모 및 지원 관찰 사항.
🩹 수정수정 지침 및 우선순위가 지정된 다음 단계.
🎨 브랜딩회사/대상 이름 및 업로드된 로고.

보고서는 스캔 상세 페이지와 보고서 페이지에서 확인할 수 있습니다. 보고서 행은 열기, 다운로드 및 삭제를 지원합니다.

🔧 설정

대부분의 운영 설정은 Web UI의 설정(Settings)에서 변경할 수 있습니다.

영역예시
🤝 참여대시보드 요청 속도 제한
🧠 LLM모델, API 키, API 베이스, 추론 노력, 재시도, 최대 반복 횟수
📬 AgentMailPod 및 API 키
🔔 알림Discord 웹훅 및 최소 심각도, Telegram 봇 토큰, 채팅 ID, 최소 심각도 및 옵트인 스캔 완료 요약
🕵️ 프록시프록시 URL, 프록시 파일, 순환, TLS 검증
🧱 런타임작업 공간, 브라우저 경로, 자동 설치 제어
🔐 보안대시보드 사용자 이름, 비밀번호, 비밀번호 해시, 바인드 주소
📈 리소스CPU/RAM/디스크 임계값 및 스캔 동시성 예산

일부 설정은 프로세스 시작 또는 서버 바인딩에 영향을 주므로 재시작이 필요합니다. UI는 해당 필드를 표시합니다.

🧾 환경 변수

🧱 핵심

변수기본값설명
XALGORIX_LLM없음LLM 요청에 사용되는 공급자 네이티브 모델 ID.
XALGORIX_LLM_PROVIDER없음대시보드에서 선택한 공급자로, 모델 ID와 별도로 저장됩니다.
XALGORIX_API_KEY없음필수 LLM 공급자 API 키.
XALGORIX_API_BASE공급자 기본값사용자 지정 OpenAI 호환 API 베이스 URL.
XALGORIX_REASONING_EFFORThigh추론 노력: none, low, medium, high 또는 xhigh(xhigh는 Ollama에서 high로 매핑됨).
XALGORIX_LANGUAGEenAI 생성 텍스트(에이전트 추론, 메모, 발견 사항, 보고서 콘텐츠, 스캔 후 채팅)의 출력 언어. en 또는 zh-CN. 기술 토큰(페이로드, 명령, URL, CVE/CWE ID)은 항상 원래 형식으로 유지됩니다. 비라틴 언어는 대시보드와 HTML 보고서에서 자동으로 렌더링됩니다.
XALGORIX_PDF_CJK_FONT없음CJK 글리프가 포함된 TrueType(.ttf) 글꼴의 절대 경로로, 내보낸 PDF 보고서에서 비라틴 언어(예: 중국어 간체)를 렌더링하는 데 사용됩니다. .ttf만 지원됩니다(.ttc/.otf는 지원되지 않음). 이 값이 없으면 PDF는 핵심 글꼴로 대체되며 비라틴 글리프가 렌더링되지 않습니다(HTML 보고서는 영향을 받지 않음).
XALGORIX_OLLAMA_COMPATIBLEfalse비표준 포트의 사용자 지정 엔드포인트에 Ollama 추론 의미론을 적용합니다. 포트 11434는 자동으로 감지됩니다.
XALGORIX_LLM_MAX_RETRIES5일시적인 LLM 실패에 대한 재시도 횟수.
XALGORIX_MEMORY_COMPRESSOR_TIMEOUT30컨텍스트 압축에 대한 제한 시간(초).
XALGORIX_MAX_ITERATIONS0에이전트 반복 상한. 0은 무제한을 의미합니다.
XALGORIX_PPROF_ADDR없음옵트인 Go 프로파일러. 설정 시(예: 127.0.0.1:6060), 해당 주소의 /debug/pprof/에서 CPU/힙 진단을 위한 독립형 pprof 서버를 시작합니다. 기본적으로 비활성화됩니다. 프로세스 내부를 노출합니다 — 루프백에 바인딩하고 SSH 터널을 통해 접근하세요. 공개적으로 노출하지 마십시오.
GEMINI_API_KEY없음웹 검색 강화를 위한 선택적 Gemini 키.

🔒 웹 및 보안

변수기본값설명
XALGORIX_BIND127.0.0.1웹 서버 수신 주소.
XALGORIX_ALLOW_LOCAL_TARGETSfalse자체 호스팅 설치에서 로컬 호스팅 앱(localhost / 127.0.0.1 / 사설 IP) 스캔을 허용합니다. 대시보드 자체 수신기는 항상 보호됩니다. 공유/호스팅 배포에서는 끄십시오.
XALGORIX_USERNAME없음대시보드 사용자 이름.
XALGORIX_PASSWORD없음대시보드 비밀번호.
XALGORIX_PASSWORD_HASH없음선호되는 bcrypt 비밀번호 해시.
XALGORIX_WORKSPACE현재 디렉터리스캔 실행을 위한 작업 공간 루트.

🤝 통합

변수기본값설명
AGENTMAIL_POD없음AgentMail pod 식별자.
AGENTMAIL_API_KEY없음AgentMail API 키.
XALGORIX_DISCORD_WEBHOOK없음전역 Discord 웹훅.
XALGORIX_DISCORD_MIN_SEVERITY없음Discord로 전송되는 최소 심각도.
XALGORIX_TELEGRAM_BOT_TOKEN없음@BotFather의 Telegram 봇 토큰.
XALGORIX_TELEGRAM_CHAT_ID없음Telegram 채팅/채널 ID(숫자 또는 @사용자 이름).
XALGORIX_TELEGRAM_MIN_SEVERITY없음Telegram으로 전송되는 최소 심각도.
XALGORIX_NOTIFY_SCAN_COMPLETEfalse구성된 Discord/Telegram 대상에 스캔 완료 요약을 전송합니다. 옵트인이며 취약점별 알림에는 영향을 주지 않습니다.
CAIDO_PORT0Caido 프록시 포트. 0은 자동 감지를 의미합니다.
CAIDO_API_TOKEN없음Caido API 토큰.

🚦 속도 제한, 프록시 및 런타임

변수기본값설명
XALGORIX_RATE_LIMIT_REQUESTS60창당 대시보드 요청 수.
XALGORIX_RATE_LIMIT_WINDOW60대시보드 속도 제한 창(초).
XALGORIX_RATE_RPS10지속적인 아웃바운드 요청 속도.
XALGORIX_RATE_BURST20아웃바운드 버스트 크기.
XALGORIX_USE_PROXYfalse프록시 라우팅 활성화.
XALGORIX_PROXY_URL없음단일 프록시 URL. 프록시 파일을 재정의합니다.
XALGORIX_PROXY_FILE없음줄당 하나의 프록시가 포함된 파일.
XALGORIX_PROXY_ROTATIONroundrobin프록시 순환 전략: roundrobin 또는 random.
XALGORIX_TLS_SKIP_VERIFYfalse테스트 트래픽에 대한 TLS 검증 건너뛰기.
XALGORIX_DISABLE_BROWSERfalse브라우저 자동화 비활성화.
XALGORIX_BROWSER_PATH자동사용자 지정 Chrome/Chromium 실행 파일 경로.
XALGORIX_ALLOW_AUTO_INSTALL루트만자동 패키지 설치 허용.
XALGORIX_AUTO_INSTALL_SUDOfalsesudo 접두사 자동 설치 허용.

🔤 공급자 접두사

XALGORIX_API_BASE가 비어 있으면 Xalgorix는 모델 접두사에서 공급자 기본값을 추론합니다.

접두사기본 API 베이스
openai/https://api.openai.com/v1
anthropic/https://api.anthropic.com
deepseek/https://api.deepseek.com/v1
groq/https://api.groq.com/openai/v1
google/https://generativelanguage.googleapis.com/v1
gemini/https://generativelanguage.googleapis.com/v1
ollama/http://localhost:11434/v1
minimax/https://api.minimax.io/v1

모델 이름은 이 목록에 하드코딩되지 않습니다. 설정 페이지에서 입력된 모델 ID를 허용하므로 UI 드롭다운 업데이트를 기다리지 않고 최신 공급자 모델을 사용할 수 있습니다.

💻 CLI 참조

플래그별칭설명
--web-wWeb UI 시작.
--port <port>-pWeb UI 포트. 기본값: 9137.
--bind <addr>없음바인드 주소. 기본값: 127.0.0.1.
--target <target>-t대상 URL, 호스트, IP 또는 경로. 반복 가능.
--instruction <text>-i사용자 지정 스캔 지침.
--model <model>-m이 실행에 대한 XALGORIX_LLM 재정의.
--update-up최신 릴리스로 업데이트.
--version-v버전 출력.
--start없음시스템 서비스 설치 및 시작.
--stop없음시스템 서비스 중지.
--restart없음시스템 서비스 재시작.
--uninstall없음시스템 서비스 제거.
--help-h도움말 표시.

📡 API 요약

메서드엔드포인트용도
POST/api/scan스캔 시작 또는 저장.
POST/api/stop실행 중인 모든 스캔 중지.
GET/api/status현재 전역 상태.
GET/api/scans스캔 목록.
GET/api/scans/:id스캔 상세 정보 가져오기.
DELETE/api/scans/:id스캔 및 해당 보고서 데이터 삭제.
GET/api/findings모든 발견 사항 목록(스캔 간 중복 제거).
GET/api/findings/summary모든 스캔의 심각도 집계.
GET/api/report/:idPDF 보고서 다운로드.
GET/api/instances라이브 및 이력 인스턴스 목록.
GET/api/instances/:id/events버퍼링된 이벤트 기록 가져오기.
POST/api/instances/:id/stop특정 인스턴스 중지.
POST/api/instances/:id/start저장되거나 완료된 스캔을 새 실행으로 시작.
POST/api/instances/:id/restart동일한 구성으로 재시작.
POST/api/instances/:id/pause실행 중인 스캔 일시 중지.
POST/api/instances/:id/resume일시 중지된 스캔 재개.
POST/api/upload-logo보고서 로고 업로드.
POST/api/upload-targets대상 목록 업로드.
GET/api/settings/environment편집 가능한 환경 설정 목록.
POST/api/settings/environment환경 설정 저장.
GET/api/settings/llmLLM 설정 가져오기.
POST/api/settings/llmLLM 설정 저장.
GET/api/settings/agentmailAgentMail 설정 가져오기.
POST/api/settings/agentmailAgentMail 설정 저장.
GET/wsWebSocket 라이브 이벤트 스트림.

💾 데이터 저장

웹 모드 스캔 데이터는 다음 위치에 저장됩니다:```text ~/xalgorix-data/ |-- _saved/ |-- logos/ |-- queue_state.json -- <target>/ -- / -- <scan-id>/ |-- scan.json -- report.pdf

서버는 UI가 새로고침이나 재시작 후에도 복구할 수 있도록 과거 스캔 기록을 디스크에 보관합니다.

## 🧪 개발

| 작업                        | 명령어                       |
| --------------------------- | ----------------------------- |
| 📦 웹 UI 의존성 설치 | `make webui-install`          |
| 🔨 전체 빌드            | `make build`                  |
| ✅ 테스트 실행                   | `go test ./...`               |
| 🖥️ 소스에서 웹 UI 실행      | `go run ./cmd/xalgorix --web` |
| ⚡ 프론트엔드 개발 서버 실행     | `make webui-dev`              |

## 🚨 안전 수칙

- Xalgorix는 승인된 대상에만 사용하세요.
- 허가 없이 제3자 시스템에 대해 능동 테스트를 실행하지 마세요.
- 실행 전에 스캔 지침을 검토하세요.
- 참여 규칙에 맞게 속도 제한과 프록시 설정을 구성하세요.
- 대시보드를 외부에 노출하려면 인증이 필요합니다.
- 자동 설치는 루트가 아닌 사용자에게 기본적으로 비활성화되어 있으며, 환경을 신뢰할 때만 활성화해야 합니다.

## 📜 라이선스

Xalgorix는 Apache License 2.0에 따라 배포됩니다. [LICENSE](https://github.com/xalgord/xalgorix/blob/main/LICENSE)를 참조하세요.

## 🔗 링크

| 리소스      | 링크                                                                             |
| ------------- | -------------------------------------------------------------------------------- |
| ☁️ 호스팅(클라우드) | [www.xalgorix.com](https://www.xalgorix.com/)                                   |
| 📖 문서 | [docs.xalgorix.com](https://docs.xalgorix.com)                                   |
| 🐛 이슈        | [github.com/xalgorix/xalgorix/issues](https://github.com/xalgorix/xalgorix/issues) |
| ☕ 지원       | [buymeacoffee.com/xalgord](https://buymeacoffee.com/xalgord)                     |

카테고리