Questão de Segurança da Informação — ICP e Autoridades Certificadoras — INSTITUTO AOCP 2023
Segurança da Informação›ICP e Autoridades Certificadoras
Código
qa541458
Banca
INSTITUTO AOCP
Órgão
MPE MS
Ano
2023
Cargo
Ana ( )
Das ações a seguir, assinale a alternativa que pode representar uma vulnerabilidade em potencial para atividades de code signing relacionadas a aplicativos mobile.
ARoubo de chaves privadas das Autoridades Certificadoras (CAs)
BFalha de segurança em uma API utilizada pelo aplicativo do usuário.
CAusência de tela de bloqueio no dispositivo.
DDefinições de permissões de apps sem muitas restrições.
EAusência de autenticação MFA nos apps dos usuários.
Revelar gabarito e comentário▾
GabaritoA — Roubo de chaves privadas das Autoridades Certificadoras (CAs)
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Code Signing e a Segurança da Cadeia de Confiança
Gabarito: letra A. O roubo de chaves privadas das Autoridades Certificadoras (CAs) é a vulnerabilidade mais crítica para atividades de code signing em aplicativos mobile, pois compromete a base de confiança de toda a cadeia de certificação digital. As demais alternativas representam vulnerabilidades relevantes, mas não estão diretamente ligadas ao processo de assinatura de código, que depende da integridade e confidencialidade das chaves privadas da CA.
O code signing é o processo de assinar digitalmente um aplicativo ou código para garantir sua autenticidade e integridade. Quando um aplicativo é assinado, a Autoridade Certificadora (AC) utiliza sua chave privada para gerar uma assinatura digital que pode ser verificada por qualquer pessoa com acesso à chave pública correspondente. Essa assinatura assegura que o código não foi alterado desde a assinatura e que ele realmente provém do desenvolvedor ou da entidade que o publicou. A confiança nesse sistema depende inteiramente da segurança das chaves privadas das ACs.
A Infraestrutura de Chaves Públicas (ICP) é uma hierarquia de confiança onde a AC Raiz, no Brasil representada pelo Instituto Nacional de Tecnologia da Informação (ITI), credencia e audita as demais ACs. Cada AC possui um par de chaves: uma pública, que é amplamente distribuída, e uma privada, que deve ser mantida em sigilo absoluto. Se uma chave privada de uma AC for roubada, um atacante pode assinar códigos maliciosos como se fossem legítimos, emitir certificados falsos ou comprometer a validade de todos os certificados emitidos por aquela AC. Isso quebra a confiança em toda a cadeia, afetando não apenas um aplicativo, mas todos os que confiam naquela AC.
As demais alternativas, embora representem riscos de segurança, não são específicas do code signing. Uma falha em uma API, a ausência de tela de bloqueio, permissões excessivas de apps ou a falta de MFA são vulnerabilidades que afetam a segurança do aplicativo em si ou do dispositivo do usuário, mas não comprometem diretamente a integridade do processo de assinatura digital. O roubo da chave privada da CA, por outro lado, é uma ameaça direta à confiança no ecossistema de certificação digital como um todo.
A banca explora aqui a distinção entre vulnerabilidades que afetam o aplicativo individualmente e aquelas que comprometem a infraestrutura de confiança que valida o aplicativo. É essencial entender que o code signing depende de uma cadeia de confiança, e o elo mais crítico dessa cadeia é a segurança das chaves privadas das ACs. Qualquer comprometimento dessas chaves invalida a confiança em todos os certificados e assinaturas emitidos por elas.
Alternativa
Vulnerabilidade
Relação com Code Signing
A — Roubo de chaves privadas das CAs
Comprometimento da infraestrutura de confiança
Direta — permite assinar código malicioso como legítimo
B — Falha em API do aplicativo
Vulnerabilidade de aplicação
Indireta — não afeta a assinatura digital do código
C — Ausência de tela de bloqueio
Vulnerabilidade física/lógica do dispositivo
Indireta — não compromete o processo de assinatura
D — Permissões de apps sem restrições
Configuração excessiva de permissões
Indireta — não está ligada à autenticidade do código
E — Ausência de MFA nos apps
Vulnerabilidade de autenticação do usuário
Indireta — não compromete a assinatura digital
Code signing: Base: cadeia de confiança (AC Raiz (ITI), ACs credenciadas, Chave privada (sigilo)); Risco crítico (Roubo da chave privada da CA, Assinatura de código malicioso, Emissão de certificados falsos); Riscos não relacionados (Falha em API, Ausência de tela de bloqueio, Permissões excessivas, Ausência de MFA)
Alternativa A — ✅ Correta ⟵ GABARITO
O roubo de chaves privadas das Autoridades Certificadoras (CAs) é a vulnerabilidade mais grave para o code signing. A chave privada da CA é o elemento que garante a autenticidade e a integridade das assinaturas digitais. Se comprometida, um atacante pode assinar código malicioso como se fosse legítimo, emitir certificados falsos e quebrar a confiança em toda a cadeia de certificação. Essa é uma ameaça direta à infraestrutura de chaves públicas, que é a base do code signing.
Alternativa B — ❌ Incorreta
Uma falha de segurança em uma API utilizada pelo aplicativo é uma vulnerabilidade relevante, mas não está diretamente relacionada ao code signing. Ela afeta a segurança do aplicativo em si, podendo expor dados ou funcionalidades, mas não compromete a integridade da assinatura digital do código. O code signing protege contra alterações no código, enquanto uma falha de API é uma vulnerabilidade de aplicação.
Alternativa C — ❌ Incorreta
A ausência de tela de bloqueio no dispositivo é uma vulnerabilidade de segurança física/lógica do dispositivo do usuário. Ela pode permitir acesso não autorizado ao dispositivo, mas não compromete diretamente o processo de code signing. O code signing é uma medida de segurança do aplicativo, independente da configuração de bloqueio do dispositivo.
Alternativa D — ❌ Incorreta
Definições de permissões de apps sem muitas restrições é uma vulnerabilidade de configuração do aplicativo ou do sistema operacional. Permissões excessivas podem permitir que um aplicativo acesse dados ou funcionalidades além do necessário, mas isso não está diretamente ligado ao code signing. O code signing garante a autenticidade do código, não a gestão de permissões.
Alternativa E — ❌ Incorreta
A ausência de autenticação MFA nos apps dos usuários é uma vulnerabilidade de autenticação do usuário. A falta de MFA pode facilitar o acesso não autorizado a contas, mas não compromete diretamente o processo de code signing. O code signing é uma medida de segurança do código, enquanto o MFA é uma medida de segurança do acesso do usuário.
Gabarito: letra A — o roubo de chaves privadas das CAs é a vulnerabilidade que pode comprometer diretamente a confiança no code signing, pois permite a assinatura de código malicioso como se fosse legítimo.