Estudo realizado por um grupo de alunos, estudantes do curso de MBA em Gestão de Segurança da Informação, sobre o WebGoat Project para a disciplina de Gestão de Ameaças e Vulnerabilidades do Prof. MSc. Ricardo Giorgi
Autores:
Cleyton Tsukuda Kano
Danilo Luiz Favacho Lopes
Décio Vicente Castaldi
Paulo Kuester Neto
Confira o documento deste estudo em:
http://www.slideshare.net/CleytonKano/webgoat-project
Conheça os software de Segurança da Informação e Infra que ofertamos ao mercado. Destaques para :Acunetix (scan vuln apl web), SenhaSegura (Cofre Eletronico de Senhas), ControlUP (gerenciamento de ambientes VDI) - além de serviços de consultoria (pentest, scan aplicações web, auditoria de TI, etc).
(4) Comparando o N-Stalker WAS com o RedeSeguraEduardo Lanna
Conheça as duas soluções da NStalker para avaliar a segurança de suas aplicações web, e veja qual delas melhor atenderá as necessidades de sua empresa.
O documento discute tópicos sobre segurança na plataforma Java, abordando a metodologia SD3 de desenvolvimento seguro, categorias de ameaças como STRIDE e OWASP Top 10, e implementações e ferramentas de segurança como autenticação, criptografia, certificados digitais e mecanismos de autorização.
Testes de segurança desafios e oportunidadesQualister
1) A Qualister é uma empresa brasileira de consultoria em teste e qualidade de software com mais de 1000 clientes no Brasil.
2) O documento discute as tendências atuais e desafios de segurança cibernética, incluindo ameaças avançadas, nuvem, mobilidade, internet das coisas e compliance.
3) A apresentação fornece uma visão geral da cadeia de ataque cibernético e estratégias de prevenção, detecção, resposta e redução de danos.
1. O documento discute os requisitos para firewalls de nova geração, incluindo a capacidade de identificar e controlar aplicações independentemente da porta usada, identificar e controlar métodos de contorno de segurança, e descriptografar tráfego SSL de saída.
O documento discute estratégias para desenvolvimento de software seguro, incluindo metodologias como SDL e OWASP/CLASP, boas práticas como treinamento da equipe e modelagem de ameaças, testes de invasão como pentest, equipes especialistas em segurança e certificações na área.
O JAGUAR é um framework Java EE 5 de código aberto lançado pela Powerlogic para desenvolvimento de aplicações web. Ele fornece uma arquitetura reutilizável baseada em frameworks como Spring e Hibernate, além de gerar artefatos e oferecer padrões para casos comuns de uso. O JAGUAR pode ser licenciado gratuitamente ou por meio de assinatura que fornece suporte.
Conheça os software de Segurança da Informação e Infra que ofertamos ao mercado. Destaques para :Acunetix (scan vuln apl web), SenhaSegura (Cofre Eletronico de Senhas), ControlUP (gerenciamento de ambientes VDI) - além de serviços de consultoria (pentest, scan aplicações web, auditoria de TI, etc).
(4) Comparando o N-Stalker WAS com o RedeSeguraEduardo Lanna
Conheça as duas soluções da NStalker para avaliar a segurança de suas aplicações web, e veja qual delas melhor atenderá as necessidades de sua empresa.
O documento discute tópicos sobre segurança na plataforma Java, abordando a metodologia SD3 de desenvolvimento seguro, categorias de ameaças como STRIDE e OWASP Top 10, e implementações e ferramentas de segurança como autenticação, criptografia, certificados digitais e mecanismos de autorização.
Testes de segurança desafios e oportunidadesQualister
1) A Qualister é uma empresa brasileira de consultoria em teste e qualidade de software com mais de 1000 clientes no Brasil.
2) O documento discute as tendências atuais e desafios de segurança cibernética, incluindo ameaças avançadas, nuvem, mobilidade, internet das coisas e compliance.
3) A apresentação fornece uma visão geral da cadeia de ataque cibernético e estratégias de prevenção, detecção, resposta e redução de danos.
1. O documento discute os requisitos para firewalls de nova geração, incluindo a capacidade de identificar e controlar aplicações independentemente da porta usada, identificar e controlar métodos de contorno de segurança, e descriptografar tráfego SSL de saída.
O documento discute estratégias para desenvolvimento de software seguro, incluindo metodologias como SDL e OWASP/CLASP, boas práticas como treinamento da equipe e modelagem de ameaças, testes de invasão como pentest, equipes especialistas em segurança e certificações na área.
O JAGUAR é um framework Java EE 5 de código aberto lançado pela Powerlogic para desenvolvimento de aplicações web. Ele fornece uma arquitetura reutilizável baseada em frameworks como Spring e Hibernate, além de gerar artefatos e oferecer padrões para casos comuns de uso. O JAGUAR pode ser licenciado gratuitamente ou por meio de assinatura que fornece suporte.
O documento discute as motivações para o uso de Java EE Open Source e SAP NetWeaver para desenvolvimento de aplicações. Algumas vantagens incluem acesso a uma grande comunidade de desenvolvedores Java EE, custo benefício, melhoria contínua da qualidade e produtividade, e suporte da SAP para a plataforma Java EE. A arquitetura proposta utiliza ferramentas open source como Eclipse, Maven e frameworks como o jCompany dentro da plataforma SAP NetWeaver para desenvolvimento, gerenciamento de mudanças, teste e execução de aplic
O documento discute a jornada da Powerlogic em alcançar certificações MPS.BR utilizando metodologias ágeis como Scrum. Apresenta a história da empresa com o uso de métodos tradicionais e ágeis ao longo dos anos, culminando na certificação nível C em 2010 utilizando Scrum.
Dextra Sistemas: A linguagem PHP no modelo de Fábrica de SoftwareDextra
Este documento apresenta o PHP no modelo de desenvolvimento ágil Scrum. Resume que o PHP é adequado para o Scrum devido à sua capacidade de entregar resultados rapidamente através de frameworks. O Scrum organiza o desenvolvimento em sprints curtos para entregas frequentes, o que combina bem com a produtividade do PHP. Juntos, o PHP e o Scrum podem formar times eficientes.
O documento discute abordagens para segurança em desenvolvimento de software. Ele descreve as principais falhas de adotar apenas normas, testes ou documentação. Recomenda o uso do Software Assurance Maturity Model (SAMM) e do Comprehensive, Lightweight Application Security Process (CLASP) para fornecer uma estrutura para implementar segurança ao longo do ciclo de vida do software.
Artigo - Segurança no desenvolvimento de sistemas com metodologia ágil SCRUMBruno Motta Rego
O documento apresenta uma proposta para integrar conceitos de segurança da informação e práticas de segurança de software à metodologia ágil SCRUM. Discute desafios como analisar riscos e modelar ameaças. Também aborda princípios de segurança como economia de mecanismos, mediação completa e privilégio mínimo.
O relatório descreve os resultados de testes de invasão realizados em sistemas da rede JoãoSupermercados. Foram identificadas vulnerabilidades de alto impacto como acesso remoto ao banco de dados MySQL e ao servidor VNC sem senha e exposição de dados confidenciais de clientes armazenados sem criptografia. Recomenda-se corrigir essas vulnerabilidades e realizar novos testes periodicamente.
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Luiz Costa
O objetivo desta palestra é mostrar como é possível construir uma aplicação baseada na idéia de MonolithFirst e atrasar a decisão de separar em microserviços. A ideia de modular monoliths vem da organização e separação da sua aplicação em módulos ou componentes autônomos que se relacionam entre si, mas estão dentro de uma mesma base de código. Nesta palestra será mostrado como identificar e separar estes módulos, além de um processo que permite extrair um módulo e distribuir como um microserviço.
A proposta desta apresentação é mostrar uma alternativa para construção de aplicações com Ruby on Rails que dá ênfase a modelagem de domínio, separando o código que resolve o problema de negócio do código do framework.
Estudo realizado por um grupo de alunos, estudantes do curso de MBA em Gestão de Segurança da Informação, sobre o WebGoat Project para a disciplina de Gestão de Ameaças e Vulnerabilidades do Prof. MSc. Ricardo Giorgi
Autores:
Cleyton Tsukuda Kano
Danilo Luiz Favacho Lopes
Décio Vicente Castaldi
Paulo Kuester Neto
O documento discute conceitos e implementação de segurança na plataforma Java EE, incluindo autenticação e autorização. Ele explica o Java Authentication and Authorization Service (JAAS) e como configurar login modules, proteger o web e EJB containers usando JAAS e anotações.
O documento apresenta uma agenda para um workshop sobre segurança JEE, abordando conceitos como segurança declarativa e programática para EJB e web, JACC, e integração com infraestrutura como LDAP e Tivoli Access Manager.
O documento resume uma apresentação sobre o framework Struts 2 e seu uso no projeto Minha Casa Minha Vida. O documento discute o que é Struts, seu histórico, recursos principais e como foi usado no projeto, com foco na arquitetura MVC e validação.
O documento discute os 10 principais riscos de segurança em aplicações web de acordo com a OWASP, fornecendo exemplos de cenários de ataque e dicas para evitá-los, como validação de entrada de dados, uso de tokens CSRF e atualização de componentes.
O documento discute os 10 principais riscos de segurança em aplicações web de acordo com a OWASP, fornecendo exemplos de cenários de ataque e dicas para evitá-los, como validação de entrada de dados, uso de tokens CSRF e atualização de componentes.
O documento introduz os padrões de projetos GoF e Core J2EE, definindo o que são padrões de projeto e como surgem, e descrevendo alguns padrões específicos como Abstract Factory, Singleton, Template Method, Front Controller, Business Delegate e Domain Store. A conclusão questiona se alguns padrões ainda se aplicam com novas tecnologias.
Criando Aplicações .NET com o TheWebMindJaydson Gomes
O TheWebMind é uma plataforma livre desenvolvida em PHP que possui a capacidade de interpretar o conhecimento humano. Baseada no conceito NLP(Natural Language Processing) o TheWebMind possui sua própria linguagem (WML) que é similar a linguagem natural humana. Atualmente o projeto conta conta com 2 módulos nativos que geram código para aplicaçoes PHP e um módulo JAVA em fase de desenvolvimento. O objetivo da palestra é apresentar o conceito do TheWebMind e seu novo módulo baseado na plataforma .NET. O módulo .NET visa automatizar o desenvolvimento de aplicaçoes Web, criando uma estrutura MVC com poucas linhas de código WML.
1. O documento descreve um seminário sobre Java oferecido pela Sun Microsystems, apresentando os cursos, palestrantes e agenda do evento.
2. A tecnologia Java é introduzida, destacando suas origens, conceitos como orientação a objetos, portabilidade, segurança e desempenho.
3. Instruções para instalação do Java Development Kit (JDK) são fornecidas para preparar os participantes para o desenvolvimento de aplicativos Java.
Este documento discute o processo de gerenciamento de vulnerabilidades em aplicações web, incluindo desafios, etapas e benefícios. Ele descreve como testar vulnerabilidades ao longo do ciclo de vida do desenvolvimento de software e como monitorar riscos em produção, e recomenda o uso do sistema RedeSegura para apoiar esse processo.
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
O objetivo desta palestra é mostrar como é possível evoluir e reescrever partes de uma aplicação legada com mais 5 anos em produção utilizando técnicas de uma parte Domain Driven Design conhecida como Strategic Design. É uma aplicação web escrita em Python e Django que suporta a operação de um grupo focado em medicina do trabalho, com clínicas espalhadas pelo país.
Nesta palestra vamos mostrar uma abordagem que pode ajudar times que precisam lidar com aplicações legadas grandes e complexas no caminho da modernização.
Este documento apresenta um framework web MVC chamado VRaptor, desenvolvido em Java. O VRaptor oferece desenvolvimento ágil com conceitos como convention over configuration, injeção de dependência e anotações. Ele possui recursos como controllers, views, redirecionamentos e validação, permitindo também REST e serialização JSON/XML. Exemplos demonstram seu uso para criação de aplicações web.
O documento discute as motivações para o uso de Java EE Open Source e SAP NetWeaver para desenvolvimento de aplicações. Algumas vantagens incluem acesso a uma grande comunidade de desenvolvedores Java EE, custo benefício, melhoria contínua da qualidade e produtividade, e suporte da SAP para a plataforma Java EE. A arquitetura proposta utiliza ferramentas open source como Eclipse, Maven e frameworks como o jCompany dentro da plataforma SAP NetWeaver para desenvolvimento, gerenciamento de mudanças, teste e execução de aplic
O documento discute a jornada da Powerlogic em alcançar certificações MPS.BR utilizando metodologias ágeis como Scrum. Apresenta a história da empresa com o uso de métodos tradicionais e ágeis ao longo dos anos, culminando na certificação nível C em 2010 utilizando Scrum.
Dextra Sistemas: A linguagem PHP no modelo de Fábrica de SoftwareDextra
Este documento apresenta o PHP no modelo de desenvolvimento ágil Scrum. Resume que o PHP é adequado para o Scrum devido à sua capacidade de entregar resultados rapidamente através de frameworks. O Scrum organiza o desenvolvimento em sprints curtos para entregas frequentes, o que combina bem com a produtividade do PHP. Juntos, o PHP e o Scrum podem formar times eficientes.
O documento discute abordagens para segurança em desenvolvimento de software. Ele descreve as principais falhas de adotar apenas normas, testes ou documentação. Recomenda o uso do Software Assurance Maturity Model (SAMM) e do Comprehensive, Lightweight Application Security Process (CLASP) para fornecer uma estrutura para implementar segurança ao longo do ciclo de vida do software.
Artigo - Segurança no desenvolvimento de sistemas com metodologia ágil SCRUMBruno Motta Rego
O documento apresenta uma proposta para integrar conceitos de segurança da informação e práticas de segurança de software à metodologia ágil SCRUM. Discute desafios como analisar riscos e modelar ameaças. Também aborda princípios de segurança como economia de mecanismos, mediação completa e privilégio mínimo.
O relatório descreve os resultados de testes de invasão realizados em sistemas da rede JoãoSupermercados. Foram identificadas vulnerabilidades de alto impacto como acesso remoto ao banco de dados MySQL e ao servidor VNC sem senha e exposição de dados confidenciais de clientes armazenados sem criptografia. Recomenda-se corrigir essas vulnerabilidades e realizar novos testes periodicamente.
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Luiz Costa
O objetivo desta palestra é mostrar como é possível construir uma aplicação baseada na idéia de MonolithFirst e atrasar a decisão de separar em microserviços. A ideia de modular monoliths vem da organização e separação da sua aplicação em módulos ou componentes autônomos que se relacionam entre si, mas estão dentro de uma mesma base de código. Nesta palestra será mostrado como identificar e separar estes módulos, além de um processo que permite extrair um módulo e distribuir como um microserviço.
A proposta desta apresentação é mostrar uma alternativa para construção de aplicações com Ruby on Rails que dá ênfase a modelagem de domínio, separando o código que resolve o problema de negócio do código do framework.
Estudo realizado por um grupo de alunos, estudantes do curso de MBA em Gestão de Segurança da Informação, sobre o WebGoat Project para a disciplina de Gestão de Ameaças e Vulnerabilidades do Prof. MSc. Ricardo Giorgi
Autores:
Cleyton Tsukuda Kano
Danilo Luiz Favacho Lopes
Décio Vicente Castaldi
Paulo Kuester Neto
O documento discute conceitos e implementação de segurança na plataforma Java EE, incluindo autenticação e autorização. Ele explica o Java Authentication and Authorization Service (JAAS) e como configurar login modules, proteger o web e EJB containers usando JAAS e anotações.
O documento apresenta uma agenda para um workshop sobre segurança JEE, abordando conceitos como segurança declarativa e programática para EJB e web, JACC, e integração com infraestrutura como LDAP e Tivoli Access Manager.
O documento resume uma apresentação sobre o framework Struts 2 e seu uso no projeto Minha Casa Minha Vida. O documento discute o que é Struts, seu histórico, recursos principais e como foi usado no projeto, com foco na arquitetura MVC e validação.
O documento discute os 10 principais riscos de segurança em aplicações web de acordo com a OWASP, fornecendo exemplos de cenários de ataque e dicas para evitá-los, como validação de entrada de dados, uso de tokens CSRF e atualização de componentes.
O documento discute os 10 principais riscos de segurança em aplicações web de acordo com a OWASP, fornecendo exemplos de cenários de ataque e dicas para evitá-los, como validação de entrada de dados, uso de tokens CSRF e atualização de componentes.
O documento introduz os padrões de projetos GoF e Core J2EE, definindo o que são padrões de projeto e como surgem, e descrevendo alguns padrões específicos como Abstract Factory, Singleton, Template Method, Front Controller, Business Delegate e Domain Store. A conclusão questiona se alguns padrões ainda se aplicam com novas tecnologias.
Criando Aplicações .NET com o TheWebMindJaydson Gomes
O TheWebMind é uma plataforma livre desenvolvida em PHP que possui a capacidade de interpretar o conhecimento humano. Baseada no conceito NLP(Natural Language Processing) o TheWebMind possui sua própria linguagem (WML) que é similar a linguagem natural humana. Atualmente o projeto conta conta com 2 módulos nativos que geram código para aplicaçoes PHP e um módulo JAVA em fase de desenvolvimento. O objetivo da palestra é apresentar o conceito do TheWebMind e seu novo módulo baseado na plataforma .NET. O módulo .NET visa automatizar o desenvolvimento de aplicaçoes Web, criando uma estrutura MVC com poucas linhas de código WML.
1. O documento descreve um seminário sobre Java oferecido pela Sun Microsystems, apresentando os cursos, palestrantes e agenda do evento.
2. A tecnologia Java é introduzida, destacando suas origens, conceitos como orientação a objetos, portabilidade, segurança e desempenho.
3. Instruções para instalação do Java Development Kit (JDK) são fornecidas para preparar os participantes para o desenvolvimento de aplicativos Java.
Este documento discute o processo de gerenciamento de vulnerabilidades em aplicações web, incluindo desafios, etapas e benefícios. Ele descreve como testar vulnerabilidades ao longo do ciclo de vida do desenvolvimento de software e como monitorar riscos em produção, e recomenda o uso do sistema RedeSegura para apoiar esse processo.
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoLuiz Costa
O objetivo desta palestra é mostrar como é possível evoluir e reescrever partes de uma aplicação legada com mais 5 anos em produção utilizando técnicas de uma parte Domain Driven Design conhecida como Strategic Design. É uma aplicação web escrita em Python e Django que suporta a operação de um grupo focado em medicina do trabalho, com clínicas espalhadas pelo país.
Nesta palestra vamos mostrar uma abordagem que pode ajudar times que precisam lidar com aplicações legadas grandes e complexas no caminho da modernização.
Este documento apresenta um framework web MVC chamado VRaptor, desenvolvido em Java. O VRaptor oferece desenvolvimento ágil com conceitos como convention over configuration, injeção de dependência e anotações. Ele possui recursos como controllers, views, redirecionamentos e validação, permitindo também REST e serialização JSON/XML. Exemplos demonstram seu uso para criação de aplicações web.
Testes de segurança em aplicações web são importantes devido ao aumento de incidentes de segurança. As principais falhas incluem injeção de código, cross-site scripting e falhas na autenticação. Ferramentas open source como WebScarab e WebGoat podem ser usadas para mapear aplicações e testar vulnerabilidades comuns.
O documento introduz o framework JavaServer Faces (JSF), descrevendo-o como uma especificação baseada em componentes para construir interfaces com o usuário para aplicações web usando o padrão MVC. O JSF facilita a criação de telas, a transferência de dados entre telas e camadas, e a produtividade ao criar aplicações web rapidamente através de ferramentas RAD.
O documento discute a arquitetura MVC e sua implementação no ASP.NET MVC. Apresenta os principais componentes do ASP.NET MVC - Models, Views e Controllers - e discute suas vantagens e desvantagens em relação ao modelo WebForms do ASP.NET. Por fim, exemplifica o desenvolvimento de uma aplicação que utiliza ASP.NET MVC com NHibernate e a biblioteca JavaScript EXT JS.
1) O documento discute testes de segurança de software, abordagens como white-box e black-box, e a importância da modelagem de ameaças para planejar testes.
2) É explicado que testes de segurança buscam garantir não repúdio, controle de acesso e privacidade de dados.
3) A modelagem de ameaças mapeia riscos e ajuda a definir requisitos de segurança.
1. O documento apresenta um portfólio individual de um estudante sobre fundamentos de tecnologia da informação. 2. Ele aborda conceitos de HTML, como tags, imagens, vídeos e links. Também discute linguagens de programação como PHP, Java e ASP.NET, destacando suas características. 3. O objetivo é aprofundar conhecimentos em sistemas de informação, programação, HTML, ética e segurança da informação.
1. Cleyton Tsukuda Kano
Danilo Luiz Favacho Lopes
Décio Vicente Castaldi
Paulo Kuester Neto
MBA em Gestão de Segurança da Informação
19º SEG
São Paulo, Março de 2013
2. Sumário
Introdução
O Problema
Objetivo
Ambiente utilizado
Projeto WebGoat
OWASP
WebGoat
Didática
Colocando em prática
Resumo das lições
Vídeo
Conclusão
Bibliografia
3. Introdução – O Problema
Mundo dependente tecnologicamente
Popularização numa velocidade
evolutiva nunca antes experimentada
Serviços vitais conectados:
Energia
Transportes
Alimentos
Sistemas financeiros
etc
4. Introdução – O Problema
... E tudo isso gerou elevação dos riscos
Empresas devem ter preocupação e um plano
estruturado que leve em conta a segurança da
informação
Antes era privilégio ou motivo de preocupação
para de organizações militares, governos ou
grandes conglomerados empresariais
Hoje é parte do modelo de médias e pequenas
empresas
Ernst & Young mostra que 55% das empresas
elevarão seus investimentos com segurança da
informação
Para muitas empresas a segurança da informação
não é visualizada como estratégica, nem como um
investimento para o negócio e sim como um custo
a mais na planilha financeira
5. Introdução – O Problema
SQL Injection no banco de currículos das
organizações C.E.S.A.R e Pitang – Agile IT
Fonte: (RODRIGUES, 2011)
6. Introdução - Objetivo
Demonstrar de uma maneira geral e tomando como exemplo algumas das lições
presentes na estudar a ferramenta web denominada de WebGoat (versão padrão, não
sendo a versão de desenvolvedor), algumas das teorias discutidas na disciplina - gestão
de ameaças e vulnerabilidades, explorando, além dos ensinamentos introdutórios
apresentados pelo tópico da lição geral da ferramenta, as primeiras três lições de
segurança da informação para aplicações web e a lição desafio.
Dessa forma serão trabalhadas no total as seguintes cinco lições:
Lição Geral (HTML basics e HTML splitting);
Falhas no controle de acesso;
Segurança no AJAX;
Falhas de autenticação;
Lição Desafio.
7. Introdução - Ambiente utilizado
Sistema operacional Linux Ubuntu 10.10
Java Development Kit (JDK) 1.7.0.11
Apache Tomcat 7.0.35
WebGoat 5.4 Standard
WebScarab Lite v20070504-1631
Web-browser Mozilla Firefox 3.6.10 com Add-ons:
Tamper Data 11.0.1
Firebug 1.7.3
8. Introdução - Ambiente utilizado
Sistema operacional Linux Ubuntu 10.10
Java Development Kit (JDK) 1.7.0.11
Apache Tomcat 7.0.35
WebGoat 5.4 Standard
WebScarab Lite v20070504-1631
Web-browser Mozilla Firefox 3.6.10 com Add-ons:
Tamper Data 11.0.1
Firebug 1.7.3
9. Projeto WebGoat - OWASP
Ano de surgimento: 2001
Não possui associação com empresas ou serviços ditos comerciais
Fóruns, aplicativos e documentos são abertos ao público
Missão: promover o desenvolvimento seguro de aplicações e serviços de internet
Conferências
Artigos
Projetos
10. Projeto WebGoat - WebGoat
Aplicação web desenvolvida pela OWASP
Ambiente de aplicação web de aprendizado
Construída sob a linguagem de programação Java na plataforma J2EE
Concebida propositalmente para ser insegura
Contém falhas
Ensinar lições de segurança em aplicações web
Verificar diversos tipos de vulnerabilidades existentes
Origem do nome: alguém para culpar (scape-goat)
Navegação através de lições em diferentes níveis
A ideia não é sair verificando vulnerabilidades em aplicações de outrem sem a
devida permissão
Pretensão futura de servir de Honeypot
11. Projeto WebGoat - WebGoat
Fundamental para:
Evitar que estas mesmas vulnerabilidades estejam presentes
Aprender a anatomia de ataques podem se valer de uma melhor prática de programação
Incluir a segurança da informação seja incluída em todo o ciclo de desenvolvimento de aplicações e serviços
que são disponibilizados
Minimizar falhas e riscos desnecessários
Não se encontra hospedado em um servidor de internet
Necessidade de instalar em um ambiente de trabalho
Pré requisitos:
JVM
Servidor Apache Tomcat
SOs compatíveis:
Linux
OSX Tiger
Windows
12. Projeto WebGoat - Didática
Baseada em ensinamentos sobre segurança em aplicações web
Cada uma das lições dá uma visão geral sobre a vulnerabilidade que está sendo
trabalhada e contém problemas, tais como:
Cross-site Scripting (XSS);
Falhas no controle de acesso (cross site request forgery (CSRF), acesso remoto de administrador, etc.);
Falhas de autenticação e gerência de sessões (roubo de seção, spoof em cookie de autenticação, etc.);
Manipulação de campos ocultos/parâmetros;
Falhas de injeção (SQL Injection; Log spoofing, XPath injection, etc.);
Falhas em Web Services (web service SQL/SAX injection, WSDL scanning, etc.);
Vulnerabilidades no código (pistas e comentários no HTML);
Buffer overflows;
Segurança no AJAX (DOM/XML/JSON injection, etc.);
Lição desafio, cujo objetivo é quebrar a autenticação, roubar os dados de cartão de crédito e desfigurar o
site, mais conhecido como deface.
13. Projeto WebGoat - Didática
A análise das lições envolvem basicamente:
análise do conteúdo no lado cliente (client side)
código fonte em HTML
scripts
comunicação entre o cliente o servidor
cookies
dados locais
14. Colocando em prática – Resumo das lições
Lição Geral (HTML basics e HTML splitting)
Familiarizar-se com alguns
campos de sessão do HTTP,
cookies e códigos
Possibilidade de inserir determinados
caracteres, variáveis ou códigos em
determinados campos que podem
levar a um comportamento não
previsto inicialmente pela aplicação
15. Colocando em prática – Resumo das lições
Falhas no controle de acesso
Obtenção de acesso a arquivos
indevidamente
Acesso a ações privilegiadas, para
usuários sem privilégio
Acesso indevido das informações de
perfil de outro usuário
16. Colocando em prática – Resumo das lições
Segurança no AJAX
Possibilidade de inserir
determinados códigos
javascript em determinados
campos que podem levar a um
comportamento não previsto
inicialmente pela aplicação
Demonstrar os perigos em comportamentos AJAX
ao enviar informações desnecessárias e que,
supostamente, o usuário não deveria visualizar
17. Colocando em prática – Resumo das lições
Falhas de autenticação
Verificar a força das senhas fornecidas,
analisando o grau de complexidade e o
tempo necessário para quebra-las
Descoberta de senha através de
dicas de senha
Realizar acesso com um usuário e
realizar ações com outro usuário
18. Colocando em prática – Resumo das lições
Lição Desafio
Burlar o método de autenticação
Descobrir todos os cartões de
créditos registrados no banco de
dados do sistema
Desfigurar a página
20. Conclusão
Cumpre sua função de aplicação web de aprendizado
Ilustrando as falhas de segurança de uma forma bem estruturada
Dividida em tópicos por tipos de vulnerabilidades, através das lições
Boa forma para desenvolvedores, testadores de software e estudantes de
segurança da informação para se aprimorarem
Vale a pena lembrar que o objetivo da aplicação não é sair por ai procurando por
vulnerabilidades nas aplicações de outrem sem a devida permissão.
Como a própria aplicação sugere que a pessoa que utilizar estas técnicas para
realizar ataques, esta poderá ser pega e/ou demitida por este ato.
Portanto, deve-se utilizar este aprendizado na melhor forma possível e na
legalidade.
21. Bibliografia
APACHE SOFTWARE FOUNDATION. Apache Tomcat. [S.l.]: Apache Software
Foundation, 2013. Disponível em: <http://tomcat.apache.org/>. Acesso em: 14 de
março de 2013.
HEWITT, J; ODVARKO, J.; CAMPBELL, R. Firebug. [S.l.]: Add-ons for Firefox, 2013.
Disponível em: <https://addons.mozilla.org/pt-br/firefox/addon/firebug/>. Acesso
em: 14 de março de 2013.
JUDSON, A. Tamper Data. [S.l.]: Add-ons for Firefox, 2010. Disponível em:
<https://addons.mozilla.org/pt-br/firefox/addon/tamper-data/>. Acesso em: 14 de
março de 2013.
MAYHEW, B.; WILLIAMS, J.. OWASP WebGoat, versão 5.4. [S.l.]: 2012. Aplicação web.
OWASP. About OWASP. [S.l.]: Open Web Application Security Project Foundation,
2013a. Disponível em: <https://www.owasp.org/index.php/About_OWASP>. Acesso
em: 6 de fevereiro de 2013.
22. Bibliografia
OWASP. WebGoat Project. [S.l.]: Open Web Application Security Project Foundation,
2013b. Disponível em:
<https://www.owasp.org/index.php/OWASP_WebGoat_Project>. Acesso em: 6 de
fevereiro de 2013.
OWASP. WebScarab Project. [S.l.]: Open Web Application Security Project Foundation,
2013c. Disponível em:
<https://www.owasp.org/index.php/Category:OWASP_WebScarab_Project>. Acesso
em: 14 de março de 2013.
OXFORD. 2 ed. Pocket Oxford American Dictionary. New York: Oxford University Press,
2008.
RODRIGUES, M.. OWASP Top 10 + Java EE. [S.l.]: OWASP Paraíba, 2011. Disponível em:
<https://www.owasp.org/images/7/7a/Magno_Logan_AppSec_Latam_2011_-
_OWASP_Top_10_%2B_JavaEE.pdf>. Acesso em: 17 de fevereiro de 2013.