AI Sparkup

최신 AI 쉽게 깊게 따라잡기⚡

CyberSecQwen-4B – 방어적 사이버 보안에 특화된 로컬 실행 소형 언어 모델

CyberSecQwen-4B는 CWE 분류, CVE-to-CWE 매핑, 사이버 위협 인텔리전스(CTI) Q&A 등 방어적 사이버 보안 업무에 특화된 4B 파라미터 소형 언어 모델(SLM)이다. Qwen3-4B-Instruct를 베이스로 LoRA 파인튜닝(fine-tuning)을 적용했으며, 12GB 이상의 소비자용 GPU에서 로컬 실행이 가능하다는 점이 핵심 특징이다. AMD Developer Hackathon 출품작으로, Apache 2.0 라이선스로 공개되어 있다.

HuggingFace: https://huggingface.co/lablab-ai-amd-developer-hackathon/CyberSecQwen-4B GitHub: https://github.com/GPT-64590/CyberSecQwen-4B Live Demo: https://huggingface.co/spaces/lablab-ai-amd-developer-hackathon/cybersecqwen-chat

소개

프론티어(frontier) 대형 모델은 사이버 보안 영역에서 여러 한계를 갖는다. SOC 분석가나 취약점 연구자가 유출된 크리덴셜 덤프나 악성코드 샘플을 외부 API에 전송하면 데이터 자체가 보안 사고가 될 수 있다. 또한 하루 수천 건의 저신뢰 알림을 처리하는 SOC 환경에서는 API 호출 비용이 누적되며, 중요 인프라·의료·정부 환경에서는 에어갭(air-gapped) 환경이 표준이라 외부 서비스 자체가 불가능한 경우도 많다.

CyberSecQwen-4B는 이 문제를 “작고 전문화된 모델”로 접근한다. 4B 파라미터로 단일 소비자용 GPU(12GB VRAM)에서 실행되며, 좁고 잘 정의된 사이버 보안 태스크에서 8B 규모 전문 모델과 대등하거나 그 이상의 성능을 보인다.

경쟁 모델과의 성능 비교

CTI-Bench(n=5, temperature 0.3) 기준:

지표CyberSecQwen-4BFoundation-Sec-Instruct-8B (Cisco)차이
CTI-MCQ (2,500항목)0.5868 ± 0.00290.4996+8.7pp
CTI-RCM (1,000 CVE→CWE)0.6664 ± 0.00230.6850−1.9pp
파라미터 수4B8B절반

Foundation-Sec-Instruct-8B의 CTI-RCM 정확도 97.3%를 유지하면서 CTI-MCQ 점수는 8.7pp 초과 달성한다. 파라미터는 절반이다.

주요 기능 및 특징

  • 로컬 실행: 12GB 이상 GPU에서 bf16 정밀도로 실행 가능. 외부 API 전송 없이 민감한 보안 데이터를 처리할 수 있다
  • CWE 분류: 취약점 설명(CVE, 보안 권고)에서 MITRE CWE 카테고리를 매핑
  • CTI Q&A: 사이버 보안 개념, 공격 기법, 보안 통제에 관한 구조화된 질의응답
  • 방어적 트리아지 지원: CVE 우선순위 지정, 패치 문서화, 위협 행위자 행동 분석을 보조
  • 데이터 오염 없는 벤치마크: CTI-Bench 평가 세트와 겹치는 학습 데이터를 학습 전 중복 제거하여 신뢰할 수 있는 OOD(out-of-distribution) 성능 측정을 보장

적합한 사용 케이스

역할활용 방법
SOC 분석가대량 알림의 CVE/CWE 분류 자동화, 로컬에서 민감 데이터 처리
취약점 연구자CVE 설명에서 CWE 분류, 보안 권고 초안 작성 보조
보안 엔지니어에어갭 환경에서 CTI Q&A, 위협 분석
레드팀·버그바운티취약점 분류 및 우선순위 지정 (단, 익스플로잇 코드 생성은 지원하지 않음)

모델 아키텍처

베이스 모델은 Qwen3-4B-Instruct-2507(Apache 2.0)이다. 인스트럭션 튜닝(instruction-tuning) 체크포인트를 베이스로 사용한 것이 핵심 설계 결정이다. IT 체크포인트의 간결한 답변 포맷 사전(prior)을 보존하면서 도메인 리프트를 추가하는 방식으로, Cisco의 Foundation-Sec도 보고한 “IT 이후 SFT 붕괴” 문제를 방지한다.

학습 설정 (LoRA 파인튜닝)

하이퍼파라미터
LoRA r64
LoRA alpha64 (alpha/r = 1.0)
LoRA dropout0.05
학습률5e-5 (cosine, warmup ratio 0.03)
에포크10
정밀도bf16
어텐션FlashAttention-2 (forward + backward)
최대 시퀀스 길이4096
배치 크기4
옵티마이저paged_adamw_8bit

학습 인프라는 AMD Instinct MI300X 192GB 단일 GPU(ROCm 7.0, vLLM 0.10.1)를 사용했으나, 레시피 자체는 하드웨어 독립적(hardware-agnostic)이다. 40GB 이상 데이터센터 GPU에서도 AMD 전용 환경 변수만 제거하면 동일하게 실행된다.

학습 데이터

두 개의 코퍼스를 사용했으며, 모두 Apache 2.0 라이선스다:

  1. 2021년 CVE → CWE 매핑: MITRE/NVD 공개 데이터. CTI-Bench 평가 세트와의 중복을 학습 전 제거
  2. 합성 방어 분석가 Q&A: 중복 제거된 CVE 설명을 기반으로 더 강력한 교사 모델이 생성

사용법

빠른 추론 (3줄 코드)

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model_id = "lablab-ai-amd-developer-hackathon/CyberSecQwen-4B"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id, torch_dtype=torch.bfloat16, device_map="auto"
)

messages = [
    {
        "role": "system",
        "content": "You are a defensive cybersecurity assistant. Answer with the canonical CWE-ID first, then 1-3 sentences of justification.",
    },
    {
        "role": "user",
        "content": "Path traversal in a Java web app where User-controlled input concatenates into a File() path. What's the CWE?",
    },
]
prompt = tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
out = model.generate(
    **tok(prompt, return_tensors="pt").to(model.device),
    max_new_tokens=256,
    temperature=0.3,
)
print(tok.decode(out[0], skip_special_tokens=True))

12GB 이상의 GPU가 있으면 바로 실행 가능하다. 고처리량 서빙이 필요하다면 AMD MI300X에서 vllm/vllm-openai-rocm 공식 이미지로 vLLM 서빙도 지원된다.

사용하면 안 되는 케이스

  • 익스플로잇 코드 또는 무기화된 PoC 생성
  • 자격을 갖춘 인간의 검토 없이 보안 결정을 자동 실행
  • 법률·의료·규제 대상 조언
  • 사이버 보안 외 일반 코드 생성이나 범용 대화

라이선스

Apache 2.0. 상업적 사용, 수정, 재배포 모두 허용된다. Gemma 기반 라이선스 제약이 문제가 되는 환경에서 CyberSecQwen-4B가 적합한 대안이다.

관련 문서

  • qwen — CyberSecQwen-4B의 베이스 모델인 Qwen 아키텍처 소개
  • local-slm — 로컬에서 실행하는 소형 언어 모델 개요 및 활용 가이드


AI Sparkup 구독하기

최신 게시물 요약과 더 심층적인 정보를 이메일로 받아 보세요! (무료)