Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2017-13286 — CVE-2017-13286 Poc(não pode ser usado) | Kitploit
Ferramentas/GitHubGitHub/umvfx1bvaw50/cve-2017-13286
Segurança AndroidAnálise de VulnerabilidadesAnálise de CódigoExploraçãoSegurança MóvelExploração de Binários
GitHubumvfx1bvaw50/cve-2017-13286

CVE-2017-13286

CVE-2017-13286 Poc(não pode ser usado)

Ver Repositório
117há 3 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-2017-13286

CVE-2017-13286 Poc(can not use)

All resources are sourced from this article https://bbs.kanxue.com/thread-268506.htm

  • A principal causa desta vulnerabilidade é a inconsistência de leitura/escrita do objeto Parcel, que pode ser rastreada até o seguinte código:
public void writeToParcel(Parcel dest, int flags) {
        if (dest == null) {
            throw new IllegalArgumentException("dest must not be null");
        }
        dest.writeInt(mRotation);
        dest.writeInt(mSurfaceGroupId);
        dest.writeInt(mSurfaceType);
        dest.writeInt(mConfiguredSize.getWidth());
        dest.writeInt(mConfiguredSize.getHeight());
        dest.writeInt(mIsDeferredConfig ? 1 : 0);
        dest.writeInt(mIsShared ? 1 : 0);
        dest.writeTypedList(mSurfaces);
}
 
private OutputConfiguration(@NonNull Parcel source) {
        int rotation = source.readInt();
        int surfaceSetId = source.readInt();
        int surfaceType = source.readInt();
        int width = source.readInt();
        int height = source.readInt();
        boolean isDeferred = source.readInt() == 1;
        // missing write mIsShared
        ArrayList<Surface> surfaces = new ArrayList<Surface>();
        source.readTypedList(surfaces, Surface.CREATOR);
 
        checkArgumentInRange(rotation, ROTATION_0, ROTATION_270, "Rotation constant");
        ...
        ...
        ...
}
  • Percebe-se que nesta versão do AOSP, mIsShared não é lido, mas é escrito.

  • Aproveitando isso, podemos construir dados de serialização Parcel maliciosos para fazer o sistema executar algo.

  • O código vulnerável está no diretório do AOSP: frameworks/base/core/java/android/hardware/camera2/params/OutputConfiguration.java

  • Isso não foi apenas corrigido, a serialização do objeto agora adiciona mais elementos padrão.

Baixar ferramenta