SlideShare uma empresa Scribd logo
1 de 47
Do Pensamento ao Desenvolvimento
Design, Programação e Banco de Dados
Workshop WEB
Rubens Guimarães
Apoio:
A mais completa linha de Cabos, Conectores e Acessórios para Dados, Conectividade e Imagem
www.nanoaccess.com.br
Rubens Guimarães
Diretor de Tecnologia da eSeth
Engenheiro de Software com especialização na Academia Latino-
Americana de Segurança da Informação. Especialização em Stanford
University - Palo Alto CA – Databases de Porte e Engenharia Avançada.
Desenvolve projetos de tecnologia de ponta para empresas de porte, instituições financeiras, redes de
franquias e marcas reconhecidas na América Latina, EUA e Europa.
Faz parte de um seleto grupo de palestrantes oficiais Microsoft.
Mais de 100 certificações e Títulos no Brasil e exterior.
Reconhecimentos e homenagens em projetos para o Exército Brasileiro, Polícia Militar, Governo e
Universidades.
Participa de bancas de TCC. Instrutor e Palestrante oficial SUCESU-SP. Professor do SENAC.
Palestrante do Suporte Acadêmico Microsoft. Faz parte do Conselho da Locaweb.
Profissional 5 Estrelas Microsoft. Beta Tester oficial Microsoft, participa de debates e mesas redondas
em Universidades em todo o país.
Reconhecimentos por desenvolver metodologias e materiais didáticos de tecnologias e processos para
redes de ensino que formam mais de 100.000 profissionais por ano.
Participa de Grupos de Estudos e Pesquisas de tecnologias da NASA.
Especialista em mais de 30 linguagens de programação, tecnologias de design, navegabilidade intuitiva,
performance e segurança.
PROJETOS EM TODOS OS ESTADOS DO BRASIL E OUTROS PAÍSES
MAIS DE 1 MILHÃO DE USUÁRIOS
MAIS DE 1000 PROJETOS DESENVOLVIDOS
15 ANOS DE MERCADO
ATENDIMENTO A GRANDES MARCAS PRESENTES NO MERCADO GLOBAL
TREINAMENTOS E PALESTRAS COM MAIS DE 1 MILHÃO DE PARTICIPANTES
INFORMAÇÃO
INFORMAÇÕES EM TEMPO REAL
A TECNOLOGIA APROXIMA AS PESSOAS
A CADA MINUTO
5 MILHÕES
DE PESQUISAS SÃO REALIZADAS NO GOOGLE
Pessoas
Informações
Ideias
Inteligências
Culturas
Opiniões
Conceitos
Know-how
Conhecimento
TECNOLOGIAS NA NUVEM
Colaboração em time
Sistemas não
dependentes de
Computadores
Conectado sempre
Usuários
produtivos
Compartilhar o
conhecimento
corporativo
Objetivos de negócios
Informações
inteligentes
Redução de custos
Melhor
percepção em
Relação à
concorrência
Aumento da
capacidade
Operacional
Aumento de
lucros
Estrutura para Projetos Web
Linguagens
Softwares
Design
Arquitetura
Requisitos
Processos
Performance
Segurança
Navegabilidade e…
Bancode
dados
Servidores
Rede
EXPERIÊNCIA É DESPERTAR SENSAÇÕES.
MARCAR…
Site com foco em interatividade. O site deve conversar com o usuário, evidenciar
diferenciais e serviços. Deve despertar interesse. O cliente deve assimilar
segurança, qualidade, tecnologia e conhecimento.
Desejar qualidade de vida, bem estar, qualidade técnica e suporte profissional.
Deve perceber os diferenciais em todos os momentos da navegação.
Performance | Prazer | Energia | Bem estar | Saúde | Estilo
Saúde | Atitude | Participação | Superação | Ação | Felicidade
O site deve posicionar a marca.
DESENVOLVIMENTO RESPONSIVO
LAYOUT E DESIGN
www.mcdonalds.com.br
www.nike.com.br
www.nespresso.com.br
www.vidaleve.ntr.br
www.igestaoodonto.com.br
www.linklivros.com.br
www.add.org.br
Site x Portal
IMAGENS
Formatos
Dimensões
Manipulação e Tratamento
Kb x Qualidade
ARQUITETURA E PROCESSAMENTO WEB
Servidor Web
Comportamentos do navegador
Page Load, POST, Request, Sessões
Framework que fornecesse um kit de ferramentas para projetos web de
forma fácil e produtiva.
Possui elementos de interface HTML bem, elegantes e agradáveis.
Utiliza elementos HTML, DOM, JavaScript e estilos CSS.
O Ajax realiza chamadas assíncronas entre as tecnologias Javascript e
XML para fazer o carregamento de uma página web. Com o uso do Ajax
é possível clicar em um link e carregar a página ser dar o famoso
refresh que é aquela atualização que recarrega toda a página.
jQuery é um framework, ou seja, é o próprio javascript redefinido de
uma maneira mais moderno, simples de usar e com o uso de menos
código.
SEGURANÇA
Impacto das Violações de Segurança
Perda de
receita
Danos à
confiança do
investidor
Danos à
reputação
Perda ou
comprometimento
de dados
Interrupção do
processo de
negócios
Danos à
confiança do
cliente
Conseqüências
legais
Gerenciamento de sessão 79%
Vulnerabilidades Comuns
Porcentagem de aplicativos que possuem “falhas de design" nas áreas indicadas
Controle de acesso 64%
Algoritmos de criptografia 61%
Manipulação de parâmetro 73%
Manipulação de dados confidenciais 41%
Validação de entrada 32%
Controles administrativos 36%
Ataques comuns - REDES
Portas
Farejadores
de pacotes
Denial of
service
REDES
Ataques comuns - SERVIDORES
Buffer overflows
- execução de
códigos mal-
intensionados
Upload de
arquivos
Acessos não-
autorizados
SERVIDORES
Ataques comuns - APLICATIVOS
Entrada de dados
em formulários
SQL Injection
Sequestro de
sessão
Farejador de
tráfego para roubar
informações
APLICATIVOS
Exemplo de falha
<form name="form1" method="post" action="insere.asp">
<p>Nome:
<input name="nome" type="text" id="nome" size="50">
<input type="submit" name="Submit" value="Submit">
</p>
</form>
<%
teste = request.form("nome")
response.Write teste
%>
Exemplo de falha
<script>document.location.replace
("http://www.paginaruim.com")</script>
Ou
<div style="display: none">
Proteção – Exemplo
<%
teste = trim(request.form("nome"))
function Valida(teste)
for i = 1 to len(teste)
Letra = mid(teste, i, 1)
Select Case Letra
Case ">","<","","'","!","&","(",")","?“, “%”
Letra = ""
End Select
texto = texto & Letra
next
Valida = texto
end function
teste = Valida(teste)
%>
Spoofing
Qualquer coisa que venha de um navegador Internet pode ser facilmente
falsificada em uma técnica conhecida em inglês como “spoofing”.
É perfeitamente possível que seu programa receba dados que não foram
colocados lá por nenhum usuário e sim por um programa malicioso.
Valide tudo que vier do navegador, como por exemplo:
•Se as strings tem comprimento adequado; não confie no máximo
especificado em uma tag <INPUT>
•Se o valor retornado por uma tag <SELECT> foi realmente colocado lá
•Se os radiobuttons são realmente mutuamente exclusivos
Validando a entrada
Filtrar caracteres potencialmente perigosos
Usar HTML-encode para saídas em páginas Web
Se possível, evitar uso de nomes de arquivos como entrada
•Não permitir caracteres como "<" e "--"
•Definir caracteres aceitáveis e recusar todos os demais
Usar codificações de caracteres "seguras"
<globalization requestEncoding="ISO-8859-1"
responseEncoding="ISO-8859-1" />
SQL
String nome = Request [“nome”];
String senha = Request [“senha”];
sql = "select * from usuarios where nome = '" & nome & "' and senha = '" &
senha & "'"
sql = "select * from usuarios where nome = " or 1=1—
" or 1=1-- corresponde a todos os registros da tabela e -- comenta o restante
ignorando a senha
Dicas
Function LimpaPalavras(input)
dim lixo
dim textoOK
lixo = array ( "select" , "drop" , ";" , "--" , "insert" , "delete" , "xp_")
textoOK = input
for i = 0 to uBound(lixo)
textoOK = replace( textoOK , lixo(i) , "")
next
LimpaPalavras = textoOK
end Function
Hash
Imports System
Imports System.Security.Cryptography
Imports System.Text
Module Module1
Sub Main()
Dim HashValue() As Byte
Dim MessageString As String = "This is the original message!"
Dim UE As New UnicodeEncoding()
Dim MessageBytes As Byte() = UE.GetBytes(MessageString)
Dim SHhash As New SHA1Managed()
'Create the hash value from the array of bytes.
HashValue = SHhash.ComputeHash(MessageBytes)
'Display the hash value to the console.
Dim b As Byte
For Each b In HashValue
Console.Write("{0} ", b)
Next b
End Sub
End Module
Conexões
<connectionStrings>
<add name="DatabaseConnection"
connectionString="Data Source=(local);Initial
Catalog=Northwind;Integrated Security=true;"
KeyRestrictions="Encrypt=;Packet Size=;"
KeyRestrictionBehavior="AllowOnly" />
</connectionStrings>
PERCEPÇÃO DE PRODUTOS
PERCEPÇÃO DE PRODUTOS
Rubens Guimarães
rubens.guimaraes@e-seth.com.br
Apoio:

