Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
stride-gpt — OpenAI의 GPT 모델을 활용하여 STRIDE 방법론 기반으로 주어진 애플리케이션에 대한 위협 모델을 생성하는 AI 기반 위협 모델링 도구입니다. | Kitploit
도구/GitHubGitHub/mrwadams/stride-gpt
Penetration Testing FrameworksVulnerability AnalysisThreat IntelligenceLearning & EducationAI Security
GitHubmrwadams/stride-gpt

stride-gpt

OpenAI의 GPT 모델을 활용하여 STRIDE 방법론 기반으로 주어진 애플리케이션에 대한 위협 모델을 생성하는 AI 기반 위협 모델링 도구입니다.

저장소 보기
1.1k319203일 전Kitploit 검토 완료
웹사이트

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

STRIDE GPT 로고

STRIDE GPT는 STRIDE 방법론을 기반으로 특정 애플리케이션에 대한 위협 모델과 공격 트리를 생성하기 위해 대규모 언어 모델(LLM)을 활용하는 AI 기반 위협 모델링 도구입니다. 사용자는 애플리케이션 유형, 인증 방법, 인터넷 노출 여부, 민감 데이터 처리 여부 등 애플리케이션 세부 정보를 제공합니다. 그러면 모델은 제공된 정보를 기반으로 출력을 생성합니다.

목차

  • 프로젝트 지원하기
  • 기능
  • 엔터프라이즈 배포
  • Open Security Summit 발표
  • 변경 로그
  • 설치
  • 저장소 구조
  • 사용법
    • 대화형 REPL 치트 시트
  • 출력 예시
  • 보안 모범 사례
  • 기여하기
  • 라이선스

프로젝트 지원하기

STRIDE GPT가 유용하다고 생각하신다면 프로젝트 지원을 고려해 주세요:

  • ⭐ 저장소에 Star를 눌러 더 많은 사람들이 도구를 발견할 수 있도록 도와주세요
  • ☕ 커피 한 잔 사주기로 지속적인 개발과 유지보수를 지원해 주세요
Buy Me A Coffee

