UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS - CCT TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS - CCT TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS"

Transcrição

1 UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS - CCT TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANDRE MENDES DUARTE DEIWYS LUCIANO GRUMOVSKI GUSTAVO HEIDRICH GRUNWALD Análise da vulnerabilidade de códigos em Java pelos principais ataques definidos pela OWASP JOINVILLE, SC 2013

2 LISTA DE CÓDIGOS Código Código vulnerável de cross-site request forgery 28 Código Código de tratamento do cross-site request forgery 29 Código Código validação de cross-site request forgery 29 Código Código sem tratamento de command injection 30 Código Código executando command injection 31 Código Código com tratamento de command injection 31 Código Exemplo de ataque Cross Site Scripting 32 Código Exemplo de ataque Cross Site Scripting 32 Código Exemplo de uma falha no gerenciamento da sessão. 33 Código Trecho de uma chamada SQL que não possui verificação 35 Código URL que da acesso direto a conteúdo protegido 39 Código Utilização de uma página para fazer o redirecionamento do usuário 42 Código Utilização de um parâmetro para realizar o redirecionamento do usuário. 42

3 LISTA DE FIGURAS Figura 2.1 Como ocorre o Buffer Overflow 17 Figura 2.2 Como ocorre o Command Injection 18 Figura Botão Sair 34 Figura Mensagem de erro mostra que a conta não existe. 37 Figura Resultado de uma consulta SQL 38 Figura Testando os protocolos de segurança de um web site. 41

4 SUMÁRIO INTRODUÇÃO CONCEITOS LINGUAGEM DE PROGRAMAÇÃO JAVA HISTÓRICO DAS APLICAÇÕES EM JAVA NORMAS E TÉCNICAS DE SEGURANÇA EM JAVA CONSIDERAÇÕES PARCIAIS PROBLEMAS DE SEGURANÇA EM JAVA SEGURANÇA EM JAVA PRINCIPAIS PROBLEMAS DE SEGURANÇA EM JAVA COMMAND INJECTION CROSS-SITE REQUEST FORGERY (CSRF) CROSS SITE SCRIPTING (XSS) BROKEN AUTHENTICATION AND SESSION MANAGEMENT INSECURE DIRECT OBJECT REFERENCES SECURITY MISCONFIGURATION INSECURE CRYPTOGRAPHIC STORAGE FAILURE TO RESTRICT URL ACCESS INSUFFICIENT TRANSPORT LAYER PROTECTION UNVALIDATED REDIRECTS AND FORWARDS CONSIDERAÇÕES PARCIAIS ANÁLISE DE CODIFICAÇÃO EM JAVA ANÁLISE CROSS-SITE REQUEST FORGERY ANÁLISE DE CÓDIGOS ANÁLISE COMMAND INJECTION ANÁLISE DE CÓDIGOS ANÁLISE CROSS SITE SCRIPTING ANÁLISE DE CÓDIGOS ANÁLISE BROKEN AUTHENTICATION AND SESSION MANAGEMENT ANÁLISE DE CÓDIGOS INSECURE DIRECT OBJECT REFERENCES ANÁLISE DE CÓDIGOS SECURITY MISCONFIGURATION ANÁLISE DE CÓDIGOS INSECURE CRYPTOGRAPHIC STORAGE ANÁLISE DE CÓDIGOS... 38

5 3.8 FAILURE TO RESTRICT URL ACCESS ANÁLISE DE CÓDIGOS INSUFFICIENT TRANSPORT LAYER PROTECTION ANÁLISE DE CÓDIGOS UNVALIDATED REDIRECTS AND FORWARDS ANÁLISE DE CÓDIGOS CONSIDERAÇÕES PARCIAIS CONCLUSÃO REFERÊNCIAS BIBLIOGRÁFICAS... 45

6 INTRODUÇÃO Existe uma grande necessidade e demanda de aprimorar e tornar seguras as aplicações desenvolvidas em Java, impulsionada pelo avanço das tecnologias e pelo aumento do número de usuários em um contexto global. Isso ocasiona em uma expansão no compartilhamento de dados e um aumento considerável no tamanho da informação compartilhada. Ao desenvolver uma aplicação em Java a maior dificuldade é criar um software seguro e confiável. Para se evitar isto, é importante conhecer quais os principais ataques às aplicações web e quais os seus efeitos. Estes ataques podem danificar a aplicação e os dados do cliente ou utiliza-los para obter informações confidenciais do usuário. Para ter um desenvolvimento confiável em Java é preciso conhecer esta linguagem, e saber qual a sua finalidade. Portanto no capítulo 1 será apresentado o que é o Java, por que esta linguagem foi criada e quais os seus principais produtos. Pensando em segurança existem normas que podem ser seguidas para um desenvolvimento confiável, as duas que serão apresentadas são ITSEC e OWASP, porém o foco será na segunda, pois é a mais utilizada. Os princípios de segurança em Java e como ele é importante na tomada de decisões no desenvolvimento das aplicações será visto no capítulo 2. Além disto, a OWASP listou os dez principais ataques às aplicações web, e serão apresentadas suas vulnerabilidades e como evita-los. A análise dos códigos será feito no capítulo 3, quais as boas práticas de programação para se evitar os ataques listados pela OWASP. Os códigos serão analisados individualmente com exemplos de códigos vulneráveis e códigos seguros. As empresas de software para evitar que seus produtos sejam vulneráveis é ideal conhecer estes ataques. Utilizando uma aplicação segura à empresa terá mais confiança e credibilidade no mercado.

7 1. CONCEITOS Para se entender sobre segurança em Java é importante saber o que é o Java e quais as suas plataformas. As primeiras versões do Java tiveram como intenção criar um dispositivo que pudesse ser facilmente programável e que tinham por finalidade o entretenimento doméstico. Contudo, com o passar do tempo e com a democratização da Internet o foco mudou e diferentes plataformas foram criadas. Além disso, para se falar de desenvolvimento confiável em Java é importante conhecer sobre normas e técnicas de programação. 1.1 LINGUAGEM DE PROGRAMAÇÃO JAVA Lançado em 1995 pela Sun Microsystems, o Java, é uma linguagem e plataforma de computação encontrado em laptops, data centers, consoles de jogo, supercomputadores científicos, telefones celulares e até na Internet (JAVA, 2013). O Java não é apenas uma linguagem, mas sim uma plataforma de desenvolvimento, e com ela é possível desenvolver aplicações para diversos dispositivos diferentes como, por exemplo, aplicativos para celular. (DEVMEDIA 1, 2013). O Java possui várias plataformas, cada uma com sua finalidade. Uma breve relação das plataformas (ORACLE, 2013): JRE (Java Runtime Environment): Necessário para a execução de mini aplicativos e aplicativos que utilizam linguagem Java. JSE (Java Standard Edition): Necessário para a criação de aplicativos em desktop e computadores. JME (Java Micro Edition): Plataforma utilizada para desenvolvimento de aplicativos móveis. JEE (Java Enterprise Edition): Muito utilizado em empresas e aplicativos Web, pois suporta uma grande quantidade de usuários simultâneos.

8 JFX: Auxilia o desenvolvimento, pois permite que o desenvolvedor reutilize bibliotecas Java em suas aplicações. Java Card: Permite a criação e execução com segurança de cartões inteligentes. JTV: Está presente na plataforma JME. Permite o desenvolvimento de aplicativos Java executados em dispositivos de TV e set-top box (conversor). Observar-se que o Java é uma das principais linguagens para desenvolvimento de software, devido a sua quantidade de plataformas está presente na maior parte dos dispositivos, como computadores, celulares e até em dispositivos de TV. Para se entender melhor sobre o Java e suas plataformas é bom conhecer a sua história e o que foi feito para se tornar uma linguagem tão conhecida. 1.2 HISTÓRICO DAS APLICAÇÕES EM JAVA Em 1991 foi criado dentro da Sun Microsystems um grupo chamado Green Team (Time Verde), que tinha como objetivo interligar dispositivos domésticos com computadores, auxiliando no entretenimento doméstico, porém, as linguagens existentes não eram suficientes. (ORACLE TIMELINE, 2011). O Green Team foi iniciado por Patrick Naughton, Mike Sheridan, e James Gosling em 01 de fevereiro de 1991, com o objetivo de inventar uma nova tecnologia que poderia levar à convergência de dispositivos de consumo controlados digitalmente e computadores. (EASY PROGRAMING, 2013) O primeiro dispositivo em Java (até então conhecido como OAK em português Carvalho) o Star7 foi criado em 1992, por James Gosling, era uma espécie de controle remoto para eletrodoméstico. (ORACLE TIMELINE, 2011). James Gosling chamou o Java primeiramente de OAK, por causa de uma árvore de carvalho crescendo fora da janela do seu escritório, porém teve que alterar, pois este nome não estava disponível. (HELIUM, 2008). Utilizando a linguagem de programação OAK em 1994 foi criado o WebRunner (renomeado mais tarde para HotJava), o primeiro navegador que suporta objeto em movimento e conteúdo executável dinâmico. (ORACLE

9 TIMELINE, 2011). O desenvolvimento do navegador originalmente começou em 1994 sob o nome "WebRunner", e em 1996 foi o primeiro navegador capaz de suportar Applets Java. (COMPUTER HOPE, 2013) Somente em 1995, quando o OAK foi então renomeado para Java, que o mundo começa a conhecer esta nova linguagem de programação. Em 1996 iniciou-se a JavaOne, uma conferência anual para se discutir a tecnologia Java. A partir deste ano a linguagem Java começou a ser utilizada mundialmente e com o passar dos anos novas plataformas foram sendo anunciadas. (ORACLE TIMELINE, 2011). E foi neste ano que foi lançado o Java Development Kit (JDK ou Java 1.0). (DEVMEDIA 2, 2013). Em 1998 foi anunciado o Java Ring, um anel que continha um microprocessador que funcionava como dispositivo de segurança semelhante a um cartão inteligente. (ORACLE TIMELINE, 2011). Este anel foi produzido pela Dallas Semiconductor Corp e tinha um revestimento de aço inoxidável. (JAVA WORLD 1, 2013) A máquina virtual HotSpot foi lançada em 1999, neste ano também é anunciado o JavaServer Pages, que simplifica a criação de conteúdo Web Dinâmico. Neste ano também surgem às plataformas JEE e JME. (ORACLE TIMELINE, 2011). Com o passar dos anos novas plataformas foram apresentadas e liberadas, e o Java foi se espalhando pelo mundo. Até que em 2009 a Oracle anuncia a aquisição da Sun. (ORACLE PRESS, 2009). A ideia inicial da Sun era criar um grupo focado no desenvolvimento de dispositivos de entretenimento doméstico, mas acabou criando uma nova linguagem de programação. A cada tecnologia que surgia uma nova plataforma era criada pelo Java, tornando assim uma marca de valor, tanto que em 2009 a Oracle comprou a Sun por uma quantia milionária. Para que se crie um software confiável é importante conhecer sobre normas de segurança, as duas mais conhecidas são a ITSEC (The Information Technology Security Evaluation Criteria, ou Tecnologia da Informação de critérios para avaliação da segurança) e OWASP (The Open Web Application Security Project, ou Projeto Aberto de Segurança de Aplicações Web).

