레드팀 도구 — Garak, Llama Guard, PyRIT

세 가지 운영 환경(production) 도구가 2026년 레드팀 스택(red-team stack)의 뼈대를 이룹니다. Llama Guard(Meta)는 MLCommons 위해 범주(hazard category) 14개에 맞춰 미세조정(fine-tuning)된 Llama-3.1-8B 분류기(classifier)이며, 2025년 발표된 Llama Guard 4는 Llama 4 Scout에서 가지치기(pruning)된 12B 규모의 네이티브 멀티모달(natively multimodal) 분류기입니다. Garak(NVIDIA)은 환각(hallucination), 데이터 유출(data leakage), 프롬프트 인젝션(prompt injection), 유해 발화(toxicity), 탈옥(jailbreak)에 대한 정적(static)·동적(dynamic)·적응형(adaptive) 프로브(probe)를 갖춘 오픈소스 LLM 취약점 스캐너(vulnerability scanner)입니다. PyRIT(Microsoft)은 Crescendo, TAP, 사용자 정의 컨버터 체인(converter chain)을 이용해 심층 익스플로잇(deep exploitation)을 수행하는 멀티턴(multi-turn) 레드팀 캠페인 도구입니다. Llama Guard 3는 Meta의 "Llama 3 Herd of Models"(arXiv:2407.21783)에 문서화되어 있고, Llama Guard 3-1B-INT4는 arXiv:2411.17713에서 다루며, Garak의 프로브 아키텍처(probe architecture)는 github.com/NVIDIA/garak에서 확인할 수 있습니다. 이 도구들은 레드팀 연구(Lesson 12-15)와 배포(Lesson 17+) 사이를 잇는 2026년의 운영 환경 인터페이스 역할을 합니다.

유형: Build 언어: Python (표준 라이브러리, 도구 아키텍처 시뮬레이터와 Llama Guard 스타일 분류기 모의 구현) 선수 지식: Phase 18 · 12-15 (탈옥과 간접 프롬프트 인젝션(Indirect Prompt Injection; IPI)) 예상 시간: 약 75분

학습 목표

  • 안전 스택(safety stack) 안에서 Llama Guard 3/4가 입력 분류기(input classifier), 출력 분류기(output classifier), 또는 둘 다 중 어느 위치를 차지하는지 설명합니다.
  • MLCommons 위해 범주 14개를 나열하고, 비교적 덜 직관적인 항목 한 가지(Code Interpreter Abuse)를 짚어낼 수 있습니다.
  • Garak의 프로브 아키텍처, 즉 프로브(probe), 디텍터(detector), 하네스(harness)를 설명합니다.
  • PyRIT의 멀티턴 캠페인 구조와 Garak 프로브와의 조합 방식을 설명합니다.

문제

Lesson 12-15는 공격면(attack surface)을 제시했습니다. 운영 환경 배포에서는 반복 가능하고 규모 있게(scale) 돌릴 수 있는 평가가 필요합니다. 2026년에는 세 가지 도구가 이 영역을 지배합니다. 방어용 분류기(defense classifier)인 Llama Guard, 스캐너인 Garak, 캠페인 오케스트레이터(campaign orchestrator)인 PyRIT입니다. 각 도구는 레드팀 라이프사이클(red-team lifecycle)의 서로 다른 계층(layer)을 겨냥합니다.

사전 테스트

2문제 · 이 강의를 시작하기 전에 얼마나 알고 있는지 확인해보세요

1.Llama Guard는 안전 스택 어디에 위치하나요?

2.Garak과 PyRIT의 아키텍처 차이는 무엇인가요?

0/2 답변 완료

개념

Llama Guard(Meta)

Llama Guard 3는 MLCommons AILuminate의 위해 범주 14개에 대해 입력·출력 분류(input/output classification)를 수행하도록 미세조정한 Llama-3.1-8B 모델입니다. 범주는 다음과 같이 구성됩니다.

  • 폭력 범죄(violent crimes), 비폭력 범죄(non-violent crimes), 성 관련(sex-related), 아동 성착취물(CSAM), 명예훼손(defamation)
  • 전문가 조언(specialized advice), 사생활(privacy), 지식재산(IP), 무차별 살상 무기(indiscriminate weapons), 혐오(hate)
  • 자해/자살(suicide/self-harm), 성적 콘텐츠(sexual content), 선거(elections), 코드 인터프리터 오용(code interpreter abuse)

