p PatchFirst

PatchFirst · Свежие уязвимости

PHP: уязвимости стека · Страница 28

За последние 30 дней в PHP опубликовано уязвимостей: 178; в каталоге KEV: 2.

Фильтры уязвимостей
PHP

Ранние предупреждения

Свежие сообщения об уязвимостях из анонсов разработчиков и новостей безопасности. Предупреждения не меняют рейтинг защищённости.

  1. php

    Исправление не опубликовано

    PHP: удалённое выполнение кода

    По данным OpenNet, в PHP найдена уязвимость — удалённое выполнение кода (CVE-2026-115560). Точные затронутые версии не указаны. Версия с исправлением в сообщении не указана.

    Что сделать сейчас: Проверьте, вышло ли обновление PHP с исправлением, и установите его.

    CVE-2026-115560

Уязвимостей: 7190

  1. CVE-2026-55555

    Низкий · CVSS 2.3EPSS 0,51%Есть исправление

    Dompdf: File existence oracle via font-face stylesheet declaration

    Dompdf is an HTML to PDF converter for PHP. Versions 3.15 and prior are vulnerable to a File Existence Oracle attack through the manipulation of the CSS @font-face directive. By providing malicious HTML that references local files via the file:// protocol repeatedly, an attacker can trigger PHP memory exhaustion. Because Dompdf behaves differently depending on whether a referenced local file exists (an existing file is processed repeatedly until it triggers an "Allowed memory size exhausted" crash, whereas a missing file fails fast or is ignored and never hits the memory limit), an attacker can use this observable discrepancy as an oracle to

    • Обновитесь до 3.1.6
  2. CVE-2026-59932

    Высокий · CVSS 7.5EPSS 0,46%Есть исправление

    PhpSpreadsheet: Gnumeric reader unbounded gzip expansion causes memory exhaustion

    PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. In versions 4.0.0 through 5.8.0, 3.3.0 through 3.10.6, 2.2.0 through 2.4.6, 2.0.0 through 2.1.17, and all releases up to and including 1.30.5, the Gnumeric reader reads attacker-supplied .gnumeric files into memory and, when the file starts with gzip magic bytes, calls gzdecode() on the full compressed contents without enforcing a decompressed-size limit. A very small compressed .gnumeric file can expand to data larger than the PHP memory limit and crash the process during Gnumeric::canRead() before the file is rejected or fully parsed. This is reachable through n

    • Обновитесь до 1.30.6
    • Обновитесь до 2.1.18
    • Обновитесь до 2.4.7
    • Обновитесь до 3.10.7
    • Обновитесь до 5.8.1
  3. CVE-2026-59933

    Высокий · CVSS 7.5EPSS 0,46%Есть исправление

    PhpSpreadsheet: XLS/OLE sector-chain self-loop causes memory exhaustion

    PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. In versions 4.0.0 through 5.8.0, 3.3.0 through 3.10.6, 2.2.0 through 2.4.6, 2.0.0 through 2.1.17, and all releases up to and including 1.30.5, the OLE reader follows sector chains from attacker-controlled XLS/OLE metadata without detecting cycles or enforcing a maximum chain length. A tiny malformed .xls/OLE file can set the small-block depot sector chain to point back to itself. During normal XLS detection, OLERead::read() appends the same sector data repeatedly until the PHP process exhausts memory. This is reachable from Reader\Xls::canRead() and therefore from

    • Обновитесь до 1.30.6
    • Обновитесь до 2.1.18
    • Обновитесь до 2.4.7
    • Обновитесь до 3.10.7
    • Обновитесь до 5.8.1
  4. CVE-2026-59931

    Высокий · CVSS 7.7EPSS 0,47%Есть исправление

    PhpSpreadsheet: SSRF bypass via HTTP redirect in WEBSERVICE() domain whitelist

    PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. In versions 4.0.0 through 5.8.0, 3.3.0 through 3.10.6, 2.2.0 through 2.4.6, 2.0.0 through 2.1.17, and all releases up to and including 1.30.5, the WEBSERVICE() domain whitelist can be bypassed via an HTTP redirect (SSRF). In Calculation/Web/Service.php, the webService() method validates a URL's host against the whitelist set via Spreadsheet::setDomainWhiteList(), then fetches content with file_get_contents($url, false, $ctx); because PHP's HTTP stream wrapper follows 301/302 redirects automatically (up to 20 hops) and the redirect target is never re-validated, an

    • Обновитесь до 1.30.6
    • Обновитесь до 2.1.18
    • Обновитесь до 2.4.7
    • Обновитесь до 3.10.7
    • Обновитесь до 5.8.1
  5. CVE-2026-61609

    Высокий · CVSS 7.5EPSS 0,5%Есть исправление

    Pterodactyl's shared global rate-limit key on login and 2FA checkpoint enables unauthenticated panel-wide authentication lockout (DoS)

    Pterodactyl is a free, open-source game server management panel. From 1.7.0 until 1.13.0, the authentication rate limiter defined in RouteServiceProvider::configureRateLimiting() applied a single global bucket to the login and two-factor checkpoint endpoints instead of keying by IP or account: the fall-through Limit::perMinute(10) covering POST /auth/login and POST /auth/login/checkpoint omitted ->by(), so Laravel derived a constant cache key (md5('authentication')) shared by every request. An unauthenticated attacker sending roughly ten requests per minute from a single IP, most cheaply against the checkpoint endpoint (which has no reCAPTCHA

    • Обновитесь до 1.13.0
  6. CVE-2026-54593

    Высокий · CVSS 8.1EPSS 0,68%Есть исправление

    Pterodactyl's improper JWT scoping allows subuser to upload files when not explicitly granted `file.create` permissions

    Pterodactyl is a free, open-source game server management panel. Prior to Panel version 1.12.3 and Wings version 1.12.2, the Wings /upload/file endpoint accepted any valid panel-signed JWT that contained server_uuid, user_uuid, and unique_id claims without checking the token's intended purpose; because the Panel issues JWTs carrying those same claims for lower-privilege operations such as WebSocket authentication and file-download links, an authenticated subuser could reuse one of those tokens (for example a WebSocket token obtained with only the websocket.connect permission) by replaying it against /upload/file to write arbitrary files to th

    • Обновитесь до 1.12.2
    • Обновитесь до 1.12.3
  7. CVE-2026-45293

    Высокий · CVSS 8.6EPSS 0,25%Есть исправление

    WordPress Coding Standards (WordPressCS) contains an arbitrary code execution vulnerability

    WordPress Coding Standards is a set of PHP_CodeSniffer rules (sniffs) that enforce WordPress coding conventions. From 0.14.1 until 3.4.1, the WordPress.WP.EnqueuedResourceParameters sniff (active in the WordPress and WordPress-Extra rulesets) reconstructed the $ver argument passed to functions such as wp_enqueue_script() and ran it through eval() inside its is_falsy() method, so a maliciously crafted argument such as 'system'('id') would execute during a scan; as a result, running PHPCS with WordPressCS over untrusted PHP (for example a CI pipeline that lints pull requests, or a developer reviewing third-party code) could lead to arbitrary co

    • Обновитесь до 3.4.1
  8. CVE-2026-55579

    Критический · CVSS 9.8EPSS 0,79%Есть исправление

    Pheditor: Hardcoded default password 'admin' with no forced change enables full application compromise

    Pheditor is a single-file editor and file manager written in PHP. From version 2.0.1 to before version 2.0.6, Pheditor ships with a hardcoded default password admin (SHA-512 hash stored at pheditor.php:11). There is no mechanism to force a password change on first login. Any deployment using the default credentials grants an attacker full access to the file editor, file upload, and terminal features, enabling arbitrary file read/write and remote code execution. This issue has been patched in version 2.0.6.

    • Обновитесь до 2.0.6
  9. CVE-2026-55578

    Высокий · CVSS 8.8EPSS 0,67%Есть исправление

    Pheditor: Incomplete command sanitization in terminal feature allows RCE via pipe operator, backtick substitution, and newline injection

    Pheditor is a single-file editor and file manager written in PHP. From version 2.0.1 to before version 2.0.6, the terminal feature in Pheditor uses an incomplete character blocklist to sanitize user-supplied commands before passing them to shell_exec(). After the fix for GHSA-9643-6xjp-vx57 (which added $ to the blocklist), the characters | (single pipe), ` (backtick), and the newline byte (0x0A) remain unblocked. An authenticated user with the terminal permission (enabled by default) can leverage any of these to bypass the TERMINAL_COMMANDS allowlist and execute arbitrary OS commands as the web server user. This issue has been patched in ver

    • Обновитесь до 2.0.6
  10. CVE-2026-54540

    Высокий · CVSS 8.8EPSS 0,73%Есть исправление

    Authenticated terminal command whitelist bypass in Pheditor

    Pheditor is a single-file editor and file manager written in PHP. Prior to version 2.0.5, there is an authenticated terminal command whitelist bypass. The terminal feature checks whether the submitted command starts with one of the configured TERMINAL_COMMANDS values, then passes the full command string to shell_exec(). Shell command substitution such as $() is not blocked, so an authenticated user with the terminal permission can bypass a restricted command allowlist and execute arbitrary shell commands as the web server user. This issue has been patched in version 2.0.5.

    • Обновитесь до 2.0.5
  11. CVE-2026-48030

    Критический · CVSS 9.9EPSS 7,55%Публичный эксплойтЕсть исправление

    Pheditor: OS Command Injection in terminal handler via unsanitized 'dir' parameter (CWE-78)

    Pheditor is a single-file editor and file manager written in PHP. From version 2.0.1 to before version 2.0.4, an OS Command Injection vulnerability in the terminal action handler allows any authenticated user to execute arbitrary OS commands by injecting shell metacharacters into the 'dir' POST parameter, completely bypassing the TERMINAL_COMMANDS whitelist and achieving full Remote Code Execution with web server privileges. This issue has been patched in version 2.0.4.

    • Обновитесь до 2.0.4
  12. CVE-2026-43871

    Высокий · CVSS 8.7EPSS 1,03%Есть исправление

    Apache Thrift, Apache Thrift, Apache Thrift, Apache Thrift: TCompactProtocol varint byte-count limit

    Loop with Unreachable Exit Condition ('Infinite Loop') vulnerability in Apache Thrift Python, Go, PHP and Java bindings.This issue affects Apache Thrift: before 0.24.0. Users are recommended to upgrade to version 0.24.0, which fixes the issue.

    • Обновитесь до 0.24.0
    • Обновитесь до 0.24.0-2
  13. GHSA-cmwh-g2h8-c222

    Высокий · CVSS 8.1Есть исправление

    Poweradmin: OIDC `sub` collation bypass in Poweradmin leading to account takeover

    ## Preface Poweradmin maps OIDC identities into local users through `oidc_user_links.oidc_subject` plus `provider_id`. In the MySQL schema, the OIDC link table explicitly uses `utf8mb4_unicode_ci`, which is case-insensitive and accent-insensitive. OIDC `sub` is a stable external subject identifier and should be matched byte-for-byte within the issuer/provider scope. The confirmed local PoC used two different OIDC users: - Victim subject: `victim-login` - Attacker subject: `victím-login` (`í`, U+00ED) MySQL reported those two subjects as equal under `utf8mb4_unicode_ci`. After the victim linked their OIDC account, the attacker authenticate

    • Обновитесь до 4.2.5
    • Обновитесь до 4.3.4
  14. GHSA-rm67-g9ch-vxff

    Высокий · CVSS 8.1Есть исправление

    Poweradmin: Broken access control (IDOR): any zone owner can modify DNS records in zones they do not own

    ## Affected software - Product: Poweradmin (web front-end for PowerDNS) - Version tested: master, commit 7f28c3a97 (also reachable in the 4.x release line — the record-edit code is the same) - Component: record editing (web UI) - Vulnerability type: Broken Access Control / Insecure Direct Object Reference ## Severity Any authenticated user who owns at least one zone can tamper with records in every other zone on the server. In a shared/multi-tenant Poweradmin install this is effectively a cross-tenant DNS takeover. ## Summary When you save a record edit, Poweradmin checks whether you're allowed to touch the record by looking at a zone id

    • Обновитесь до 3.9.11
    • Обновитесь до 4.2.5
    • Обновитесь до 4.3.4
  15. GHSA-h4hf-v6w5-897x

    Высокий · CVSS 8.8Есть исправление

    Poweradmin: API user-update endpoint leads to a non-admin reset any user's password and take over the superuser account

    ### Summary The REST API user-update endpoint (`PUT/PATCH /api/v2/users/{id}` and the V1 equivalent) does not enforce two authorization rules that the web interface enforces. A user who holds the `user_edit_others` permission but is not a superuser can: 1. edit user accounts that belong to a superuser, and 2. set the password of any account, even without the `user_passwd_edit_others` permission. Because of this, a non-admin "user manager" role can send a single API request that changes the administrator's password, then log in as the administrator. This is a full privilege escalation and account takeover. The same actions are explicitly bl

    • Обновитесь до 4.2.5
    • Обновитесь до 4.3.4
  16. GHSA-f25v-x6vr-962g

    Критический · CVSS 10Есть исправление

    Pheditor: Authentication Bypass in Forced Password-Change Flow via Unverified Current Password

    ## Summary The forced password-change flow, triggered when the stored password is still the default (`admin`), does not verify that the password submitted by the client actually matches the current password. Any non-empty value in `pheditor_password` is enough to reach the password-change form, and submitting `pheditor_new_password` / `pheditor_confirm_password` in the same request is enough to set an arbitrary new password and obtain an authenticated session — without ever proving knowledge of the current password. ## Root Cause `pheditor.php` line 163: ```php if (PASSWORD == hash('sha512', 'admin')) { // still default — force change pro

    • Обновитесь до 2.0.8
  17. GHSA-g3hq-hphg-8fhh

    Высокий · CVSS 8.8Есть исправление

    Pheditor: Terminal command-allowlist bypass via argument injection leads to RCE — surviving vector after the metacharacter-sanitization fixes

    ### Summary pheditor's terminal feature restricts callers to an allowlist of commands (`TERMINAL_COMMANDS`) and rejects shell metacharacters. The allowlist is enforced as a PREFIX match with no argument validation, and the allowlist includes binaries that grant arbitrary command execution through their own options (`find`, `git`, `php`, `tar`, `grep`). A caller can therefore run any command using only allowlisted binaries and no rejected metacharacter, escaping the allowlist restriction the terminal feature relies on. ### Relationship to the prior terminal advisories (this is a surviving, distinct vector) The prior terminal advisories were

    • Обновитесь до 2.0.7
  18. CVE-2026-48012

    Средний · CVSS 4.3EPSS 0,27%Есть исправление

    Shopware SSO referer trust leading to an arbitrary redirect target

    Shopware is an open commerce platform. Versions 6.7.3.0 through 6.7.10.0 have an open redirect in Shopware's public SSO entry point at `GET /api/oauth/sso/auth`. When the endpoint is reached without the expected SSO session state, the application falls back to the request's `Referer` header and uses that value as the redirect destination. In the validated behavior, the server does not restrict that fallback target to same-origin URLs, does not require a relative path, and does not reject dangerous schemes such as `javascript:`. As a result, an unauthenticated request can turn this endpoint into a reusable redirect primitive whose destination

    • Обновитесь до 6.7.10.1
  19. CVE-2026-48013

    Средний · CVSS 4.1EPSS 0,37%Есть исправление

    Shopware: SSRF in Media External-Link Endpoint Bypasses IP Validation

    Shopware is an open commerce platform. Prior to 6.6.10.18 and 6.7.10.1, the `/api/_action/media/external-link` endpoint allows authenticated admin users to make server-side HTTP HEAD requests to arbitrary internal IP addresses. While the parallel `uploadFromURL` flow validates target IPs against private/reserved ranges via `FileUrlValidator`, the `linkURL` flow only performs a URL format check (regex for `http://` or `https://` prefix), allowing SSRF to internal network services and cloud metadata endpoints. This issue is fixed in versions 6.6.10.18 and 6.7.10.1.

    • Обновитесь до 6.7.10.1
  20. CVE-2026-47743

    Высокий · CVSS 8.7EPSS 0,38%Есть исправление

    Shopper: Multiple data integrity and disclosure issues in admin Livewire components

    Shopper is a Headless e-commerce Admin Panel. Prior to 2.8.0, three related defects on admin Livewire components allowed data tampering, sensitive data disclosure, and stored XSS. First, several Livewire components in the admin panel exposed Eloquent model identifiers as public properties without the `#[Locked]` attribute. An authenticated user could rewrite the wire payload from the browser to target any record id, bypassing the implicit scoping enforced by the page routing. Second, `Customers/Create::store()` re-passed a `Hidden` `_password` form field straight into the create payload. The plaintext password was rendered into the HTML and t

    • Обновитесь до 2.8.0

Проверьте свой сервер

Сопоставьте установленный стек и версии со свежими базами уязвимостей.

Проверьте свой сервер →