10 1.3 NORMAS E TÉCNICAS DE SEGURANÇA EM JAVA Colocado de forma simplificada, as normas e técnicas são uma forma acordada, repetível de se construir algo, elas tornam a criação de software mais fácil e aumentam a segurança e a efetividade do produto. Uma norma é um documento que contém uma especificação técnica e critérios precisos desenvolvidos para serem utilizados como padrão. (BSI, 2013). Em 1991 uma comissão Europeia formada por três países (Alemanha, França e Inglaterra), publicou uma norma para certificação de segurança denominada ITSEC (The Information Technology Security Evaluation Criteria), tornando-se depois de fato um padrão europeu voltado tanto para avaliação de sistema, como de produtos. Sua versão atual é a 1.2, publicada em (ABSOLUTA, 1999). Seu objetivo é demonstrar a conformidade de um produto ou sistema contra a sua meta de segurança. Primeiramente, definem-se vários Securitys Target (alvos de segurança) e após esse levantamento é realizado um teste de eficácia para cada alvo. Se necessário for, correções serão aplicadas para atingir os resultados definidos. (RYCOMBE, 2011). A ITSEC (The Open Web Application Security Project) foi criada na Europa e é utilizada em vários países, porém é uma norma antiga. Outra norma que surgiu foi a OWASP (The Open Web Application Security Project), uma norma criada para auxiliar no desenvolvimento de um software seguro. A OWASP (The Open Web Application Security Project) é uma norma criada por uma comunidade dedicada exclusivamente as empresas para adquirir, operar, conceber, desenvolver e manter aplicações com alto nível de confiabilidade e segurança. Todas as ferramentas e informações sobre a norma são gratuitas e abertas a qualquer indivíduo interessado em melhorar um produto de software. Esta norma foi estabelecida em (OWASP, 2010). Segundo levantamento feito pela OWASP em 2010, os dez principais riscos para a segurança de uma aplicação web são:

11 Injection: O ataque é baseado em texto que exploram a sintaxe do intérprete alvejado, assim a aplicação executa comandos não desejáveis. Cross-Site Scripting (XSS): O atacante envia os scripts de ataque baseados em texto que exploram o intérprete no navegador, que executa sem saber que se trata de um script não confiável. Broken Authentication and Session Management: Usa vazamentos ou falhas nas funções de gerenciamento de autenticação ou sessão, podendo sequestrar uma sessão do usuário e assumir sua identidade. Insecure Direct Object References: Um usuário do sistema autorizado, muda o valor do parâmetro que se refere diretamente a um objeto do sistema para outro objeto, podendo assim acessar dados que não está autorizado. Cross-Site Request Forgery (CSRF): O usuário que está autenticado executa ações indesejadas, podendo comprometer os seus dados. Security Misconfiguration: Para obter acesso não autorizado o atacante acessa contas padrão, páginas não utilizadas, falhas não corrigidas, arquivos desprotegidos e diretórios. Insecure Cryptographic Storage: Armazenamento inseguro da criptografia devido ao seu uso inadequados ou mal projetado. Failure to Restrict URL Access: O atacante utiliza as falhas de restrição de acesso à URL, para acessar páginas sem autorização. Insufficient Transport Layer Protection: É a proteção insuficiente da camada de transporte, podendo expor dados de usuários individuais e levar ao roubo de conta. Unvalidated Redirects and Forwards: O atacante engana o usuário fazendo-o clicar em um link que redireciona e encaminha para url inválido que pode tentar instalar malware ou descobrir informações confidenciais da vítima. Para se construir uma aplicação segura em Java, torna-se necessário o conhecimento das normas de segurança descritas. Torna-se improvável

12 certificar se um produto de software é seguro sem que ele atenda e respeite os critérios definidos em uma norma. Devem-se aplicar os conceitos e técnicas apresentado nas normas e validar se a aplicação atende aos requisitos de segurança definidos para garantir a confiabilidade da aplicação. 1.4 CONSIDERAÇÕES PARCIAIS A segurança é um fator importante quando se trata de sistemas de computadores, ainda mais sistemas para a web, onde o acesso às informações fica mais vulnerável. Fazendo uma análise para mostrar o que mais tem afetado a segurança das informações armazenadas na web, a OWASP levantou os dez principais riscos para a segurança de uma aplicação web. Neste trabalho será descrito e discutido os dez ataques, como esses atuam nas aplicações web e como é possível evitá-los.

13 2. PROBLEMAS DE SEGURANÇA EM JAVA O estudo e avaliação das soluções de segurança em aplicações escritas Java é de extrema importância e possui muitos desafios. As vulnerabilidades de aplicações Java listadas pela OWASP são consideradas as mais comuns e críticas. Existem também estudos voltados para a solução dessas vulnerabilidades visando a extinção dos problemas que elas trazem. 2.1 SEGURANÇA EM JAVA Princípios de segurança de aplicativos são coleções de propriedades desejáveis das aplicações de software, comportamentos, modelos e práticas de implementação que tentam reduzir a probabilidade de realização de ameaça e os impactos que essas ameaças têm sobre os aplicativos. Princípios de segurança são primitivamente independentes de linguagem e arquitetura, sendo assim, pode-se aproveitar vários modelos e práticas de programação para projetar e construir aplicações seguras. (OWASP, 2013) Os princípios de segurança são importantes porque auxiliam a tomar decisões de segurança em situações novas com as mesmas ideias básicas. Ao considerar cada um desses princípios, pode-se derivar os requisitos de segurança, fazer arquitetura e implementação de decisões, e identificar possíveis deficiências nos sistemas. (OWASP, 2013) A vulnerabilidade é um problema ou uma fraqueza na aplicação, que pode ser uma falha de projeto ou um bug de implementação, que permite a um atacante para causar danos às partes de um aplicativo. As partes interessadas incluem o dono do aplicativo, os usuários de aplicativos e outras entidades que dependem da aplicação. (OWASP, 2013) Desde que o Java começou a ser compilado, e foi desenvolvido para ser transmitido em formato binário através da rede, a programação segura tornouse importante para uma empresa de software. Nenhum usuário quer executar uma parte de um código que exista a possibilidade, na execução, acontecer algo como (GTA UFRJ, 2013):

14 Danificar hardware, software, ou informação na máquina do usuário; Passar informações não autorizadas para qualquer pessoa; e Tornar a máquina do usuário inutilizável através de esgotamento de recursos. Quando tornar-se necessário criar códigos fonte em Java deve-se sempre levar em consideração os três itens citados. Assim, garante-se o mínimo de segurança possível para os dados da aplicação que está executando no ambiente do cliente, e também inibe o usuário de possíveis ameaças decorrentes de um código mal feito. Os usuários que carregam arquivos do Java de servidores remotos, lugares pouco seguros, precisam se certificar que o código Java carregado em sua máquina não pode danificar ou inserir códigos maliciosos no seu ambiente. (GTA UFRJ, 2013). Diante desse ambiente é avaliado o contexto de segurança em Java dos dez principais ataques listados devido à importância definida pela norma OWASP. (OWASP, 2013): Command Injection: Falhas na injeção, tais como SQL, ocorrem quando dados não confiáveis são enviados para um intérprete, como parte de um comando ou consulta. Cross-Site Scripting (XSS): As falhas XSS ocorrem sempre que uma aplicação recebe dados não confiáveis e os envia para um navegador Web sem que os tenha validado ou filtrado convenientemente. O XSS permite aos atacantes a execução de scripts no navegador da vítima que podem ser usados para sequestrar informações da sessão do utilizador, alterar endereços Web de forma perigosa ou redirecionar o utilizador para endereços maliciosos. Broken Authentication and Session Management: Funções de aplicação relacionadas com autenticação e gerenciamento de sessão, muitas vezes não são implementadas corretamente, permitindo que os atacantes roubem senhas, chaves, fichas de sessão e assim o atacante assume a identidade do usuário no sistema em que ele está usando; Insecure Direct Object References: A referência de objeto direta ocorre quando um programador expõe uma referência de um objeto de

