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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Damn-Vulnerable-GraphQL-Application — Damn Vulnerable GraphQL Application은 의도적으로 취약한 GraphQL 서비스 구현체로, GraphQL 보안에 대해 배우고 연습하기 위해 설계되었습니다. | Kitploit
도구/GitHubGitHub/dolevf/damn-vulnerable-graphql-application
Vulnerability AnalysisAPI Security TestingWeb SecurityCTFPenetration TestingLearning & EducationAPI SecurityLabs & Practice

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
dolevf/damn-vulnerable-graphql-application

Damn-Vulnerable-GraphQL-Application

Damn Vulnerable GraphQL Application은 의도적으로 취약한 GraphQL 서비스 구현체로, GraphQL 보안에 대해 배우고 연습하기 위해 설계되었습니다.

저장소 보기
1.7k3741년 전Kitploit 검토 완료

취약한 GraphQL 애플리케이션

취약한 GraphQL 애플리케이션(Damn Vulnerable GraphQL Application)은 Facebook의 GraphQL 기술을 의도적으로 취약하게 구현한 것으로, GraphQL 보안을 배우고 연습할 수 있도록 설계되었습니다.

DVGA

목차

  • DVGA 소개
  • 작동 모드
  • 시나리오
  • 사전 요구 사항
  • 설치
    • 설치 - Docker
    • 설치 - Docker Registry
    • 설치 - 서버
  • 스크린샷
  • 유지 관리자
  • 기여자
  • 언급
  • 면책 조항
  • 라이선스

DVGA 소개

취약한 GraphQL(Damn Vulnerable GraphQL)은 의도적으로 취약하고 안전하지 않은 GraphQL 구현으로, GraphQL 애플리케이션을 공격하고 개발자와 IT 전문가가 취약점을 테스트할 수 있는 안전한 환경을 제공합니다.

DVGA 작동 지원

  • 쿼리(Queries)
  • 뮤테이션(Mutations)
  • 구독(Subscriptions)

DVGA에는 주입, 코드 실행, 우회, 서비스 거부 등 다양한 결함이 있습니다. 전체 목록은 시나리오 섹션에서 확인할 수 있습니다. 또한 과제의 해결 방법을 재현할 수 있는 공개 Postman 컬렉션도 제공됩니다. 아래의 Run in Postman 버튼을 클릭하여 컬렉션을 가져올 수 있습니다.

Run in Postman

작동 모드

DVGA는 초보자 및 전문가 수준의 게임 모드를 지원하며, 이에 따라 공격 난이도가 달라집니다.

시나리오

  • 정찰
    • GraphQL 발견
    • GraphQL 핑거프린팅
  • 서비스 거부
    • 배치 쿼리 공격
    • 깊은 재귀 쿼리 공격
    • 리소스 집약적 쿼리 공격
    • 필드 중복 공격
    • 별칭 기반 공격
  • 정보 노출
    • GraphQL 인트로스펙션
    • GraphiQL 인터페이스
    • GraphQL 필드 제안
    • 서버 측 요청 위조
    • 스택 트레이스 오류
  • 코드 실행
    • OS 명령 주입 #1
    • OS 명령 주입 #2
  • 주입
    • 저장형 크로스 사이트 스크립팅
    • 로그 스푸핑 / 로그 주입
    • HTML 주입
    • SQL 주입
  • 인증 우회
    • GraphQL JWT 토큰 위조
    • GraphQL 인터페이스 보호 우회
    • GraphQL 쿼리 거부 목록 우회
  • 기타
    • GraphQL 쿼리 약한 비밀번호 보호
    • 임의 파일 쓰기 / 경로 탐색

사전 요구 사항

다음 Python3 라이브러리가 필요합니다:

  • Python3 (3.6 - 3.10)
  • Flask
  • Flask-SQLAlchemy
  • Flask-Sockets
  • Gevent
  • Graphene
  • Graphene-SQLAlchemy
  • Rx

의존성에 대한 자세한 내용은 requirements.txt를 참조하십시오.

설치

Docker

저장소 복제

git clone https://github.com/dolevf/Damn-Vulnerable-GraphQL-Application.git && cd Damn-Vulnerable-GraphQL-Application

Docker 이미지 빌드

docker build -t dvga .

이미지에서 컨테이너 생성

docker run -d -t -p 5013:5013 -e WEB_HOST=0.0.0.0 --name dvga dvga

브라우저에서 http://localhost:5013 로 이동합니다.

참고: 애플리케이션을 특정 포트(예: 8080)에 바인딩해야 하는 경우 -e WEB_PORT=8080을 사용하십시오.

Docker Registry

Docker Hub에서 Docker 이미지 가져오기

docker pull dolevf/dvga

Docker Hub 이미지: dolevf/dvga

이미지에서 컨테이너 생성

docker run -t -p 5013:5013 -e WEB_HOST=0.0.0.0 dolevf/dvga

브라우저에서 http://localhost:5013 로 이동합니다.

서버

/opt로 이동

cd /opt/

저장소 복제

git clone [email protected]:dolevf/Damn-Vulnerable-GraphQL-Application.git && cd Damn-Vulnerable-GraphQL-Application

요구 사항 설치

pip3 install -r requirements.txt

애플리케이션 실행

python3 app.py

브라우저에서 http://localhost:5013 로 이동합니다.

스크린샷

DVGA DVGA DVGA DVGA

유지 관리자

  • Dolev Farhi
  • Connor McKinnon
  • Nick Aleks

기여자

DVGA를 개선하는 데 도움을 주신 친절한 분들께 큰 감사를 드립니다:

  • Halfluke

언급

  • Black Hat GraphQL - No Starch Press
  • OWASP Vulnerable Web Applications Directory
  • GraphQL Weekly
  • DZone API Security Weekly
  • KitPloit
  • tl;dr sec #72
  • Intigriti Blog
  • STÖK - Bounty Thursdays #26
  • Brakeing Security 2021-007
  • Yes We Hack - How to Exploit GraphQL
  • GraphQL Editor
  • GraphQL Hacking (Portuguese)
  • InQL GraphQL Scanner Demo
  • H4ck3d - Security Conference 2021 (Spanish)
  • Christina Hasternath - GraphQLConf 2021
  • Hacking APIs (Ch14) by Corey Ball - No Starch Press
  • Hacking Simplified Part #1
  • Hacking Simplified Part #2
  • Hacking Simplified Part #3

면책 조항

DVGA는 매우 취약하므로 인터넷에 연결된 서버에 배포해서는 안 됩니다. 기본적으로 애플리케이션은 잘못된 구성을 방지하기 위해 127.0.0.1에서 수신 대기합니다.

DVGA는 의도적으로 결함이 있고 취약하며, 따라서 어떠한 보증도 제공되지 않습니다. DVGA를 사용함으로써 사용자는 전적인 책임을 집니다.

라이선스

MIT 라이선스에 따라 배포됩니다. 자세한 내용은 LICENSE를 참조하십시오.

도구 다운로드