
생성형 AI와 LLM(Large Language Model)이 빠르게 확산되면서, 이제는 모델 성능만큼이나 보안과 안정성이 중요한 시대가 됐습니다. 특히 기업 환경에서는 단순히 “잘 답변하는 모델”이 아니라, 프롬프트 인젝션이나 데이터 유출 같은 공격에도 안전한 모델이 요구됩니다.
이 과정에서 주목받고 있는 오픈소스 도구가 바로 garak입니다. garak은 LLM 취약점 스캐너이자 레드팀 테스트 프레임워크로, 모델이 어떤 방식으로 실패할 수 있는지 자동으로 탐지하고 분석할 수 있도록 돕습니다.
이번 글에서는 garak이 무엇인지, 어떤 보안 테스트를 지원하는지, 어떻게 설치하고 사용하는지, 그리고 실제로 어떤 환경에서 활용할 수 있는지까지 정리해보겠습니다.
garak이란 무엇인가
garak은 생성형 AI 및 LLM을 대상으로 다양한 보안 취약점과 안전성 문제를 점검하는 오픈소스 도구입니다.
쉽게 말해 네트워크 보안에서 nmap이나 Metasploit가 하는 역할을, LLM 보안 영역에서 수행한다고 볼 수 있습니다.
garak의 핵심 목적은 다음과 같습니다.
- LLM이 의도하지 않은 답변을 생성하는지 점검
- 프롬프트 인젝션 공격에 취약한지 테스트
- 데이터 유출 가능성 탐지
- 허위 정보 생성 여부 검증
- 독성(Toxicity) 및 유해 콘텐츠 생성 여부 확인
- Jailbreak 우회 가능성 분석
즉, 단순 기능 테스트가 아니라 “LLM이 어떻게 실패할 수 있는가”를 집중적으로 분석하는 도구입니다.
garak의 주요 특징
다양한 LLM 플랫폼 지원
garak은 특정 모델에 종속되지 않고 다양한 생성형 AI 환경을 지원합니다.
지원 대상 예시는 다음과 같습니다.
- Hugging Face 모델
- OpenAI API
- AWS Bedrock
- Replicate
- Cohere
- Groq
- llama.cpp 기반 GGUF 모델
- REST API 기반 커스텀 모델
- NVIDIA NIM
따라서 로컬 모델부터 상용 API 기반 모델까지 폭넓게 테스트할 수 있습니다.
다양한 보안 취약점 탐지 지원
garak은 여러 종류의 보안 프로브(Probes)를 제공합니다.
대표적인 예시는 다음과 같습니다.
Probe설명
| promptinject | 프롬프트 인젝션 공격 테스트 |
| dan | DAN 계열 Jailbreak 테스트 |
| encoding | 인코딩 기반 우회 공격 |
| xss | 데이터 탈취 및 XSS 계열 취약점 |
| leakreplay | 학습 데이터 재현 여부 검사 |
| misleading | 허위 정보 생성 테스트 |
| malwaregen | 악성 코드 생성 유도 |
| packagehallucination | 존재하지 않는 패키지 생성 여부 |
| realtoxicityprompts | 유해 콘텐츠 생성 검사 |
이러한 테스트를 통해 단순 QA 수준이 아니라 실제 공격 시나리오 기반 검증이 가능합니다.
garak 아키텍처 이해하기
garak은 플러그인 기반 구조로 설계되어 있습니다.
주요 구성 요소는 다음과 같습니다.
구성 요소역할
| probes | 공격 및 테스트 시나리오 생성 |
| detectors | 취약 행동 탐지 |
| generators | 대상 LLM 연결 |
| harnesses | 테스트 실행 제어 |
| evaluators | 결과 평가 및 리포트 |
이 구조 덕분에 새로운 공격 기법이나 새로운 모델 지원을 쉽게 추가할 수 있습니다.
garak 설치 방법
pip 기반 기본 설치
가장 간단한 방법은 PyPI를 통한 설치입니다.
python -m pip install -U garak
GitHub 최신 버전 설치
최신 기능이 필요하다면 GitHub main 브랜치 설치도 가능합니다.
python -m pip install -U git+https://github.com/NVIDIA/garak.git@main
Conda 환경에서 소스 설치
독립적인 환경 구성을 원한다면 Conda 환경 사용이 권장됩니다.
conda create --name garak "python>=3.10,<=3.12"
conda activate garak
gh repo clone NVIDIA/garak
cd garak
python -m pip install -e .
garak 기본 사용 방법
기본 실행 구조
garak의 기본 실행 문법은 다음과 같습니다.
garak <options>
테스트 대상 모델과 사용할 Probe를 지정하면 됩니다.
지원하는 Probe 목록 확인
garak --list_probes
사용 가능한 공격 및 테스트 시나리오 목록을 확인할 수 있습니다.
OpenAI 모델 테스트 예제
OpenAI 기반 모델에 대해 encoding 공격 테스트를 수행하는 예시입니다.
API Key 설정
export OPENAI_API_KEY="sk-xxxxxxxx"
Encoding Probe 실행
python3 -m garak \
--target_type openai \
--target_name gpt-5-nano \
--probes encoding
이 테스트는 MIME, quoted-printable 같은 인코딩 기반 우회 공격에 모델이 취약한지 검사합니다.
Hugging Face 모델 테스트 예제
GPT-2 모델에 대해 DAN 공격을 수행하는 예시입니다.
python3 -m garak \
--target_type huggingface \
--target_name gpt2 \
--probes dan.Dan_11_0
이를 통해 모델이 Jailbreak 프롬프트에 얼마나 취약한지 분석할 수 있습니다.
주요 Generator 유형 정리
Hugging Face
로컬 Transformers 모델 실행:
--target_type huggingface
Inference API 사용:
--target_type huggingface.InferenceAPI
OpenAI
--target_type openai
환경 변수:
OPENAI_API_KEY
AWS Bedrock
--target_type bedrock
예시:
garak \
--target_type bedrock \
--target_name claude-3-sonnet \
--probes dan
REST API 기반 모델
REST Generator를 사용하면 커스텀 API도 연결 가능합니다.
이는 기업 내부 LLM Gateway나 사내 AI 플랫폼 보안 점검 시 매우 유용합니다.
garak 결과 분석 방법
테스트가 완료되면 garak은 다음 정보를 제공합니다.
- Probe별 성공/실패 여부
- 취약 응답 발생 비율
- 탐지된 문제 유형
- 생성 결과 로그
만약 특정 공격이 성공했다면 결과는 FAIL로 표시됩니다.
예를 들어:
- 프롬프트 인젝션 우회 성공
- 유해 콘텐츠 생성 성공
- 허위 정보 생성 성공
등이 발견되면 해당 Probe에서 실패로 기록됩니다.
로그 및 리포트 구조
garak은 여러 형태의 로그를 생성합니다.
garak.log
디버깅 및 실행 로그 저장
JSONL 리포트
각 Probe 실행 결과를 구조화된 형태로 저장
Hit Log
실제 취약점이 탐지된 시도만 별도로 기록
이 구조 덕분에 후속 분석이나 SIEM 연동도 가능합니다.
커스텀 플러그인 개발 지원
garak은 확장성이 높은 구조를 제공합니다.
새로운 Probe나 Detector를 직접 추가할 수 있습니다.
예시 개발 흐름:
- Base 클래스 상속
- Probe 구현
- Detector 연결
- 테스트 실행
테스트용 Generator도 제공하기 때문에 개발 및 검증이 비교적 쉽습니다.
garak이 중요한 이유
많은 조직이 생성형 AI를 도입하고 있지만, 실제 보안 검증은 아직 초기 단계에 머물러 있습니다.
특히 다음 문제는 실제 서비스 환경에서 매우 중요합니다.
- Prompt Injection
- 데이터 유출
- 모델 환각(Hallucination)
- Jailbreak
- 악성 코드 생성
- 허위 정보 생성
garak은 이런 문제를 자동화된 방식으로 반복 검증할 수 있게 도와줍니다.
이는 단순 개발 도구가 아니라, AI 보안 운영 체계의 핵심 구성 요소로 활용될 가능성이 높습니다.
LLM 도입이 늘어날수록 “모델이 얼마나 똑똑한가”보다 “얼마나 안전한가”가 더 중요한 기준이 되고 있습니다.
garak은 이러한 흐름 속에서 생성형 AI 보안 테스트를 체계적으로 수행할 수 있도록 지원하는 강력한 오픈소스 도구입니다.
특히 다양한 LLM 플랫폼 지원, 풍부한 Probe 체계, 플러그인 기반 확장 구조를 통해 AI 보안 검증 자동화에 매우 적합한 환경을 제공합니다.
앞으로 기업 환경에서 AI 레드팀 운영과 LLM 보안 점검이 필수가 된다면, garak 같은 도구의 중요성은 더욱 커질 것으로 예상됩니다.
https://github.com/NVIDIA/garak
GitHub - NVIDIA/garak: the LLM vulnerability scanner
the LLM vulnerability scanner. Contribute to NVIDIA/garak development by creating an account on GitHub.
github.com

'인공지능' 카테고리의 다른 글
| 금융 서비스를 위한 AI 에이전트 템플릿 정리: Claude 기반 자동화가 바꾸는 실무 환경 (0) | 2026.05.08 |
|---|---|
| GPT-5.5 Instant 업데이트 핵심 정리: 더 정확하고 간결해진 ChatGPT 기본 모델 (0) | 2026.05.08 |
| 초거대 AI 학습을 가속하는 슈퍼컴퓨터 네트워크, OpenAI의 MRC 프로토콜 완전 정리 (0) | 2026.05.07 |
| Gemma 4 추론 속도를 3배까지 높이는 MTP Drafter 기술 완전 정리 (0) | 2026.05.07 |
| Understand-Anything: 코드와 지식베이스를 인터랙티브 지식 그래프로 분석하는 AI 플러그인 (0) | 2026.05.07 |