15 implementação interna, como um arquivo, diretório ou chave de banco de dados. O atacando pode acessar esse objeto para roubar dados da aplicação; Cross-Site Request Forgery: Um ataque CSRF inclui um código registrado no navegador da vítima para enviar um pedido HTTP forjado, incluindo o cookie de sessão da vítima e qualquer outra informação de autenticação; Security Misconfiguration: Boa prática de segurança é sempre manter todos os softwares utilizados pela aplicação atualizados, garantindo que nenhum atacante irá invadir, devido a uma falha que não está corrigida, pois o software não está atualizado; Insecure Cryptographic Storage: Manter todas as informações que são de acesso pessoal seguras, como CFP, RG, chave de segurança e outros, para que o atacante não roube essas informações e realize ataques como, por exemplo, clone um cartão de crédito; Failure to Restrict URL Access: As aplicações necessitam fazer controle de acesso de todas as URLs para que atacantes não tenham acesso a conteúdo oculto permitido apenas a administradores do sistema, por exemplo; Insufficient Transport Layer Protection: As aplicações devem autenticar, criptografar e proteger os dados quando os mesmo estão sendo transmitidos na rede. Muitas empresas pecam neste aspecto utilizando certificados já expirados; e Unvalidated Redirects and Forwards: As aplicações devem validar as páginas de destino quando redirecionam um usuário para que o atacante não redirecione o usuário para o destino incorreto e tenha acesso a informações pessoais do usuário. Ataques podem ocorrer com o intuito de danificar uma aplicação, portanto as empresas desenvolvedoras de software devem atentar-se para os quesitos de segurança mostrados acima. Além disso, certos ataques podem comprometer dados sigilosos, causando um dano econômico maior. Sobre os dez principais ataques listados pela OWASP, é de suma importância que o software desenvolvido tenha como objetivo inibi-los. Para que isto ocorra o desenvolvedor deve saber como eles funcionam e como são feitos. Estes tipos

16 de vulnerabilidades podem ser evitadas com o desenvolvimento de um software seguro e testes. 2.2 PRINCIPAIS PROBLEMAS DE SEGURANÇA EM JAVA Os principais problemas relacionados com segurança na linguagem JAVA são listados pela OWASP. Cada vulnerabilidade listada está associada a formas de ataque. A OWASAP também sugere formas de evitar que atacantes explorem essas vulnerabilidades, assim como também incentiva a produção de software que leve em consideração possíveis falhas de segurança, solucionando-as antes que ocorram COMMAND INJECTION Originalmente conhecido como injeção de comandos shell, o processo foi descoberto acidentalmente em 1997 por um programador na Noruega. A primeira injeção de comando resultou na eliminação de páginas web a partir de um site, removida tão facilmente quanto arquivos de um disquete ou disco rígido. (SEARCH SOFTWARE QUALITY, 2013). O principal objetivo deste ataque é inserir e executar comandos específicos para conseguir autenticar ou até mesmo destruir uma aplicação, conforme figura 2.2. Vale ressaltar que se o usuário possuiu acesso de administrador, o atacando que tiver sucesso na sua injeção de comando terá os mesmos privilégios que o usuário final. No geral esse tipo de ataque pode ser evitado caso haja uma validação nos dados de entrada do sistema. Muitos desenvolvedores, por falta de conhecimento, acabam não se importando com esse item de segurança. Raramente se vê nas empresas as equipes responsáveis por testes de sistema fazer esse tipo de verificação (OWASP, 2013).

17 Figura 2.1 Como ocorre o Command Injection Fonte: (Veracode, 2011) A figura 2.2 exemplifica uma operação normal e uma operação com Command Injection. Na primeira o usuário faz uma requisição e a aplicação mostra o resultado, já na segunda, ele insere um comando para obter uma informação adicional. Um exemplo clássico é quando o atacante insere um comando para excluir todas as tabelas do banco de dados da aplicação. Quando esse tipo de ataque dá certo, efetivamente pode acabar com um sistema caso o mesmo não tenha backup (cópia da base de dados para eventuais problemas) (OWASP, 2013). Por fim, no capítulo três são apresentados exemplos práticos de como a aplicação pode identificar que está sofrendo um ataque de command injection. Tratando as entradas de maneira correta evitará que o usuário seja afetado por este ataque CROSS-SITE REQUEST FORGERY (CSRF)

18 CSRF é um ataque que obriga o usuário final a executar ações maliciosas em uma aplicação web em que está logado. Com um pouco de ajuda das mídias sociais (como: envio de um hyperlink via / chat / Facebook / outros), um atacante pode forçar os usuários de uma aplicação web a executar ações que irão comprometer os dados do usuário final. Se o usuário final tiver permissões de uma conta de administrador, isso pode comprometer a aplicação web inteira (OWASP, 2013). A falsificação de solicitação entre sites envolve forçar uma vítima (usuário final) a enviar uma solicitação HTTP para um destino alvo, sem seu conhecimento ou aprovação. Muitos sites não levam em consideração essa vulnerabilidade e os desenvolvedores desses sites também não se preocupem em garantir que a aplicação esteja segura neste aspecto. (DJANGO PROJECT, 2013). Para minimizar esse tipo de ataque o desenvolvedor deve fazer validações em todo o processo de requisição de páginas HTTP do site. A primeira validação deve ocorrer no que se chama de client-side ou lado do cliente onde geralmente executa código fonte que é executada no navegador do cliente. A segunda validação deve ocorrer no que se chama de client-server ou lado do servidor no qual executa código de servidor como o Java por exemplo. Pequenas validações podem garantir que uma aplicação fique protegida das maiorias das investidas de ataques CSRF. (DJANGO PROJECT, 2013). Para evitar a falsificação CSRF, o método mais comum utilizado é a cada pedido requisitado adicionar um símbolo ao mesmo, assim o desenvolvedor terá a segurança de que o pedido é válido e não proveniente de uma fonte que não seja o usuário (VERACODE, 2013). Por fim, no capítulo 3 são apresentados exemplos práticos de como a aplicação pode identificar que está sofrendo um ataque de CSRF. Seguindo alguns métodos é possível anular ou inibir o ataque, e assim, evitar que o seu usuário final seja prejudicado.

19 2.2.3 CROSS SITE SCRIPTING (XSS) Considerando alguém que possa enviar dados não confiáveis para o sistema, incluindo utilizadores externos, utilizadores internos e administradores. O atacante envia scripts textuais que exploram o interpretador no seu navegador. Quase qualquer fonte de dados poderá constituir um vetor de ataque, incluindo fontes internas tais como dados de uma base de dados. (OWASP, 2013) O XSS é um dos riscos que mais prevalece no contexto das falhas de segurança em aplicações web. As falhas XSS acontecem quando uma aplicação inclui dados fornecidos pelo utilizador numa página enviada para o navegador sem que alguma validação ou filtragem tenha sido feita aos dados. Existem três tipos conhecidos de falhas XSS: Armazenada; Refletida; XSS baseado em DOM. Descobrir falhas XSS é razoavelmente fácil através de testes ou análise do código fonte, que são abordados no capítulo três. (OWASP, 2013). É necessário assegurar que todos os dados inseridos por utilizadores e enviados pelo navegador são verificados quanto à sua validade (através da validação da entrada dos dados) e que os dados são devidamente filtrados antes de serem incluídos na página. A codificação adequada da saída de dados assegura que os dados de entrada são sempre tratados como texto pelo navegador, ao invés de serem considerados como conteúdo ativo passível de ser executado. (OWASP, 2013) Tanto as ferramentas estáticas como as dinâmicas podem excluir automaticamente problemas de XSS. Mas para dificultar a detecção automática, cada uma delas utiliza diferentes interpretadores como JavaScript, Microsoft Active-X, Adobe Flash e Microsoft Silverlight e constrói as páginas de formas diferentes. Também existem tecnologias provenientes da Web 2.0, como o AJAX, que fazem com que este risco XSS seja muito mais difícil de detectar através de ferramentas automáticas (OWASP, 2013) BROKEN AUTHENTICATION AND SESSION MANAGEMENT Os atacantes usam falhas ou brechas nas funções de autenticação ou de gestão de sessões (por exemplo, contas expostas, palavras chave,

20 identificadores de sessão) para se fazerem passar por outros utilizadores. Os programadores desenvolvem frequentemente esquemas de autenticação e de gestão de sessões, no entanto fazer isto da forma mais correta é difícil. Como resultado, estes esquemas personalizados apresentam frequentemente falhas em áreas como o fecho de sessão, gestão de palavras chave, expiração de sessões, sistemas do tipo remember me, questões secretas, atualização da conta, entre outros (OWASP, 2013) INSECURE DIRECT OBJECT REFERENCES Levando em conta os perfis de usuários do sistema e suas configurações de acesso, um atacante, que por sua vez é um usuário autorizado no sistema, altera o valor do atributo de um objeto do sistema, burlando as restrições de uso de seu perfil e consegue acesso a páginas as quais não deveria ter. (OWASP, 2013). As aplicações usam frequentemente o nome real ou a chave de um objeto quando realiza a geração das páginas web. As aplicações nem sempre verificam se o utilizador está autorizado para usar o objeto alvo. Isto resulta numa falha de referência direta insegura ao objeto. Efetuando testes é possível manipular facilmente os valores dos parâmetros para excluir tais falhas e a análise de código feita no capítulo 3 mostra até que ponto está adequadamente a ser verificada a autorização. Tais falhas podem comprometer todos os dados que possam ser referenciados pelo parâmetro. A menos que o espaço dos nomes seja escasso, torna-se fácil para um atacante acessar a todos os dados disponíveis desse tipo (OWASP, 2013) SECURITY MISCONFIGURATION Os atacantes externos anônimos são que tentam comprometer o sistema sem possuir o acesso e existem os atacantes internos, usuários com acesso ao sistema que pretendem disfarçar ou esconder as suas ações ilícitas. O atacante pode utilizar contas criadas por omissão, páginas não utilizadas, falhas não corrigidas, arquivos e diretórios não protegidos, entre outros, para

