Prévia do material em texto
Prova Impressa GABARITO | Avaliação II - Individual (Cod.:1526321) Peso da Avaliação 2,00 Prova 109446525 Qtd. de Questões 10 Acertos/Erros 8/1 Canceladas 1 Nota 9,00 O Audit Command Language (ACL) foi desenvolvido pela empresa canadense ACL Business Assurance. Este software ajuda auditores internos e externos no cumprimento de testes em arquivos de dados. Esta ferramenta é considerada eficaz para extrair, tratar e analisar informações no banco de dados, com o objetivo de identificar erros e riscos gerais de uma organização relacionados a dados transacionais incompletos, imprecisos e inconsistentes (SOUZA; BARBOSA, 2013). Fonte: adaptado de: SOUZA, R. A. A. de; BARBOSA, L. F. de F. P. W. Utilização de software ACL (Audit Command Language) para redução do índice de perdas comerciais em concessionárias de energia elétrica. In: VIII ENCONTRO LATINO AMERICANO DE PÓS-GRADUAÇÃO – UNIVERSIDADE DO VALE DO PARAÍBA, 2013, São José dos Campos. Anais […]. São José dos Campos: UNIVAP, 2013. Diante das informações apresentadas sobre o Audit Command Language (ACL), analise as afirmativas a seguir: I. O ACL usa agentes que pretendem acessar a memória compartilhada do sistema de gerenciamento do banco de dados para adquirir as operações SQL executadas. II. O ACL é uma ferramenta totalmente dependente do conhecimento do usuário acerca da própria ferramenta e das particularidades do nicho em que se queira trabalhar. III. Uma vantagem do ACL é a possibilidade de analisar populações inteiras de dados, identificando tendências ou exceções, bem como evidenciando as áreas potenciais de preocupação. IV. O ACL exige um forte conhecimento dos dados disponíveis, inclusive, conhecimentos adquiridos através dos resultados apurados em experiências passadas, projetando-os em expressões a serem utilizadas. É correto o que se afirma em: A II e III, apenas. B II, III e IV, apenas. C III e IV, apenas. D I, II e III, apenas. E I e IV, apenas. A linguagem SQL possui uma organização estrutural definida que segmenta seus comandos em subconjuntos, sendo que cada um desses conjuntos tem objetivos específicos. Então, essa linguagem tem outros subconjuntos de operações usadas para gerenciar e modificar as informações e o banco de dados, como a adição, modificação e eliminação de informações, ou a elaboração de novas tabelas, entre outros (FARIAS, 2009). Fonte: FARIAS, MARCELO BUKOWSKI DE. Injeção de SQL em aplicações Web Causas e prevenção. Porto Alegre: Universidade Federal do Rio Grande do Sul. 2009. Diante das informações apresentadas sobre os subconjuntos da linguagem SQL, avalie as afirmações a seguir: VOLTAR A+Aumentar, FonteAlterar modo de visualização 1 2 I. Data Query Language (DQL): define comandos utilizados para gerenciar transações efetuadas no banco de dados. O DQL viabiliza o início , a conformação e a eliminação de determinadas modificações. II. Data Manipulation Language (DML): define os comandos utilizados para alterar os dados armazenados em um banco. Esse é considerado um dos conjuntos mais usados, já que disponibiliza operadores que permitem ao usuário inserir, eliminar e modificar os registros de uma tabela, por exemplo. III. Data Control Language (DCL): realiza o cadastramento de usuários e delimita o nível de privilégio para os objetos do banco de dados. Isso significa que usando esse conjunto, o administrador do banco de dados consegue estipular restrições e permissões para os usuários acessarem o banco. IV. Definition Language (DDL): fornece comandos que definem e alteram esquemas de relação, remoção de relações e criação de índices. Com o DDL pode-se elaborar, modificar e ainda eliminar objetos da base, por isso apresenta comandos utilizados para gerenciar as estruturas do banco de dados. É correto o que se afirma em: A II, III e IV, apenas. B I e IV, apenas. C I, II e III, apenas. D II e III, apenas. E III e IV, apenas. A auditoria de banco de dados, conforme descrito por Nascimento (2012), frequentemente emprega o uso de “triggers” ou gatilhos. Estes são desenvolvidos para serem acionados sempre que ocorre uma modificação nos dados das tabelas, seja através dos comandos INSERT, UPDATE ou DELETE. Além disso, esses gatilhos podem ser programados para registrar essas alterações, fornecendo assim um registro detalhado de todas as atividades de modificação de dados. Isso permite que os auditores rastreiem e revisem todas as alterações feitas, auxiliando na manutenção da integridade dos dados e na detecção de possíveis irregularidades. Fonte: adaptado de: NASCIMENTO, G. de M. do. Audilog: uma ferramenta para auditoria de banco de dados. Florianópolis: Universidade Federal de Santa Catarina, 2012. Com base nas informações apresentadas, avalie as asserções a seguir e a relação proposta entre elas: I. Os dados armazenados pelas triggers são os valores da linha alterada, antes e depois da alteração, em uma tabela que espelha a original e mantém dados adicionais como data de atualização, usuário que executou ou tipo de operação. PORQUE II. As informações armazenadas pelos gatilhos, pode-se fazer consultas para recuperar os dados, saber das operações de cada usuário, entre outros, dependendo das informações armazenadas pelos gatilhos. A respeito dessas asserções, assinale a opção correta: A A asserção I é uma proposição falsa e a II é uma proposição verdadeira. B As asserções I e II são verdadeiras, mas a II não é uma justificativa correta da I. 3 C As asserções I e II são verdadeiras, e a II é uma justificativa correta da I. D A asserção I é uma proposição verdadeira e a II é uma proposição falsa. E As asserções I e II são falsas. A criptografia corresponde a técnica que emprega uma chave cifradora e decifradora para proteger a informação contra acesso não autorizado ao seu conteúdo. Assim sendo, as chaves de criptografia e o modo como são usadas influenciam significativamente a segurança da base de dados (Albuquerque, 2020). Fonte: adaptado de: ALBUQUERQUE, S. L. Protocolo de autenticação contínua multimodal com uso de eletrocardiografia para ambientes de computação móvel em nuvem. 2020. 207 f., il. Tese (Doutorado em Engenharia Elétrica) – Universidade de Brasília, Brasília. Diante das informações apresentadas sobre os aspectos da criptografia, analise as sentenças a seguir: I. Quando as chaves criptográficas são perdidas ou danificadas, os dados criptografados são inúteis, logo será preciso um modo de recuperação das chaves criptográficas. II. No armazenamento seguro de chaves é preciso que as chaves de criptografia sejam mantidas de modo seguro, ou seja, não se deve armazenar as chaves no mesmo servidor do banco de dados. III. O controle de acesso criptográfico possui chaves diferentes para grupos diferentes assegura que o usuário que tem a chave específica pode descriptografar somente os objetos que pertencem ao seu grupo de segurança. IV. O desempenho não é mensurado nas operações complexas de elaboração de chaves, decriptação, nem tampouco no tamanho dos dados descriptografados gerados a partir da aplicação das técnicas matemáticas e físicas. É correto o que se afirma em: A I, II e III, apenas. B I e IV, apenas. C III e IV, apenas. D II, III e IV, apenas. E II e III, apenas. O teste de invasão está, portanto, em uma área de interseção entre ataque e proteção, uma vez que diferentes técnicas de ataque são empregadas com o propósito de elevar o nível de resiliência dos sistemas que se deseja proteger, o que está associado à avaliação das configurações, dos controles técnicos, administrativos e operacionais desses sistemas (Carneiro, 2017). Fonte: CARNEIRO, A. S. L. Testes de invasão em aplicações web utilizando SQL injection: um estudo epistemológico. Brasília: Centro Universitário de Brasília, 2017. Diante das informações apresentadas sobre os testes de invasão, analise as sentenças a seguir: 4 5 I. O teste de invasão é uma solução para aumentar a segurança de um banco de dados, já que possibilita identificar as vulnerabilidades dentrodo sistema. II. O teste de invasão é importante considerar que há diversos métodos de realização, cada um utilizando técnicas diferentes e, consequentemente, gerando resultados distintos. III. O teste de invasão é uma tentativa legal e autorizada pela organização para encontrar e explorar sistemas de computadores de modo sucedido, com o objetivo de tornar esses sistemas. É correto o que se afirma em: A I e II, apenas. B III, apenas. C I, II e III. D II e III, apenas. E I, apenas. A concessão ou a revogação de privilégios é realizada pelo módulo funcional DCL (Data Control Language), que controla o acesso do banco de dados garantindo, alterando ou revogando os acessos através de comandos estipulados que alteram o tipo de privilégio dos usuários (OLIVEIRA, 2017). Fonte: adaptado de: OLIVEIRA, R. F. de. Segurança de sistema de banco de dados. Londrina: Editora e Distribuidora Educacional S. A., 2017. Considerando o contexto apresentado, sobre a concessão ou a revogação de privilégios, assinale a alternativa CORRETA: A Quando os privilégios atribuídos a um usuário forem superiores aos que ele de fato tem direito, por exemplo, pode-se credenciar o usuário dando a ele o acesso ao sistema de segurança. B Os comandos realizarão exatamente aquilo que deles for demandado, desde que esses comandos sejam sintaticamente corretos e quem os tente executar tenha os privilégios adequados para tais operações. C Os privilégios de concessão são verificados pelo controle de acesso físico e representam a principal interface do usuário para controlar o todo sistema de autorização ou privilégios do software de aplicativos. D A ferramenta DCL atua na segurança de bancos de dados, sendo os indivíduos os responsáveis somente na atribuição do acesso de usuários do sistema a bancos de dados. E A linguagem DCL padrão não inclui os comandos de concessão (grant) e revogação (revoke), tornando-a inadequada para gerenciar privilégios em bancos de dados. Revisar Conteúdo do Livro 6 O objetivo do ataque de injeção é explorar uma vulnerabilidade na programação da instrução SQL para obter controle da base de dados da aplicação, comprometer a aplicação, ou ter o controle do servidor (CARNEIRO, 2017). Em determinadas situações é possível adicionar comandos maliciosos e ter acesso total ao servidor web em que o banco de dados está sendo executado. Fonte: CARNEIRO, ARISTEDES SEBASTIÃO LOPES. Testes de invasão em aplicações web utilizando SQL injection: um estudo epistemológico . Brasília: Centro Universitário de Brasília. 2017. Diante das informações apresentadas sobre os impactos da injeção SQL, avalie as afirmações a seguir: I. A integridade: é possível realizar modificações ou mesmo exclusões de informações com um ataque de injeção SQL. II. A confidencialidade: como as bases de dados SQL tem armazenados dados confidenciais, a perda de confidencialidade é um problema recorrente com vulnerabilidades de injeção de SQL. III. O controle de acesso Bypass do mecanismo de proteção: em situações em que forem usados comandos falhos de SQL para averiguar nomes de usuário e senha, poderá neste caso conectar-se a um sistema como outro usuário sem o devido conhecimento da senha. IV. O Bypass do mecanismo de proteção: em situações em que as informações de autorização forem armazenadas em um banco de dados SQL, será possível modificar essas informações por meio da exploração bem sucedida de uma vulnerabilidade de injeção de SQL. É correto o que se afirma em: A III e IV, apenas. B I, II e III, apenas. C I, apenas. D I, II, III e IV. E II e IV, apenas. A auditoria objetiva analisar toda a infraestrutura, verificar as possibilidades de violações de segurança e, ainda, examinar todo o controle interno dos sistemas de uma organização. Ela compreende o processo sistemático de obtenção e avaliação de evidências com foco em afirmações sobre ações e eventos econômicos. Ainda, a auditoria deve concentrar os seus esforços na análise e avaliação dos processos de planejamento, desenvolvimento, testes e aplicação de sistemas, bem como examinando a estrutura lógica, física, ambiental, organizacional de controle, segurança e proteção de dados (Freire Neto, 2012). Fonte: FREIRE NETO, F. X. Proposta de método de auditoria aos projetos de software baseados no processo unificado. 2012. 189 f. Dissertação (Mestrado em Proposta de método de auditoria aos projetos de software baseados no processo unificado) — Proposta de método de auditoria aos projetos de software baseados no processo unificado, São Paulo, 2012. Com base no texto, assinale a alternativa que apresenta uma afirmação coerente com os princípios e objetivos da auditoria de sistemas de informação: A A principal função da auditoria em TI é assegurar o cumprimento das normas contábeis, conforme estabelecido pela legislação vigente. B Uma auditoria eficaz envolve a análise integrada de aspectos técnicos, organizacionais e de segurança, contemplando desde o planejamento até a aplicação dos sistemas. 7 8 C A auditoria deve avaliar somente os registros de log e as atividades dos usuários no banco de dados, pois isso é suficiente para garantir a segurança. D A auditoria eficaz concentra-se unicamente na infraestrutura física da organização, desconsiderando a lógica e os processos de desenvolvimento. E A auditoria eficaz deve ser realizada exclusivamente por consultorias externas, garantindo isenção total no processo. Atenção: Esta questão foi cancelada, porém a pontuação foi considerada. Quando uma aplicação de web é desenvolvida para acessar um banco de dados, ele pode estar propenso a um ataque de SQL injection. Isso ocorre já que ao invés de colocar uma entrada válida, o atacante adiciona comandos de banco de dados nos campos de entrada, sendo que esses são analisados e efetivados pela aplicação. Deste modo, o SQL injection é considerado um modo de ataque que explora as vulnerabilidades de segurança que se relacionam com o banco de dados (Gonçalves, 2016). Fonte: GONÇALVES, E. L. O. Segurança Ofensiva em Aplicações Web. Apostila de Laboratório. Versão 1.1, 2016. Diante das informações apresentadas sobre os principais tipos de SQL, analise as afirmações a seguir: I. Execução de linha de comando: um usuário malicioso utiliza métodos de injeção SQL padrão para adicionar dados na linha de comando para execução. II. Injeção às cegas: um usuário malicioso busca uma vulnerabilidade presente no código de camada de acesso a banco de dados com ajuda de uma ferramenta de mapeamento. III. SQL às cegas: um usuário malicioso altera os parâmetros da mensagem SQL encaminhada do consumidor de serviços para o provedor de serviços para começar um ataque de injeção SQL. IV. SQL às cegas: modo de injeção SQL que supera a falta de mensagens de erro. Isso significa que sem as mensagens de erro o usuário malicioso elabora cadeias de entrada que exploram o alvo através de comandos SQL. É correto o que se afirma em: A I, II, III e IV. B III e IV, apenas. C I, apenas. D I, II e III, apenas. E II e IV, apenas. A Injeção SQL (Structure Query Language) é uma técnica para atacar uma base de dados de uma aplicação por meio de campos de usuário, senha e outros campos de interesse do atacante (formulário). Este tipo de ataque principalmente ocorre em aplicações web, explorada por meio de uma falha na sintaxe do SQL escrita na aplicação (Gonçalves, 2016). 9 Revisar Conteúdo do Livro 10 Fonte: GONÇALVES, E. L. O. Segurança Ofensiva em Aplicações Web. Apostila de Laboratório. Versão 1.1, 2016. Considerando esse contexto sobre a Injeção SQL, assinale a alternativa correta: A A injeção SQL é um ataque no qual um código mal-intencionado é adicionado em cadeias de caracteres que são repassados para uma instância do SQL Server para análise e execução. B O agente malicioso irá realizar ações indiretas no banco de dados, limitando-se à leitura de dados sem a possibilidade de alterar ou excluir registros. C O Bypass do mecanismo de proteção que em situações em que as informações de autorizaçãoforem armazenadas em um banco de dados DCA, será possível modificar essas informações por meio da exploração bem sucedida de uma vulnerabilidade de injeção de SQL-DCA. D O objetivo do ataque de injeção é monitorar o tráfego de dados entre a aplicação e o banco de dados SQL para obter controle parcial da base de dados da aplicação. E A técnica de injeção SQL é legalmente permitida para testes de penetração em qualquer website ou aplicação web. Imprimir