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
PS5-IPV6-Kernel-Exploit — Um exploit de kernel experimental baseado em webkit (Arb. R/W) para o PS5 em <= 4.51FW | Kitploit
Ferramentas/GitHubGitHub/cryptogenic/ps5-ipv6-kernel-exploit
Segurança de Sistemas EmbarcadosEscalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoEngenharia ReversaPós-ExploraçãoExploração de Binários
GitHubcryptogenic/ps5-ipv6-kernel-exploit

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

PS5-IPV6-Kernel-Exploit

Um exploit de kernel experimental baseado em webkit (Arb. R/W) para o PS5 em <= 4.51FW

Ver Repositório
925106há 2 anosRevisado pelo Kitploit

PS5 3.xx / 4.xx Exploit de Kernel


Resumo

Este repositório contém uma implementação experimental de ROP em WebKit de um exploit de kernel para PS5 baseado no IPV6 Use-After-Free (UAF) do TheFlow, que foi reportado no HackerOne. A estratégia do exploit é, em sua maior parte, baseada no PoC BSD/PS4 do TheFlow, com algumas alterações para acomodar o irritante layout de memória do PS5 (para mais detalhes, veja a seção Notas de Pesquisa). Ele estabelece uma primitiva de leitura arbitrária / escrita (semi-arbitrária). Este exploit e suas capacidades têm muitas limitações e, por isso, é destinado principalmente a desenvolvedores que queiram brincar para fazer engenharia reversa de algumas partes do sistema.

Com as melhorias de estabilidade mais recentes, a confiabilidade está em cerca de 80%. Este documento conterá informações de pesquisa sobre o PS5, e este exploit passará por desenvolvimento e melhorias contínuas com o passar do tempo.

Os interessados em contribuir com a pesquisa/desenvolvimento para o PS5 podem entrar no discord que criei aqui.

O exploit agora deve suportar os seguintes firmwares:

  • 3.00
  • 3.10
  • 3.20
  • 3.21
  • 4.00
  • 4.02
  • 4.03
  • 4.50
  • 4.51

Atualmente Incluído

  • Obtém leitura/escrita arbitrária e pode executar um servidor RPC básico para leituras/escritas (ou um servidor de dump para leituras grandes) (é preciso editar seu próprio endereço/porta no arquivo do exploit nas linhas 673-677)
  • Ativa o menu de configurações de depuração (nota: você precisará sair completamente das configurações e voltar para vê-lo).
  • Obtém privilégios de root

Limitações

  • Este exploit alcança leitura/escrita, mas não execução de código. Isso porque atualmente não podemos despejar o código do kernel para gadgets, já que as páginas .text do kernel são marcadas como eXecute Only Memory (XOM). Tentar ler ponteiros do .text do kernel causará pânico!
  • Devido ao acima exposto + ao hipervisor (HV) impondo proteção de escrita no kernel, este exploit também não pode instalar nenhum patch ou hook no espaço do kernel, o que significa nenhum código relacionado a homebrew por enquanto.
  • O Control Flow Integrity (CFI) de granularidade fina baseado em Clang está presente e é aplicado.
  • A Prevenção/Execução de Acesso em Modo Supervisor (SMAP/SMEP) não pode ser desativada, devido ao HV.
  • A primitiva de escrita é um tanto restrita, pois os bytes 0x10-0x14 devem ser zero (ou uma interface de rede válida).
    • Embora, devido a trabalhos mais recentes usando pipes, leitura/escrita arbitrária completa agora seja possível

Como usar

  1. Configure o fakedns via dns.conf para apontar manuals.playstation.net para o endereço IP do seu PC
  2. Execute o falso DNS: python fakedns.py -c dns.conf
  3. Execute o servidor HTTPS: python host.py
  4. Vá nas configurações avançadas de rede do PS5 e defina o DNS primário para o endereço IP do seu PC e deixe o secundário em 0.0.0.0
    1. Às vezes o manual ainda não carrega e é necessário reiniciar, não sei por que, é bem estranho
  5. Vá para o manual do usuário nas configurações e aceite o aviso de certificado não confiável, execute
  6. Opcional: Execute os scripts do servidor rpc/dump (nota: endereço/porta devem ser substituídos em forma binária no exploit.js).