21 conseguir obter acesso não autorizado, ou para obter conhecimentos sobre o sistema. (OWASP, 2013). Uma configuração de segurança incorreta pode ocorrer a qualquer nível da pilha aplicacional, incluindo a plataforma, o servidor web, o servidor aplicacional, assim como o código personalizado desenvolvido. Os programadores e administradores de rede necessitam de trabalhar em conjunto para assegurar que a pilha aplicacional esteja convenientemente configurada. As ferramentas de pesquisa e análise automática (scanners) são bastante úteis na detecção de correções/atualizações em falta, configurações incorretas, utilização de contas por omissão, serviços desnecessários, entre outros. Estas falhas fazem com que frequentemente os atacantes possam ter acesso não autorizado a alguns dados ou funcionalidades do sistema. Ocasionalmente, estas falhas comprometem completamente o sistema (OWASP, 2013). Para saber se a aplicação é vulnerável é necessário executar uma verificação de segurança apropriada ao longo da pilha aplicacional. Uma sequência de verificações pode ser feita para identificar essas vulnerabilidades (OWASP, 2013): 1. O sistema deve possuir algum processo que permita mantê-lo atualizado. Estas atualizações devem incluir o sistema operacional, servidor web e de aplicação, sistema de gestão de bases de dados, aplicações, e todas as bibliotecas de código fonte. 2. Tudo o que não é necessário deve ter sido desativado, removido, ou não instalado (por exemplo: portas, serviços, páginas, contas e privilégios). 3. As palavras chave das contas por omissão devem ser desativadas. 4. O sistema de tratamento de erros deve ser configurado de forma que impeça que informações comprometedoras sejam divulgadas através de mensagens de erros. 5. Os frameworks de desenvolvimento (por exemplo: Structs, Spring, ASP.Net) e bibliotecas de código devem ter suas configurações configuradas. Um processo concentrado e repetitivo é necessário para desenvolver e manter uma configuração de segurança aplicacional adequada.

22 2.2.7 INSECURE CRYPTOGRAPHIC STORAGE Os atacantes nem sempre quebram a criptografia e sim outros elementos, tais como encontrar chaves, obter cópias legíveis de dados, ou tentam acessar dados através de canais que os decifram automaticamente. A falha mais comum nesta área é o simples fato de não cifrar os dados que necessitam ser cifrados. A utilização de funções de resumo fracas sem a utilização de fatores de entropia para proteger palavras chave é igualmente comum. Os atacantes externos têm dificuldades em detectar estas falhas devido ao seu acesso limitado e habitualmente tentam explorar outras alternativas em primeiro lugar para tentar obter o desejado acesso (OWASP, 2013). Este tipo de falha compromete frequentemente todos os dados que deveriam ter sido cifrados. Tipicamente esta informação inclui dados sensíveis tais como registos médicos, credenciais, dados pessoais, cartões de crédito, entre outros. Primeiramente é necessário determinar quais são os dados verdadeiramente sensíveis que precisam ser cifrados. Por exemplo, palavras chave, cartões de crédito, registos médicos, e informação pessoal devem ser cifrados. Para todos estes dados, é necessário assegurar (OWASP, 2013): 1. Sempre que armazenados a longo prazos, os mesmo devem estar cifrados, e por garantia, em especial em cópias de segurança. 2. Após decifrarem os dados, apenas os utilizadores autorizados devem possuir acesso as cópias decifradas (por exemplo, sistema de controle de acesso). 3. O algoritmo de criptografia deve ser forte e devidamente padronizado por entidades internacionais. 4. A chave gerada é sempre robusta, protegida contra acessos não autorizados, e se encontra planejada a futura mudança de chave FAILURE TO RESTRICT URL ACCESS Neste tipo de falha, o atacante é um utilizador autorizado do sistema que pode alterar a URL para acessar uma página com privilégios. Estes utilizadores anônimos podem acessar a páginas privadas que não estejam protegidas. As aplicações não protegem os pedidos de páginas convenientemente. Em alguns

23 casos a proteção da URL é gerida através de configurações, e nos casos que o sistema está mal configurado, existe a vulnerabilidade. Existe também a omissão por parte dos programadores, que esquecem de efetuar as validações apropriadas no código. A detecção destas falhas é fácil. A parte difícil está em identificar que páginas (URLs) estão vulneráveis a ataques. Tais falhas permitem aos atacantes acessar a funcionalidades não autorizadas. As funções de administração são o alvo chave neste tipo de ataque (OWASP, 2013). A melhor forma de saber se uma aplicação tem falhas na restrição de acesso a uma URL consiste em verificar todas as páginas. Cada uma das páginas pode ser pública ou privada. Se for uma página privada (OWASP, 2013): 1. Deve ser necessário algum tipo de autenticação para efetuar o acesso à página. 2. É necessário verificar se o usuário que está buscando a página tem permissão para acessa-la. Alguns mecanismos de segurança externa fornecem esse tipo de verificação de autenticação e autorização para acessar à página. É interessante verificar se estes estão configurados adequadamente para cada página. Se for utilizada proteção ao nível do código fonte, é necessário verificar também se isto foi aplicado em todas as páginas que o requerem. Os testes de penetração podem também ajudar verificar se a proteção adequada está ativa INSUFFICIENT TRANSPORT LAYER PROTECTION Para explorar esta falha, o atacando busca monitorizar o tráfego de rede dos usuários do sistema. Se a aplicação está na Internet, não é sabido quais os meios utilizados pelos usuários para acessar o sistema. Monitorar o tráfego dos usuários na rede pode ser difícil, mas na maior parte das vezes é fácil. A principal dificuldade reside na monitoração do tráfego de rede apropriado enquanto os utilizadores acessam ao endereço vulnerável (OWASP, 2013). As aplicações frequentemente não protegem o tráfego de rede. Podem utilizar SSL/TLS durante a autenticação, mas não no restante, expondo dados e Ids de sessão a possível interceptação. Certificados mal configurados ou

24 expirados podem também ser utilizados. Detectar falhas básicas é fácil, basta observar o tráfego de rede do endereço. Falhas mais sutis requerem inspeção da arquitetura da aplicação e da configuração do servidor (OWASP, 2013). Estas falhas expõem dados de utilizadores e podem originar roubos de contas e caso uma conta de administração seja comprometida, todo o endereço pode ser exposto. Más configurações do SSL podem também facilitar ataques de MITM (Man In The Middle) e phishing (OWASP, 2013). A melhor maneira de descobrir se uma aplicação possui proteção suficiente da camada de transporte é verificar se (OWASP, 2013): 1. O SSL é utilizado para proteger todo o tráfego relacionado com autenticações. 2. Nas páginas privadas e serviços, é utilizado o SSL para todos os recursos que fazem uso das mesmas. Isto protege todos os dados e símbolos de sessão que são trocados. A utilização de conteúdo misto numa página (conteúdo SSL e não SSL) deve ser evitado, pois isso poderá causar avisos no navegador, expondo o identificador de sessão do utilizador. 3. Apenas algoritmos robustos são suportados. 4. Todos os cookies de sessão possuem a opção secure para que o navegador nunca os transmita sem que estejam cifrados adequadamente. 5. O certificado do servidor é legítimo e está devidamente configurado. Isto inclui ser emitido por um emissor autorizado, não estar expirado, não ter sido revogado e mapear todos os domínios que o endereço utiliza UNVALIDATED REDIRECTS AND FORWARDS Não validar os encaminhamentos e redirecionamentos de endereços web pode gerar falhas onde atacantes podem encontrar uma alternativa de exploração. Um atacante pode enganar os usuários com um endereço qualquer que aponta para um redirecionamento inválido e iludem as vítimas, ou seja o usuário, para que estas os selecionem. As vítimas estão mais propensas a selecionar essa ligação, desde que a mesma pareça levar a um endereço

25 válido e verdadeiro. O atacante ataca encaminhamentos inseguros para tentar contornar as verificações de segurança (OWASP, 2013). As aplicações redirecionam frequentemente os utilizadores para outras páginas ou utilizam encaminhamentos internos de uma maneira similar. Em alguns casos a página destino é especificada através de um parâmetro que não é validado, permitindo assim que um atacante possa escolher a página de destino. Acabar com os redirecionamentos que não são validados é simples, basta procurar por redirecionamentos onde você pode definir o URL por completo. Os encaminhamentos não validados são mais difíceis, uma vez que eles possuem como alvo páginas internas (OWASP, 2013). Tais redirecionamentos podem tentar instalar malware ou podem tentar enganar as vítimas com o intuito de as levar a divulgar palavras chave ou outras informações sensíveis. Os encaminhamentos inseguros podem permitir contornar os controles de acesso. A melhor forma de verificar se alguma aplicação possui redirecionamentos ou encaminhamento não validados é (OWASP, 2013): 1. Quando é utilizado algum tipo de redirecionamento ou encaminhamento, o código deve ser revisado. Para cada utilização, deve-se identificar se a URL de destino faz parte de algum valor de um parâmetro. Caso seja, verificar se os parâmetros são validados para apenas conter destinos permitidos ou elementos de um destino. 2. Navegar pelo web site para verificar se o mesmo gera algum redirecionamento (códigos de resposta HTTP , tipicamente o 302). Antes do redirecionamento, deve ser verificado se os parâmetros fornecidos antecipadamente são parecidos com a URL de destino, integralmente ou parcialmente. Caso isso seja confirmado, a URL de destino deve ser alterada e deve ser verificado novamente se o web site o redireciona para esse novo destino. 3. Verificar todos os parâmetros para ver se estes parecem ser parte de uma URL de destino, de um redirecionamento ou encaminhamento, e testar todos que o sejam.

