segurança na web java, activex, javascript por hednilson bezerra hugo morais vicente beltrão
TRANSCRIPT
![Page 1: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/1.jpg)
Segurança na WebJava, ActiveX, JavaScript
por
Hednilson Bezerra
Hugo Morais
Vicente Beltrão
![Page 2: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/2.jpg)
Programação
Conteúdos Executáveis Segurança em Java Segurança em ActiveX Java vs. ActiveX Segurança em JavaScript
![Page 3: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/3.jpg)
Programação
Conteúdo Executável Segurança em Java Segurança em ActiveX Java vs. ActiveX Segurança em JavaScript
![Page 4: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/4.jpg)
Conteúdos Executáveis
programas transportados na rede para rodar em máquinas remotas
idéia muito interessante e poderosa convite a problemas de segurança acesso a certos recursos da máquina
hospedeira programa pode não ser confiável
![Page 5: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/5.jpg)
Conteúdos Executáveis
pode tornar à tona um programa malicioso com a mesma habilidade de destruir tal como hacker
solução não é tão simples como restringir completamente o acesso a recursos dos programas que são baixados
recursos da máquina precisam ser controlados
![Page 6: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/6.jpg)
Conteúdos Executáveis
identificar os recursos e providenciar certos tipos de acesso limitado a estes recursos, de acordo com os ataques que esses recursos podem sofrer
recursos: sistema de arquivos, rede, memória, dispositivos de entrada e saída, controle de processos, ambiente, chamadas ao sistema operacional
![Page 7: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/7.jpg)
Conteúdos Executáveis
Os principais tipos de ataque, causados por conteúdos executáveis são:– ataques de integridade– ataques de disponibilidade– ataques de revelação– ataques de aborrecimento
![Page 8: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/8.jpg)
Segurança em Java
característica de Java: portabilidade applets podem ser dinamicamente carregados
através da rede e serem executados localmente
Web browser + interpretador Java + biblioteca dinâmica
3 níveis de segurança devem ser estudados: a linguagem, as bibliotecas e o web browser
![Page 9: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/9.jpg)
Segurança em JavaA Linguagem
características de segurança da linguagem:– controle de acesso para variáveis e métodos dos
objetos– segurança do sistema de tipos– não uso de ponteiros com tipo de dados da
linguagem– garbage collection– pacotes com espaço de nomes distintos
![Page 10: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/10.jpg)
Segurança em JavaAs Bibliotecas
oferece acesso aos recursos do sistema implementação correta dessas bibliotecas As restrições de acessos dessas bibliotecas:
– mecanismo da linguagem de oferecer restrições de acesso aos métodos e variáveis dos objetos
– ClassLoaders especializados em carregar código importado
– chamadas explícitas ao SecurityManager global para checar a validade de certas operações
![Page 11: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/11.jpg)
Segurança em JavaWeb Browsers
define e implementa a política de segurança para rodar o código Java baixado
SecurityManager controla o acesso aos recursos críticos do sistema
Se o web browser não instala um SecurityManager, um applet poderá ter o mesmo tipo de acesso de uma aplicação Java local
![Page 12: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/12.jpg)
Problemas de Segurança em Java
O SecurityManager não tem um método para controlar a criação de janelas ou controlar o que pode ser mostrado ou tocado
Não há um mecanismo para controlar o acesso do applet aos dispositivos de entrada
Um applet pode alocar uma quantidade de memória arbitrária, criando novos objetos
![Page 13: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/13.jpg)
Segurança em JavaPoder X Segurança
Java foi proposta para providenciar maior poder e flexibilidade às aplicações
balanceamento entre o poder das aplicações e os riscos de segurança do sistema
Qualquer um que esteja considerando usar Java precisa entender que há um aumento nos riscos de segurança, mas ela prover um mecanismo de segurança de certa forma razoável para aplicações da Internet
![Page 14: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/14.jpg)
ActiveX - Introdução
O que é esta nova Tecnologia– Apresentada pela Microsoft na Internet Professional
Developer’s Conference (PDC)– Constitui um conjunto de tecnologias– Formada por ActiveX Control’s, ActiveX Scripting e
ActiveX Documents– Pode ser encarado como uma reformulação da antiga
Tecnologia OLE para a Web– Promove a iteração entre Software em ambiente de rede
![Page 15: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/15.jpg)
ActiveX - Vantagens
Excelente funcionalidade Ambientes amigáveis e iterativos Maior aproximação com o usuário final É baixado uma única vez, a menos da versão
estar desatualizada Bom desempenho por entender diretamente a
linguagem da plataforma Windows 95 e NT
![Page 16: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/16.jpg)
ActiveX - Desvantagens
“Nem tudo são flores...” Ganha-se por um lado e perde por outro A Microsoft apostou na funcionalidade E a segurança ? Esta merece maior atenção
e dedicação A compatibilidade também é um fator
desfavorável (por enquanto)
![Page 17: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/17.jpg)
ActiveX - Segurança
Até que ponto a Web é segura, mesmo antes desta nova tecnologia ?
A maior funcionalidade do ActiveX promove boas ambições aos Hackers
Pode-se Instalar vírus, excluir arquivos Pode acabar com sua máquina e suas
informações Uma vez instalado, ele tem total poder
![Page 18: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/18.jpg)
ActiveX - Segurança
Quais os recursos de proteção ? O Internet Explorer (acima da versão 3.0),
oferece três níveis de segurança– Alto (recomendado a todos usuários)– Médio (para usuários experientes)– Baixo (para nenhum usuário !!)
Sistema de Authenticode
![Page 19: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/19.jpg)
ActiveX - Segurança
O que é a Assinatura Digital ? Possui informações com relação a empresa e
autor que desenvolveram o ActiveX Questão de confiança no autor e na Microsoft Funciona muito bem para Intranets Alguns especialistas apostam nesta
tecnologia
![Page 20: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/20.jpg)
Java Applet x ActiveX
Java roda em uma JVM Carregado toda vez que é acessado Maior segurança, menor flexibilidade e
funcionalidade Java é seguro ? Teoricamente não pode escrever no sistema
de arquivos do cliente e não se comunicam com aplicativos não-java
![Page 21: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/21.jpg)
Java Applet x ActiveX
Bugs encontrados em algumas JVM, promovem alto grau de insegurança
![Page 22: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/22.jpg)
Novas tendências
Firewalls são usados para proteger redes de ActiveX e Java Applet
Há o bloqueio do código sem haver algum tipo de inspeção de sua validae
Pouco prático e inflexível As tecnologias mudam Surgem os Firewalls inteligentes
![Page 23: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/23.jpg)
Novas tendências
Baseiam-se no estado da comunicação Utilizam estados de comunicações passadas e o
estado da aplicação em si Armazenamento de estado Aprende com as comunicações passadas Avaliam as presentes e futuras Quando a origem é desconhecida, usa-se a
adivinhação
![Page 24: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/24.jpg)
Conclusão
Não existe algo realmente seguro na Internet Há sempre um risco inerente Toda a sociedade perde com isto Não é dever do usuário distinguir
determinadas tecnologias De alguma forma tem que se possibilitar um
ambiente seguro ActiveX é um vilão ou herói?
![Page 25: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/25.jpg)
Breve Histórico
Semelhança com Java, mas desenvolvido pela Netscape
Browsers que suportam JavaScript– Netscape Navigator (2.x, 3.x)– Netscape Comunicator (4.x)– Internet Explorer (3.x, 4.0)
![Page 26: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/26.jpg)
Breve Histórico
Originalmente chamada de LiveScript, o código JavaScript é colocado diretamente no texto de um documento HTML
É visto como um comentário em browsers que não o interpretam
Dão uma funcionalidade adicional para página Web.
JavaScript prover uma funcionalidade incremental, ela é sintaticamente simples e menos poderosa que Java
![Page 27: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/27.jpg)
“Brechas” conhecidas na segurança de JavaScript
JavaScript também tem uma história de problemas com segurança. Não como as “brechas” de Java, que potencialmente podem trocar dados no disco do usuário, as “brechas” de JavaScript geralmente envolvem a privacidade do usuário. Apesar de alguns bugs terem sidos resolvidos outros explodem a cada dia. O mais recente foi relatado em 16 de outubro de 1997.
![Page 28: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/28.jpg)
Interceptação de arquivos
“Brecha” do IE 4.0 permitem um operador de um Web Site
remoto espionar o conteúdo de algum texto imagem ou arquivo HTML localizado na sua máquina ou um arquivo localizado em um servidor de arquivo.
![Page 29: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/29.jpg)
Interceptação de arquivos
Firewalls não podem nos proteger contra este ataque e os browsers estão vulneráveis mesmo quando rodam no modo de “Alta Segurança”.
versão para Macintosh do IE 4.0 aparentemente não são afetadas.
![Page 30: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/30.jpg)
Interceptação de arquivos
Descoberto pelo consultor alemão Ralf Hueskes e é conhecido como “Freiburg attack”
Quando o browser abre o site, o programa JavaScript cria um frame invisível e vai varrendo todos os arquivos da máquina em busca de arquivos de nomes bem conhecidos enviando-os para algum site na Internet
Este bug não permite que JavaScript modifique ou prejudique os arquivos.
![Page 31: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/31.jpg)
Monitoração da Sessão do Usuário
Esta brecha permite que páginas com JavaScript monitore todas as páginas visitadas pelo usuário durante a sessão.
Variações: capturar conteúdo de formulários, cookies e informações sobre outros elementos na página.
![Page 32: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/32.jpg)
Monitoração da Sessão do Usuário
Informações sempre podem ser roubadas mesmo se o usuário estiver visualizando páginas “seguras” encriptadas com SSL
Usuários trabalhando atrás de sistemas de Firewalls corporativos estão tão vulneráveis quanto aqueles que estão conectados diretamente na Internet
Risco: privacidade do usuário, dados e softwares localizados na máquina do usuário não podem ser modificados.
Todos os browsers estão sujeitos a este bug
![Page 33: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/33.jpg)
Observação de Informações através de Frames
Um JavaScript não pode recuperar a URL de um documento baixado de um outro site, mas ele pode detectar os seguintes itens do respectivo documento
URLs de todas imagens no documento Outras informações das imagens, como
largura e comprimento URLs de todos os Applets URLs de todos os ActiveX Controls
![Page 34: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/34.jpg)
“Brecha” de Enviar Arquivo
Não estritamente relacionada com JavaScript
Bug no modo em que formulários são tratados pelo Navigator
Programas JavaScript enganam o browser enviando algum arquivo do HD do usuário local
![Page 35: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/35.jpg)
“Brecha” de Enviar Arquivo
O Usuário não terá conhecimento a não ser que tenha habilitado a opção de “Aviso antes de Submeter”
O Navigator falhará em produzir um aviso se o servidor remoto por acaso utilizar SSL para estabelecer uma conexão “segura”
![Page 36: Segurança na Web Java, ActiveX, JavaScript por Hednilson Bezerra Hugo Morais Vicente Beltrão](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc10b497959413d8c26c8/html5/thumbnails/36.jpg)
Conclusão
JavaScript contém “brechas” na segurança. Muitas delas tem sido diagnosticadas, mas novas vem aparecendo numa taxa constante. Indubitavelmente ainda existem bugs desconhecidos. As pessoas que se preocupam com a falta de privacidade das informações são encorajadas a desabilitar JavaScript completamente.