← back
CVE-2018-2628criticalunder attackCWE-502

CVE-2018-2628

100Vexday Risk Score

Patch now. It under exploitation confirmed by CISA and has a working public exploit.

ssvc Actcvss 9.8epss 99%
from disclosure to weapon0 days
Published on NVDApr 19
1st PoCApr 18
metasploitApr 17
CISA KEV+1603d
exploitation probability
99%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
51 public exploit(s)
Action required by CISAfederal deadline: 2022-09-29

Apply updates per vendor instructions.

Summary

Falha de desserialização insegura (CWE-502) no protocolo T3 do Oracle WebLogic Server, que permite a um atacante não autenticado com acesso de rede à porta T3 (7001 por padrão) executar código arbitrário e assumir controle total do servidor. É crítica porque não exige credenciais, não exige interação do usuário e o protocolo T3 costuma estar acessível em ambientes corporativos que expõem WebLogic para integração entre servidores.

Technical detail

O WLS Core Components do WebLogic aceita, via protocolo proprietário T3 (usado para RMI/comunicação entre instâncias), objetos Java serializados enviados pelo cliente sem validação de tipo ou origem antes de desserializá-los. Isso é uma instância clássica de desserialização de dados não confiáveis (CWE-502): o servidor reconstrói objetos a partir de um stream controlado integralmente pelo atacante, e bibliotecas presentes no classpath do WebLogic (Commons Collections e outras, dependendo da versão) contêm cadeias de gadgets que, ao serem reconstruídas, disparam execução de código nativo do sistema operacional.

O fluxo de exploração passa por um handshake T3 inicial (negociação de versão de protocolo) seguido do envio de um objeto serializado malicioso dentro de uma requisição que o WebLogic interpreta como parte da comunicação RMI legítima. O atacante controla integralmente o conteúdo desse objeto — ou seja, controla qual gadget chain é reconstruído e, por consequência, qual comando é executado no contexto do processo do servidor de aplicação.

O Oracle corrigiu a falha original com blacklists de classes no processo de desserialização, mas essa abordagem baseada em lista negra se mostrou incompleta: pesquisadores (caso documentado em análise da 360 ESG Codesafe Team, referenciada no PoC de patch-bypass no Exploit-DB) encontraram cadeias de gadgets alternativas que não estavam bloqueadas, resultando em CVEs subsequentes (como CVE-2018-3245) que contornam a correção original usando a mesma superfície T3.

How it’s exploited

O vetor é rede pura: o atacante não precisa de conta no WebLogic, apenas de conectividade TCP até a porta onde o listener T3 está exposto (7001 é o padrão, mas pode ser outra). A exploração pública documentada usa a ferramenta ysoserial para gerar o objeto serializado e, em várias variantes, um listener JRMP (via `ysoserial.exploit.JRMPListener`) que serve a cadeia de gadget quando o WebLogic, ao desserializar, tenta resolver uma referência RMI remota — técnica que permite contornar filtros de blacklist ao deslocar o payload malicioso para uma segunda etapa buscada sob demanda.

Existem múltiplos PoCs públicos (Exploit-DB 44553, 46513) e um módulo Metasploit (EDB 45193) com ranking manual, que automatizam o handshake T3, o envio do objeto serializado e a entrega de payload (incluindo variantes PowerShell para alvos Windows). A complexidade técnica de reproduzir o ataque é baixa para quem tem as ferramentas certas — daí o CVSS AC:L — mas construir o PoC do zero sem essas ferramentas exigiria conhecimento de formatos de serialização Java e do protocolo T3.

A CISA confirmou exploração ativa em campo (entrada no catálogo KEV desde setembro de 2022, com prazo de correção definido), e o EPSS extremamente alto (~99,4%) reflete a observação contínua de tentativas de exploração massiva contra hosts WebLogic expostos, um padrão recorrente desde 2018 em campanhas de mineração de criptomoeda e comprometimento inicial de rede corporativa.

Versions

Affected
Oracle WebLogic Server 10.3.6.0, 12.1.3.0, 12.2.1.2 e 12.2.1.3 (versões suportadas afetadas segundo o advisory Oracle).
Fixed in
Correção disponibilizada no Critical Patch Update da Oracle de abril de 2018 (cpuapr2018) para as quatro versões afetadas. Não há, nas fontes consultadas, número de versão pontual pós-patch — a correção é distribuída como patch aplicado sobre a versão existente, não como novo release numerado. Nota: correções subsequentes foram necessárias para cadeias de gadget alternativas (ex.: CVE-2018-3245) descobertas após esse CPU.

How to protect

A correção oficial da Oracle está no Critical Patch Update de abril de 2018 (cpuapr2018). Aplique esse CPU nas versões afetadas (10.3.6.0, 12.1.3.0, 12.2.1.2, 12.2.1.3). Importante: a blacklist de classes usada nessa correção foi posteriormente contornada por pesquisadores usando cadeias de gadget alternativas sobre o mesmo vetor T3 (documentado publicamente, resultando em CVEs subsequentes como CVE-2018-3245); portanto aplicar apenas o patch de abril de 2018 não é suficiente para blindar contra toda a família de falhas de desserialização T3 do WebLogic — é necessário manter o WebLogic atualizado com os CPUs subsequentes da Oracle.