8개 언어를 지원합니다. 사용 방식은 LLM 앞단에 두는 입력 모더레이션(input moderation), 뒷단에 두는 출력 모더레이션(output moderation), 또는 양쪽 모두입니다. 두 방식은 서로 다른 학습 분포(training distribution)를 만들지만, Llama Guard 3는 두 경우를 모두 처리하는 단일 모델로 배포됩니다.

Llama Guard 3-1B-INT4(arXiv:2411.17713, 440MB, 모바일 CPU에서 약 30 tokens/s)는 양자화(quantization)된 엣지(edge) 버전입니다.

Llama Guard 4(2025년 4월 공개)는 12B 규모의 네이티브 멀티모달 모델로, Llama 4 Scout에서 가지치기되어 만들어졌습니다. 기존 8B 텍스트 모델과 11B 비전 모델을 텍스트와 이미지를 함께 입력으로 받는 단일 분류기 하나로 대체합니다.

Garak(NVIDIA)

오픈소스 취약점 스캐너입니다. 아키텍처는 다음 세 요소로 이루어집니다.

  • 프로브(Probes). 환각, 데이터 유출, 프롬프트 인젝션, 유해 발화, 탈옥을 겨냥한 공격 생성기(attack generator)입니다. 정적(고정된 프롬프트), 동적(생성된 프롬프트), 적응형(대상 모델의 출력에 반응) 세 종류가 있습니다.
  • 디텍터(Detectors). 예상되는 실패 모드(failure mode)에 대해 출력을 점수화합니다. 유해(toxic), 정보 유출(leaked), 탈옥 성공(jailbroken) 등이 여기에 해당합니다.
  • 하네스(Harnesses). 프로브와 디텍터 쌍을 관리하고 캠페인을 실행하며 리포트를 생성합니다.

TrustyAI는 Garak을 Llama-Stack의 가드(Prompt-Guard-86M 입력 분류기, Llama-Guard-3-8B 출력 분류기)와 통합해, 가드가 적용된 대상 모델(shielded target)에 대한 종단간(end-to-end) 평가를 수행합니다. 계층 기반 채점(Tier-Based Scoring; TBSA)은 이분법적인 통과/실패(binary pass/fail)를 대체합니다. 하나의 모델이 같은 프로브에서 심각도 계층(severity tier) 3은 통과하고 5는 실패할 수 있다는 식입니다.

PyRIT(Microsoft)

Python 위험 식별 도구 키트(Python Risk Identification Toolkit)입니다. 멀티턴 레드팀 캠페인에 초점을 둡니다. 구성 요소는 다음과 같습니다.

  • 컨버터(Converters). 시드 프롬프트(seed prompt)를 변환합니다. 의역(paraphrase), 인코딩(encode), 번역(translate), 역할극(roleplay) 같은 변환이 포함됩니다.
  • 오케스트레이터(Orchestrators). 캠페인을 실행합니다. 점진적 상승(escalation)을 사용하는 Crescendo, 분기(branching)를 사용하는 TAP, 사용자 정의 루프(custom loop)인 RedTeaming이 있습니다.
  • 채점(Scoring). LLM-as-judge 또는 분류기 기반 판정(classifier-as-judge)을 사용합니다.

PyRIT은 Garak의 더 무거운 사촌(cousin) 격입니다. Garak이 수천 개의 단일 턴(single-turn) 프로브를 돌리는 데 강점이 있다면, PyRIT은 특정 실패 모드를 깨뜨리기 위해 설계된 심층 멀티턴 캠페인을 실행합니다.

스택 구성

모델의 양쪽 끝에 Llama Guard를 둡니다. 회귀 테스트(regression test)를 위해 Garak을 야간(nightly)으로 실행합니다. 릴리스 직전에는 PyRIT 캠페인을 돌립니다. 이것이 2026년 대부분의 운영 환경 배포가 채택하는 기본 구성입니다.

평가 시 주의할 함정

  • 판정자 정체성(Judge identity). 세 도구 모두 LLM 판정자(judge)를 사용할 수 있고, 판정자의 보정(calibration)이 보고되는 공격 성공률(attack success rate; ASR)을 좌우합니다(Lesson 12). 도구를 기록할 때는 어떤 판정자를 함께 사용했는지도 함께 명시해야 합니다.
  • 프로브의 노후화(Probe staleness). 모델이 특정 프로브에 대해 패치(patch)될수록 Garak 프로브는 빠르게 낡습니다. PAIR 계열의 적응형 프로브는 정적 프로브보다 천천히 낡습니다.
  • 무해한 콘텐츠에 대한 Llama Guard의 거짓 양성률(false positive rate; FPR). 초기 Llama Guard 버전은 정치적 콘텐츠와 LGBTQ+ 관련 콘텐츠를 과잉 차단(over-flag)했습니다. Llama Guard 3/4의 보정은 개선되었지만, 개별 배포 환경에 맞춰 보정된 것은 아닙니다.