Mais conteúdo relacionado

Mais procurados

Segurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosSegurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosAlex Camargo
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...Clavis Segurança da Informação
 
Como se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareComo se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareAlcyon Ferreira de Souza Junior, MSc
 
Segurança em Aplicações Web
Segurança em Aplicações WebSegurança em Aplicações Web
Segurança em Aplicações WebCassio Ramos
 
Testes de segurança desafios e oportunidades
Testes de segurança desafios e oportunidadesTestes de segurança desafios e oportunidades
Testes de segurança desafios e oportunidadesQualister
 
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBDica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBAlcyon Ferreira de Souza Junior, MSc
 
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Pablo Ribeiro
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
"Técnicas e Ferramentas para Auditorias Testes de Invasão"
"Técnicas e Ferramentas para Auditorias Testes de Invasão" "Técnicas e Ferramentas para Auditorias Testes de Invasão"
"Técnicas e Ferramentas para Auditorias Testes de Invasão" Clavis Segurança da Informação
 
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
Engenharia de Software II - Teste de segurança de software
Engenharia de Software  II - Teste de segurança de softwareEngenharia de Software  II - Teste de segurança de software
Engenharia de Software II - Teste de segurança de softwareJuliano Padilha
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEMagno Logan
 
Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Alcyon Ferreira de Souza Junior, MSc
 
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasTratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasMagno Logan
 
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o Wmap
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o WmapDescobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o Wmap
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o WmapClavis Segurança da Informação
 