26 2.3 CONSIDERAÇÕES PARCIAIS É imprescindível que as aplicações tenham segurança, isto evita que o usuário final tenha problemas como perda de desempenho, inconsistência dos dados ou erros que danifiquem a sua aplicação. Seguindo algumas regras e conhecendo as principais formas de ataque, o desenvolvedor tem mais facilidade em identificar o que deve ser feito para evitá-los, e assim ter uma disponibilidade seletiva dos dados. Com a intenção de educar desenvolvedores, designers, arquitetos e organizações a respeito das consequências de deixar uma aplicação vulnerável, a OWASP listou os dez principais ataques em JAVA, e também apresentou os métodos básicos para a defesa contra esses ataques, os quais podem ser evitados com o desenvolvimento correto da aplicação. No capítulo 3 será feita uma análise dos códigos em Java em consideração a estes ataques e demonstradas formas de esquiva-los.

27 3. ANÁLISE DE CODIFICAÇÃO EM JAVA A maioria dos problemas relacionados à segurança de uma aplicação Java, pode ser evitado com uma prática de programação segura. Muitos códigos inseguros são a causa de vulnerabilidades de grandes ou pequenas aplicações, sendo muito comum usuários de diversos tipos de sistemas terem, por exemplo, seus dados pessoais roubados para fins ilícitos e o pior é saber que tais ataques poderiam ter sido evitados com pequenos cuidados no momento da construção do software. Por isso é de extrema importância saber identificar um código fonte seguro. Não há como certificar se o código é seguro se não se aplica ao mínimo, os conceitos explicitados na norma OWASP. A análise e o teste dos requisitos torna-se de fato, um ato importantíssimo no desenvolvimento dos produtos de software, para assim, se garantir o mínimo de segurança para aplicações que rodam sobre a plataforma do Java. Para cada vulnerabilidade é exibido um exemplo de código fonte, e é feita uma análise para identificar as boas e más práticas de programação esclarecendo e explicitando, à nível de código, alguns dos exemplos de ataques citados no presente trabalho. 3.1 ANÁLISE CROSS-SITE REQUEST FORGERY Os navegadores web (Internet Explorer, Firefefox, Chrome) permitem que as aplicações web solicitem requisições POST e GET entre vários sites. O ataque cross-site request forgery ocorre basicamente quando um usuário acessa uma página maliciosa, que faz com que o navegador envie solicitações para uma aplicação que o usuário não sabe ou não tinha a intenção. Esse tipo de ataque pode ser feito com as tags HTML (<image>, <frame>, entre outros). Assim sendo, o site malicioso pode executar ações sem a devida autorização do usuário. (VERACODE, 2013) Basicamente todas as aplicações web são vulneráveis a ataques de CSRF, e os desenvolvedores precisam proteger as suas aplicações para não ser um alvo potencial de ataques.

28 3.1.1 ANÁLISE DE CÓDIGOS O código é um exemplo de um código fonte que irá identificar uma tentativa de utilizar uma parte da memória que não foi alocada pela aplicação. Código Código vulnerável de cross-site request forgery Pode-se verificar nesse código fonte, que o atacante, dono da página Web, colocou um link com o nome Veja minhas fotos, sobretudo, quando o usuário clicar no link será redirecionado para página de um banco, na qual fará um depósito no valor de R$ ,00. Sabe-se que se trata de um caso hipotético, sobretudo, é exatamente assim que acontecem os ataques aos sites. Na URL são passados alguns parâmetros, na qual faz a aplicação executar uma ação que não poderia. Para conseguir corrigir esse tipo de erro, torna-se necessário criar uma chave (Token) para cada sessão iniciada pelo usuário. Toda vez que o usuário acessa uma página Web dentro da mesma aplicação, o programa irá validar o token do usuário, caso as informações não batam, ele nega o acesso a página. O token deve ser colocado em um campo hidden, que significa escondido. (JAVA SAPAO, 2013). O Código exemplifica isso.

29 Código Código de tratamento do cross-site request forgery Fonte: JAVA SAPAO Ao acessar a página, a aplicação deve validar o token e se necessário for bloquear o acesso ao mesmo, como segue no código (JAVA SAPAO, 2013). Código Código validação de cross-site request forgery Fonte: JAVA SAPAO

30 Deve-se atentar, que sempre que usado o token deve ser descartado e a aplicação deve gerar um novo token. (JAVA SAPAO, 2013). 3.2 ANÁLISE COMMAND INJECTION Os programas externos são chamados para executar uma função requerida pelo sistema global. Esta prática é uma forma de reutilização e pode até mesmo ser considerada uma forma grosseira de engenharia de software baseada em componentes. O ataque Command Injection ocorre quando um aplicativo não consegue limpar a entrada não confiável e usa-o na execução de programas externos. (SECURECODING, 2013). A vulnerabilidade do Command Injection está na entrada dos comandos. Se o código for tratado de maneira correta evita que os dados do usuário sejam disponibilizados, excluídos ou alterados ANÁLISE DE CÓDIGOS O código é um exemplo de código fonte que poderá danificar os dados do cliente, caso seja executada uma entrada não confiável: String sql = "select * from tabela_usuarios where login='" + campo_login +"' and senha='" + campo_senha + "'"; Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery(sql); if (rs.next()) System.out.println("Usuário Logado com sucesso."); else System.out.println("Usuário ou Senha não conferem."); Código Código sem tratamento de command injection Fonte: DEVMEDIA 3 Deve se tomar cuidado ao usar consultas SQL para validar os campos, pois isto possibilita que o atacante execute comandos que afetem o banco de dados. Por exemplo, se o usuário passasse como parâmetro de login o valor ' OR 1=1 -- isto resulta no código (DEVMEDIA, 2013):

31 String sql = "select * from tabela_usuarios where login='' OR 1=1 --' and senha='" + campo_senha + "'"; Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery(sql); if (rs.next()) System.out.println("Usuário Logado com sucesso."); else System.out.println("Usuário ou Senha não conferem."); Código Código executando command injection Fonte: Adaptado de DEVMEDIA 3 Desta maneira é possível acessar a aplicação sem saber o login, pois será verificado se o login é igual a vazio ou se 1=1, retornando verdade, o resto das validações serão ignoradas porque estão comentadas. (DEVMEDIA, 2013). O código é um exemplo de como este problema pode ser tratado. String sql = "SELECT * FROM tabela_usuarios WHERE login =? AND senha =?"; PreparedStatement prepstmt = con.preparestatement(sql); prepstmt.setstring(1,login); prepstmt.setstring(2,senha); ResultSet rs = prepstmt.executequery(); Código Código com tratamento de command injection Fonte: DEVMEDIA 3 Neste exemplo é criado um PreparedStatement. Por vezes é mais conveniente usá-lo para enviar instruções SQL à base de dados, pois contém não apenas uma instrução SQL, mas uma instrução SQL que foi précompilada. (Docs Oracle 2, 2013). Sendo assim, pode-se verificar que utilizando comandos definidos pelo Java é possível tratar as entradas corretamente. Desta forma evita-se inconsistências nos dados dos clientes. 3.3 ANÁLISE CROSS SITE SCRIPTING Tanto as ferramentas estáticas como as dinâmicas podem detectar automaticamente problemas de XSS. No entanto, cada aplicação constrói as páginas de diferente modo e usa diferentes interpretadores associados aos navegadores como JavaScript, ActiveX, Flash e Silverlight, o que dificulta a detecção automática. Portanto, uma detecção completa destes problemas

32 requer uma combinação de revisão manual do código e testes de penetração manual, como complemento a qualquer abordagem automática que possa ser usada. As tecnologias Web 2.0, como o AJAX, fazem com que este risco XSS seja muito mais difícil de detectar através de ferramentas automáticas (OWASP, 2013). Se faz necessário assegurar que todos os dados inseridos por utilizadores e enviados pelo navegador são verificados quanto à sua validade (através da validação da entrada dos dados) e que os dados são devidamente filtrados antes de serem incluídos na página. A codificação adequada da saída de dados assegura que os dados de entrada são sempre tratados como texto pelo navegador, ao invés de serem considerados como conteúdo ativo passível de ser executado (OWASP, 2013) ANÁLISE DE CÓDIGOS A aplicação usa dados não confiáveis na construção do fragmento de HTML como no exemplo sem validação ou filtragem dos mesmos. O atacante modifica o parâmetro 'CC' no seu navegador para como no exemplo Isto faz com que o ID da sessão da vítima seja enviado para o endereço web do atacante, permitindo a este último capturar a sessão corrente do utilizador (OWASP, 2013). Código Exemplo de ataque Cross Site Scripting Fonte OWASP. Código Exemplo de ataque Cross Site Scripting Fonte OWASP.

33 3.4 ANÁLISE BROKEN AUTHENTICATION AND SESSION MANAGEMENT A melhor forma de descobrir se uma aplicação é vulnerável a uma referência direta insegura a um objeto, consiste em verificar que todas as referências a objetos possuem defesas apropriadas. Para conseguir isto, é preciso considerar (OWASP, 2013): 1. Para referências diretas a recursos restritos, a aplicação necessita verificar se o utilizador está autorizado a acessar o recurso exato que foi solicitado. 2. Se a referência é uma referência indireta, o mapeamento para a referência direta deve ser limitada aos valores autorizados para o utilizador atual. A revisão do código fonte de uma aplicação pode verificar de forma fácil e rápida se as duas abordagens citadas 1 e 2 estão implementadas corretamente. Os testes são igualmente um meio eficiente para identificar referências diretas a objetos e se as mesmas são seguras. As ferramentas automáticas tipicamente não procuram este tipo de falhas uma vez que não conseguem reconhecer o que necessita de proteção e o que é ou não seguro ANÁLISE DE CÓDIGOS Ao utilizar identificadores e atributos de sessão na URL, o usuário ou atacante podem utilizá-los de forma errônea, propositalmente no caso do atacante. O Código mostra um caso onde o atributo de identificação da sessão está presente na URL. Um usuário desavisado pode enviar a URL completa para alguém, que ao acessá-la, utilizará a mesma sessão. Código Exemplo de uma falha no gerenciamento da sessão. Em outro tipo de ataque, o mesmo problema citado no Código pode ser utilizado para alterar diretamente a sessão, caso o atacante conheça identificadores de sessão utilizados. Dessa forma, o usuário mal intencionado

