
Pacote de divulgação e PoC em Python para CVE-2026-77635, uma injeção SQL não autenticada no jsonValue() do CakePHP com PostgresDriver, incluindo um laboratório Docker em loopback.
abraxaslabs.tech · github.com/abraxas · @abraxas_null · CVE-2026-77635
CakePHP 5.2.13 — cakephp
CakePHP é um framework de desenvolvimento rápido para PHP. Antes das versões 5.1.10, 5.2.15 e 5.3.7 em suas respectivas linhas de lançamento, FunctionsBuilder::jsonValue() com PostgresDriver é vulnerável a injeção de SQL quando dados controlados pelo usuário são fornecidos ao parâmetro jsonPath. Este problema foi corrigido nas versões 5.1.10, 5.2.15 e 5.3.7.
| CVE | CVE-2026-77635 · CVE.org |
| CWE | CWE-89 |
| CVSS | Crítico: 9.2 CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N |
| Produto | CakePHP |
| Afetado | 5.2.x até 5.2.13 (também 5.1.x < 5.1.10, 5.3.x < 5.3.7) |
| Corrigido | 5.2.15, 5.1.10, 5.3.7 |
| Autenticação | nenhuma (ver mapa de origem) |
| Licença | GNU Affero GPL v3.0 |
| Lab | apenas 127.0.0.1 · pacote de divulgação para fornecedor/cliente, não é um scanner |
jsonValue $jsonPath é o sink. HTTP é GET /?path= no aplicativo do lab.
GET/?path=GET /?path=<injected jsonPath>PostgresDriver quoteIdentifier into JSONB_PATH_QUERYSELECT leaks notes.secretPOCWitness77635 no corpo HTTP e sql= contém o fragmento injetado.
Faça isto primeiro: Atualize o CakePHP para 5.2.15 (ou 5.1.10 / 5.3.7). Aviso: GHSA-fxf7-vhh8-7vpq.
Verifique após a atualização
CVE-2026-77635-Abraxas-Labs.py contra a build corrigida: o witness mapeado não deve aparecer.Se você não puder atualizar imediatamente
Alvo apenas http://127.0.0.1:8088 (ou o loopback que você vinculou). Não aponte este script para a internet.
python3 CVE-2026-77635-Abraxas-Labs.py
Sucesso é o witness acima no corpo da resposta. Um HTML 200 genérico não é isso.
Stack de loopback usada para reproduzir. Imagens oficiais, a menos que um Dockerfile nesta pasta faça build a partir do código-fonte.
cd lab
docker compose up --force-recreate
Vincule a árvore do produto vulnerável ao lado do Compose se o YAML montar um diretório local (zip do plugin / tag de origem da tabela de versões). Não publique nada exceto 127.0.0.1.
github.com/cakephp/cakephp/commit/138f2f61486532c29ee4d106da2a9848c1ff1ab3
github.com/cakephp/cakephp/commit/489a40fb7c6e597af33fe0f7264047afccb90d55
github.com/cakephp/cakephp/commit/9f1ad970a3b72293d4a37e694276645f804e819f
github.com/cakephp/cakephp/security/advisories/GHSA-fxf7-vhh8-7vpq
github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77635.json
Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null
# CVE-2026-77635 (structured records)
- input: `https://nvd.nist.gov/vuln/detail/CVE-2026-77635`
- CWE: CWE-89
- published: 2026-08-24T21:17:48.457
## NVD description
CakePHP is a rapid development framework for PHP. Prior to versions 5.1.10, 5.2.15, and 5.3.7 on their respective release lines, FunctionsBuilder::jsonValue() with PostgresDriver is vulnerable to SQL injection when user-controlled data is supplied to the jsonPath parameter. This issue is fixed in versions 5.1.10, 5.2.15, and 5.3.7.
## MITRE description
CakePHP is a rapid development framework for PHP. Prior to versions 5.1.10, 5.2.15, and 5.3.7 on their respective release lines, FunctionsBuilder::jsonValue() with PostgresDriver is vulnerable to SQL injection when user-controlled data is supplied to the jsonPath parameter. This issue is fixed in versions 5.1.10, 5.2.15, and 5.3.7.
## Affected
- cakephp cakephp >= 5.1.0, < 5.1.10 affected, >= 5.2.0, < 5.2.15 affected, >= 5.3.0, < 5.3.7 affected
- cakephp cakephp/database >= 5.1.0, < 5.1.10 affected, >= 5.2.0, < 5.2.15 affected, >= 5.3.0, < 5.3.7 affected
- OSV:
## References (JSON sources only)
- https://github.com/cakephp/cakephp/commit/138f2f61486532c29ee4d106da2a9848c1ff1ab3
- https://github.com/cakephp/cakephp/commit/489a40fb7c6e597af33fe0f7264047afccb90d55
- https://github.com/cakephp/cakephp/commit/9f1ad970a3b72293d4a37e694276645f804e819f
- https://github.com/cakephp/cakephp/releases/tag/5.1.10
- https://github.com/cakephp/cakephp/releases/tag/5.2.15
- https://github.com/cakephp/cakephp/releases/tag/5.3.7
- https://github.com/cakephp/cakephp/security/advisories/GHSA-fxf7-vhh8-7vpq
- https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/77xxx/CVE-2026-77635.json
- https://nvd.nist.gov/vuln/detail/CVE-2026-77635
- https://github.com/advisories/GHSA-fxf7-vhh8-7vpq
## GitHub advisory
CakePHP: FunctionsBuilder::jsonValue() vulerable to SQL injection with PostgresDriver
### Impact
The `FunctionsBuilder::jsonValue($field, $jsonPath)` methods with the Postgres driver is vulnerable to SQL injection if user controlled data is supplied to the `$jsonPath` parameter.
### Patches
5.1.10, 5.2.15, 5.3.7
### Workarounds
Don't provide user controlled data to these functions/parameters.
## OSV
CakePHP: FunctionsBuilder::jsonValue() vulerable to SQL injection with PostgresDriver
CakePHP is a rapid development framework for PHP. Prior to versions 5.1.10, 5.2.15, and 5.3.7 on their respective release lines, FunctionsBuilder::jsonValue() with PostgresDriver is vulnerable to SQL injection when user-controlled data is supplied to the jsonPath parameter. This issue is fixed in versions 5.1.10, 5.2.15, and 5.3.7.
Este pacote de divulgação é licenciado sob a GNU Affero General Public License v3.0. Consulte LICENSE.
Este pacote é destinado ao fornecedor, ao proprietário do site e a labs licenciados. O script se comunica com 127.0.0.1. Usá-lo contra sistemas que você não possui não é autorizado pela Abraxas Labs. Sem garantias.