Mais procurados (20)

Segurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultadosSegurança em aplicações web: pequenas ideias, grandes resultados
Segurança em aplicações web: pequenas ideias, grandes resultados
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
 
Como se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de SoftwareComo se tornar um especialista em Desenvolvimento Seguro de Software
Como se tornar um especialista em Desenvolvimento Seguro de Software
 
Segurança em Aplicações Web
Segurança em Aplicações WebSegurança em Aplicações Web
Segurança em Aplicações Web
 
Testes de segurança desafios e oportunidades
Testes de segurança desafios e oportunidadesTestes de segurança desafios e oportunidades
Testes de segurança desafios e oportunidades
 
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEBDica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
Dica 02 - Como mitigar os ataques de SQL Injection em aplicações WEB
 
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 05 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )Teste de segurança em aplicações web ( sites )
Teste de segurança em aplicações web ( sites )
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 03 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
"Técnicas e Ferramentas para Auditorias Testes de Invasão"
"Técnicas e Ferramentas para Auditorias Testes de Invasão" "Técnicas e Ferramentas para Auditorias Testes de Invasão"
"Técnicas e Ferramentas para Auditorias Testes de Invasão"
 
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 04 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 02 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
Engenharia de Software II - Teste de segurança de software
Engenharia de Software  II - Teste de segurança de softwareEngenharia de Software  II - Teste de segurança de software
Engenharia de Software II - Teste de segurança de software
 
Ameacas e Vulnerabilidades em Apps Web-2013
Ameacas e Vulnerabilidades em Apps Web-2013Ameacas e Vulnerabilidades em Apps Web-2013
Ameacas e Vulnerabilidades em Apps Web-2013
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
 
Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem Explorando 5 falhas graves de segurança que todos programadores cometem
Explorando 5 falhas graves de segurança que todos programadores cometem
 
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasTratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
 
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o Wmap
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o WmapDescobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o Wmap
Descobrindo (e Explorando) Vulnerabilidades em Aplicações Web com o Wmap
 

Destaque