Introdução... O que é SSL... Quais são os tipos de SSL... Por que ter... Como contratar... Como é feita a manutenção...

Introdução... O que é SSL... Quais são os tipos de SSL... Por que ter... Como contratar... Como é feita a manutenção... Conteúdo do Ebook Introdução... O que é SSL... Quais são os tipos de SSL... Por que ter... Como contratar... Como é feita a manutenção... Quais foram as últimas falhas... Conclusão... 03 04 05 06 06 07

Leia mais

Nomes: Questão 1 Vulnerabilidade: SQL Injection (Injeção de SQL):

Nomes: Questão 1 Vulnerabilidade: SQL Injection (Injeção de SQL): Nomes: Questão 1 Vulnerabilidade: SQL Injection (Injeção de SQL): Nos últimos anos uma das vulnerabilidades mais exploradas por usuários mal-intencionados é a injeção de SQL, onde o atacante realiza uma

Leia mais

Desenvolvimento e disponibilização de Conteúdos para a Internet

Desenvolvimento e disponibilização de Conteúdos para a Internet Desenvolvimento e disponibilização de Conteúdos para a Internet Por Matheus Orion OWASP A Open Web Application Security Project (OWASP) é uma entidade sem fins lucrativos e de reconhecimento internacional,

Leia mais

Segurança em aplicações web: pequenas ideias, grandes resultados Prof. Alex Camargo alexcamargoweb@gmail.com

Segurança em aplicações web: pequenas ideias, grandes resultados Prof. Alex Camargo alexcamargoweb@gmail.com UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ENGENHARIA DE COMPUTAÇÃO Segurança em aplicações web: pequenas ideias, grandes resultados alexcamargoweb@gmail.com Sobre o professor Formação acadêmica: Bacharel

Leia mais

MANUAL DA SECRETARIA

MANUAL DA SECRETARIA MANUAL DA SECRETARIA Conteúdo Tela de acesso... 2 Liberação de acesso ao sistema... 3 Funcionários... 3 Secretaria... 5 Tutores... 7 Autores... 8 Configuração dos cursos da Instituição de Ensino... 9 Novo

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

Projuris Enterprise Visão Geral da Arquitetura do Sistema

Projuris Enterprise Visão Geral da Arquitetura do Sistema Projuris Enterprise Visão Geral da Arquitetura do Sistema Março/2015 Página 1 de 17 Projuris Enterprise Projuris Enterprise é um sistema 100% Web, com foco na gestão de contencioso por empresas ou firmas

Leia mais

Manual de Rotinas para Usuários. Advogados da União. Procuradoria da União no Estado do Ceará PU/CE SAPIENS. Sistema da AGU de Inteligência Jurídica

Manual de Rotinas para Usuários. Advogados da União. Procuradoria da União no Estado do Ceará PU/CE SAPIENS. Sistema da AGU de Inteligência Jurídica Manual de Rotinas para Usuários Advogados da União Procuradoria da União no Estado do Ceará PU/CE SAPIENS Sistema da AGU de Inteligência Jurídica Versão 1.0 2015 1 INTRODUÇÃO 3 1.1 O QUE É O SAPIENS? 3

Leia mais

UNIVERSIDADE FEDERAL DE PELOTAS

UNIVERSIDADE FEDERAL DE PELOTAS Usando um firewall para ajudar a proteger o computador A conexão à Internet pode representar um perigo para o usuário de computador desatento. Um firewall ajuda a proteger o computador impedindo que usuários

Leia mais

SISTEMA OPERACIONAL MAC OS

SISTEMA OPERACIONAL MAC OS MANUAL PROTECT Versão R15 SISTEMA OPERACIONAL MAC OS Copyright GVT 2015 www.gvtprotect.com.br 1 1 Índice 1 Índice... 2 2 GVT PROTECT... 3 2.1 Requisitos Mínimos De Sistema... 3 2.2 Sistemas Operacionais

Leia mais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO? Índice BlueControl... 3 1 - Efetuando o logon no Windows... 4 2 - Efetuando o login no BlueControl... 5 3 - A grade de horários... 9 3.1 - Trabalhando com o calendário... 9 3.2 - Cancelando uma atividade

Leia mais

MINISTÉRIO DA SAÚDE. Secretária de Gestão Estratégica e Participativa da Saúde SGEP. Coordenação de Desenvolvimento dos Sistemas de Saúde - CDESS

MINISTÉRIO DA SAÚDE. Secretária de Gestão Estratégica e Participativa da Saúde SGEP. Coordenação de Desenvolvimento dos Sistemas de Saúde - CDESS MINISTÉRIO DA SAÚDE Secretária de Gestão Estratégica e Participativa da Saúde SGEP Coordenação de Desenvolvimento dos Sistemas de Saúde - CDESS Departamento de Informática do SUS - DATASUS Manual operacional

Leia mais

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados 1. Introdução O governo é um dos maiores detentores de recursos da informação. Consequentemente, tem sido o responsável por assegurar que tais recursos estejam agregando valor para os cidadãos, as empresas,

Leia mais

O Gerenciamento de Documentos Analógico/Digital

O Gerenciamento de Documentos Analógico/Digital Tipos de GED: Document imaging Document management Document Imaging / Document Management O Gerenciamento de Documentos Analógico/Digital Mundo analógico Criação Revisão Processamento Arquivo Mundo digital

Leia mais

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com /

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini E-mail: prof.andre.luis.belini@gmail.com / andre.belini@ifsp.edu.br MATÉRIA: SEGURANÇA DA INFORMAÇÃO Aula N : 15 Tema:

Leia mais

agility made possible

agility made possible RESUMO DA SOLUÇÃO Utilitário ConfigXpress no CA IdentityMinder a minha solução de gerenciamento de identidades pode se adaptar rapidamente aos requisitos e processos de negócio em constante mudança? agility

Leia mais

APÓS A INSTALAÇÃO, MÃOS À OBRA. E AO TECLADO. MANUAL DE INSTALAÇÃO

APÓS A INSTALAÇÃO, MÃOS À OBRA. E AO TECLADO. MANUAL DE INSTALAÇÃO APÓS A INSTALAÇÃO, MÃOS À OBRA. E AO TECLADO. MANUAL DE INSTALAÇÃO 1 SEJA BEM-VINDO AO SIENGE. PARABÉNS! A partir de agora a sua empresa irá contar com os benefícios do Sienge. Conte conosco para ajudá-lo

Leia mais

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery Sistemas Operacionais Curso Técnico Integrado Profa: Michelle Nery Conteúdo Programático CONTAS DE E GRUPOS DE O Microsoft Management Console - MMC Permissões de Segurança de um Console Contas de Usuários

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

Manual de instalação, configuração e utilização do Enviador XML

Manual de instalação, configuração e utilização do Enviador XML Manual de instalação, configuração e utilização do Enviador XML 1. Conceitos e termos importantes XML Empresarial: é um sistema web (roda em um servidor remoto) de armazenamento e distribuição de documentos

Leia mais

Política de Privacidade do Serviço OurSound para Estabelecimentos

Política de Privacidade do Serviço OurSound para Estabelecimentos Política de Privacidade do Serviço OurSound para Estabelecimentos Esta Política de privacidade explica a política do OurSound no que tange a coleta, utilização, divulgação e transferência de informações,

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Curso de Tecnologia em Redes de Computadores Disciplina: Tópicos Avançados II 5º período Professor: José Maurício S. Pinheiro AULA 3: Políticas e Declaração de

Leia mais

Proposta de estudo CNC

Proposta de estudo CNC Proposta de estudo CNC Vitor Hugo Galhardo Moia vhgmoia@dca.fee.unicamp.br Universidade Estadual de Campinas - UNICAMP Faculdade de Engenharia Elétrica e de Computação FEEC APRESENTAÇÃO GRUPO DCA DE SEGURANÇA

Leia mais

COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO. Versão 1.0

COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO. Versão 1.0 COORDENAÇÃO DE EAD MANUAL DE UTILIZAÇÃO DO MOODLE 2.6 PERFIL ALUNO Versão 1.0 2015 SUMÁRIO 1. O MOODLE 3 2. Acesso à Plataforma 3 2.1. Cadastrar-se em uma disciplina 4 2.2. Página Inicial do Curso 5 3.

Leia mais

Indústria de Cartões de Pagamento (PCI) Padrão de segurança de dados. Resumo de Alterações da Versão 2.0 para a 3.0 do PCI-DSS

Indústria de Cartões de Pagamento (PCI) Padrão de segurança de dados. Resumo de Alterações da Versão 2.0 para a 3.0 do PCI-DSS Indústria de Cartões de Pagamento (PCI) Padrão de segurança de dados Resumo de Alterações da Versão 2.0 para a 3.0 do PCI-DSS Novembro de 2013 Introdução Este documento fornece um resumo de alterações

Leia mais

Manual do Desktop Sharing. Brad Hards Tradução: Marcus Gama

Manual do Desktop Sharing. Brad Hards Tradução: Marcus Gama Brad Hards Tradução: Marcus Gama 2 Conteúdo 1 Introdução 5 2 O protocolo do Buffer de Quadro Remoto (Buffer de Quadro Remoto) 6 3 Usando o Desktop Sharing 7 3.1 Gerenciando convites do Desktop Sharing........................

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Forefront Server Security Management Console: Gerenciamento Simplificado da Segurança para Mensagens e Colaboração White Paper

