PHP has various global state that temporarily points into request memory. In some scenarios, global state may not be correctly reset, or may be repopulated after being reset. The global state may then refer to request memory even after it has been freed. Subsequent requests may read or branch on this stale state before it is fully initialized. Multiple strategies can trigger this condition and produce remote code execution (RCE).
MLflow is an open source AI engineering platform for agents, large language models, and machine learning models. Starting in 3.3.0 and prior to 3.15.0, the unauthenticated POST /api/2.0/mlflow/webhooks/{id}/test endpoint calls _validate_webhook_url() in mlflow/utils/validation.py only for the original URL while mlflow/webhooks/delivery.py follows redirects and re-resolves the hostname without pinning the validated address, allowing attackers to reach internal or cloud metadata services and receive response_status and response_body. This issue is fixed in version 3.15.0.
via cve_org
| Version | Type | Source | Base | Exp | Imp |
|---|---|---|---|---|---|
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Primary | cve.org | 9.3 | — | — |
| 3.1 | Secondary | GHSA | 9.3 | — | — |
| 3.1 | Secondary | NVD | 9.3 | 3.9 | 4.7 |
| 3.1 | Secondary | ENISA EUVD | 9.3 | — | — |