Lab: 비공개 GraphQL 게시물 접근

발행: (2026년 1월 14일 오후 12:36 GMT+9)
2 분 소요
원문: Dev.to

Source: Dev.to

설명

이 실험실의 블로그 페이지에는 비밀 비밀번호가 들어 있는 숨겨진 블로그 포스트가 있습니다. 실험을 해결하려면 숨겨진 블로그 포스트를 찾아 비밀번호를 입력하세요.

링크:

문제 분석

정찰

  • 블로그 페이지에 접근 → 포스트들이 /graphql/v1 로의 POST 요청을 통해 로드됩니다.

  • 응답에서 포스트 ID가 순차적으로: 1, 2, 4, 5… → ID 3이 누락 → ID = 3인 숨겨진 포스트가 있을 것으로 추정

    Recon 1

  • 포스트 3이 숨겨져 있음

    Recon 2

활용

단계 1: 특수 쿼리 삽입

  1. Repeater에서 오른쪽 클릭 → GraphQL > Set introspection query → 요청 전송 → 응답으로 전체 스키마를 반환합니다.

    Introspection schema

  2. BlogPost 타입을 찾으면 postPassword 필드가 존재함을 확인합니다.

    BlogPost type

단계 2: ID = 3인 숨겨진 포스트를 쿼리하고 postPassword 가져오기

  1. Repeater에서 GraphQL 탭으로 전환합니다.
  2. Variables 패널: "id": 1"id": 3으로 변경합니다.
  3. Query 패널: getBlogPost(id: $id) 내부에 postPassword 필드를 추가합니다.
query {
  getBlogPost(id: 3) {
    id
    title
    isPrivate
    postPassword
    summary
  }
}

응답에 id = 3인 포스트의 비밀번호가 포함됩니다.

제출

Submit step 1

Submit step 2

Back to Blog

관련 글

더 보기 »