Trabalho futuro

  • Corrigir sockets para sair do navegador de forma limpa (prioridade máxima)
  • Escrever alguns patches de dados (segunda prioridade)
    • Ativar configurações de depuração
    • Aplicar patch nas credenciais para uid0
    • Jailbreak com sobrescrita de cr_prison
  • Melhorar a confiabilidade do UAF
  • Melhorar a confiabilidade do socket vítima (terceira prioridade)
  • Usar um alvo de vazamento melhor / mais consistente do que kqueue (não é mais necessário)
  • Fazer o carregador de ELF suportar realocações
    • Adicionar suporte para mais realocações e possivelmente ligação dinâmica completa?

Usando o ELF Loader

Para usar o carregador de ELF, execute o exploit até a conclusão. Ao concluir, ele executará um servidor na porta :9020. Conecte-se e envie seu ELF para o PS5 através dessa porta e ele o executará. Supondo que o ELF não derrube o navegador, ele pode continuar executando ELFs indefinidamente.

Estágios do Exploit

Este exploit funciona em 5 estágios e, em sua maior parte, segue a mesma estratégia de exploit do PoC do theflow.

  1. Acione o UAF inicial em ip6_pktopts e faça dois sockets apontarem para o mesmo pktopts / sobreposição (socket mestre <-> socket de spray de sobreposição)
  2. Libere o pktopts no socket mestre e falsifique-o com um spray de ip6_rthdr contendo uma sobreposição de tclass marcada.
  3. Etapa de vazamento de informações. Use a sobreposição pktopts/rthdr para vazar um kqueue do slab 0x200 e pktopts do slab 0x100.
  4. Etapa de leitura/escrita arbitrária. Falsifique pktopts novamente e encontre o socket de sobreposição para usar IPV6_RTHDR como primitiva de leitura/escrita.
  5. Etapa de limpeza + patch. Aumente o refcount dos sockets corrompidos para uma saída bem-sucedida do navegador + aplique patch nos dados para ativar o menu de depuração e aplique patch nos ucreds para uid0.
  6. Execute o servidor do carregador de ELF que aceitará e carregará/executará ELFs. Atualmente é WIP, não suporta realocações no momento.

Notas de Estabilidade

A estabilidade deste exploit está em cerca de 30% 80-90%, e tem dois pontos potenciais de falha. Em ordem decrescente de probabilidade observada:

  1. Estágio 1 falha ao recuperar o UAF, causando crash imediato ou corrupção latente que causa crash.
  2. Estágio 4 falha ao encontrar um socket vítima

Notas de Pesquisa

  • Parece, com base em vários testes e despejos com a primitiva de leitura, que o PS5 voltou ao tamanho de página 0x1000 em comparação com o 0x4000 do PS4.

    • Após mais pesquisas, o tamanho da página é de fato ainda 0x4000, porém, devido a algumas mudanças insanas no alocador, diferentes slabs podem ser alocados na mesma página virtual.
  • Também parece que, no PS5, páginas adjacentes raramente pertencem ao mesmo slab, pois você obterá dados extremamente diferentes em páginas adjacentes. O layout da memória parece mais disperso.

  • Frequentemente, quando o PS5 entra em pânico (pelo menos no contexto do webkit), haverá uma saída de áudio horrível, pois o buffer de áudio é corrompido de alguma forma.

  • Às vezes, essa corrupção de áudio persiste até a próxima inicialização, não sei por quê.

  • Semelhante ao PS4, o PS5 exigirá que o botão de energia seja pressionado manualmente duas vezes no console para reiniciar após um pânico.

  • É normal que o PS5 leve um tempo absurdo para reiniciar após um pânico se estiver isolado da internet (infelizmente). Espere uma inicialização de 3 a 4 minutos.

Colaboradores / Agradecimentos Especiais

  • Andy Nguyen / theflow0 - Estratégia da vulnerabilidade e do exploit
  • ChendoChap - Várias ajudas com testes e pesquisa
  • Znullptr - Pesquisa/RE
  • sleirsgoevy - Pesquisa/RE + ideias de estratégia de exploit
  • bigboss - Pesquisa/RE
  • flatz - Pesquisa/RE + ajuda com patches
  • zecoxao - Pesquisa/RE
  • SocracticBliss - Pesquisa/RE
  • laureeeeeee - Conhecimento de sistemas de baixo nível e assistência

Agradecimentos aos testadores

  • Dizz (4.50/4.51)
Baixar ferramenta