Lab: Accessing private GraphQL posts

Published: (January 13, 2026 at 10:36 PM EST)
1 min read
Source: Dev.to

Source: Dev.to

Mô tả

The blog page for this lab contains a hidden blog post that has a secret password. To solve the lab, find the hidden blog post and enter the password.

Link:

Phân tích vấn đề

Recon

  • Truy cập blog page → các bài post được load qua POST request tới /graphql/v1.

  • Trong response, các post có ID tuần tự: 1, 2, 4, 5… → thiếu ID 3 → nghi ngờ có post ẩn với ID = 3

    Recon 1

  • Post 3 bị ẩn

    Recon 2

Khai thác

Bước 1: Chèn 1 query đặc biệt

  1. Trong Repeater, right‑click → GraphQL > Set introspection query → Send request → response trả về full schema.

    Introspection schema

  2. Tìm type BlogPost → phát hiện field postPassword tồn tại.

    BlogPost type

Bước 2: Query post ẩn với ID = 3 và lấy postPassword

  1. Trong Repeater, chuyển sang tab GraphQL.
  2. Variables panel: thay "id": 1 thành "id": 3.
  3. Query panel: thêm field postPassword vào bên trong getBlogPost(id: $id).
query {
  getBlogPost(id: 3) {
    id
    title
    isPrivate
    postPassword
    summary
  }
}

Kết quả trả về chứa mật khẩu của post có id = 3.

Submit

Submit step 1

Submit step 2

Back to Blog

Related posts

Read more »

𝗗𝗲𝘀𝗶𝗴𝗻𝗲𝗱 𝗮 𝗣𝗿𝗼𝗱𝘂𝗰𝘁𝗶𝗼𝗻‑𝗥𝗲𝗮𝗱𝘆 𝗠𝘂𝗹𝘁𝗶‑𝗥𝗲𝗴𝗶𝗼𝗻 𝗔𝗪𝗦 𝗔𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗘𝗞𝗦 | 𝗖𝗜/𝗖𝗗 | 𝗖𝗮𝗻𝗮𝗿𝘆 𝗗𝗲𝗽𝗹𝗼𝘆𝗺𝗲𝗻𝘁𝘀 | 𝗗𝗥 𝗙𝗮𝗶𝗹𝗼𝘃𝗲𝗿

!Architecture Diagramhttps://dev-to-uploads.s3.amazonaws.com/uploads/articles/p20jqk5gukphtqbsnftb.gif I designed a production‑grade multi‑region AWS architectu...