A Week of Federal Asset Management Leadership in Washington, D.C.
A Week of Federal Asset Management Leadership in Washington, D.C.A Week of Federal Asset Management Leadership in Washington, D.C.
A Week of Federal Asset Management Leadership in Washington, D.C.Mike Bordenaro
 
Bible king james version - kjv
Bible   king james version - kjvBible   king james version - kjv
Bible king james version - kjvFreeBibles
 
Rah! in Hong Kong
Rah! in Hong KongRah! in Hong Kong
Rah! in Hong KongLena Aiello
 
Federal Agencies Collaborate with Web-based Building Information Models
Federal Agencies Collaborate with Web-based Building Information ModelsFederal Agencies Collaborate with Web-based Building Information Models
Federal Agencies Collaborate with Web-based Building Information ModelsMike Bordenaro
 
Architecture photography by ArkitekturFotos.dk
Architecture photography by ArkitekturFotos.dkArchitecture photography by ArkitekturFotos.dk
Architecture photography by ArkitekturFotos.dkKrzysztof Golebiowski
 
Catalyzing Change and Realizing Business Results
Catalyzing Change and Realizing Business ResultsCatalyzing Change and Realizing Business Results
Catalyzing Change and Realizing Business ResultsProsci
 
Quel statut pour un Freelance ?
Quel statut pour un Freelance ? Quel statut pour un Freelance ?
Quel statut pour un Freelance ? 2i PORTAGE
 
簡単編集 スライド Slideshare用調整
簡単編集 スライド Slideshare用調整簡単編集 スライド Slideshare用調整
簡単編集 スライド Slideshare用調整cloud-office
 
Example of Power Point Thesis Proposal
Example of Power Point Thesis ProposalExample of Power Point Thesis Proposal
Example of Power Point Thesis ProposalRizky Amelia
 
Example of Strategic Alliance Development by GCI Research, inc.
Example of Strategic Alliance Development by GCI Research, inc.Example of Strategic Alliance Development by GCI Research, inc.
Example of Strategic Alliance Development by GCI Research, inc.Memories Preservation Council
 
Le portage salarial, c'est quoi ?
Le portage salarial, c'est quoi ?Le portage salarial, c'est quoi ?
Le portage salarial, c'est quoi ?2i PORTAGE
 
Freelance, ne négligez pas votre business plan
Freelance, ne négligez pas votre business planFreelance, ne négligez pas votre business plan
Freelance, ne négligez pas votre business plan2i PORTAGE
 

Destaque (20)

A Week of Federal Asset Management Leadership in Washington, D.C.
A Week of Federal Asset Management Leadership in Washington, D.C.A Week of Federal Asset Management Leadership in Washington, D.C.
A Week of Federal Asset Management Leadership in Washington, D.C.
 
Presentación1
Presentación1Presentación1
Presentación1
 
Bible king james version - kjv
Bible   king james version - kjvBible   king james version - kjv
Bible king james version - kjv
 
Rah! in Hong Kong
Rah! in Hong KongRah! in Hong Kong
Rah! in Hong Kong
 
INTRODUCTION
INTRODUCTIONINTRODUCTION
INTRODUCTION
 
Respect
RespectRespect
Respect
 
Premios
PremiosPremios
Premios
 
Sport e varie
Sport e varieSport e varie
Sport e varie
 
Federal Agencies Collaborate with Web-based Building Information Models
Federal Agencies Collaborate with Web-based Building Information ModelsFederal Agencies Collaborate with Web-based Building Information Models
Federal Agencies Collaborate with Web-based Building Information Models
 
Cornell Solicitation
Cornell SolicitationCornell Solicitation
Cornell Solicitation
 
Slide sanita sociale
Slide sanita socialeSlide sanita sociale
Slide sanita sociale
 
INTRODUCTION
INTRODUCTIONINTRODUCTION
INTRODUCTION
 
Architecture photography by ArkitekturFotos.dk
Architecture photography by ArkitekturFotos.dkArchitecture photography by ArkitekturFotos.dk
Architecture photography by ArkitekturFotos.dk
 
Catalyzing Change and Realizing Business Results
Catalyzing Change and Realizing Business ResultsCatalyzing Change and Realizing Business Results
Catalyzing Change and Realizing Business Results
 
Quel statut pour un Freelance ?
Quel statut pour un Freelance ? Quel statut pour un Freelance ?
Quel statut pour un Freelance ?
 
