Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

forcequitOS/bad_query

Security & Privacy

Proof-of-concept iOS 26/27 sandbox escape that grants developers access to protected app container paths.

284
77
C
3 months old

What it is

bad_query is a proof-of-concept sandbox escape targeting iOS 26.0 through 26.6.1 and iOS 27 beta 4. Its purpose is to let a process reach container paths that are normally outside an app's sandbox, including internal daemon, PluginKit, system-group, and App Group directories (2). It is aimed at security researchers and developers who want to examine what an escape at this level exposes, not at end users.

The author describes it as a proof-of-concept for developers and not meaningfully usable at the moment (2). The README lists the accessible paths but does not explain the underlying technique or how the escape is triggered.

Access scope

The documented reachable locations are:

  • /var/containers/Data/System and /var/mobile/Containers/Shared/AppGroup on iOS 27
  • /var/containers/Shared/SystemGroup/* on iOS 27
  • /var/mobile/Containers/Data/Application/*, /var/mobile/Containers/Data/InternalDaemon/*, and /var/mobile/Containers/Data/PluginKitPlugin/*
  • /var/mobile/Containers/Shared/AppGroup/*, which requires sacrificing an App Group on iOS 26 (2)

Getting started

No build, installation, or run procedure is documented. The README gives no setup steps, no Xcode project instructions, no signing requirements, and no example invocation, so there is no supported sequence to reproduce the result from the repository materials alone. The only stated prerequisite is the target OS range: iOS 26.0 - 26.6.1 or 27.0b4. The author also says it might work on iOS 18 but that this was not tested (2). Check the repository for any code or release artifacts that may accompany the README.

Constraints

  • Support is limited to the stated iOS versions; behavior on other versions, including iOS 18, is explicitly untested.
  • On iOS 26, reaching /var/mobile/Containers/Shared/AppGroup/* requires an App Group sacrifice, so access there is not free or automatic (2).
  • The project is a PoC, and the author frames it as not meaningfully usable in its current state (2).
  • No license is declared, so redistribution and reuse terms are unstated.
  • Running sandbox escape code requires a suitable development or testing setup and carries system-integrity implications; none of that setup is documented here.

HotRepo's take

The repository has 284 stars and 77 forks but no recorded appearance on the all-language GitHub daily ranking, and no discussion threads were captured. For a security PoC, the interest shown by stars and forks is notable, but the absence of ranking records means there is no independent heat signal beyond those counts. The README's value is mainly as a scope statement: it tells researchers exactly which container paths this escape reaches on which iOS builds, while leaving the mechanism and reproduction steps out.

Written by AI from the project's README, updated . The project's own docs are the source of truth.

You might also like

  1. forcequitOS/worse_queryA proof-of-concept sandbox escape for iOS 26 and 27, aimed at developers exploring App Group container access.Objective-C415
  2. jailbreakdotparty/ErosioniOS customization toolbox for supported iOS 26/27 versions, built on the worse_query sandbox escape.Swift651
  3. eness/php2shell-CVE-2026-109618-CVE-2026-109619-PoCA weaponized PoC for pre-auth PHP core RCE bugs, aimed at defenders verifying exposure and patch urgency.Shell983
  4. anthropics/sandbox-runtimeOS-level filesystem and network sandboxing for arbitrary processes and AI agents, without containers.TypeScript6,431
  5. kolbicz/WQFilesBrowse and manage app containers, caches and files on iOS 27 without jailbreak.Objective-C107