Forefront Server Security Management Console: Gerenciamento Simplificado da Segurança para Mensagens e Colaboração White Paper Forefront Server Security Management Console: Gerenciamento Simplificado da Segurança para Mensagens e Colaboração White Paper Outubro de 2007 Resumo Este white paper explica a função do Forefront Server

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura

Leia mais

INSCRIÇÃO ON- LINE REVEZAMENTOS A PARTIR DE 2015 INDICADO PARA TÉCNICOS

INSCRIÇÃO ON- LINE REVEZAMENTOS A PARTIR DE 2015 INDICADO PARA TÉCNICOS INSCRIÇÃO ON- LINE REVEZAMENTOS A PARTIR DE 2015 INDICADO PARA TÉCNICOS 2015 ABMN Escrito por Julian Romero jromero@abmn.org.br Revisão: 8 March 2015 CARACTERÍSTICAS DO SISTEMA O ACESSO É ATRAVÉS DE LOGIN

Leia mais

3 Qualidade de Software

3 Qualidade de Software 3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo

Leia mais

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores Conceitos Básicos de Rede Um manual para empresas com até 75 computadores 1 Conceitos Básicos de Rede Conceitos Básicos de Rede... 1 A Função de Uma Rede... 1 Introdução às Redes... 2 Mais Conceitos Básicos

Leia mais

Tópicos Avançados em Banco de Dados Gerenciamento de Transações em Banco de Dados. Prof. Hugo Souza

Tópicos Avançados em Banco de Dados Gerenciamento de Transações em Banco de Dados. Prof. Hugo Souza Tópicos Avançados em Banco de Dados Gerenciamento de Transações em Banco de Dados Prof. Hugo Souza Até agora vimos como é formada a infraestrutura física e lógica das bases de dados com os principais componentes

Leia mais

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE Questionamento a alta direção: 1. Quais os objetivos e metas da organização? 2. quais os principais Produtos e/ou serviços da organização? 3. Qual o escopo da certificação? 4. qual é a Visão e Missão?

Leia mais

Projeto ECA na Escola - Plataforma de Educação à Distância

Projeto ECA na Escola - Plataforma de Educação à Distância Página1 Apresentação Projeto ECA na Escola - Plataforma de Educação à Distância Olá Participante do Projeto ECA na Escola, Este tutorial pretende auxiliá-lo na navegação na Plataforma de Educação à Distância

Leia mais

10 dicas para proteger o seu modem/router de ataques online

10 dicas para proteger o seu modem/router de ataques online 10 dicas para proteger o seu modem/router de ataques online Date : 9 de Outubro de 2015 Os ataques online e a cibersegurança são dos temas mais abordados, actualmente, quando se fala de Internet. Os perigos

Leia mais

Políticas de segurança e informações

Políticas de segurança e informações Whitepaper Políticas de segurança e informações VISÃO GERAL Este documento fornece uma visão de alto nível das políticas de segurança da New Relic, além de uma descrição geral dos recursos e das funcionalidades

Leia mais

SISTEMA OPERACIONAL - WINDOWS

SISTEMA OPERACIONAL - WINDOWS MANUAL PROTECT Versão R15 SISTEMA OPERACIONAL - WINDOWS Copyright GVT 2015 www.gvtprotect.com.br 1 1 Índice 1 Índice... 2 2 GVT PROTECT... 3 2.1 REQUISITOS MÍNIMOS DE SISTEMA... 3 2.2 SISTEMAS OPERACIONAIS

Leia mais

SISTEMA OPERACIONAL - ios

SISTEMA OPERACIONAL - ios MANUAL PROTECT Versão R15 SISTEMA OPERACIONAL - ios Copyright GVT 2015 www.gvtprotect.com.br 1 1 Índice 1 Índice... 2 2 GVT PROTECT... 3 2.1 REQUISITOS MÍNIMOS DE SISTEMA... 3 2.2 SISTEMAS OPERACIONAIS

Leia mais

Termos e Política de Privacidade

Termos e Política de Privacidade Termos e Política de Privacidade Sua privacidade é fundamental para nós. Por isso, queremos explicar-lhe os detalhes de política e práticas adotadas para proteger sua privacidade para que se sinta confortável

Leia mais

Guia de Usuário do Servidor do Avigilon Control Center. Versão 5.6

Guia de Usuário do Servidor do Avigilon Control Center. Versão 5.6 Guia de Usuário do Servidor do Avigilon Control Center Versão 5.6 2006-2015 Avigilon Corporation. Todos os direitos reservados. A menos que seja expressamente concedida por escrito, nenhuma licença será

Leia mais

UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor.

UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor. UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor. Modelo Cliente/Servidor Por HIARLY ALVES Fortaleza - CE Apresentação. O mais famoso tipo de arquitetura utilizada em redes de computadores

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas Operacionais Um sistema operacional fornece o ambiente no qual os programas são executados. Internamente,

Leia mais

Seu manual do usuário LOGMEIN RESCUE http://pt.yourpdfguides.com/dref/2874854

Seu manual do usuário LOGMEIN RESCUE http://pt.yourpdfguides.com/dref/2874854 Você pode ler as recomendações contidas no guia do usuário, no guia de técnico ou no guia de instalação para LOGMEIN RESCUE. Você vai encontrar as respostas a todas suas perguntas sobre a LOGMEIN RESCUE

Leia mais

Permitir a troca de mensagens de texto entre os dois alunos; Permitir que um aluno enviasse para o outro uma cópia de prova;

Permitir a troca de mensagens de texto entre os dois alunos; Permitir que um aluno enviasse para o outro uma cópia de prova; Software Básico 2008.2 Trabalho Prático 1: programação de E/S, uso de sinais Prática de programação voltada a eventos Trabalho individual ou em dupla Data de entrega: 01/10/2008 1 O Objetivo Utilizando

Leia mais

Renovação Online. Renovação Online de certificados digitais. Renovação Online. Renovação Online de certificados digitais

Renovação Online. Renovação Online de certificados digitais. Renovação Online. Renovação Online de certificados digitais Renovação Online Todos os direitos reservados. Imprensa Oficial do Estado S.A. 2012 página 1 de 22 Requisitos para a renovação Para que o processo de renovação tenha sucesso, é necessário obedecer aos

Leia mais

Bem-vindo ao tópico sobre administração de listas de preços.

Bem-vindo ao tópico sobre administração de listas de preços. Bem-vindo ao tópico sobre administração de listas de preços. Nesse tópico, você aprenderá a administrar listas de preços no SAP Business One. Sua empresa atualiza múltiplas listas de preços para fornecer

Leia mais

Sumário. Administração de Banco de dados Módulo 12. Ilustração Backup-Recovery. Recuperação (Recovery) - Definição

Sumário. Administração de Banco de dados Módulo 12. Ilustração Backup-Recovery. Recuperação (Recovery) - Definição Sumário Administração de Banco de dados Módulo 12 1. Administração de SGBDs - Continuação 1.1. Recuperação (Recovery) 1.1.1. Recuperação de sistema 1.1.2. Recuperação da mídia M. Sc. Luiz Alberto lasf.bel@gmail.com

Leia mais

Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0

Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0 Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0 DESENVOLVEDOR JORGE ALDRUEI FUNARI ALVES 1 Sistema de ordem de serviço HMV Apresentação HMV/OS 4.0 O sistema HMV/OS foi desenvolvido por Comtrate

Leia mais

Manual do Usuário do Integrador de Notícias de Governo

Manual do Usuário do Integrador de Notícias de Governo Manual do Usuário do Integrador de Notícias de Governo 1 Versão: 2.0 Manual do Usuário Integrador de Notícias de Governo Envolvidos: Secretaria Executiva do Ministério do Planejamento, Orçamento e Gestão

Leia mais

5.1. Análise Comparativa

5.1. Análise Comparativa 5 Conclusões O objetivo desta dissertação foi apresentar o ambiente de autoria Composer, o qual é voltado para a criação de programas NCL, versão 3.0, para TV digital interativa. Da mesma forma que no

Leia mais

Token USB Rainbow Ikey2032. Guia de instalação e alteração da senha (PIN)

Token USB Rainbow Ikey2032. Guia de instalação e alteração da senha (PIN) Todos os direitos reservados. Imprensa Oficial do Estado S.A. 2009 Pré Requisitos para Instalação Dispositivos de Certificação Digital (Token USB Rainbow 2032) Para que o processo de instalação tenha sucesso,

Leia mais

Resolução da lista de exercícios de casos de uso

Resolução da lista de exercícios de casos de uso Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se

Leia mais

Usando o Conference Manager do Microsoft Outlook

Usando o Conference Manager do Microsoft Outlook Usando o Conference Manager do Microsoft Outlook Maio de 2012 Conteúdo Capítulo 1: Usando o Conference Manager do Microsoft Outlook... 5 Introdução ao Conference Manager do Microsoft Outlook... 5 Instalando

Leia mais

GUIA RÁPIDO PARA CERTIFICADOS SSL/TLS FAÇA A MELHOR ESCOLHA AO AVALIAR SUAS OPÇÕES DE SEGURANÇA DE SITES

GUIA RÁPIDO PARA CERTIFICADOS SSL/TLS FAÇA A MELHOR ESCOLHA AO AVALIAR SUAS OPÇÕES DE SEGURANÇA DE SITES GUIA RÁPIDO PARA CERTIFICADOS SSL/TLS FAÇA A MELHOR ESCOLHA AO AVALIAR SUAS OPÇÕES DE SEGURANÇA DE SITES Introdução Seja você um indivíduo ou uma empresa, sua abordagem de segurança online deve ser idêntica

