Tên challenge: membership perks Cate: OSINT Mô tả:...

생성일: 2026년 8월 1일

답변에 사용된 모델 GPT-5.6 Thinking by Chat01

질문

membership_card.jpg

Tên challenge: membership perks
Cate: OSINT
Mô tả: Can you really say you're part of the CSSA if you don't have a membership card?

Concatenate with hyphens for the flag. All letters should be lowercase.

IMPORTANT: If you are not an ANU student, please do not sign up for a CSSA membership it is not required.
Đây là 1 challenge của 1 giải CTF đang diễn ra nên sẽ không có write up
File ảnh tôi gửi không phải file đính kèm challenge, tôi cung cấp cho bạn để có thể bạn sẽ dùng nó hoặc không.
không bịa flag
không được dừng lại khi chưa tìm ra flag
tư duy như top player giải CTF quốc tế
Challenge này không có file đính kèm
Trong trường hợp bạn không thể tìm ra thì hãy nói cho tôi biết tất cả những gì bạn đã tìm được và hướng giải quyết tiếp theo

사고

Searched 25 websites

Worked for 23m 46s

답변

Chưa có flag xác thực

Tôi đã kiểm tra ảnh gốc:

  • Không có EXIF, chuỗi nhúng hay dấu hiệu steganography hữu ích.
  • Các dữ liệu như tên và mã thành viên chỉ thuộc chiếc thẻ minh họa; không đủ căn cứ dùng làm flag.
  • Tìm kiếm chính xác tiêu đề, mô tả và nội dung thẻ trên GitHub, công cụ tìm kiếm và các trang xã hội chưa tìm được bản công khai của challenge hay chiếc thẻ mục tiêu.

Điểm nghẽn hiện tại là phần metadata bị thiếu trong nội dung bạn gửi: challenge ID và tác giả. BushBash đang chạy trên noCTF, và mã nguồn nền tảng có endpoint lấy danh sách cùng chi tiết challenge; đây nhiều khả năng là nơi lấy được author hoặc manh mối nhận diện người cần OSINT. (Bush Week Tech Fest)

Hãy mở trang challenge khi đang đăng nhập, nhấn F12 → Console, rồi chạy nguyên đoạn sau:

js
(async () => { const response = await fetch("/api/challenges", { credentials: "include" }); const raw = await response.text(); if (!response.ok) { console.log(`HTTP ${response.status}`); console.log(raw); return; } let data; try { data = JSON.parse(raw); } catch { console.log(raw); return; } const objects = []; function walk(value) { if (!value || typeof value !== "object") return; objects.push(value); for (const child of Object.values(value)) { if (child && typeof child === "object") walk(child); } } walk(data); const challenge = objects.find(obj => { const name = obj.title ?? obj.name ?? obj.challenge_name ?? ""; return String(name).trim().toLowerCase() === "membership perks"; }); if (!challenge) { console.log("Không tự tìm thấy challenge; toàn bộ response:"); console.log(JSON.stringify(data, null, 2)); return; } const id = challenge.id ?? challenge.challenge_id ?? challenge.challengeId ?? challenge.uuid; let detail = null; if (id) { const detailResponse = await fetch( `/api/challenges/${encodeURIComponent(id)}`, { credentials: "include" } ); const detailRaw = await detailResponse.text(); try { detail = JSON.parse(detailRaw); } catch { detail = { status: detailResponse.status, raw: detailRaw }; } } console.log(JSON.stringify({ matched_challenge: challenge, challenge_detail: detail }, null, 2)); })();

Dán lại phần JSON được in ra. Không gửi cookie, access token, nội dung Local Storage hay thông tin đăng nhập. Metadata đó sẽ cho phép chuyển từ việc tìm kiếm mù sang đúng tác giả/đối tượng và tiếp tục truy ra flag mà không phải bịa.

질문

{
"matched_challenge": {
"id": 26,
"slug": "membership-perks",
"title": "membership perks",
"tags": {
"categories": "crypto,osint,theme-cssa",
"difficulty": "easy"
},
"hidden": false,
"chained_after": null,
"value": 185,
"solve_count": 40,
"solved_by_me": false
},
"challenge_detail": {
"data": {
"id": 26,
"slug": "membership-perks",
"title": "membership perks",
"description": "Can you really say you're part of the CSSA if you don't have a membership card?\n\nConcatenate with hyphens for the flag. All letters should be lowercase.\n\nIMPORTANT: If you are not an ANU student, please do not sign up for a CSSA membership it is not required.\n\nAuthor: Elliott Price",
"hidden": false,
"visible_at": null,
"updated_at": "2026-08-02T00:22:40.036Z",
"chained_after": null,
"metadata": {
"solve": {
"input_type": "text"
},
"files": []
}
}
}
}
Ởtrên là phần JSON được in ra từ đoạn code mà bạn nói.