Phase 18 안에서의 위치

Lesson 12-15는 공격 계열(attack family)을 다룹니다. Lesson 16은 운영 환경 도구를 다룹니다. Lesson 17(WMDP)은 이중 용도(dual-use) 능력 평가를 다룹니다. Lesson 18은 이 도구들을 정책 구조(policy structure)로 감싸는 프런티어 안전 프레임워크(frontier safety framework)를 다룹니다.

사용해보기

code/main.py는 세 가지 학습용(toy) 도구를 만듭니다. 14개 범주에 대한 키워드와 단순한 의미 자질(semantic feature)을 결합한 Llama Guard 스타일 분류기, 프로브-디텍터 루프 형태의 Garak 스타일 하네스, 그리고 PyRIT 스타일의 멀티턴 컨버터 체인입니다. 같은 모의 대상(mock target)에 세 도구를 차례로 적용해, 각 도구가 잡아내는 커버리지(coverage)의 차이를 직접 관찰할 수 있습니다.

산출물 만들기

이 강의는 outputs/skill-red-team-stack.md를 산출합니다. 배포에 대한 설명이 주어지면 세 도구 가운데 어느 것이 적절한지, 각 도구에서 어떤 설정을 잡아야 하는지, 그리고 어떤 회귀(regression) 주기로 돌려야 하는지를 정합니다.

연습문제

  1. 쉬움: code/main.py를 실행합니다. Llama Guard 스타일 분류기가 단일 턴 공격과 멀티턴 공격에서 보이는 탐지율(detection rate)을 비교합니다.

  2. 중간: 새 Garak 프로브를 구현합니다. Base64로 인코딩된 유해 요청(harmful request)을 페이로드로 사용하고, Llama Guard 스타일 분류기가 이를 잡아내는지 측정합니다.

  3. 중간: PyRIT 스타일 컨버터 체인에 "프랑스어로 번역한 뒤 의역하는(translate to French, then paraphrase)" 컨버터를 추가합니다. 공격 성공률을 다시 측정합니다.

  4. 어려움: Llama Guard 3의 위해 범주 목록을 읽습니다. 합법적인 개발자(developer) 콘텐츠에서 현실적으로 거짓 양성률이 높게 나올 만한 범주 두 가지를 식별합니다.

  5. 어려움: Garak과 PyRIT의 설계 원칙을 비교합니다. 각 도구가 가장 적합한 배포 상황을 하나씩 제시해 논증합니다.

핵심 용어

용어흔한 설명실제 의미
Llama Guard"그 분류기"위해 범주 14개를 다루는 미세조정된 Llama-3.1-8B/4-12B 안전 분류기
Garak"그 스캐너"NVIDIA의 오픈소스 취약점 스캐너. 프로브, 디텍터, 하네스로 구성된다
PyRIT"그 캠페인 도구"Microsoft의 멀티턴 레드팀 오케스트레이터. 컨버터, 오케스트레이터, 채점으로 구성된다
Prompt-Guard"작은 분류기"Llama Guard와 짝지어 쓰이는 Meta의 86M 파라미터 프롬프트 인젝션 분류기
TBSA(Tier-Based Scoring)"계층 기반 채점"이분법적 결과를 대체하는 Garak의 계층 기반 통과/실패
컨버터 체인(Converter chain)"의역 + 인코딩 + ..."다단계 공격을 구성하기 위한 PyRIT의 합성 원시(composition primitive)
MLCommons 위해 범주(hazard categories)"14개 분류 체계"Llama Guard가 겨냥하는 업계 표준 분류 체계

더 읽을거리

실습 코드

이 강의의 실습 코드 1개

main
Code

산출물

이 강의에서 생성된 프롬프트, 스킬, 코드 산출물 1개

red-team-stack

Recommend a red-team tool stack and configuration for a given deployment.

Skill

확인 문제

3문제 · 모두 맞추면 완료 표시가 가능합니다

1.모델이 모든 Garak 프로브를 통과했습니다. 견고한 안전성을 나타내지 않을 수 있는 이유는?

2.2026년 표준 스택에서 각 도구의 역할은 무엇인가요?

3.도구 보고서에서 ASR과 함께 심판 정체성을 반드시 명시해야 하는 이유는?

0/3 답변 완료

추가 문제 풀기

AI가 강의 내용을 바탕으로 새로운 문제를 생성합니다