Leia mais

Plano de Continuidade de Negócios

Plano de Continuidade de Negócios Plano de Continuidade de Negócios Objetivo Contingenciar situações e incidentes de segurança que não puderam ser evitados. Deve ser eficaz como um pára-quedas reserva o é em um momento de falha do principal,

Leia mais

Manual do Cliente. Alu Tracker Monitoramento Veicular

Manual do Cliente. Alu Tracker Monitoramento Veicular Alu Tracker Monitoramento Veicular Manual do cliente Manual do Cliente Alu Tracker Monitoramento Veicular Introdução Este manual faz parte do contrato de prestação de serviços. Obrigado por escolher a

Leia mais

Guia para utilização do ambiente de EaD UniRitter

Guia para utilização do ambiente de EaD UniRitter Guia para utilização do ambiente de EaD UniRitter Sumário 1 Acesso ao ambiente de EaD... 1 2 Navegação... 2 3 Perfil... 2 4 Programação... 3 5 Blocos... 4 6 Comunicação... 6 6.1 Fórum de notícias... 6

Leia mais

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO 4 CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO CONCEITOS BÁSICOS MS-DOS MICROSOFT DISK OPERATION SYSTEM INSTALAÇÃO E CONFIGURAÇÃO DE UM SISTEMA OPERATIVO LIGAÇÕES À INTERNET O que é um sistema operativo?

Leia mais

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW Ciclo de Vida Aula 2 Revisão 1 Processo de Desenvolvimento de Software 1 O Processo de desenvolvimento de software é um conjunto de atividades, parcialmente ordenadas, com a finalidade de obter um produto

Leia mais

Introdução ao icare 2

Introdução ao icare 2 Introdução ao icare 2 (Instrumentação para a Coleta Assistida de Resíduos Recicláveis V.2) Arthur Elídio da Silva Lucas Zenaro José Tarcísio F. de Camargo Unipinhal (2015) SUMÁRIO 1. INTRODUÇÃO... 3 O

Leia mais

VULNERABILIDADES WEB v.2.2

VULNERABILIDADES WEB v.2.2 VULNERABILIDADES WEB v.2.2 $ whoami Sgt NILSON Sangy Computer Hacking Forensic Investigator Analista de Segurança da Informação Guerreiro Cibernético $ ls -l /etc 1. Contextualização 2. OWASP 2.1. Injeção

Leia mais

Manual do Instar Mail v2.0

Manual do Instar Mail v2.0 Manual do Instar Mail v2.0 Sumário Conteúdo Menu Principal... 2 Menu Cliente... 3 Pagina Categorias do Instar-Mail... 4 Importação... 4 Campanhas... 8 Cadastramento de campanhas do Instar-Mail... 9 Ações

Leia mais

Manual do Usuário do Produto EmiteNF-e. Manual do Usuário

Manual do Usuário do Produto EmiteNF-e. Manual do Usuário Manual do Usuário Produto: EmiteNF-e Versão: 1.2 Índice 1. Introdução... 2 2. Acesso ao EmiteNF-e... 2 3. Configurações Gerais... 4 3.1 Gerenciamento de Usuários... 4 3.2 Verificação de Disponibilidade

Leia mais

CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2.

CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2. CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2.8 PERFIL ALUNO Versão 1.0 2015 CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR

Leia mais

... MANUAL DO MODERADOR SERVIÇOS DE WEB

... MANUAL DO MODERADOR SERVIÇOS DE WEB ... MANUAL DO MODERADOR SERVIÇOS DE WEB ÍNDICE 1. IMPLEMENTAÇÃO 4 1.1 PAINEL DE CONTROLE 4 1.2 SENHA 4 1.3 INSTALAÇÃO 4 1.3.1 INSTALAÇÃO PARA MODERADOR 4 1.3.2 INSTALAÇÃO PARA PARTICIPANTES 8 1.3.2.1 PELO

Leia mais

Atualização, backup e recuperação de software

Atualização, backup e recuperação de software Atualização, backup e recuperação de software Guia do usuário Copyright 2007 Hewlett-Packard Development Company, L.P. Windows é uma marca registrada nos Estados Unidos da Microsoft Corporation. As informações

Leia mais

SERVIDORES REDES E SR1

SERVIDORES REDES E SR1 SERVIDORES REDES E SR1 Rio de Janeiro - RJ HARDWARE Você pode instalar um sistema operacional para servidores em qualquer computador, ao menos na teoria tudo irá funcionar sem grandes dificuldades. Só

Leia mais

Pró-Reitoria de Administração - PRAd Assessoria de Informática - AI SISTEMA DE PUBLICAÇÃO DE LICITAÇÕES. Manual de Procedimentos

Pró-Reitoria de Administração - PRAd Assessoria de Informática - AI SISTEMA DE PUBLICAÇÃO DE LICITAÇÕES. Manual de Procedimentos Pró-Reitoria de Administração - PRAd Assessoria de Informática - AI SISTEMA DE PUBLICAÇÃO DE LICITAÇÕES Manual de Procedimentos 2004 SUMÁRIO 1. INTRODUÇÃO...3 2. OBJETIVOS...3 3. ÂMBITO DE APLICAÇÃO...3

Leia mais

ITIL v3 - Operação de Serviço - Parte 1

ITIL v3 - Operação de Serviço - Parte 1 ITIL v3 - Operação de Serviço - Parte 1 É na Operação de Serviço que se coordena e realiza as atividades e processos necessários para fornecer e gerenciar serviços em níveis acordados com o usuário e clientes

Leia mais

INSTALAÇÃO DO FIREFOX E JAVA PORTÁVEL CUSTOMIZADO PELO TRT DA 13ª REGIÃO

INSTALAÇÃO DO FIREFOX E JAVA PORTÁVEL CUSTOMIZADO PELO TRT DA 13ª REGIÃO Poder Judiciário Justiça do Trabalho Tribunal Regional do Trabalho da 13ª Região INSTALAÇÃO DO FIREFOX E JAVA PORTÁVEL CUSTOMIZADO PELO TRT DA 13ª REGIÃO Por Ericson Benjamim Secretaria de Tecnologia da

Leia mais

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues

natureza do projeto e da aplicação métodos e ferramentas a serem usados controles e produtos que precisam ser entregues Modelo De Desenvolvimento De Software É uma representação abstrata do processo de desenvolvimento que define como as etapas relativas ao desenvolvimento de software serão conduzidas e interrelacionadas

Leia mais

terceiros ou usar um aplicativo desenvolvido por terceiros, um cookie poderá ser colocado por essa página ou aplicativo).

terceiros ou usar um aplicativo desenvolvido por terceiros, um cookie poderá ser colocado por essa página ou aplicativo). Políticas de Privacidade Esta política descreve as formas como coletamos, armazenamos, usamos e protegemos suas informações pessoais. Você aceita essa política e concorda com tal coleta, armazenamento

Leia mais

Neste tópico, abordaremos a funcionalidade de segurança fornecida com o SAP Business One.

Neste tópico, abordaremos a funcionalidade de segurança fornecida com o SAP Business One. Neste tópico, abordaremos a funcionalidade de segurança fornecida com o SAP Business One. 1 Ao final deste tópico, você estará apto a: Descrever as funções de segurança fornecidas pelo System Landscape

Leia mais

ISO 9001: SISTEMAS DE GESTÃO DA QUALIDADE

ISO 9001: SISTEMAS DE GESTÃO DA QUALIDADE ISO 9001: SISTEMAS DE GESTÃO DA QUALIDADE Prof. MARCELO COSTELLA FRANCIELI DALCANTON ISO 9001- INTRODUÇÃO Conjunto de normas e diretrizes internacionais para sistemas de gestão da qualidade; Desenvolve

Leia mais

Tutorial 7 Fóruns no Moodle

Tutorial 7 Fóruns no Moodle Tutorial 7 Fóruns no Moodle O Fórum é uma atividade do Moodle que permite uma comunicação assíncrona entre os participantes de uma comunidade virtual. A comunicação assíncrona estabelecida em fóruns acontece

Leia mais

13/10/11 TIPOS DE UTILITÁRIOS UTILITÁRIOS 0798 INTRODUÇÃO À PROGRAMAÇÃO TIPOS DE UTILITÁRIOS TIPOS DE UTILITÁRIOS

13/10/11 TIPOS DE UTILITÁRIOS UTILITÁRIOS 0798 INTRODUÇÃO À PROGRAMAÇÃO TIPOS DE UTILITÁRIOS TIPOS DE UTILITÁRIOS 2 OBJETIVOS E COMPETÊNCIAS OBJETIVOS Instalar e configurar utilitários sobre o sistema operativo (SO). UTILITÁRIOS 0798 COMPETÊNCIAS No final do curso os/as formandos/as deverão ser capazes de utilizar

Leia mais

Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu

Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu Fonte: http://www.online-security-solution.com/ - Illustration by Gaich Muramatsu Prof. Hederson Velasco Ramos Uma boa maneira de analisar ameaças no nível dos aplicativo é organiza las por categoria de

Leia mais

Segurança. Guia do Usuário

Segurança. Guia do Usuário Segurança Guia do Usuário Copyright 2007 Hewlett-Packard Development Company, L.P. Microsoft é uma marca registrada da Microsoft Corporation nos Estados Unidos. As informações contidas neste documento

Leia mais

DDoS: como funciona um ataque distribuído por negação de serviço

DDoS: como funciona um ataque distribuído por negação de serviço DDoS: como funciona um ataque distribuído por negação de serviço Entenda como aconteceu a queda dos servidores dos sites do governo brasileiro Por Fabio Jordão em 24 de Junho de 2011 Está repercutindo

Leia mais