Challenge khác: Old website
We found this website running using one of cybervillain Zoowee Blubberworth's old domain names. He's supposed to be in jail right now so there's really no reason why this server could be up and running. It probably hasn't been updated in a year or so. Can you hack in and have a peek around?

The website is at http://34.40.133.67:8080

flag format bushbash{....}
tiếp tục giải challenge trước và giải thêm challenge sau.

사고

bash -lc file /mnt/data/membership_card.jpg && identify /mnt/data/membership_card.jpg 2>/dev/null || true && exiftool /mnt/data/membership_card.jpg | head -80

Inspected membership card metadata and clues

{"system1_search_query":[{"q":""membership perks" "Can you really say you're part of the CSSA""},{"q":""Free ANU CSSA Membership 2026""},{"q":"site:cs.club.anu.edu.au CSSA membership perks"},{"q":"site:getqpay.com "ANU CSSA" membership"}],"response_length":"long"}

Searched 11 websites

bash -lc python3 - <<'PY' import requests for url in ['https://ctf.l3ak.team/','https://ctf.l3ak.team/api/v1/challenges']: try: r=requests.get(url,timeout=20,allow_redirects=True) print(url, r.status_code, r.url, r.headers.get('content-type')) print(r.text[:1000]) except Exception as e: print(url,e) PY

Tested CTF site internet connectivity

{"system1_search_query":[{"q":"github "membership perks" CTF CSSA"},{"q":"github "Free ANU CSSA Membership 2026""},{"q":"github "Can you really say you're part of the CSSA""},{"q":"site:github.com L3akCTF 2026 challenges osint membership"}],"response_length":"long"}

Assessing available sources

I’m trying to verify the challenge details and membership perks through publicly accessible material. The exact page may not be indexed or directly available, so I’m considering whether the supplied context is enough to proceed.

Assessed available sources

{"open":[{"ref_id":"https://r.jina.ai/http://bushbash.cssa.club/api/challenges"},{"ref_id":"https://r.jina.ai/http://bushbash.cssa.club/"},{"ref_id":"https://r.jina.ai/http://bushbash.cssa.club/api"}],"response_length":"long"}

Reviewing challenge clues

I’m examining the card details, event information, and available public references to infer the flag without inventing an answer. The challenge page remains inaccessible, so I’m separating confirmed clues from unresolved possibilities.

{"system1_search_query":[{"q":"site:bushbash.cssa.club "membership perks""},{"q":"site:bushbash.cssa.club/challenges membership perks CSSA"},{"q":""Can you really say you're part of the CSSA""},{"q":""Concatenate with hyphens for the flag" CSSA"}],"response_length":"long"}

Searched 4 websites

bash -lc python - <<'PY' import requests for url in [ 'https://api.github.com/repos/anucssa/noCTF-bushbash/commits?per_page=5', 'https://raw.githubusercontent.com/anucssa/noCTF-bushbash/master/README.md', 'https://bushbash.cssa.club/api/challenges']: try: r=requests.get(url, timeout=15) print(url, r.status_code, r.url, r.text[:200].replace('\n',' ')) except Exception as e: print(url, type(e).name, e) PY

Tested GitHub and API connectivity

{"system1_search_query":[{"q":"site:github.com/anucssa/noCTF-bushbash/commits/master anucssa noCTF bushbash commits"},{"q":"site:github.com/anucssa/noCTF-bushbash/commit "update sponsor tab on front page""},{"q":"site:github.com/anucssa/noCTF-bushbash/commit "chained challs""}],"response_length":"long"}

Searching 1 website

bash -lc set -e cd /tmp rm -rf noctf-bushbash GIT_TERMINAL_PROMPT=0 git clone --depth 1 https://github.com/anucssa/noCTF-bushbash.git noctf-bushbash >/tmp/gitclone.log 2>&1 || { cat /tmp/gitclone.log; exit 1; } find noctf-bushbash -maxdepth 3 -type f | head -80

Cloned the noCTF Bushbash repository

{"system1_search_query":[{"q":""membership perks" "CSSA" CTF"},{"q":""Can you really say you're part of the CSSA""},{"q":"site:bushbash.cssa.club "membership perks""},{"q":"site:bushbash.cssa.club "membership card""}],"response_length":"long"}

Searched 2 websites

bash -lc set -o pipefail; python3 - <<'PY' import urllib.request for u in ['https://bushbash.cssa.club/','https://bushbash.cssa.club/challenges']: try: r=urllib.request.urlopen(u, timeout=15) print(u, r.status, r.geturl(), r.headers) print(r.read(500).decode('utf-8','replace')) except Exception as e: print(u, type(e).name, e) PY

Tested Bushbash website connectivity

{"system1_search_query":[{"q":"crt.sh/?q=%25.cssa.club&output=json"},{"q":"crt.sh cssa.club certificates subdomains"}],"response_length":"short"}

Searched 7 websites

bash -lc file /mnt/data/membership_card.jpg && exiftool /mnt/data/membership_card.jpg | head -80 && strings -n 8 /mnt/data/membership_card.jpg | tail -40

Inspected image metadata and hidden information

{"system1_search_query":[{"q":"site:facebook.com/anucssa "membership card""},{"q":"site:instagram.com/anucssa membership 2026"},{"q":"site:facebook.com "ANU CSSA" membership 2026"},{"q":"site:linkedin.com/company "ANU CSSA" membership"}],"response_length":"long"}

Searched 1 website

bash -lc python - <<'PY' import requests for u in ['https://bushbash.cssa.club/api/site/config','https://bushbash.cssa.club/api/challenges']: try: r=requests.get(u,timeout=20,headers={'User-Agent':'Mozilla/5.0','Origin':'https://techfest.cssa.club'}) print(u, r.status_code, r.headers.get('content-type'), r.text[:500]) except Exception as e: print(u, repr(e)) PY

Tested CTF API endpoint access

{"open":[{"ref_id":"https://anucssa.github.io/techfest-website/ctf/"},{"ref_id":"https://techfest.cssa.club/ctf/"}],"response_length":"long"}

Tracing public clues

I’m connecting the membership card’s fields with CSSA’s public membership materials and BushBash’s challenge context. I’m avoiding the pictured member’s personal details and looking for a universal hyphenated answer instead.

{"system1_search_query":[{"q":""https://bushbash.cssa.club/api/challenges""},{"q":"site:github.com/anucssa/techfest-website commits Peter Woodhead BushBash"},{"q":"site:github.com/anucssa/noCTF-bushbash contributors Peter Woodhead"},{"q":""Free ANU CSSA Membership 2026""}],"response_length":"long"}

Searched 1 website

bash -lc curl -sS -D /tmp/headers.txt -o /tmp/challenges.json https://bushbash.cssa.club/api/challenges; echo EXIT:$?; wc -c /tmp/challenges.json 2>/dev/null; head -c 500 /tmp/challenges.json 2>/dev/null; echo; sed -n '1,20p' /tmp/headers.txt 2>/dev/null

Tested API endpoint accessibility

{"system1_search_query":[{"q":"bushbash.cssa.club A record IP"},{"q":"dnsdumpster bushbash.cssa.club"},{"q":"site:securitytrails.com bushbash.cssa.club"},{"q":"site:urlscan.io "bushbash.cssa.club""}],"response_length":"long"}

Searched 22 websites

bash -lc curl -sS --connect-timeout 10 --resolve dns.google:443:8.8.8.8 'https://dns.google/resolve?name=bushbash.cssa.club&type=A' | head -c 1000

Tested DNS-over-HTTPS via fixed IP

{"open":[{"ref_id":"turn571683search9"},{"ref_id":"turn571683search2"},{"ref_id":"turn571683search18"}],"response_length":"long"}

Searched 3 websites

{"system1_search_query":[{"q":"site:bushbash.cssa.club/challenges/"},{"q":"site:bushbash.cssa.club/challenges BushBash OSINT"},{"q":"site:bushbash.cssa.club "OSINT" "membership""},{"q":"site:bushbash.cssa.club "Concatenate with hyphens""}],"response_length":"long"}

Requesting challenge data

I’ve narrowed the next step to the challenge’s public metadata, especially its exact identifier and hints. I’m asking for the relevant JSON object only, without session credentials, so I can derive the hyphenated flag accurately.

{"system1_search_query":[{"q":"site:bushbash.cssa.club/api/challenges "membership perks""},{"q":""membership perks" "BushBash""},{"q":""Can you really say you're part of the CSSA""}],"response_length":"short"}

Searched 1 website

bash -lc curl -sS --connect-timeout 10 --resolve dns.google:443:8.8.8.8 'https://dns.google/resolve?name=bushbash.cssa.club&type=A' | head -c 2000

Tested DNS-over-HTTPS resolution

{"system1_search_query":[{"q":"r.jina.ai/http://bushbash.cssa.club/api/challenges"},{"q":"r.jina.ai/https://bushbash.cssa.club/api/challenges"}],"response_length":"short"}

Searched 9 websites

{"system1_search_query":[{"q":"bushbash.cssa.club IP address"},{"q":"dns lookup bushbash.cssa.club"},{"q":"crt.sh bushbash.cssa.club"},{"q":"site:securitytrails.com bushbash.cssa.club"}],"response_length":"long"}

Searched 25 websites

Worked for 23m 46s

답변

Warning: The response is empty, would not consume credits.

이 Q&A 공유하기