簡単編集 スライド Slideshare用調整
簡単編集 スライド Slideshare用調整簡単編集 スライド Slideshare用調整
簡単編集 スライド Slideshare用調整
 
Example of Power Point Thesis Proposal
Example of Power Point Thesis ProposalExample of Power Point Thesis Proposal
Example of Power Point Thesis Proposal
 
Example of Strategic Alliance Development by GCI Research, inc.
Example of Strategic Alliance Development by GCI Research, inc.Example of Strategic Alliance Development by GCI Research, inc.
Example of Strategic Alliance Development by GCI Research, inc.
 
Le portage salarial, c'est quoi ?
Le portage salarial, c'est quoi ?Le portage salarial, c'est quoi ?
Le portage salarial, c'est quoi ?
 
Freelance, ne négligez pas votre business plan
Freelance, ne négligez pas votre business planFreelance, ne négligez pas votre business plan
Freelance, ne négligez pas votre business plan
 

Semelhante a Workshop Web - Do Pensamento ao Desenvolvimento - Design, Programação e Banco de Dados

Importância dos Testes em Sistemas para Internet
Importância dos Testes em Sistemas para Internet Importância dos Testes em Sistemas para Internet
Importância dos Testes em Sistemas para Internet Elvis Fusco
 
Impulsionando startups com api publica
Impulsionando startups com api publicaImpulsionando startups com api publica
Impulsionando startups com api publicaFábio Rosato
 
Segurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisSegurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisRubens Guimarães - MTAC MVP
 
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...iMasters
 
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re....Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...iMasters
 
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018Renato Groff
 
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoJava No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoÉberli Cabistani Riella
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguroCharles Fortes
 
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoDesenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoClavis Segurança da Informação
 
Seguranca e Criptografia de Dados
Seguranca e Criptografia de DadosSeguranca e Criptografia de Dados
Seguranca e Criptografia de DadosFelipe Plattek
 
Desafios Futuros e Oportunidades
Desafios Futuros e OportunidadesDesafios Futuros e Oportunidades
Desafios Futuros e OportunidadesMarcio Cunha
 
Infra-estrutura de TI
Infra-estrutura de TIInfra-estrutura de TI
Infra-estrutura de TIemmonks
 

Semelhante a Workshop Web - Do Pensamento ao Desenvolvimento - Design, Programação e Banco de Dados (20)

Importância dos Testes em Sistemas para Internet
Importância dos Testes em Sistemas para Internet Importância dos Testes em Sistemas para Internet
Importância dos Testes em Sistemas para Internet
 
Impulsionando startups com api publica
Impulsionando startups com api publicaImpulsionando startups com api publica
Impulsionando startups com api publica
 
Segurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas ProfissionaisSegurança no Desenvolvimento WEB - Técnicas Profissionais
Segurança no Desenvolvimento WEB - Técnicas Profissionais
 
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
InterCon 2017 - Engenharia de segurança web: Proteja todas as camadas de seu ...
 
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re....Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...
.Net Community Summit - Construindo APIs REST seguras com o ASP.NET Core - Re...
 
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018
Construindo APIs seguras com o ASP.NET Core - .NET Community Summit 2018
 
Java Web, o Tutorial
Java Web, o TutorialJava Web, o Tutorial
Java Web, o Tutorial
 
Java security
Java securityJava security
Java security
 
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo CustoJava No Setor Público: Produtividade, Flexibilidade e Baixo Custo
Java No Setor Público: Produtividade, Flexibilidade e Baixo Custo
 
Etec Informatica
Etec InformaticaEtec Informatica
Etec Informatica
 
Desenvolvimento de software seguro
Desenvolvimento de software seguroDesenvolvimento de software seguro
Desenvolvimento de software seguro
 
Oracle no Azure
Oracle no AzureOracle no Azure
Oracle no Azure
 
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - ApresentaçãoDesenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
Desenvolvimento Seguro de Software - 10o Workshop SegInfo - Apresentação
 
CNASI 2014 - Servicos Confiaveis
CNASI 2014 - Servicos ConfiaveisCNASI 2014 - Servicos Confiaveis
CNASI 2014 - Servicos Confiaveis
 
CNASI 2015 - Desenvolvimento Seguro
CNASI 2015 - Desenvolvimento SeguroCNASI 2015 - Desenvolvimento Seguro
CNASI 2015 - Desenvolvimento Seguro
 