기능

  • 에이전트 기반 코드베이스 분석: CLI를 코드베이스에 지정하면 자율적이고 심층적인 STRIDE 위협 모델을 얻을 수 있습니다. 에이전트가 계획을 세우고, 탐색하며, 하위 시스템 전반의 결과를 종합합니다.
  • CLI 및 대화형 REPL: 탭 완성, 기록, 실시간 진행 상황을 갖춘 풀 기능 터미널 환경. 브라우저가 필요하지 않습니다.
  • 간단하고 사용자 친화적인 Streamlit 웹 인터페이스
  • STRIDE 방법론을 기반으로 위협 모델 생성
  • 에이전트 AI 지원: OWASP Top 10 for Agentic Applications (ASI) 통합을 통한 에이전트 AI 시스템 전문 위협 모델링
  • 생성형 AI 지원: OWASP LLM Top 10 통합을 통한 GenAI 애플리케이션 위협 모델링
  • MITRE ATT&CK 및 ATLAS 매핑: 위협에 표준화된 적 기술자 ID(MITRE ATT&CK Enterprise - 전통적인 인프라 공격, ATLAS - ML/LLM 특화 공격)가 주석으로 추가됩니다. 마크다운에서는 열로, HTML에서는 링크된 알약(pill)으로, SARIF에서는 mitre_attack 속성으로 표시됩니다.
  • 아키텍처 패턴 탐지: 애플리케이션 설명에서 RAG 파이프라인, 다중 에이전트 시스템, 코드 실행 환경, 도구 생태계 등을 자동으로 탐지합니다(CSA MAESTRO에서 영감을 받음)
  • 임베디드 draw.io 다이어그램 편집기: 통합된 diagrams.net 편집기를 사용하여 STRIDE-GPT 내에서 직접 아키텍처 다이어그램을 만들고 편집할 수 있습니다. 외부 도구가 필요하지 않습니다. 다이어그램은 XML로 파싱되어 구성 요소, 연결, 신뢰 경계를 추출하므로 이미지 분석만으로는 제공할 수 없는 훨씬 풍부한 컨텍스트를 위협 모델 생성에 제공합니다. 기존 이미지 업로드 워크플로는 변경되지 않았습니다. 기본적으로 편집기는 호스팅된 embed.diagrams.net에서 로드됩니다. 자체 호스팅 또는 폐쇄망 배포의 경우 STRIDE_GPT_DRAWIO_URL 환경 변수를 통해 자체 draw.io 인스턴스를 가리키도록 설정할 수 있습니다.
  • 멀티모달: 모든 지원되는 비전 가능 모델에서 위협 모델링 입력으로 아키텍처 다이어그램, 순서도 등을 사용할 수 있습니다.
  • 데이터 흐름 다이어그램(DFD): 애플리케이션 설명에서 DFD를 생성하거나(업로드된 DFD 이미지를 파싱하고) Mermaid 소스를 실시간으로 편집한 후 확인된 다이어그램을 위협 모델 및 공격 트리 프롬프트에 권위 있는 시스템 모델로 다시 공급할 수 있습니다. CLI /analyze는 또한 결과와 함께 시스템 수준 DFD를 출력합니다.
  • 가능한 공격 경로를 열거하는 공격 트리 생성
  • 식별된 위협에 대한 가능한 완화 조치 제안
  • 식별된 위협에 대한 DREAD 위험 점수 지원
  • 식별된 위협을 기반으로 한 Gherkin 테스트 케이스 생성
  • 포괄적인 위협 모델링을 위한 GitHub 저장소 분석(GitHub Enterprise 지원 포함)
  • 다양한 출력 형식: Markdown, JSON, SARIF(GitHub, GitLab, Azure DevOps, IDE로 가져오기) 및 이해 관계자와 공유하기 위한 자체 포함 HTML 뷰
  • 고급 추론 모델 지원(OpenAI GPT-5.4/5.5 시리즈, Anthropic Claude 4.6/4.8 with Extended Thinking, Google Gemini 3, Mistral Magistral 시리즈)
  • LiteLLM을 통한 포괄적인 LLM 제공업체 지원: OpenAI, Anthropic, Google AI, Mistral, Groq, DeepSeek, LM Studio Server를 통한 로컬 호스팅
  • 데이터 저장 없음; 애플리케이션 세부 정보는 저장되지 않습니다.
  • 손쉬운 배포를 위한 Docker 컨테이너 이미지 제공
  • 안전한 구성을 위한 환경 변수 지원
  • 엔터프라이즈 배포

    조직에 맞게 STRIDE-GPT를 커스터마이징하고 싶으신가요? 포괄적인 운영 가이드를 확인하여 다음을 알아보세요:

    • 🎯 조직의 보안 통제 및 표준 주입
    • 📋 규정 준수 요구 사항에 맞게 위협 모델 커스터마이징
    • 🔧 STRIDE-GPT를 포크하여 내부 배포
    • 📊 특정 환경에 맞는 컨텍스트 인식형 실행 가능한 위협 모델 획득

    이 가이드에는 조직 전체에서 AI 기반 위협 모델링을 확장하려는 조직을 위한 단계별 지침, 코드 예제 및 배포 패턴이 포함되어 있습니다.

    Open Security Summit 발표

    2024년 1월, Open Security Summit에서 STRIDE GPT에 대한 발표를 했습니다. 발표에서는 프로젝트의 시작, 핵심 기능, 최근 업데이트 및 향후 계획에 대해 논의했습니다. 아래에서 전체 프레젠테이션을 시청할 수 있습니다:

    Open Security Summit 발표

    이 비디오는 STRIDE GPT의 작동 방식과 위협 모델링 개선에 어떻게 사용될 수 있는지 이해하려는 모든 사람에게 훌륭한 자료입니다.

    변경 로그

    버전 0.19 (최신)

    • --version 플래그 (#161): stride-gpt --version을 실행하면 설치된 버전을 출력하고 종료합니다. 또한 대화형 TUI 배너에 실행 중인 버전이 표시되어 현재 버전을 한눈에 확인할 수 있습니다.
    • 종속성 관리가 uv로 통합됨 (#155 해결): 이제 uv.lock이 모든 종속성의 단일 정보 출처입니다. 중복된 requirements.txt 파일은 폐기되었습니다. Docker UI 이미지와 보안 스캔 워크플로는 uv export를 통해 uv.lock에서 설치하므로, 제공되는 항목과 스캔되는 항목이 잠긴 종속성에서 더 이상 벗어나지 않습니다. pip install stride-gpt 사용자에게는 변경 사항이 없습니다.
    • 문서화: README에 샘플 위협 모델 마크다운 출력(#151)과 대화형 REPL 치트 시트(#163)를 추가했습니다.

    버전 0.18

    • 임베디드 draw.io 다이어그램 편집기 (#132, #138): Streamlit 위협 모델 탭에 diagrams.net 편집기가 내장되어 앱 내에서 아키텍처 다이어그램을 스케치할 수 있습니다. 저장 시 다이어그램 XML이 파싱(구성 요소, 연결, 신뢰 경계)되어 위협 모델 프롬프트에 통합됩니다. GitHub 분석, 이미지 업로드, 다이어그램 편집기, AI 지원 가이드 빌더가 하나의 탭 형태인 "애플리케이션 설명" 섹션으로 통합되어 단일 설명 캔버스 위에서 작동하므로 선택적 입력이 더 이상 기본 설명 필드를 가리지 않습니다. 가이드 빌더는 이제 선택한 모델을 호출하여 설명 초안을 작성하고 누락된 보안 관련 세부 사항을 제안하며, 이전의 정적 템플릿 및 적용 범위 검사를 대체합니다. 자체 호스팅 또는 폐쇄망 배포의 경우 편집기 호스트는 STRIDE_GPT_DRAWIO_URL을 통해 구성 가능하며(기본값 embed.diagrams.net), iframe postMessage 오리진은 해당 호스트로 범위가 제한되며, 신뢰할 수 없는 다이어그램 XML은 defusedxml로 파싱됩니다.
    • DeepSeek 제공업체 지원 (#133 해결): DeepSeek이 CLI 설정 마법사와 Streamlit UI 모두에서 일급 모델 제공업체로 추가되어 deepseek-v4-pro 및 deepseek-v4-flash를 제공합니다. 호출은 LiteLLM의 네이티브 deepseek/ 통합(호스팅 엔드포인트, 사용자 정의 기본 URL 불필요)을 통해 라우팅됩니다. 키는 DEEPSEEK_API_KEY를 통해 설정합니다.
    • 데이터 흐름 다이어그램(DFD) 지원 (#56 해결): Streamlit UI에 새로운 "데이터 흐름 다이어그램" 탭이 추가되어 애플리케이션 설명에서 DFD를 생성하고, 시각적 모델을 통해 업로드된 DFD 이미지를 파싱하며, 실시간 미리보기가 포함된 편집 가능한 Mermaid 소스 창을 렌더링합니다. "이 DFD를 위협 모델에 사용" 체크박스를 선택하면 확인된 다이어그램이 세션 상태에 저장되고 이후의 위협 모델 및 공격 트리 프롬프트에 권위 있는 시스템 모델로 삽입됩니다. 이는 설명 → DFD → 검토 → 개선된 위협 모델 루프를 요청대로 완성합니다. CLI의 /analyze 에이전트는 또한 종합 후 시스템 수준 DFD를 생성하며, 마크다운 보고서에서는 Mermaid 블록으로 렌더링되고, JSON data_flow_diagram 필드에 포함되며, HTML 뷰에서는 CDN에서 로드된 Mermaid 런타임을 통해 표시됩니다. DFD 생성은 잘못된 다이어그램이 양호한 보고서를 실패시키지 않도록 래핑됩니다.
    • GitHub 저장소 분석 오류의 우아한 처리 (#92 해결): 이제 Streamlit UI는 저장소 분석 중 GitHub API 실패를 원시 스택 트레이스 대신 포착하여 404(세분화된 PAT 범위 지정 포함, 공개 저장소도 404 발생), 401, 403/속도 제한, 네트워크 오류에 대한 실행 가능한 메시지를 표시합니다. 저장소 URL은 파싱 전에 정규화(후행 / 및 .git 접미사 제거)되므로 .../repo/ 및 .../repo.git이 더 이상 잘못된 404를 발생시키지 않습니다.
    • 보고서와 함께 구조화된 중간 산출물 (#122 해결): /analyze 또는 /quick에 -o <path>가 전달되면 보고서 옆에 JSON 파일이 작성됩니다. <stem>.plan.json (AnalysisPlan), <stem>.findings.json (하위 시스템 결과, 교차 위협, 데이터 흐름 다이어그램), <stem>.run.json (RunManifest - 모델, 구성 해시, 버전, 타이밍, 실제로 로드된 참조 카드, 실행 완료 여부 또는 호출 상한으로 인한 중단 여부를 나타내는 run_summary 기록). 매니페스트는 API 키와 엔드포인트를 제외하고 파일 시스템 경로를 가리므로 커밋하거나 티켓에 첨부해도 안전합니다. -f 형식 플래그는 보고서 아티팩트에만 적용되며, 자매 파일은 항상 JSON입니다.
    • 쉼표로 구분된 MITRE ATT&CK 복구 (#134 해결): 작업자 모델이 MITRE_ATTACK를 표준 목록 형태 대신 쉼표로 구분된 문자열(예: "T1190, T1059, AML.T0053")로 반환할 때, 기술 ID가 이제 삭제되지 않고 복구됩니다. 이전에는 마크다운/HTML 보고서에 "MITRE ATT&CK" 열이 표시되었지만 모든 셀이 비어 있었고, SARIF 내보내기에서 ID가 완전히 손실되었습니다. 모든 렌더러(마크다운, HTML 알약, SARIF)와 열 가시성 검사는 이제 단일 정규화기를 통해 라우팅되며, 기술 ID가 아닌 자유 형식의 산문은 필터링되어 열에 오탐(false positive)이 채워지지 않습니다.
    • 0.18.1 패치 (#159 해결): 환경에 클라우드 제공업체 키가 없을 때 LM Studio 호출이 The api_key client option must be set 오류와 함께 실패하는 문제를 수정했습니다. LM Studio는 LiteLLM의 openai/ 접두사를 통해 라우팅되며, OpenAI SDK는 api_base가 localhost를 가리키더라도 키 없이 클라이언트를 빌드하는 것을 거부하므로 이제 CLI는 인증하지 않는 제공업체에 대해 자리 표시자를 전달합니다. 관련하여, 작업자 계층의 최후 수단 환경 스캔은 더 이상 해당 제공업체에 적용되지 않습니다. 구성된 ANTHROPIC_API_KEY 또는 OPENAI_API_KEY가 이전에는 api_base가 명명한 모든 호스트로 전송되어 이 버그를 가리고 실제 키를 네트워크에 노출했습니다. LM Studio를 사용하고 이러한 키가 설정된 경우 더 이상 엔드포인트로 전송되지 않습니다.

    버전 0.17

    • MITRE ATT&CK 및 ATLAS 통합 (#36 해결): /analyze 및 /quick에서 생성된 위협은 이제 MITRE ATT&CK Enterprise (v17.1) 및 MITRE ATLAS (2026.05)의 표준화된 적 기술자 ID를 포함할 수 있습니다. 두 개의 새로운 점진적 공개 참조 카드(mitre_enterprise, mitre_atlas)는 에이전트가 카탈로그화된 ID와 이름만 사용하도록 지시하여 ID 환각을 제거합니다. 카드는 모델 리콜이 아닌 scripts/refresh_mitre_cards.py를 통해 상류 STIX/YAML에서 재생성됩니다. 기술은 마크다운 테이블에서 MITRE ATT&CK 열로, HTML에서 클릭 가능한 하늘색 알약으로, SARIF에서 properties.mitre_attack 배열로 렌더링됩니다.
    • HTML 보고서 동반: /analyze 및 /quick은 이제 마크다운/JSON/SARIF 출력과 함께 이해 관계자와 공유하기에 적합한 자체 포함 브라우저 뷰 가능 HTML 보고서를 생성합니다.
    • Anthropic Claude Opus 4.8: 기존 Opus 4.7과 함께 Anthropic의 최신 프론티어 등급 모델인 claude-opus-4-8에 대한 지원이 추가되었습니다. 둘 중 하나를 아키텍트 또는 작업자 모델로 선택할 수 있습니다.
    • UI 이미지 통합: 이중 네임스페이스 Docker 설정(mrwadams/stridegpt-ui)이 사라지고, Streamlit 웹 UI는 이제 mrwadams/stridegpt에만 있습니다. CLI 사용자는 컨테이너를 가져오는 대신 pip install stride-gpt를 사용해야 합니다.
    • 종속성 위생: 사용되지 않은 mistralai 패키지(Mistral 접근은 이미 LiteLLM을 통해 흐름)를 제거했습니다. UI 이미지의 python:3.12-slim 베이스를 새로 고치고 curl을 제거하여 PR #113–#115에서 21개의 중간/높음 CVE 알림을 제거했습니다.
    • 코드 품질 정리: CodeQL 참고 알림(사용되지 않은 임포트, bare except, 데드 코드)을 제거했습니다(#116).

    버전 0.16

    • 독립형 CLI: 레거시 Streamlit 웹 UI와 분리된 pip install stride-gpt CLI로서 STRIDE-GPT의 첫 번째 릴리스입니다. 두 가지 주요 명령: /analyze (계획자, 하위 시스템별 도구 사용 에이전트 루프, 교차 절단 종합 패스를 통한 자율적 에이전트 코드베이스 분석) 및 /quick (작성된 애플리케이션 설명에서 단일 샷 위협 모델).
    • 점진적 공개 참조 카드: genai (OWASP LLM Top 10), agentic (OWASP ASI Top 10), insider_threat 카드는 YAML 프론트매터를 통해 자체 설명합니다. 에이전트는 list_references를 통해 이를 발견하고 load_reference를 통해 본문을 가져옵니다.
    • 2계층 모델 라우팅: 비용 효율적인 분석을 위한 아키텍트 + 작업자 모델 분할, 프론티어 등급 모델은 계획 및 종합에 예약됩니다.
    • 대화형 REPL: 탭 완성, 기록, 실시간 진행 상황 및 상태 라인을 갖춘 풀 기능 터미널 환경.
    • 다중 형식 출력: Markdown, JSON, SARIF(GitHub, GitLab, Azure DevOps, IDE로 가져오기).
    • 0.16.1 패치: stride_gpt/__init__.py에서 LiteLLM 로거를 ERROR로 올려 Bedrock/SageMaker 사전 로드 경고가 botocore가 없는 새 설치에 나타나지 않도록 했습니다.
    이전 버전(0.15 이하)의 릴리스 노트를 보려면 클릭하세요.

    버전 0.15

    • 에이전트 AI 애플리케이션 지원: OWASP Top 10 for Agentic Applications (ASI01-ASI10) 통합을 통한 에이전트 AI 시스템 위협 모델링에 대한 포괄적인 지원이 추가되었습니다. "Agentic AI application"을 선택하고 시스템을 설명하면 LLM이 자동으로 아키텍처 패턴을 탐지하고 관련 위협 범주를 적용합니다. 각 ASI 위험은 일관된 위협 분석을 위해 적절한 STRIDE 범주에 매핑됩니다.

    • 생성형 AI 애플리케이션 지원: OWASP LLM Top 10 (LLM01-LLM10) 통합을 통한 GenAI 애플리케이션 위협 모델링 지원이 추가되었습니다. "Generative AI application"을 선택하고 시스템을 설명하면 맞춤형 LLM 특화 위협 분석을 받을 수 있습니다. 에이전트 AI 애플리케이션은 포괄적인 범위를 위해 LLM 및 ASI 위험 범주를 모두 포함합니다.

    • MAESTRO 영감 아키텍처 패턴 탐지: Cloud Security Alliance MAESTRO 프레임워크에서 영감을 받아 애플리케이션 설명에서 아키텍처 패턴을 자동 탐지하는 강화된 에이전트 위협 분석이 추가되었습니다. LLM은 이제 다음에 대한 패턴별 위협을 식별하고 적용합니다:

      • RAG/검색 시스템: 벡터 저장소 중독, 임베딩 조작, 교차 테넌트 누출
      • 다중 에이전트 시스템: 에이전트 사칭, 에이전트 간 메시지 변조, 연쇄 손상
      • 코드 실행 환경: 샌드박스 이스케이프, 컨테이너 탈출, 악성 코드 생성
      • 도구/MCP 생태계: 악성 도구 제공자, 공급망 공격, 혼동된 대리자 취약점
      • 영구 메모리: 메모리 중독, 교차 세션 누출, 상태 조작
      • 자율 운영: 악성 에이전트 지속성, 인간 감독 우회, 통제 불능 루프
    • 교차 계층 위협 분석: 위협 모델에는 이제 한 아키텍처 계층의 손상이 다른 계층에 대한 공격을 가능하게 하는 방법(예: RAG 중독 → 에이전트 목표 하이재킹 → 도구 오용 → 데이터 유출)을 보여주는 구성 요소 간 공격 체인이 포함됩니다.

    • 향상된 개선 제안: 에이전트 애플리케이션의 경우 개선 제안에서 이제 에이전트 프레임워크, 에이전트 간 통신 프로토콜, 샌드박스 메커니즘, 회로 차단기 구현과 같은 특정 아키텍처 세부 사항을 묻습니다.

    • OpenAI 모델 업데이트: GPT-5.2 시리즈 모델(gpt-5.2, gpt-5.2-pro, gpt-5-mini, gpt-5-nano, gpt-5, gpt-4.1)로 업데이트되었습니다. 더 이상 사용되지 않는 모델(gpt-4o, gpt-4o-mini, o3, o3-mini, o4-mini)이 제거되었습니다.

    • Anthropic Claude 4.5 모델: Claude 4.5 시리즈(claude-sonnet-4-5, claude-haiku-4-5, claude-opus-4-5)로 업데이트되었습니다. 모든 Claude 모델에 대해 확장된 추론 기능을 위한 "Extended Thinking 활성화" 체크박스가 추가되었습니다. 최대 토큰이 32k(표준) 및 48k(생각 모드)로 증가했습니다.

    • Google Gemini 3 프리뷰: Gemini 2.5 모델과 함께 Gemini 3 프리뷰 모델(gemini-3-pro-preview, gemini-3-flash-preview)이 추가되었습니다. Gemini 3 모델에 대한 확장된 생각 모드 지원이 추가되었습니다.

    • Mistral 모델 업데이트: Mistral Large 3, Medium 3.1, Small 3.2, Ministral 3 (8B/14B), Magistral 1.2 (Medium/Small)을 포함한 최신 버전의 Mistral 모델로 업데이트되었습니다.

    • 새 프로젝트 로고: 더 깔끔하고 미니멀한 방패 + 신경망 디자인으로 브랜딩이 갱신되었습니다.

    • 버그 수정: 다운로드 버튼을 클릭한 후 위협 모델 출력이 사라지는 문제를 수정했습니다.

    버전 0.14.1

    • 보안 인프라: 포괄적인 자동 보안 스캔 및 강화가 추가되었습니다:
      • Bandit(Python 보안), CodeQL(취약점 탐지), pip-audit(종속성 스캔), Safety(패키지 취약점), Gitleaks(비밀 탐지), Trivy(Docker 이미지 스캔)를 위한 GitHub Actions 워크플로
      • 취약점 보고 프로세스(48시간 응답 SLA) 및 보안 모범 사례를 포함한 SECURITY.md
      • 보안 강화, 리소스 제한, 프로덕션 준비 docker-compose.yml을 포함한 향상된 Docker 구성
      • 자동화된 주간 종속성 업데이트를 위한 Dependabot 구성
      • 프로덕션 준비 비밀 관리 지침(Docker Swarm 비밀, 클라우드 비밀 관리자)
    • 엔터프라이즈 운영 가이드: 보안 통제, 규정 준수 요구 사항, 승인된 기술 스택 및 엔터프라이즈 사용을 위한 배포 패턴을 포함하여 조직 컨텍스트로 STRIDE-GPT를 커스터마이징하기 위한 포괄적인 가이드가 추가되었습니다.

    버전 0.14


    (End of chunk 1)- GPT-5 시리즈 지원: 모든 위협 모델링 기능에 OpenAI의 GPT-5 시리즈 모델(gpt-5, gpt-5-mini, gpt-5-nano)에 대한 포괄적인 지원을 추가했습니다. 이러한 고급 추론 모델은 내부 추론과 출력 생성을 위한 적절한 토큰 할당을 통해 향상된 분석 기능을 제공합니다.

    • Anthropic Claude 4 통합: Anthropic의 최신 Claude 4 모델(claude-opus-4-1-20250805, claude-opus-4-20250514, claude-sonnet-4-20250514)에 대한 지원을 추가하여 기능이 향상되었습니다.
    • GitHub Enterprise 지원: GitHub Enterprise 저장소에 대한 지원을 추가했습니다. 이제 도구가 저장소 URL을 기반으로 적절한 API 엔드포인트를 자동으로 감지하고 구성하여 프라이빗 GitHub Enterprise 인스턴스에서 호스팅되는 저장소를 쉽게 분석할 수 있습니다. (@danielpops님의 기여에 감사드립니다!)
    • 향상된 추론 모델 통합: GPT-5 및 기타 OpenAI 추론 모델에 대해 더 이상 사용되지 않는 max_tokens 대신 max_completion_tokens를 사용하도록 매개변수 처리를 업데이트하여 OpenAI의 최신 API 요구 사항과의 호환성을 보장했습니다.
    • DREAD 평가 개선: DREAD 평가 시나리오 설명에서 잘림 제한을 제거하여 사용자가 위험 평가 테이블에서 축약된 "..." 버전 대신 완전한 위협 시나리오를 볼 수 있도록 했습니다.
    • 보안 업데이트: Snyk에서 식별된 보안 취약점을 해결하기 위해 종속성을 업데이트했습니다. 여기에는 anyio, zipp, tornado, requests, urllib3 업데이트가 포함됩니다.
    • Mistral 모델 업데이트: Magistral Medium/Small(추론 모델), Mistral Medium, Ministral 8B를 포함한 Mistral의 최신 모델에 대한 지원을 추가했습니다.
    • Groq 모델 업데이트: OpenAI GPT-OSS 모델(120B, 20B)로 Groq 모델 선택을 업데이트하고, Llama 3.3 70B 및 3.1 8B를 유지하며, DeepSeek R1을 유지하고 Moonshot Kimi K2 및 Qwen3 32B를 추가했습니다.
    • Google Gemini 2.5 GA 업데이트: 이전 미리보기 버전을 대체하여 Gemini 2.5 모델(Pro, Flash, Flash Lite)의 일반 공급 버전을 사용하도록 업데이트했습니다.
    • 프로젝트 지원: 사이드바에 "Buy me a coffee" 버튼을 추가하여 사용자가 STRIDE GPT의 지속적인 개발 및 유지보수를 지원할 수 있도록 했습니다.

    버전 0.13

    • 새로운 OpenAI 모델: OpenAI의 최신 모델인 gpt-4.1, o3, o4-mini에 대한 지원을 추가하면서 o3-mini에 대한 지원을 유지했습니다. 이러한 추론 모델은 상세한 분석 기능을 제공합니다.
    • 새로운 Google GenAI SDK로 마이그레이션: 완전히 새로운 Google GenAI SDK로 마이그레이션하여 더 이상 사용되지 않는 Google Generative AI 라이브러리에 대한 모든 종속성을 제거했습니다. 일관성과 성능 향상을 위해 모든 모듈에서 Gemini(Google AI) 모델 통합을 리팩터링했습니다.
    • 추론 모델 지원 강화: 위협 모델 생성, 공격 트리, 완화 조치, DREAD 평가를 포함한 모든 위협 모델링 기능에서 OpenAI의 모든 추론 모델(o1, o3, o3-mini, o4-mini)과 함께 작동하도록 추론 프레임워크를 확장했습니다.
    • 토큰 제한 증가: 새 모델의 확장된 컨텍스트, 특히 100만 토큰을 지원하는 gpt-4.1 및 200K 토큰을 지원하는 o4-mini의 이점을 활용하기 위해 토큰 제한을 업데이트했습니다.
    • 멀티모달 지원 강화: 이미지 업로드 및 분석이 이제 Gemini 2.5, Claude 3, Claude 4 모델을 포함한 더 많은 모델에서 작동합니다. 모든 비전 지원 모델에서 다양한 이미지 형식 분석 지원이 확장되었습니다.
    • 최신 Gemini 미리보기 모델로 업데이트: 성능 및 기능 향상을 위해 최신 버전의 Gemini 미리보기 모델로 전환했습니다.

    버전 0.12

    • Claude 3.7 통합: 모든 위협 모델링 기능에 Anthropic의 Claude 3.7 모델에 대한 포괄적인 지원을 추가했습니다. 여기에는 분석 중 더 자세한 추론을 제공하는 혁신적인 "thinking mode"가 포함됩니다.
    • GitHub 저장소 분석 개선: 지능형 파일 선택, 더 나은 프로그래밍 언어 지원, 분석 중 진행 상황 추적을 통해 GitHub 저장소 분석 기능을 크게 향상시켰습니다.
    • GPT-4.5 미리보기 지원: 향상된 모델 선택 안내 및 설명과 함께 OpenAI의 GPT-4.5 미리보기 모델에 대한 지원을 추가했습니다.
    • 성능 최적화: 더 나은 토큰 사용 추적 및 토큰 제한 접근 경고 시스템을 통해 전반적인 애플리케이션 성능을 개선했습니다.

    버전 0.11

    • LM Studio Server 지원: LM Studio Server를 모델 제공자로 사용할 수 있는 지원을 추가하여 사용자가 OpenAI 호환 API 엔드포인트로 자체 로컬 LLM을 실행할 수 있게 되었습니다.
    • Google Gemini 공격 트리 지원: Google Gemini 모델을 사용하여 공격 트리를 생성할 수 있는 지원을 추가하여 사용 가능한 옵션을 확장했습니다.
    • 새로운 모델 지원: 추론 모델(OpenAI의 o1 및 o3-mini, Groq API를 통한 DeepSeek R1) 및 더 빠른 추론을 위해 Google에서 새로 출시한 Gemini 2.0 Flash에 대한 지원을 추가했습니다.
    • 공격 트리 생성 개선: 강력한 JSON 파싱 및 Mermaid 다이어그램 변환으로 공격 트리 생성을 개선하여 출력의 신뢰성과 시각적 매력을 높였습니다.
    • 동적 모델 검색: LM Studio Server에 대한 자동 모델 검색을 추가하여 사용자가 로컬 인스턴스에서 사용 가능한 모델을 선택할 수 있게 되었습니다.
    • 위협 모델 생성 개선: 더 포괄적이고 실행 가능한 결과를 생성하기 위해 위협 모델 생성을 위한 안내 및 프롬프트를 개선했습니다.
    • 구조화된 출력 지원: 안정적인 위협 모델 및 DREAD 평가 생성을 보장하기 위해 모든 모델 제공자에서 JSON 출력 처리를 개선했습니다.
    • UI 개선: 새로운 모델 구성을 수용하고 로컬 LLM 제한에 대한 경고 메시지를 개선하기 위해 사용자 인터페이스를 업데이트했습니다.

    버전 0.10

    • GitHub 저장소 분석: STRIDE GPT가 이제 GitHub 저장소의 자동 분석을 지원합니다. 사용자는 GitHub 저장소 URL을 제공할 수 있으며, 도구는 README 및 주요 파일을 분석하여 더 포괄적인 위협 모델을 생성합니다.
    • 환경 변수 지원: 환경 변수에서 API 키 및 기타 구성을 로드할 수 있는 지원을 추가하여 보안과 배포 용이성을 개선했습니다.
    • 오류 처리 개선: API 호출에 대한 오류 처리 및 재시도 메커니즘을 개선하여 안정성을 높였습니다.
    • UI 개선: 새로운 기능을 수용하고 전반적인 사용자 경험을 개선하기 위해 사용자 인터페이스를 업데이트했습니다.

    버전 0.9

    릴리스 하이라이트:

    • Mistral Client v1.0: STRIDE GPT가 이제 Mistral Client v1.0을 사용하여 최신 Mistral API에서 도입된 주요 변경 사항을 해결했습니다. 이를 통해 STRIDE GPT 사용자는 위협 모델링 작업에 Mistral API를 계속 활용할 수 있습니다.

    버전 0.8.1

    이 릴리스에서는 다음 모델에 대한 지원이 추가되었습니다:

    • GPT4o mini: OpenAI에서 최근 출시한 GPT4o mini 모델에 대한 지원을 추가했습니다. GPT4o mini는 비용 효율적인 소형 모델로 위협 모델링 작업에 여전히 높은 품질의 응답을 제공합니다.
    • Gemini 1.5 Pro (안정): 이제 사용자는 Gemini 1.5 Pro 모델의 안정 버전 또는 미리보기 버전 중에서 선택할 수 있습니다.

    버전 0.8

    릴리스 하이라이트:

    • DREAD 위험 점수: STRIDE GPT가 이제 DREAD 위험 점수를 지원하여 사용자가 DREAD 모델을 기반으로 식별된 위협에 위험 점수를 할당할 수 있습니다. 이 기능은 더 포괄적인 위협 평가를 제공하고 완화 노력의 우선 순위를 지정하는 데 도움이 됩니다.
    • Gherkin 테스트 케이스: 이제 사용자는 식별된 위협을 기반으로 Gherkin 테스트 케이스를 생성할 수 있습니다. 이 기능은 위협 모델링과 테스트 간의 간극을 메우는 데 도움이 되어 보안 고려 사항이 테스트 프로세스에 통합되도록 보장합니다.
    • UI 개선: 사용자 인터페이스를 새로 고쳐 애플리케이션 및 해당 기능을 더 쉽게 탐색하고 상호 작용할 수 있도록 했습니다.

    버전 0.7

    릴리스 하이라이트:

    • 멀티모달 위협 모델링: STRIDE GPT가 이제 OpenAI의 GPT-4o 및 GPT-4-Turbo 모델을 사용한 멀티모달 위협 모델링을 지원합니다. 사용자는 아키텍처 다이어그램, 순서도 또는 애플리케이션의 기타 시각적 표현 이미지를 제공하여 위협 모델링 프로세스를 향상시킬 수 있습니다.
    • Google AI 통합: Google AI API를 통한 Gemini 1.5 Pro 지원을 추가했습니다. Gemini가 JSON 출력을 일관되게 생성하지 못할 수 있으므로 일부 요청을 다시 시도해야 할 수 있습니다. 또한 Google의 안전 제한으로 인해 Google AI 모델을 사용하여 공격 트리를 생성할 수 없습니다.
    • 코드베이스 리팩토링: 유지보수성과 가독성을 개선하기 위해 코드베이스의 일부를 리팩토링했습니다. 이를 통해 향후 릴리스에서 새로운 기능과 개선 사항을 더 쉽게 추가할 수 있습니다.
    • 버그 수정: 사소한 버그 수정 및 오류 처리 개선.

    버전 0.6

    릴리스 하이라이트:

    • Mistral API 통합: 이제 사용자는 Mistral AI가 제공하는 LLM을 선택하여 위협 모델, 공격 트리 및 완화 제안을 생성할 수 있습니다. 이는 OpenAI의 GPT 모델에 대한 대안을 제공하여 사용자에게 더 큰 유연성과 선택권을 제공합니다.
    • 프롬프트 개선: 더 많은 사람들이 업무용으로 STRIDE GPT를 사용함에 따라 위협 모델 프롬프트 템플릿을 업데이트하여 LLM이 더 포괄적인 출력을 생성하도록 장려했습니다. 이제 사용자는 각 STRIDE 범주 내에서 여러 위협이 식별되는 것을 볼 수 있습니다.
    • 공개 로드맵: 향후 기능 및 개선 사항에 대한 가시성을 제공하기 위해 공개 로드맵을 만들었습니다.
    • UI 개선: 새로운 Mistral API 통합을 수용하고 전반적인 사용자 경험을 개선하기 위해 UI를 약간 업데이트했습니다.

    버전 0.5

    릴리스 하이라이트:

    • Docker 컨테이너 이미지: 공개 및 프라이빗 클라우드에 STRIDE GPT를 더 쉽게 배포할 수 있도록 이제 Docker 컨테이너 이미지로 Docker Hub에서 제공됩니다.

    버전 0.4

    릴리스 하이라이트:

    • 새로운 GPT 모델 통합: 이제 애플리케이션이 최신 "gpt-4-1106-preview" 및 "gpt-3.5-turbo-1106" 모델을 지원하여 위협 모델링 및 공격 트리 생성을 위한 고급 기능과 더 정확한 응답을 제공합니다.
    • 직접 OpenAI API 호출: STRIDE GPT가 이제 최근 도입된 JSON 모드를 활용하기 위해 OpenAI API를 직접 호출합니다. 이는 위협 모델 생성 시 구문 오류 가능성을 크게 줄여야 합니다.
    • 공격 트리 생성 개선: 공격 트리 생성 프로세스를 더 안정적으로 개선하여 Mermaid 다이어그램 생성 시 구문 오류를 최소화하고 시각화의 전반적인 품질을 향상시켰습니다.
    • 새로운 로고 및 색상 구성: 새로워진 색상 구성과 새로운 로고(DALL·E 3으로 생성).
    • 지속적인 버그 수정 및 성능 개선: 기존 버그를 해결하고 더 나은 성능을 위해 애플리케이션을 최적화하여 더 부드럽고 효율적인 사용자 경험을 보장하는 소수의 추가 업데이트를 수행했습니다.

    버전 0.3

    릴리스 하이라이트:

    • 위협 완화: STRIDE GPT가 이제 위협 모델링 단계에서 식별된 위협에 대한 잠재적 완화 조치를 제안할 수 있습니다. 이는 사용자가 식별된 위협을 방지하거나 영향을 최소화하기 위한 전략을 개발하는 데 도움이 됩니다.
    • 다운로드 가능한 출력: 이제 사용자는 생성된 위협 모델, 공격 트리 및 완화 조치를 Markdown 파일로 애플리케이션에서 직접 다운로드할 수 있습니다. 이를 통해 생성된 출력을 쉽게 공유하고 문서화할 수 있습니다.
    • 개선된 사용자 인터페이스: 더 부드럽고 직관적인 사용자 경험을 제공하기 위해 사용자 인터페이스를 더욱 개선했습니다. 더 나은 가독성과 사용성을 위해 애플리케이션 레이아웃이 최적화되었습니다.
    • 업데이트된 GPT 모델: STRIDE GPT가 이제 GPT-3.5-turbo 및 GPT-4 모델의 최신 0613 버전을 지원합니다. 이러한 업데이트된 모델은 향상된 성능과 생성된 출력에 대한 향상된 제어 기능을 제공합니다.
    • 버그 수정 및 성능 향상: 여러 버그를 해결하고 더 안정적이고 응답성이 뛰어난 애플리케이션을 위해 성능을 개선했습니다.

    버전 0.2

    릴리스 하이라이트:

    • 공격 트리 생성: 위협 모델 생성 외에도 STRIDE GPT가 이제 제공된 세부 정보를 기반으로 애플리케이션에 대한 공격 트리를 생성할 수 있습니다. 이는 사용자가 애플리케이션에 대한 잠재적 공격 경로를 더 잘 이해하는 데 도움이 됩니다.
    • 공격 트리 시각화: 이는 실험적 기능으로, 사용자가 Mermaid.js를 사용하여 앱 내에서 직접 생성된 공격 트리를 시각화할 수 있습니다. 이를 통해 STRIDE GPT 인터페이스 내에서 더 대화형 경험을 제공합니다.
    • GPT-4 모델 지원: STRIDE GPT가 이제 OpenAI의 GPT-4 모델 사용을 지원합니다. 단, 사용자가 GPT-4 API에 액세스할 수 있어야 합니다. 이를 통해 사용자는 최신 GPT 기술의 발전을 활용하여 더 정확하고 포괄적인 위협 모델과 공격 트리를 생성할 수 있습니다.
    • 레이아웃 및 구성 개선: 앱 레이아웃을 재구성하여 탐색과 사용을 더 쉽게 만들었습니다. 위협 모델 및 공격 트리와 같은 주요 섹션은 더 깔끔하고 직관적인 사용자 경험을 위해 접을 수 있는 섹션으로 구성되었습니다.

    버전 0.1

    애플리케이션의 초기 릴리스.

    설치

    옵션 1: pip (CLI 전용)```bash

    pip install stride-gpt

    root@kitploit:~
    이것은 `stride-gpt` 명령을 설치합니다. CLI와 Streamlit 웹 UI는 이제 별개의 제품입니다 — `pip install stride-gpt`는 Streamlit이 없는 가벼운 CLI를 제공합니다. 소스에서 웹 UI를 실행하려면 아래 Option 2를 참조하세요.
    
    ### Option 2: 소스에서
    
    1. 리포지토리 클론:
    
        ```bash
        git clone https://github.com/mrwadams/stride-gpt.git
        cd stride-gpt
        ```
    
    2. [uv](https://docs.astral.sh/uv/)로 설치 (권장 — `uv.lock`이 의존성의 단일 정보 출처입니다):   ```bash
       # CLI plus the Streamlit web UI deps
       uv sync
    

    또는 CLI만 pip로 설치하세요: ```bash pip install -e .

    root@kitploit:~
    3. (선택 사항) 환경 변수 설정:   ```bash
    cp .env.example .env
    

    .env를 편집하여 API 키를 추가하세요 — 또는 나중에 stride-gpt를 실행하고 대화형 REPL에서 /config 명령을 사용하거나 Streamlit UI를 통해 구성할 수 있습니다.

    옵션 3: Docker (웹 UI)

    Streamlit 웹 UI는 Docker 이미지로 제공됩니다:```bash docker pull mrwadams/stridegpt:latest

    root@kitploit:~
    For the CLI, use `pip install stride-gpt` — there's no separate CLI image. If you need a sandboxed CLI, roll your own from a minimal Python base image.
    
    ## 저장소 구조
    
    STRIDE-GPT는 소규모 모노레포로 구성되어 있습니다: 하나의 공유 Python 라이브러리와 이를 사용하는 하나 이상의 앱으로 이루어져 있습니다.```
    stride-gpt/
    ├── stride_gpt/    # shared library + Python CLI (core, agent loop, prompts, schemas, models)
    ├── apps/
    │   └── web/       # Streamlit web UI
    ├── tests/         # pytest suite
    └── pyproject.toml # single project file; web UI deps live in the `web` dependency-group
    

    apps/ 디렉토리는 추가 배포 가능한 프론트엔드를 위한 슬롯입니다. 예를 들어, 미래의 Node/TypeScript CLI는 apps/web/ 옆에 위치할 것입니다. Python CLI 자체는 공유 라이브러리와 밀접하게 결합되어 있기 때문에 stride_gpt/cli.py에 남아 있습니다.

    Usage

    CLI

    에이전트 기반 코드베이스 분석 — 에이전트가 자율적으로 코드베이스를 탐색하고, 분석을 계획하며, STRIDE 위협 모델을 생성합니다:```bash

    Analyze the current directory

    stride-gpt analyze .

    Specify a model and auto-approve the analysis plan

    stride-gpt analyze ./my-app --worker-model anthropic/claude-sonnet-4-6 -y

    Export as JSON, SARIF, or browser-viewable HTML

    stride-gpt analyze . -o report.json -f json # also writes report.html alongside stride-gpt analyze . -o report.sarif -f sarif stride-gpt analyze . -o report.html -f html

    root@kitploit:~
    > 모든 분석 결과는 `~/.stride-gpt/reports/analyze/`에 JSON 및 HTML 파일로 자동 저장되므로, `-o` 옵션 없이 실행한 경우에도 브라우저에서 볼 수 있는 보기가 항상 클릭 한 번으로 가능합니다.
    
    > **비용 참고:** 에이전트 기반 분석은 철저히 수행됩니다. 에이전트는 탐색 과정에서 많은 LLM 호출을 하고 여러 파일을 읽습니다. 토큰 사용량과 비용은 코드베이스 크기와 선택한 모델에 따라 증가하며, 대규모 저장소에서 최첨단 모델을 사용하여 전체 실행 시 비용이 많이 들 수 있습니다. 실행 전에 제공업체 대시보드에서 지출 한도를 설정하고, 첫 번째 패스에는 더 빠르고 저렴한 모델을 고려하세요.
    
    **빠른 단일 실행 모드** — 텍스트 설명에서 위협 모델 생성 (Streamlit UI와 유사하지만 터미널에서):```bash
    # Read description from a file
    stride-gpt quick -i app-description.txt
    
    # Pipe from stdin
    echo "A web API that processes payments..." | stride-gpt quick
    

    대화형 REPL — 탭 완성 및 히스토리를 지원하는 대화형 세션을 시작합니다:```bash stride-gpt

    root@kitploit:~
    REPL 내부에서 `/help`를 입력하면 사용 가능한 명령어와 플래그를 볼 수 있습니다. 버전은 시작 시 ASCII 배너 아래에 표시됩니다. 전체 명령어 및 단축키 참조는 아래의 [대화형 REPL 치트 시트](#interactive-repl-cheat-sheet)를 참조하세요.
    
    #### 대화형 REPL 치트 시트
    
    `stride-gpt`(인수 없음)로 REPL을 실행한 후 다음 명령어와 단축키를 사용하세요.
    
    **명령어** — 프롬프트에 슬래시 명령어를 입력하세요:
    
    | 명령어 | 기능 |
    |---------|--------------|
    | `/analyze [path]` | 코드베이스를 분석하여 STRIDE 위협을 식별합니다(디렉터리 경로만 입력해도 됩니다) |
    | `/quick` | 텍스트 설명으로 빠른 위협 모델 생성 |
    | `/reports` | 이전 분석 보고서 목록 보기 (`/reports <n>`으로 하나의 보고서 보기) |
    | `/config` | 설정 보기 또는 변경 (모델, 제공자, API 키) |
    | `/help` | 사용 가능한 명령어, 플래그, 예제 보기 |
    | `/quit` | 종료 (별칭: `/exit`, `/q`) |
    
    `/analyze`, `/quick`, `/reports`는 플래그를 허용합니다: `-o`/`--output <경로>`, `-f`/`--format <markdown\|json\|sarif\|html>`, `-y`/`--yes`, `-i`/`--input <경로>` (`/quick`의 경우). 전체 목록은 `/help`를 입력하세요.
    
    **키보드 단축키:**
    
    | 키 | 동작 |
    |-----|--------|
    | `Tab` | 슬래시 명령어 및 파일 경로 자동 완성 |
    | `↑` / `↓` | 명령어 기록 탐색 |
    | `→` / `End` | 회색으로 표시된 기록 제안 수락 |
    | `Ctrl+L` | 화면 및 스크롤백 지우기 |
    | `Ctrl+C` / `Ctrl+D` | REPL 종료 |
    
    **설치된 버전 확인:**
    
    

    stride-gpt --version

    root@kitploit:~
    stride-gpt --version    # prints e.g. "stride-gpt 0.19.0" and exits
    ```
    **공통 플래그:**
    
    | 플래그 | 설명 |
    |------|-------------|
    | `--version` | 설치된 버전(`stride-gpt <version>`)을 출력하고 종료합니다 |
    | `-o`, `--output` | 보고서를 파일에 저장합니다 |
    | `-f`, `--format` | 출력 형식: `markdown` (기본값), `json`, `sarif`, `html` |
    | `-i`, `--input` | 파일에서 앱 설명을 읽어옵니다 (`quick` 전용) |
    | `-y`, `--yes` | 분석 계획을 자동 승인합니다 (`analyze` 전용) |
    | `--worker-model` | 대부분의 호출을 처리하는 기본 계층 모델 (예: `anthropic/claude-sonnet-4-6`). 생략 시 저장된 구성을 사용합니다. |
    | `--architect-model` | 계획/합성을 위한 더 강력한 모델 (예: `openai/gpt-5.4`). 생략 시 저장된 구성을 사용합니다. |
    | `--no-architect` | 이번 실행에서 architect 계층을 건너뜁니다; worker가 모든 호출을 처리합니다. |
    | `--app-type` | 플래너가 감지한 앱 유형을 재정의합니다 (`analyze` 전용): `auto` (기본값), `web`, `genai`, `agentic`. |
    | `--max-llm-calls` | 두 계층 모두에서 총 LLM 호출 수를 제한합니다 (`analyze` 전용; `0` = 무제한). |
    | `--max-tool-calls` | 총 도구 실행 횟수를 제한합니다 (`analyze` 전용; `0` = 무제한). |
    
    각 계층은 또한 `--worker-api-key` / `--worker-api-base` / `--worker-max-tokens` (그리고 `--architect-*`에 해당하는 플래그)를 허용합니다. 전체 목록은 `stride-gpt analyze --help` 또는 `stride-gpt quick --help`를 실행하세요.
    
    **구조화된 중간 파일** — `-o <경로>`를 사용하면 보고서와 함께 세 개의 JSON 파일이 생성되어 실행을 감사하거나 다운스트림 도구에서 사용할 수 있습니다:
    
    | 파일 | 내용 |
    |------|----------|
    | `<stem>.plan.json` | `AnalysisPlan` — architect가 생성한 하위 시스템, 집중 영역, 감지된 앱 유형 (analyze 전용). |
    | `<stem>.findings.json` | 하위 시스템별 `SubsystemFinding` 목록, 교차 위협, 시스템 수준 데이터 흐름 다이어그램 (analyze 전용). |
    | `<stem>.run.json` | `RunManifest` — 모델, 프롬프트 + 구성 해시, 에이전트가 실제로 로드한 참조, git SHA, 버전, 타이밍. `analyze` 및 `quick` 모두에 대해 생성됩니다. |
    
    형식 플래그(`-f`)는 보고서 아티팩트만 제어합니다; 함께 생성되는 파일은 항상 JSON입니다. 매니페스트 및 findings의 파일 경로는 수정됩니다 (작업 디렉터리 내의 경우 `./…`, `$HOME` 하위의 경우 `~/…`) 따라서 매니페스트를 공유해도 안전합니다. `~/.stride-gpt/reports/{analyze,quick}/`의 자동 보관은 영향을 받지 않습니다 — `-o`를 전달할 때만 함께 생성됩니다.
    
    **이전 보고서 보기:**```bash
    stride-gpt reports        # List recent reports
    stride-gpt reports 1      # View report #1
    stride-gpt reports 1 -o r.json -f json  # Export a report
    ```
    ### Streamlit 웹 UI
    
    웹 UI는 CLI와 별도의 앱입니다. 다음 명령어로 실행하세요:```bash
    streamlit run apps/web/main.py
    ```
    제공된 URL을 브라우저에서 열고 화면의 단계를 따르십시오.
    
    ### Docker```bash
    docker run -p 8501:8501 --env-file .env mrwadams/stridegpt
    ```
    ## Sample output
    
    모든 `stride-gpt analyze` 및 `stride-gpt quick` 실행은 기본적으로 마크다운 보고서를 생성합니다(JSON, SARIF 및 독립형 HTML 뷰는 `-f` 옵션으로 사용 가능). 마크다운은 STRIDE 테이블에서 하위 시스템별로 위협을 그룹화하고, 구성 요소에 걸친 위협에 대한 교차 섹션을 추가하며, 실행 요약으로 마무리됩니다. 선택적 열(OWASP LLM/ASI, Insider Category, MITRE ATT&CK)은 실행 시 해당 열이 채워질 때만 나타납니다.
    
    다음은 가상의 결제 API에 대한 실행에서 생성된 마크다운으로, 도구를 실행하기 전에 출력 형식을 확인할 수 있습니다. 이는 모의 데이터가 아닌 보고서 엔진의 실제 렌더링 결과입니다.
    
    <details>
    <summary>샘플 마크다운 위협 모델 (펼쳐 보기)</summary>````markdown
    # STRIDE Threat Model: acme-payments-api
    
    > Generated by STRIDE-GPT on 2026-07-16T09:42:00Z
    
    ## Overview
    
    A Python FastAPI service that accepts card payments, stores customer profiles in PostgreSQL, and calls a third-party payment processor. Authentication is handled by JWT bearer tokens issued by an internal auth service; the API is internet-facing behind an API gateway.
    
    ## Data Flow Diagram
    
    ```mermaid
    flowchart LR
        Client[Client App] -->|HTTPS + JWT| Gateway[API Gateway]
        Gateway --> API[Payments API]
        API -->|SQL| DB[(PostgreSQL)]
        API -->|HTTPS| Processor[Payment Processor]
    ```
    
    ## Authentication & Authorization
    
    ### Files Analyzed
    
    - `app/auth/jwt.py`
    - `app/auth/dependencies.py`
    
    ### Threats
    
    | Threat Type | Scenario | Potential Impact | MITRE ATT&CK |
    |-------------|----------|------------------|--------------|
    | Spoofing | An attacker forges a JWT using a weak or leaked signing secret to impersonate another customer. | Full account takeover and unauthorized access to stored payment methods. | T1550.001 (Application Access Token) |
    | Elevation of Privilege | A standard user calls an admin-only refund endpoint that only checks authentication, not role. | Unauthorized refunds and financial loss. | T1068 (Exploitation for Privilege Escalation) |
    
    ### Recommendations
    
    - Enforce role checks on every privileged route via a shared dependency, not per-handler logic.
    - Rotate and store the JWT signing secret in a managed secrets store rather than an env file.
    
    ## Payments & Data Storage
    
    ### Files Analyzed
    
    - `app/payments/routes.py`
    - `app/db/models.py`
    
    ### Threats
    
    | Threat Type | Scenario | Potential Impact | MITRE ATT&CK |
    |-------------|----------|------------------|--------------|
    | Information Disclosure | Full card numbers are logged in request debug logs when a payment fails. | PCI-DSS violation and exposure of cardholder data to anyone with log access. | T1552.001 (Credentials In Files) |
    | Tampering | The payment amount is taken from a client-supplied field and not re-validated server-side against the order. | A user pays less than the order total by editing the request body. |  |
    
    ### Recommendations
    
    - Redact PANs before logging and route logs through a PCI-scoped sink.
    - Derive the charge amount from the server-side order record, never the request body.
    
    ## Cross-Cutting Threats
    
    | Threat Type | Scenario | Potential Impact | MITRE ATT&CK | Affected Subsystems |
    |-------------|----------|------------------|--------------|---------------------|
    | Denial of Service | No rate limiting on the payment endpoint lets an attacker exhaust the processor quota and DB connections. | Legitimate payments fail during the attack; possible processor throttling. | T1499 (Endpoint Denial of Service) | Authentication & Authorization, Payments & Data Storage |
    
    ## Summary
    
    - **Total threats identified**: 5
    - **Subsystems analyzed**: 2
    - **Cross-cutting threats**: 1
    - **LLM calls**: 34
    - **Tool calls**: 58
    - **Architect model**: OpenAI API/gpt-5.4
    - **Worker model**: Anthropic API/claude-sonnet-4-6
    ````
    </details>
    
    `stride-gpt quick`는 작성된 설명에서 동일한 테이블 형태를 생성하지만, 각 하위 시스템별 결과 대신 단일 **Application** 하위 시스템으로 축소됩니다.
    
    ## 보안 모범 사례
    
    STRIDE GPT는 로컬 단일 사용자 배포용으로 설계되었습니다. 도구를 사용할 때:
    
    ### API 키 보호
    
    **API 키는 계정에 요금이 부과될 수 있는 민감한 자격 증명입니다.**
    
    ✅ **권장 사항:**
    - UI를 통해 API 키 입력 (브라우저 세션에 유지됨)
    - 개인 컴퓨터에서 편의를 위해 .env 파일 사용
    - LLM 제공업체 대시보드에서 지출 한도 설정
    - API 사용량 및 비용 정기적으로 검토
    - 공유 컴퓨터 사용 시 세션 지우기
    
    ❌ **하지 말아야 할 사항:**
    - .env 파일을 버전 관리에 커밋 (이미 .gitignore에 포함됨)
    - API 키가 보이는 스크린샷 공유
    - 신뢰할 수 없거나 손상된 시스템에서 STRIDE GPT 실행
    - API 키를 타인과 공유
    - 예상치 못한 API 요금 무시
    
    ### 데이터 개인정보 보호 고려사항
    
    위협 모델을 생성할 때 STRIDE GPT는 선택한 LLM 제공업체에 데이터를 전송합니다.
    - 애플리케이션 세부 정보 (유형, 인증 방법, 아키텍처)
    - 시스템 아키텍처 설명
    - 업로드된 아키텍처 다이어그램/이미지
    - 생성된 위협 모델 및 완화 조치
    
    **의미하는 바:**
    - OpenAI, Anthropic, Google 등은 자체 개인정보 보호 정책에 따라 이 데이터를 기록할 수 있음
    - 데모 목적으로 일반/가상의 시스템 세부 정보 사용 고려
    - LLM 제공업체의 데이터 보존 및 개인정보 보호 정책 검토
    - 민감한 시스템의 경우 고려 사항:
      - 로컬 모델 사용 (LM Studio)
      - 더 엄격한 개인정보 보호를 보장하는 제공업체 사용
      - 입력 전 시스템 설명 비식별화
    
    ### 팀/조직 배포의 경우
    
    STRIDE GPT를 여러 사용자에게 배포하는 경우 (기본 사용 사례 아님):
    - 인증/권한 부여 추가 (기본 제공되지 않음)
    - API 키에 비밀 관리 서비스 사용
    - VPN 또는 내부 네트워크 뒤에 배포
    - 추가 고려 사항은 [SECURITY.md](https://github.com/mrwadams/stride-gpt/blob/master/SECURITY.md) 문서 검토
    - 데이터 상주 및 규정 준수 요구 사항 고려
    - 생성된 위협 모델에 대한 적절한 접근 제어 구현
    
    ### 종속성 보안
    
    종속성을 유지 관리하고 취약점을 모니터링합니다.
    - 종속성은 Dependabot을 통해 정기적으로 업데이트됨
    - 모든 커밋에서 자동 보안 스캔 실행
    - 보안 권고는 GitHub 보안 탭에서 추적
    - 로컬에서 알려진 취약점 확인을 위해 `pip-audit` 실행
    
    포괄적인 보안 정보는 [SECURITY.md](https://github.com/mrwadams/stride-gpt/blob/master/SECURITY.md)를 참조하세요. 여기에는 자동 보안 스캔, 취약점 보고 및 안전한 개발 관행이 포함됩니다.
    
    ### 보안 문제 신고
    
    보안 문제를 발견하셨나요? 책임감 있게 신고해 주세요.
    - GitHub의 [비공개 취약점 보고](https://github.com/mrwadams/stride-gpt/security/advisories/new)를 통해 보안 권고 생성
    - 보안 문제를 공개적으로 게시하지 마세요
    - 48시간 이내에 확인
    - 수정 사항은 우선 처리되어 신속히 릴리스됩니다.
    
    ## 기여하기
    
    풀 리퀘스트를 환영합니다. 주요 변경 사항의 경우, 먼저 이슈를 열어 변경하고자 하는 내용을 논의해 주세요.
    
    ## 라이선스
    
    [MIT](https://choosealicense.com/licenses/mit/)
    
    도구 다운로드