🏢 公司NewsroomDTDoubao · 实盘不做把握 8/10不做原因:无增量信息
北京时间·🕒 发布 22:48:45(美东 10:48)·⟳ 抓取 22:50:09回填·⚡ 决策 10-22 22:53:09 +4m24s·4.8 天前
Dynatrace 借 PHP2Shell 漏洞发检测科普博客,无新产品、订单或收入增量,属已扩散事件的厂商营销复述
本条是 Dynatrace 自有 Newsroom 在 PHP2Shell 漏洞全球披露约一天后发布的检测科普/营销博客,复用既有 OneAgent/RVA 与 DQL 能力,未带来任何新产品、客户、订单、bookings 或指引增量,公司还明确不受漏洞影响;同一催化已被本臂十余次研判且网安股已情绪兑现,无正期望,多空均不做。
📄 原文DT↗ 原文
CVE-2026-109618 & CVE-2026-109619: PHP2Shell Critical Vulnerability – what it is and what to do
TL;DR On October 21, 2026, the PHP project released emergency updates for two critical vulnerabilities known as PHP2She…
不做 Dynatrace(DT.US)
公司 Newsroom 在 PHP2Shell 漏洞全球披露约一天后发布检测科普博客,只展示既有 OneAgent/RVA+DQL 能力,无新产品、订单、bookings 或指引增量,并声明自身不受影响;同一催化已高扩散、网安股先行情绪定价,做多无 edge,做空仅属 fade 题材不满足做空红线,故多空均不做
展开详情(成交明细 / 研究档案 / 原文全文 / 决策记录链)
研究档案
结论摘要
Dynatrace 借已广泛扩散的 PHP2Shell 漏洞展示既有产品的检测查询,属品牌型软催化:无新产品/订单/收入、自身不受影响,事件已高扩散且网安股先行定价,风险收益不足,回避。
🔎 新鲜度:最早出现 2026-10-21 · 扩散 high · price-in 风险 high ↗
关键理由
- 无可支撑做多的新增经济事实:博客只提供基于既有 RVA/OneAgent 的 DQL 查询,未宣布付费新产品或商业合同,Dynatrace 并声明自身不受影响
- PHP2Shell 补丁免费、由 PHP 官方于 10-21 发布,事件过去 24 小时已全球高扩散,美股/A 股/韩股网安板块均已先行情绪定价
主要风险
- 若该检测内容被包装为获客抓手并在后续财报中转化为可量化 RVA/安全模块增量,需重新评估,但本条本身无任何此类数据
- 盘中若网安板块因漏洞攻击量升级再度集体异动,DT 可能出现 beta 式跟随,但那是题材情绪而非本博客带来的个股 edge
反向证据
- 做多前查反向 · 来源 web · 日期 2026-10-22 · 影响 invalidates
博客未宣布任何新付费产品、客户合同或指引,仅复用既有 OneAgent/RVA 数据与 DQL 查询;公司声明自身不受漏洞影响,缺乏做多的基本面增量
检索:Dynatrace PHP2Shell new product / RVA bookings / security module deal 2026-10-22 原文 ↗
先例如何影响了这次决策
对本次决策的影响:确认本条为零增量厂商营销复述、催化已 price-in,直接支持 AVOID,不为 Dynatrace 开多;fade 题材亦不满足做空红线
方向:同一 PHP2Shell 催化过去 24 小时已在 Cloudflare(NET.US)、A 股网安股、韩股网安股等多个载体上被本臂反复研判,均判不做:免费补丁/WAF/检测工具无收入增量,题材多为一日情绪脉冲、次日分化回落
涨幅量级:缺乏针对 DT.US 这种『事后发检测科普博客』的干净对齐先例;既有同事件案例显示安全股当日 +3%~12% 后回落,幅度不具可复制性,不据以定 tp/sl
形态:同一漏洞事件的厂商免费工具/警示类消息(Cloudflare 免费 WAF、AhnLab 警示、Stealien 免费检测页、CNVD/通报中心转述)均未产生可持续超额收益,反复指向无 edge
工具执行结果 · 成功 1 · 降级 0 · 失败 0 · 取消 0
- search_processed_events 成功 stock_tools HTTP · 3,007 ms
{"result": "search_processed_events:agent query=`dynatrace php critical vulnerability blog detection dql | php 紧急补丁 rce cloudflare 攻击 2026年10月 | php2shell cve-2026-109618 cve-2026-109619 dynatrace 漏洞检测`;结构化索引覆盖完整 72 小时;旧记录兼容扫描近 72.0/72 小时、26398 条本臂决策(完整),返回 20 条候选。\n• 10-22 05:31 UTC(北京 13:31) [bm25
原文全文
展开原文 · 10,486 字
TL;DR
On October 21, 2026, the PHP project released emergency updates for two critical vulnerabilities known as PHP2Shell (8.5.12, 8.4.27, 8.3.36 and 8.2.35). Both are rated CVSS 9.2, and either can allow an attacker to perform unauthenticated remote code execution.
Dynatrace helps customers discover affected PHP workloads and prioritize updates using runtime and business context, so teams can focus first on the services that pose the greatest risk to their business. Customers must apply the PHP updates to remediate the vulnerabilities.
The vulnerabilities affect the PHP runtime itself, not in a plugin, framework, or library.
Updating PHP is the only complete fix.
Newer PHP versions have an official patched release you can upgrade to. PHP 8.1 and earlier do not: the PHP team has not issued a patched release for them, so there is no fixed version to download. However, for 7.4, 8.0, and 8.1, the team has instead published source patches, which you would have to apply and rebuild PHP yourself. If that’s not practical, many Linux vendors ship the fixes as backports in their own PHP packages, so updating through your OS package manager may be another route.
Updating is urgent:
the technical details of the vulnerabilities leaked before the planned patch release, and Cloudflare is already seeing attacks. Many organizations did not wait for the patch. In the Netherlands, the House of Representatives (Tweede Kamer) and the National Cyber Security Centre (NCSC) of the UK
took their websites offline as a precaution
.
Dynatrace is
not affected
by this vulnerability. For full details, please
refer to this security alert post
.
What’s at risk?
Any server that uses PHP to serve websites is at risk, including setups based on PHP-FPM, Apache with mod_php, php-cgi, FrankenPHP, and LiteSpeed. The PHP team has confirmed working exploits against default configurations (
GHSA-w8hw-w9fx-j79w, GHSA-6wmf-4rv5-p3rp
).
Affected versions:
PHP 8.2 before 8.2.35
PHP 8.3 before 8.3.36
PHP 8.4 before 8.4.27
PHP 8.5 before 8.5.12
Unsupported older versions of PHP are also impacted. Researchers traced the flaws back to PHP 5.4, although PHP’s advisory does not specify how far they go. Linux distributions often backport fixes without changing the version number, so check your vendor’s advisory before marking a server as vulnerable; for example,
USN-8948-1
.
The
flaws were leaked
ahead of the coordinated disclosure.
Cloudflare reports
attacks against its customers, with attackers modifying their payloads to bypass its firewall rules. Researchers have demonstrated working exploits; detailed technical write-ups are public (for example,
Calif
), and unverified exploit Proof of Concepts (PoCs) are circulating.
The potential impact is severe. A successful attacker can execute arbitrary code with the privileges of the web server process. That typically exposes credentials, database connections, user sessions, and customer data. CVE-2026-109618 can also leak process memory, including passwords, tokens, and API keys, without any code execution.
Immediate steps
Updating PHP is the only complete fix.
Update to 8.5.12, 8.4.27, 8.3.36, or 8.2.35, or install your Linux distribution’s updated package. Distributions got the fixes ahead of time, so packages should already be available. If you run containers, rebuild your images.
For PHP 8.1 or older: Check your vendors’ security advisories for a backported fix or upgrade. If you build PHP yourself, the PHP team has published
minimal patches for 7.4, 8.0, and 8.1.
If you can’t update immediately:
only an update is a complete solution; configurations reported by the PHP team to reduce exposure to specific attack paths are listed below in the
How to fix PHP2Shell vulnerability
section.
To identify affected applications or detect potential exploitation attempts, run the queries in the
How to detect PHP2Shell vulnerability with Dynatrace
section of this blog post.
What is the PHP2Shell vulnerability?
PHP2Shell is the name given to two newly disclosed critical vulnerabilities in PHP itself. Both vulnerabilities come down to the same problem: PHP doesn’t clean up properly when a request fails halfway through. An attacker can deliberately cause that failure and abuse the mess it leaves behind.
CVE-2026-109618 (RCE via OOM corruption).
An unauthenticated attacker can send a crafted multipart POST request that exhausts PHP’s per-request memory while PHP is still parsing the request—before application code or authentication runs. The abrupt failure leaves partially initialized internal data behind; during cleanup, PHP can misinterpret attacker-influenced memory and execute an attacker-supplied command with the privileges of the web server process.
CVE-2026-109619 (RCE via stale global state).
An attacker first sends a crafted request that triggers a fatal condition and leaves a PHP worker holding a reference to memory that has already been freed. A follow-up request handled by that same worker can reclaim and shape that memory; when PHP uses the stale reference, the attacker can redirect execution to an attacker-supplied command, again gaining an initial foothold as the web server account.
The bugs were
found by Calif.io, Wiz, OpenAI, and Quarkslab
. Once word got out, things moved fast:
When (UTC)
What happened
October 20, 15:20
A
Hacker News post
hints at critical PHP flaws
October 20
PHP announces an emergency release
. watchTowr confirms details had leaked ahead of the October 22 embargo
October 21, 03:02
Cloudflare’s firewall protections go live
October 21
Several government organizations
take websites offline
as a precaution
October 21, 13:34
PHP Foundation publishes both security advisories on GitHub
October 21, 14:00
Fixed versions are released
How to fix PHP2Shell vulnerability (CVE-2026-109618, CVE-2026-109619)
Updating PHP is the only complete fix. The PHP team makes it plain that no setting fully mitigates the risk. If you can’t update immediately, the following configuration can help you reduce the risk. Make them in the main server configuration in a way that applications can’t override it (php.ini, the PHP-FPM pool, or Apache configuration), then restart every PHP process:
Against the OOM corruption:
Configure limits to prevent controllable OOM
Set
memory_limit=-1
.
Set a low
post_max_size
. Keep
upload_max_filesize
below
post_max_size
. Enforce limits for the decoded request size, input field count, multipart part count, header count, and nesting depth in front of the PHP application.
Prefer container or cgroup limits over
RLIMIT_AS
and
RLIMIT_DATA
.
If not used, block
multipart/form-data
requests before they reach PHP.
Against the leftover-state bug:
Set
session.upload_progress.enabled=0
, which is active by default and allows exploitation even if no call to
session_start()
is made.
For PHP 8.5 specifically, set
fatal_error_backtraces=0
to block a confirmed
mod_php
exploit.
If possible, limit the number of requests a worker may execute to 1 using
pm.max_requests=1
. This ensures memory is cleaned because each worker process is respawned after every request.
Eliminate diagnostics from all INI configuration applied before request initialization.
On application level: Eliminate fatal errors and timeouts on attacker-reachable paths.
For further details, refer to the GitHub security advisories (
GHSA-w8hw-w9fx-j79w
,
GHSA-6wmf-4rv5-p3rp
) and the security advisory on
php.net
.
How to detect PHP2Shell vulnerability with Dynatrace
By having RVA and/or OneAgent running, Dynatrace customers can leverage data collection that is already in place. Dynatrace already knows which version of PHP monitored processes run. The following DQL query identifies monitored processes running potentially affected PHP versions
smartscapeNodes "PROCESS"
| fieldsAdd technologies = arrayConcat(process.software_technologies.php, process.software_technologies.os)
| expand technologies
| filter technologies[type] == "PHP"
| fieldsAdd php_version = if(technologies[version] != "", technologies[version])
| summarize {
php_version = takeAny(php_version),
// Collect if the process has confirmed public internet traffic
process.has_public_traffic = if(takeAny(process.has_public_traffic), "CONFIRMED", else: "NOT_CONFIRMED")
}, by: {id}
| parse php_version, "INT:major '.' INT:minor '.' INT:patch"
// Filter out fixed PHP versions
| filterOut major == 8 AND (
(minor == 2 AND patch >= 35) OR
(minor == 3 AND patch >= 36) OR
(minor == 4 AND patch >= 27) OR
(minor == 5 AND patch >= 12)
)
| fieldsKeep id, php_version, process.has_public_traffic
Use the following log query to investigate memory errors, timeouts, and PHP worker crashes. These events can help identify suspicious activity, but do not by themselves confirm exploitation.
fetch logs
| filter matchesValue(content, {
"*Allowed memory size of*",
"*Maximum execution time*",
"*exit signal Segmentation fault*",
"*exited on signal 11*",
"*PHP Fatal error*"
})
Additionally, look for Problems detected by Dynatrace related to PHP processes, specifically out-of-memory errors and timeouts.
A common next step for an attacker is to run reconnaissance commands such as
whoami
,
uname
, or
id
, and, later on, spawn shells. When process execution logs are collected and available in Dynatrace, investigate unexpected commands or shell processes launched by PHP or web server processes as potential signs of compromise. Refer to the example in the
React2Shell blog post
, which shows how to set this up, and filter for
apache2
,
nginx
,
php
,
php-fpm
, and similar parent processes.
References and sources
CVEs:
CVE-2026-109618
,
CVE-2026-109619
Vendor advisories:
PHP security advisory
,
GHSA-w8hw-w9fx-j79w
,
GHSA-6wmf-4rv5-p3rp
,
UK NCSC
,
CERT-EU 2026-018
Research and coverage:
Cloudflare
,
Sansec
,
SOCRadar
,
BleepingComputer
Patch first, then check what you’ve missed.
PHP2Shell is being actively exploited, and updating PHP is the only complete fix. Update to the patched versions 8.5.12, 8.4.27, 8.3.36 or 8.2.35, or install your distribution’s patched package. Use the DQL query in this blog to identify monitored processes running potentially affected PHP versions, accounting for vendor backports. Then use Dynatrace logs and Problems to investigate memory errors, timeouts, and crashing PHP workers that exploitation attempts leave behind.
If you are a Dynatrace Managed customer, you will not have access to DQL. In this case, please contact your Dynatrace account team to learn how we can help.
On October 21, 2026, the PHP project released emergency updates for two critical vulnerabilities known as PHP2Shell (8.5.12, 8.4.27, 8.3.36 and 8.2.35). Both are rated CVSS 9.2, and either can allow an attacker to perform unauthenticated remote code execution.
Dynatrace helps customers discover affected PHP workloads and prioritize updates using runtime and business context, so teams can focus first on the services that pose the greatest risk to their business. Customers must apply the PHP updates to remediate the vulnerabilities.
The vulnerabilities affect the PHP runtime itself, not in a plugin, framework, or library.
Updating PHP is the only complete fix.
Newer PHP versions have an official patched release you can upgrade to. PHP 8.1 and earlier do not: the PHP team has not issued a patched release for them, so there is no fixed version to download. However, for 7.4, 8.0, and 8.1, the team has instead published source patches, which you would have to apply and rebuild PHP yourself. If that’s not practical, many Linux vendors ship the fixes as backports in their own PHP packages, so updating through your OS package manager may be another route.
Updating is urgent:
the technical details of the vulnerabilities leaked before the planned patch release, and Cloudflare is already seeing attacks. Many organizations did not wait for the patch. In the Netherlands, the House of Representatives (Tweede Kamer) and the National Cyber Security Centre (NCSC) of the UK
took their websites offline as a precaution
.
Dynatrace is
not affected
by this vulnerability. For full details, please
refer to this security alert post
.
What’s at risk?
Any server that uses PHP to serve websites is at risk, including setups based on PHP-FPM, Apache with mod_php, php-cgi, FrankenPHP, and LiteSpeed. The PHP team has confirmed working exploits against default configurations (
GHSA-w8hw-w9fx-j79w, GHSA-6wmf-4rv5-p3rp
).
Affected versions:
PHP 8.2 before 8.2.35
PHP 8.3 before 8.3.36
PHP 8.4 before 8.4.27
PHP 8.5 before 8.5.12
Unsupported older versions of PHP are also impacted. Researchers traced the flaws back to PHP 5.4, although PHP’s advisory does not specify how far they go. Linux distributions often backport fixes without changing the version number, so check your vendor’s advisory before marking a server as vulnerable; for example,
USN-8948-1
.
The
flaws were leaked
ahead of the coordinated disclosure.
Cloudflare reports
attacks against its customers, with attackers modifying their payloads to bypass its firewall rules. Researchers have demonstrated working exploits; detailed technical write-ups are public (for example,
Calif
), and unverified exploit Proof of Concepts (PoCs) are circulating.
The potential impact is severe. A successful attacker can execute arbitrary code with the privileges of the web server process. That typically exposes credentials, database connections, user sessions, and customer data. CVE-2026-109618 can also leak process memory, including passwords, tokens, and API keys, without any code execution.
Immediate steps
Updating PHP is the only complete fix.
Update to 8.5.12, 8.4.27, 8.3.36, or 8.2.35, or install your Linux distribution’s updated package. Distributions got the fixes ahead of time, so packages should already be available. If you run containers, rebuild your images.
For PHP 8.1 or older: Check your vendors’ security advisories for a backported fix or upgrade. If you build PHP yourself, the PHP team has published
minimal patches for 7.4, 8.0, and 8.1.
If you can’t update immediately:
only an update is a complete solution; configurations reported by the PHP team to reduce exposure to specific attack paths are listed below in the
How to fix PHP2Shell vulnerability
section.
To identify affected applications or detect potential exploitation attempts, run the queries in the
How to detect PHP2Shell vulnerability with Dynatrace
section of this blog post.
What is the PHP2Shell vulnerability?
PHP2Shell is the name given to two newly disclosed critical vulnerabilities in PHP itself. Both vulnerabilities come down to the same problem: PHP doesn’t clean up properly when a request fails halfway through. An attacker can deliberately cause that failure and abuse the mess it leaves behind.
CVE-2026-109618 (RCE via OOM corruption).
An unauthenticated attacker can send a crafted multipart POST request that exhausts PHP’s per-request memory while PHP is still parsing the request—before application code or authentication runs. The abrupt failure leaves partially initialized internal data behind; during cleanup, PHP can misinterpret attacker-influenced memory and execute an attacker-supplied command with the privileges of the web server process.
CVE-2026-109619 (RCE via stale global state).
An attacker first sends a crafted request that triggers a fatal condition and leaves a PHP worker holding a reference to memory that has already been freed. A follow-up request handled by that same worker can reclaim and shape that memory; when PHP uses the stale reference, the attacker can redirect execution to an attacker-supplied command, again gaining an initial foothold as the web server account.
The bugs were
found by Calif.io, Wiz, OpenAI, and Quarkslab
. Once word got out, things moved fast:
When (UTC)
What happened
October 20, 15:20
A
Hacker News post
hints at critical PHP flaws
October 20
PHP announces an emergency release
. watchTowr confirms details had leaked ahead of the October 22 embargo
October 21, 03:02
Cloudflare’s firewall protections go live
October 21
Several government organizations
take websites offline
as a precaution
October 21, 13:34
PHP Foundation publishes both security advisories on GitHub
October 21, 14:00
Fixed versions are released
How to fix PHP2Shell vulnerability (CVE-2026-109618, CVE-2026-109619)
Updating PHP is the only complete fix. The PHP team makes it plain that no setting fully mitigates the risk. If you can’t update immediately, the following configuration can help you reduce the risk. Make them in the main server configuration in a way that applications can’t override it (php.ini, the PHP-FPM pool, or Apache configuration), then restart every PHP process:
Against the OOM corruption:
Configure limits to prevent controllable OOM
Set
memory_limit=-1
.
Set a low
post_max_size
. Keep
upload_max_filesize
below
post_max_size
. Enforce limits for the decoded request size, input field count, multipart part count, header count, and nesting depth in front of the PHP application.
Prefer container or cgroup limits over
RLIMIT_AS
and
RLIMIT_DATA
.
If not used, block
multipart/form-data
requests before they reach PHP.
Against the leftover-state bug:
Set
session.upload_progress.enabled=0
, which is active by default and allows exploitation even if no call to
session_start()
is made.
For PHP 8.5 specifically, set
fatal_error_backtraces=0
to block a confirmed
mod_php
exploit.
If possible, limit the number of requests a worker may execute to 1 using
pm.max_requests=1
. This ensures memory is cleaned because each worker process is respawned after every request.
Eliminate diagnostics from all INI configuration applied before request initialization.
On application level: Eliminate fatal errors and timeouts on attacker-reachable paths.
For further details, refer to the GitHub security advisories (
GHSA-w8hw-w9fx-j79w
,
GHSA-6wmf-4rv5-p3rp
) and the security advisory on
php.net
.
How to detect PHP2Shell vulnerability with Dynatrace
By having RVA and/or OneAgent running, Dynatrace customers can leverage data collection that is already in place. Dynatrace already knows which version of PHP monitored processes run. The following DQL query identifies monitored processes running potentially affected PHP versions
smartscapeNodes "PROCESS"
| fieldsAdd technologies = arrayConcat(process.software_technologies.php, process.software_technologies.os)
| expand technologies
| filter technologies[type] == "PHP"
| fieldsAdd php_version = if(technologies[version] != "", technologies[version])
| summarize {
php_version = takeAny(php_version),
// Collect if the process has confirmed public internet traffic
process.has_public_traffic = if(takeAny(process.has_public_traffic), "CONFIRMED", else: "NOT_CONFIRMED")
}, by: {id}
| parse php_version, "INT:major '.' INT:minor '.' INT:patch"
// Filter out fixed PHP versions
| filterOut major == 8 AND (
(minor == 2 AND patch >= 35) OR
(minor == 3 AND patch >= 36) OR
(minor == 4 AND patch >= 27) OR
(minor == 5 AND patch >= 12)
)
| fieldsKeep id, php_version, process.has_public_traffic
Use the following log query to investigate memory errors, timeouts, and PHP worker crashes. These events can help identify suspicious activity, but do not by themselves confirm exploitation.
fetch logs
| filter matchesValue(content, {
"*Allowed memory size of*",
"*Maximum execution time*",
"*exit signal Segmentation fault*",
"*exited on signal 11*",
"*PHP Fatal error*"
})
Additionally, look for Problems detected by Dynatrace related to PHP processes, specifically out-of-memory errors and timeouts.
A common next step for an attacker is to run reconnaissance commands such as
whoami
,
uname
, or
id
, and, later on, spawn shells. When process execution logs are collected and available in Dynatrace, investigate unexpected commands or shell processes launched by PHP or web server processes as potential signs of compromise. Refer to the example in the
React2Shell blog post
, which shows how to set this up, and filter for
apache2
,
nginx
,
php
,
php-fpm
, and similar parent processes.
References and sources
CVEs:
CVE-2026-109618
,
CVE-2026-109619
Vendor advisories:
PHP security advisory
,
GHSA-w8hw-w9fx-j79w
,
GHSA-6wmf-4rv5-p3rp
,
UK NCSC
,
CERT-EU 2026-018
Research and coverage:
Cloudflare
,
Sansec
,
SOCRadar
,
BleepingComputer
Patch first, then check what you’ve missed.
PHP2Shell is being actively exploited, and updating PHP is the only complete fix. Update to the patched versions 8.5.12, 8.4.27, 8.3.36 or 8.2.35, or install your distribution’s patched package. Use the DQL query in this blog to identify monitored processes running potentially affected PHP versions, accounting for vendor backports. Then use Dynatrace logs and Problems to investigate memory errors, timeouts, and crashing PHP workers that exploitation attempts leave behind.
If you are a Dynatrace Managed customer, you will not have access to DQL. In this case, please contact your Dynatrace account team to learn how we can help.
决策记录链 · 只追加
每次领取产生一条记录,重新决策追加一条并以 supersedes 指向被替代的记录(ADR 0014)。
0286c46005· 2026-10-22 22:53 · doubao / doubao-seed-evolving-latest-version · 策略包658c0c1e2ba5当前