Segurança em PHP
Segurança em PHPSegurança em PHP
Segurança em PHP
 
Seguranca e Criptografia de Dados
Seguranca e Criptografia de DadosSeguranca e Criptografia de Dados
Seguranca e Criptografia de Dados
 
Carlos Eduardo Capparelli
Carlos Eduardo CapparelliCarlos Eduardo Capparelli
Carlos Eduardo Capparelli
 
Desafios Futuros e Oportunidades
Desafios Futuros e OportunidadesDesafios Futuros e Oportunidades
Desafios Futuros e Oportunidades
 
Infra-estrutura de TI
Infra-estrutura de TIInfra-estrutura de TI
Infra-estrutura de TI
 

Mais de Rubens Guimarães - MTAC MVP

Alta disponibilidade com bancos de dados relacionais no Azure
Alta disponibilidade com bancos de dados relacionais no AzureAlta disponibilidade com bancos de dados relacionais no Azure
Alta disponibilidade com bancos de dados relacionais no AzureRubens Guimarães - MTAC MVP
 
Série Descomplicando o Azure - Apresentação de recursos gerais
Série Descomplicando o Azure - Apresentação de recursos geraisSérie Descomplicando o Azure - Apresentação de recursos gerais
Série Descomplicando o Azure - Apresentação de recursos geraisRubens Guimarães - MTAC MVP
 
Armazenamento Elástico de Dados Relacionais no Azure
Armazenamento Elástico de Dados Relacionais no AzureArmazenamento Elástico de Dados Relacionais no Azure
Armazenamento Elástico de Dados Relacionais no AzureRubens Guimarães - MTAC MVP
 
Série: Descomplicando o Azure. Aula 1 - Introdução ao Azure
Série: Descomplicando o Azure. Aula 1 - Introdução ao AzureSérie: Descomplicando o Azure. Aula 1 - Introdução ao Azure
Série: Descomplicando o Azure. Aula 1 - Introdução ao AzureRubens Guimarães - MTAC MVP
 
Varejo Competitivo - Prepare-se para as Vendas de Fim de ano
Varejo Competitivo - Prepare-se para as Vendas de Fim de anoVarejo Competitivo - Prepare-se para as Vendas de Fim de ano
Varejo Competitivo - Prepare-se para as Vendas de Fim de anoRubens Guimarães - MTAC MVP
 

Mais de Rubens Guimarães - MTAC MVP (8)

AI, Serviços Cognitivos e Machine Learning
AI, Serviços Cognitivos e Machine LearningAI, Serviços Cognitivos e Machine Learning
AI, Serviços Cognitivos e Machine Learning
 
Alta disponibilidade com bancos de dados relacionais no Azure
Alta disponibilidade com bancos de dados relacionais no AzureAlta disponibilidade com bancos de dados relacionais no Azure
Alta disponibilidade com bancos de dados relacionais no Azure
 
Série Descomplicando o Azure - Apresentação de recursos gerais
Série Descomplicando o Azure - Apresentação de recursos geraisSérie Descomplicando o Azure - Apresentação de recursos gerais
Série Descomplicando o Azure - Apresentação de recursos gerais
 
Armazenamento Elástico de Dados Relacionais no Azure
Armazenamento Elástico de Dados Relacionais no AzureArmazenamento Elástico de Dados Relacionais no Azure
Armazenamento Elástico de Dados Relacionais no Azure
 
Bancos de Dados no Azure - Arquiteturas
Bancos de Dados no Azure - ArquiteturasBancos de Dados no Azure - Arquiteturas
Bancos de Dados no Azure - Arquiteturas
 
Série: Descomplicando o Azure. Aula 1 - Introdução ao Azure
Série: Descomplicando o Azure. Aula 1 - Introdução ao AzureSérie: Descomplicando o Azure. Aula 1 - Introdução ao Azure
Série: Descomplicando o Azure. Aula 1 - Introdução ao Azure
 
Varejo Competitivo - Prepare-se para as Vendas de Fim de ano
Varejo Competitivo - Prepare-se para as Vendas de Fim de anoVarejo Competitivo - Prepare-se para as Vendas de Fim de ano
Varejo Competitivo - Prepare-se para as Vendas de Fim de ano
 
Azure Weekend 2016 - Bancos de Dados no Azure
Azure Weekend 2016 - Bancos de Dados no AzureAzure Weekend 2016 - Bancos de Dados no Azure
Azure Weekend 2016 - Bancos de Dados no Azure
 