Como paliativo quando a atualização imediata não é viável, a via real de contenção é reduzir a exposição da porta T3: restringir o acesso de rede à porta do listener T3 apenas a hosts confiáveis (firewall/segmentação), já que a exploração exige alcançar essa porta diretamente. Não há mitigação de configuração dentro da própria aplicação WebLogic documentada nas fontes consultadas além do patch oficial — bloqueio de blacklist adicional por conta própria é frágil e não substitui a atualização, dado o histórico de bypass.

Não funciona como mitigação confiável: confiar apenas em WAF de camada HTTP, já que T3 é um protocolo binário próprio, não HTTP — regras de WAF voltadas a tráfego web não inspecionam nem bloqueiam esse canal.

How to detect

Monitore tráfego destinado à porta do listener T3 (7001 por padrão) partindo de origens não esperadas — a mera presença de conexões T3 de fora da rede de gerência já é um sinal de exposição indevida. No payload, o início característico de um stream de objeto serializado Java (bytes de assinatura 0xACED0005/ACED0005 em hexadecimal) enviado logo após o handshake T3 é um indicador técnico de tentativa de exploração dessa classe de vulnerabilidade, presente em todos os PoCs públicos analisados. Não há um log nativo do WebLogic amplamente citado que sinalize inequivocamente a tentativa antes da execução — a detecção mais confiável depende de inspeção de tráfego de rede (IDS/IPS com assinatura para o protocolo T3 e para o magic bytes de serialização Java) e não da telemetria padrão da aplicação.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
Vulnerability in the Oracle WebLogic Server component of Oracle Fusion Middleware (subcomponent: WLS Core Components). Supported versions that are affected are 10.3.6.0, 12.1.3.0, 12.2.1.2 and 12.2.1.3. Easily exploitable vulnerability allows unauthenticated attacker with network access via T3 to compromise Oracle WebLogic Server. Successful attacks of this vulnerability can result in takeover of Oracle WebLogic Server. CVSS 3.0 Base Score 9.8 (Confidentiality, Integrity and Availability impacts). CVSS Vector: (CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H).
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
public PoCs found51 VexDay Proof
exploitdbVexDay Proofwww.exploit-db.com/exploits/45193exploitdbVexDay Proofwww.exploit-db.com/exploits/44553exploitdbwww.exploit-db.com/exploits/46513unverifiedgithubgithub.com/0xn0ne/weblogicScanner2074githubgithub.com/tdy218/ysoserial-cve-2018-2628114githubgithub.com/jas502n/CVE-2018-2628107githubgithub.com/shengqi158/CVE-2018-262878githubgithub.com/forlin/CVE-2018-262820githubgithub.com/aedoo/CVE-2018-2628-MultiThreading15githubgithub.com/jiansiting/weblogic-cve-2018-262814githubgithub.com/0xMJ/CVE-2018-262812githubgithub.com/Lighird/CVE-2018-262810githubgithub.com/Nervous/WebLogic-RCE-exploit5githubgithub.com/likekabin/CVE-2018-26283githubgithub.com/zjxzjx/CVE-2018-2628-detect2githubgithub.com/Shadowshusky/CVE-2018-2628all2githubgithub.com/9uest/CVE-2018-26281githubgithub.com/skydarker/CVE-2018-26281githubgithub.com/herantong/CVE-2018-26281githubgithub.com/victor0013/CVE-2018-26281githubgithub.com/cscadoge/weblogic-cve-2018-26280githubgithub.com/wrysunny/cve-2018-26280githubgithub.com/shaoshore/CVE-2018-26280githubgithub.com/seethen/cve-2018-26280githubgithub.com/BabyTeam1024/cve-2018-26280githubgithub.com/stevenlinfeng/CVE-2018-26280cve_referencewww.exploit-db.com/exploits/46513/unverifiedvulncheckvulncheck.com/xdb/7459b9092084unverifiedvulncheckvulncheck.com/xdb/9568d7a3210dunverifiedvulncheckvulncheck.com/xdb/5fb56addad69unverifiedvulncheckvulncheck.com/xdb/1502741aa6e5unverifiedvulncheckvulncheck.com/xdb/b7a4c562d6ccunverifiedvulncheckvulncheck.com/xdb/d6dc32e5b5afunverifiedvulncheckvulncheck.com/xdb/b96cd5cb34d6unverifiedvulncheckvulncheck.com/xdb/9bb8a4f5bcd7unverifiedvulncheckvulncheck.com/xdb/2bf630ee5bdbunverifiedvulncheckvulncheck.com/xdb/2d7c1b752013unverifiedvulncheckvulncheck.com/xdb/50c18de3d86aunverifiedvulncheckvulncheck.com/xdb/efdf79b80de3unverifiedvulncheckvulncheck.com/xdb/9897ff7f2048unverifiedvulncheckvulncheck.com/xdb/f5c1eb50cf55unverifiedvulncheckvulncheck.com/xdb/a0a66287ef5bunverifiedvulncheckvulncheck.com/xdb/d5a92dce5856unverifiedvulncheckvulncheck.com/xdb/c7bbf0a3a56cunverifiedvulncheckvulncheck.com/xdb/eed7ace69d37unverifiedvulncheckvulncheck.com/xdb/137f7572ee51unverifiedvulncheckvulncheck.com/xdb/3f0bbfbfe6a2unverifiedcve_referencewww.exploit-db.com/exploits/44553/unverifiedcve_referencewww.exploit-db.com/exploits/45193/unverifiedvulncheckvulncheck.com/xdb/ca80154633cfunverifiedvulncheckvulncheck.com/xdb/f239b0f9c8c8unverified
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.