Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-30862 — Prova de conceito demonstrando XSS armazenado no Table Widget do Appsmith, levando à escalada vertical de privilégios e à tomada total do administrador por meio de ataque XSS-para-CSRF. | Kitploit
Ferramentas/GitHubGitHub/drkim-dev/cve-2026-30862
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoRed Teaming
GitHubdrkim-dev/cve-2026-30862

CVE-2026-30862

Prova de conceito demonstrando XSS armazenado no Table Widget do Appsmith, levando à escalada vertical de privilégios e à tomada total do administrador por meio de ataque XSS-para-CSRF.

Ver Repositório
214há 5 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-30862 PoC - Escalação de Privilégios no Appsmith

Prova de Conceito para Escalação de Privilégios no Appsmith via XSS Armazenado

Divulgação: Originalmente relatado por mim via GHSA-5hw4-whxv-6794

⚠️ Uso apenas para testes de penetração/pesquisa autorizados.

Informações da Vulnerabilidade

CampoValor
ID CVECVE-2026-30862
Severidade🔴 Crítica
Pontuação CVSS9.1
Vetor CVSS[CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H]
CWECWE-79, CWE-269, CWE-352
Produto AfetadoAppsmith ≤ 1.95
Versão Corrigida1.96
AvisoGHSA-5hw4-whxv-6794

CVE-2026-30862: XSS Armazenado Crítico e Escalação de Privilégios no Appsmith v1.95

Resumo

Uma vulnerabilidade Crítica de XSS Armazenado existe no Table Widget (TableWidgetV2). A causa raiz é a falta de sanitização de HTML no pipeline de renderização de componentes React, permitindo que atributos maliciosos sejam interpolados no DOM. Ao aproveitar o recurso "Invite Users", um atacante com uma conta de usuário comum ([email protected]) pode forçar um Administrador do Sistema a executar uma chamada de API de alto privilégio (/api/v1/admin/env), resultando em uma Assunção Total da Conta Administrativa.


Detalhes

1. Causa Raiz: Falta de Sanitização de Saída A vulnerabilidade reside no mecanismo de renderização do Table Widget

  • Arquivo: app/client/src/widgets/TableWidgetV2/component/cellComponents/BasicCell.tsx

  • O componente BasicCell falha em sanitizar os dados quando o columnType está definido como URL ou Plain Text. Ele retorna valores fornecidos pelo usuário sem tratamento, que são diretamente renderizados como filhos React, os quais o navegador interpreta como HTML executável.

Trecho de Código Vulnerável (Linhas 132-143 e 172-173):

root@kitploit:~
const contentToRender = useMemo(() => {
  switch (columnType) {
    case ColumnTypes.URL:
      // Interpolação direta de 'url' em href sem sanitização
      return <a href={url} target="_blank">{value}</a>;
    default:
      return value; // Linha 141: Valor bruto retornado
  }
}, [columnType, url, value]);

// Linha 173: Sink final onde o conteúdo não sanitizado é injetado no DOM
<Content ref={contentRef}>{contentToRender}</Content>

2. Vetor de Ataque: XSS-para-CSRF via Engenharia Social (Recurso de Convite) Embora o cookie SESSION seja protegido por HttpOnly, o XSRF-TOKEN é acessível via document.cookie. Como o Appsmith permite que qualquer usuário "convide" outros para seu aplicativo, um atacante pode usar isso como mecanismo de entrega para executar uma Falsificação de Requisição entre Privilégios (CPRF) dentro da sessão ativa do Administrador.


PoC (Prova de Conceito)

Passo 1: Verificação da Vulnerabilidade XSS

  1. Faça login com uma conta de usuário comum: [email protected].

  2. Crie um novo aplicativo e adicione um Table Widget.

  3. Na propriedade Table Data, injete o seguinte:

root@kitploit:~
[{ "id": 1, "payload": "" }]
  1. Observe a execução do alert(), confirmando a bypass da sanitização.

-- Passo 2: Weaponização (Assunção Total do Administrador)

  1. Como [email protected], atualize o Table Data com o seguinte payload projetado para modificar o ambiente administrativo:
root@kitploit:~
[
  {
    "id": 1,
    "Status": "System Update Required",
    "payload": "alert('Admin Privileges Granted to [email protected]'));\">"
  }
]
  1. Use o recurso "Share" para convidar o Administrador do Sistema ([email protected]) para o aplicativo. Isso força o Administrador a visualizar a tabela maliciosa ao abrir o convite.

  2. Quando o Administrador abrir o aplicativo, o script é executado em segundo plano. Ele lê o XSRF-TOKEN do Administrador e envia uma requisição PUT para adicionar [email protected] à lista de permissões administrativas.

  3. Resultado: Faça login novamente como [email protected]. Você agora terá acesso total às Configurações de Administrador e a todas as configurações da instância.


Impacto

  • Tipo de Vulnerabilidade: XSS Armazenado / Escalação Vertical de Privilégios.

  • Severidade: 9.1 (Crítica) | CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H

  • Risco: Comprometimento completo da instância do Appsmith. Os atacantes obtêm acesso a variáveis de ambiente sensíveis, credenciais de banco de dados e a capacidade de modificar qualquer aplicativo dentro da instância.


Remediação Recomendada

  1. Sanitizar Sinks: Envolva todas as saídas dinâmicas em BasicCell.tsx e componentes relacionados com DOMPurify.sanitize().

  2. CSP Reforçado: Implemente uma política estrita de connect-src para impedir chamadas de API não autorizadas a endpoints administrativos a partir de payloads XSS.


https://github.com/user-attachments/assets/206a10e4-1619-4887-a552-99761baa0a29

Baixar ferramenta