Workshop Web - Do Pensamento ao Desenvolvimento - Design, Programação e Banco de Dados

  • 1. Do Pensamento ao Desenvolvimento Design, Programação e Banco de Dados Workshop WEB Rubens Guimarães Apoio:
  • 2. A mais completa linha de Cabos, Conectores e Acessórios para Dados, Conectividade e Imagem www.nanoaccess.com.br
  • 3. Rubens Guimarães Diretor de Tecnologia da eSeth Engenheiro de Software com especialização na Academia Latino- Americana de Segurança da Informação. Especialização em Stanford University - Palo Alto CA – Databases de Porte e Engenharia Avançada.
  • 4. Desenvolve projetos de tecnologia de ponta para empresas de porte, instituições financeiras, redes de franquias e marcas reconhecidas na América Latina, EUA e Europa. Faz parte de um seleto grupo de palestrantes oficiais Microsoft. Mais de 100 certificações e Títulos no Brasil e exterior. Reconhecimentos e homenagens em projetos para o Exército Brasileiro, Polícia Militar, Governo e Universidades. Participa de bancas de TCC. Instrutor e Palestrante oficial SUCESU-SP. Professor do SENAC. Palestrante do Suporte Acadêmico Microsoft. Faz parte do Conselho da Locaweb. Profissional 5 Estrelas Microsoft. Beta Tester oficial Microsoft, participa de debates e mesas redondas em Universidades em todo o país. Reconhecimentos por desenvolver metodologias e materiais didáticos de tecnologias e processos para redes de ensino que formam mais de 100.000 profissionais por ano. Participa de Grupos de Estudos e Pesquisas de tecnologias da NASA. Especialista em mais de 30 linguagens de programação, tecnologias de design, navegabilidade intuitiva, performance e segurança.
  • 5. PROJETOS EM TODOS OS ESTADOS DO BRASIL E OUTROS PAÍSES MAIS DE 1 MILHÃO DE USUÁRIOS MAIS DE 1000 PROJETOS DESENVOLVIDOS 15 ANOS DE MERCADO ATENDIMENTO A GRANDES MARCAS PRESENTES NO MERCADO GLOBAL TREINAMENTOS E PALESTRAS COM MAIS DE 1 MILHÃO DE PARTICIPANTES
  • 6.
  • 8.
  • 9.
  • 10. INFORMAÇÕES EM TEMPO REAL A TECNOLOGIA APROXIMA AS PESSOAS
  • 11.
  • 12. A CADA MINUTO 5 MILHÕES DE PESQUISAS SÃO REALIZADAS NO GOOGLE
  • 13.
  • 15.
  • 17.
  • 18. Colaboração em time Sistemas não dependentes de Computadores Conectado sempre Usuários produtivos Compartilhar o conhecimento corporativo Objetivos de negócios Informações inteligentes Redução de custos Melhor percepção em Relação à concorrência Aumento da capacidade Operacional Aumento de lucros
  • 19.
  • 20. Estrutura para Projetos Web Linguagens Softwares Design Arquitetura Requisitos Processos Performance Segurança Navegabilidade e… Bancode dados Servidores Rede
  • 21. EXPERIÊNCIA É DESPERTAR SENSAÇÕES. MARCAR… Site com foco em interatividade. O site deve conversar com o usuário, evidenciar diferenciais e serviços. Deve despertar interesse. O cliente deve assimilar segurança, qualidade, tecnologia e conhecimento. Desejar qualidade de vida, bem estar, qualidade técnica e suporte profissional. Deve perceber os diferenciais em todos os momentos da navegação. Performance | Prazer | Energia | Bem estar | Saúde | Estilo
  • 22. Saúde | Atitude | Participação | Superação | Ação | Felicidade
  • 23. O site deve posicionar a marca.
  • 27. ARQUITETURA E PROCESSAMENTO WEB Servidor Web Comportamentos do navegador Page Load, POST, Request, Sessões
  • 28.
  • 29. Framework que fornecesse um kit de ferramentas para projetos web de forma fácil e produtiva. Possui elementos de interface HTML bem, elegantes e agradáveis. Utiliza elementos HTML, DOM, JavaScript e estilos CSS. O Ajax realiza chamadas assíncronas entre as tecnologias Javascript e XML para fazer o carregamento de uma página web. Com o uso do Ajax é possível clicar em um link e carregar a página ser dar o famoso refresh que é aquela atualização que recarrega toda a página. jQuery é um framework, ou seja, é o próprio javascript redefinido de uma maneira mais moderno, simples de usar e com o uso de menos código.
  • 31. Impacto das Violações de Segurança Perda de receita Danos à confiança do investidor Danos à reputação Perda ou comprometimento de dados Interrupção do processo de negócios Danos à confiança do cliente Conseqüências legais
  • 32. Gerenciamento de sessão 79% Vulnerabilidades Comuns Porcentagem de aplicativos que possuem “falhas de design" nas áreas indicadas Controle de acesso 64% Algoritmos de criptografia 61% Manipulação de parâmetro 73% Manipulação de dados confidenciais 41% Validação de entrada 32% Controles administrativos 36%
  • 33. Ataques comuns - REDES Portas Farejadores de pacotes Denial of service REDES
  • 34. Ataques comuns - SERVIDORES Buffer overflows - execução de códigos mal- intensionados Upload de arquivos Acessos não- autorizados SERVIDORES
  • 35. Ataques comuns - APLICATIVOS Entrada de dados em formulários SQL Injection Sequestro de sessão Farejador de tráfego para roubar informações APLICATIVOS
  • 36. Exemplo de falha <form name="form1" method="post" action="insere.asp"> <p>Nome: <input name="nome" type="text" id="nome" size="50"> <input type="submit" name="Submit" value="Submit"> </p> </form> <% teste = request.form("nome") response.Write teste %>
  • 38. Proteção – Exemplo <% teste = trim(request.form("nome")) function Valida(teste) for i = 1 to len(teste) Letra = mid(teste, i, 1) Select Case Letra Case ">","<","","'","!","&","(",")","?“, “%” Letra = "" End Select texto = texto & Letra next Valida = texto end function teste = Valida(teste) %>
  • 39. Spoofing Qualquer coisa que venha de um navegador Internet pode ser facilmente falsificada em uma técnica conhecida em inglês como “spoofing”. É perfeitamente possível que seu programa receba dados que não foram colocados lá por nenhum usuário e sim por um programa malicioso. Valide tudo que vier do navegador, como por exemplo: •Se as strings tem comprimento adequado; não confie no máximo especificado em uma tag <INPUT> •Se o valor retornado por uma tag <SELECT> foi realmente colocado lá •Se os radiobuttons são realmente mutuamente exclusivos
  • 40. Validando a entrada Filtrar caracteres potencialmente perigosos Usar HTML-encode para saídas em páginas Web Se possível, evitar uso de nomes de arquivos como entrada •Não permitir caracteres como "<" e "--" •Definir caracteres aceitáveis e recusar todos os demais Usar codificações de caracteres "seguras" <globalization requestEncoding="ISO-8859-1" responseEncoding="ISO-8859-1" />
  • 41. SQL String nome = Request [“nome”]; String senha = Request [“senha”]; sql = "select * from usuarios where nome = '" & nome & "' and senha = '" & senha & "'" sql = "select * from usuarios where nome = " or 1=1— " or 1=1-- corresponde a todos os registros da tabela e -- comenta o restante ignorando a senha
  • 42. Dicas Function LimpaPalavras(input) dim lixo dim textoOK lixo = array ( "select" , "drop" , ";" , "--" , "insert" , "delete" , "xp_") textoOK = input for i = 0 to uBound(lixo) textoOK = replace( textoOK , lixo(i) , "") next LimpaPalavras = textoOK end Function
  • 43. Hash Imports System Imports System.Security.Cryptography Imports System.Text Module Module1 Sub Main() Dim HashValue() As Byte Dim MessageString As String = "This is the original message!" Dim UE As New UnicodeEncoding() Dim MessageBytes As Byte() = UE.GetBytes(MessageString) Dim SHhash As New SHA1Managed() 'Create the hash value from the array of bytes. HashValue = SHhash.ComputeHash(MessageBytes) 'Display the hash value to the console. Dim b As Byte For Each b In HashValue Console.Write("{0} ", b) Next b End Sub End Module
  • 44. Conexões <connectionStrings> <add name="DatabaseConnection" connectionString="Data Source=(local);Initial Catalog=Northwind;Integrated Security=true;" KeyRestrictions="Encrypt=;Packet Size=;" KeyRestrictionBehavior="AllowOnly" /> </connectionStrings>