Buscar

Trabalho Individual 3º Semestre Telecine Mozer - Bruno Vieira

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 12 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

�PAGE �
SUMÁRIO
31	INTRODUÇÃO	�
42	OBJETIVO	�
53	DESENVOLVIMENTO	�
104	CONCLUSÃO	�
115 REFERÊNCIAS	�
��
INTRODUÇÃO
Desenvolvimento web é o termo utilizado para descrever o desenvolvimento de sites, na Internet ou numa intranet. O desenvolvimento refere-se a um processo de construção e testes do software especifico para a web, com a finalidade de se obter um conjunto de programas, que satisfazem as funções pretendidas, quer em termos de usabilidade dos usuários ou compatibilidade com outros programas existentes. 
O desenvolvimento web pode variar desde simples páginas estáticas a aplicações ricas, comércios eletrônicos ou redes sociais. O desenvolvimento web leva em consideração fatores como a verificação de erros na entrada de dados através formulários, assim como a filtragem e a normalização dos dados que são alimentados por esses meios. 
Falhas na segurança devem ser testadas, e o uso de scripts pode ajudar a encontrar outras falhas de segurança mais técnicas. As peculiaridades de cada sistema dependem das tecnologias usadas, e muitas vezes não é função do desenvolvedor manter o nível de segurança, mas sim da plataforma, por exemplo o PHP.
OBJETIVO
Este trabalho tem por objetivo a criação do protótipo do sistema de online de reserva de filmes da empresa Telecine Mozer, onde seus clientes, através da assinatura de uma mensalidade de R$15,50, terão acesso ao catálogo de filmes, disponível na web, acessível por seus clientes pelo site mediante um cadastramento prévio onde l é conferido uma senha, que é renovada mensalmente através do pagamento da mensalidade. É possível efetuar a reserva do filme, a um custo que varia de R$ 2,50 a R$ 4,00, para qualquer dia e horário e assistir no horário agendado através do canal 654 de seu serviço de TV por assinatura.
DESENVOLVIMENTO
Nos últimos anos, o desenvolvimento de aplicações voltadas à Web vem sendo expandidos por apresentar vantagens sobre software instalado localmente, tais como: não necessidade de instalação local, atualização rápida, fácil escalabilidade e acesso de qualquer local com conexão à Internet. Porém, o aumento no número de incidentes de segurança na Web gera preocupação quanto à confiabilidade desses sistemas. As estatísticas do Centro de Estudos, Reposta e Tratamento de Incidentes de Segurança no Brasil mostram que o número de incidentes notificados mais que dobraram de 2005 (68.000) a 2010 (142.844).
A Evolução Tecnológica é algo que sempre esteve presente na vida do homem. Abrange desde os primórdios até, e principalmente, os dias atuais. Cada vez aumenta mais sua relação com o homem, e cada vez aumenta mais seu ritmo de evolução. Tecnologias são, de uma maneira geral, todas as criações feitas pelo homem, para ampliar sua atuação no planeta e simplificar o modo de vida. Abrange, por exemplo, desde simples ferramentas até complexos aparelhos para se explorar o universo. Compreende coisas simples, que se tornaram fundamentais no cotidiano, como também instrumentos mais complexos indispensáveis a certos ramos profissionais. 
Em diferentes áreas, e de uma forma bastante abrangente, a evolução tecnológica tem proporcionado o aparecimento de novos cenários que há poucos anos seriam inimagináveis. Com o crescimento de conexões mais rápidas à Internet, a banda larga, no começo dos anos 2000, a quantidade de dispositivos que podem tirar proveito desse tipo de conexão tem se expandido para muito além dos computadores. Celulares, tabletes, televisões e até mesmo os interruptores e tomadas do sistema elétrico de algumas casas tem sido sistematicamente projetado para se comunicarem entre si através da rede mundial de computadores.
Uma área que tem sido cada vez mais influenciada por estas novas tecnologias é o cinema. Com o aparecimento das Smarst TVs, ou TVs Inteligentes, aparelhos que se conectam a TVs normais e que proveem praticamente as mesmas funções das TVs inteligentes, a distribuição de conteúdo, sejam filmes ou séries, tem sofrido uma profunda modificação em um modelo já amplamente consolidado.
Atualmente, com o advento de tecnologias como o ADSL (Asymmetric Digital Subscriber Line), a Internet via cabo, rádio, WiMAX e fibra ótica, permitem novos serviços na Internet, como o vídeo sob demanda ("on demand"). Também é possível assistir a vídeos em streaming via smartphones por meio de aplicativos próprios exigindo uma conexão de dados ou através do Wi-Fi. 
É uma tecnologia que tem possibilitado a muitas pessoas, em todo o mundo, terem acesso a diversos tipos de conteúdo de diferentes países a um custo relativamente baixo, geralmente o usuário paga uma taxa fixa para ter o serviço disponível 24 horas por dia, sete vezes por semana dando a ele uma maior liberdade e flexibilidade de horário, não ficando preso aos horários do conteúdo transmitido pela TV. Esse é um dos principais fatores para a enorme popularidade desse tipo de serviço. Essa tecnologia está inserida na Computação em Nuvem (em inglês, Cloud Computing) pois os dados de mídias transmitidos para o usuário ficam armazenados em servidores (Server, computadores que possuem uma enorme capacidade de armazenamento de dados e estão conectados a internet de alta velocidade que permite a transmissão de arquivos de melhor qualidade mesmo para locais muito distantes. (http://pt.wikipedia.org/wiki/Streaming).
SEGURANÇA NO DESENVOLVIMENTO DE APLICAÇÕES WEB
Em se tratando de sistemas web, há sempre que se levar em conta, como prioridade absoluta, a questão de segurança, uma vez que além de, evidentemente, não se desejar o acesso indevido por pessoas que não fazem parte da carteira de clientes da Telecine Mozer, há em seus servidores informações sensíveis desses usuários, tais como números de documentos como CPF e RG, endereços e contatos telefônicos utilizados para as cobranças bem como endereços de e-mail, utilizados para a divulgação de promoção e como dado complementar para a identificação do cliente e principalmente números de cartões de crédito.
Há que se projetar o sistema tomando o máximo de cuidado tanto em sua arquitetura e planejamento quanto em sua programação. Neste tipo de projeto a segurança não só dos dados mas como do sistema em si, deve ser levada em conta desde a primeira fase de levantamento de requisitos, não apenas em função dos dados sensíveis que hipoteticamente poderiam ser acessados indevidamente mas também procurando manter o sistema virtualmente blindado contra quaisquer tipos de ataques externos.
Por se tratar de um sistema Web, o uso do PHP é fortemente cogitado, por se tratar de uma linguagem que se estabeleceu como um padrão de mercado e por ser bastante difundida e conhecida neste tipo de projeto, suas falhas são também bastante documentadas. 
A começar da fase de configuração do servidor que acomodará o sistema, recomenda-se fortemente que algumas medidas sejam tomadas como por exemplo desabilitar a funcionalidade URL Wraper que, embora seja bastante útil por permitir o uso de endereços para outras páginas ou para arquivos em servidores FTP de forma transparente para as funções que lidam com acesso a arquivos, abre a possibilidade de que qualquer indivíduo mal intencionado e com algum conhecimento em computação consiga, remotamente, ter acesso aos arquivos pertencentes ao sistema além da possibilidade da execução de qualquer script, ou seja, bloco de código em PHP no servidor que hospeda a aplicação. (http://hospedagem2.procergs.com.br/tutorial/PROCERGS-PHP-Seguro.pdf).
Outro ponto de extrema importância a se considerar no quesito segurança, diz respeito ao banco de dados. O PHP é, comumente, utilizado com algum banco de dados de maneira a estender as funcionalidades dos sistemas que nele são desenvolvidos e de prover um meio mais eficiente e seguro para armazenar e trabalhar as informações que são geradas pela aplicação web. Especificamente aose falar de banco de dados e de segurança em sistemas disponíveis na internet, deve se tratar dos problemas relacionados ao SQL Injection, técnica que tenta se aproveitar de uma possível falha de segurança no código para injetar comandos em SQL (Structured Query Language, ou Linguagem de Consulta Estruturada) no banco de dados com o fito de se roubar determinadas informações ou mesmo de causar dano à base de dados. Vale notar, no entanto, que este não é um problema inerente apenas ao PHP, mas a qualquer linguagem de programação que permita o acesso a bancos de dados. Este tipo de vulnerabilidade se dá através do aproveitamento da estrutura da linguagem SQL que, por fazer uso de aspas simples para demarcar um conteúdo de texto pode, ao se usar uma variável pelo cliente, incluir uma aspa ou mesmo de um ponto e vírgula e prosseguir com o uso de comandos SQL, o que fará com que o SGBD (Sistema Gerenciador de Bancos de Dados) execute, em primeira instância, o código original e, após o fechamento da aspa, prossiga para a execução do código que fora injetado. 
(http://hospedagem2.procergs.com.br/tutorial/PROCERGS-PHP-Seguro.pdf).
Outro fator importante a se considerar consiste na criptografia, tanto dos dados armazenados quanto do tráfego destes dados entre o servidor e o cliente. É sabido que raramente os sistemas voltados para a web utilizam a criptografia da maneira mais adequada o que favorece, em caso de ataque, o vazamento de informações sensíveis o que fomenta certos tipos de cyber crimes, como as fraudes de cartão de crédito. 
(https://www.owasp.org/images/4/42/OWASP_TOP_10_2007_PT-BR.pdf).
Especificamente no caso da possibilidade de realização dos pagamentos das mensalidades e mesmo das locações através de cartões de crédito, é de suma importância que seja implementado no sistema o uso do SET (Secure Electronic Transaction ou Transação Eletrônica Segura), protocolo criado em parceria pela Visa e MasterCard, as duas maiores operadoras de cartão de crédito do mundo. O SET é um protocolo de especificação aberta que trata de segurança e criptografia no afinco de proteger as transações realizadas com cartão de crédito na Internet, respeitando as relações consumidor-comerciante, assegurando a confidencialidade e confiabilidade dos dados trafegados fazendo uso da estrutura já existente para este tipo de transação em uma rede completamente aberta como é o caso da Internet. 
(http://inf.unisul.br/~ines/workcomp/cd/pdfs/2285.pdf)
Diagrama de Atividade UML
Um diagrama de atividade é essencialmente um gráfico de fluxo, mostrando o fluxo de controle de uma atividade para outra e serão empregados para fazer a modelagem de aspectos dinâmicos do sistema. Na maior parte, isso envolve a modelagem das etapas sequenciais em um processo computacional; Enquanto os diagramas de interação dão ênfase ao fluxo de controle de um objeto para outro, os diagramas de atividades dão ênfase ao fluxo de controle de uma atividade para outra. 
Visando facilitar o desenvolvimento do sistema e uma vez que já se tenha passado pelo levantamento de requisitos, é interessante modelar todo o sistema através do uso de um diagrama de atividade UML, uma vez que ficará muito mais fácil a codificação dos módulos que pertencem ao sistema através do diagrama, evitando riscos de possíveis erros durante a fase de implantação. (http://pt.wikipedia.org/wiki/Diagrama_de_atividade).
Normalização do Diagrama Entidade Relacionamento
O modelo relacional é um modelo de dados, adequado a ser o modelo subjacente de um Sistema Gerenciador de Banco de Dados (SGBD), que se baseia no princípio em que todos os dados estão guardados em tabelas (ou, matematicamente falando, relações). Toda sua definição é teórica e baseada na lógica de predicados e na teoria dos conjuntos. O modelo relacional para gerência de bases de dados (SGBD) é um modelo de dados baseado em lógica e na teoria de conjuntos.
Em definição simplificada, o modelo baseia-se em dois conceitos: conceito de entidade e relação - Uma entidade é um elemento caracterizado pelos dados que são recolhidos na sua identificação vulgarmente designado por tabela. 
Na construção da tabela identificam-se os dados da entidade. A atribuição de valores a uma entidade constrói um registro da tabela. 
O modelo relacional permite ao projetista criar um modelo lógico consistente da informação a ser armazenada. Este modelo lógico pode ser refinado através de um processo de normalização. Um banco de dados construído puramente baseado no modelo relacional estará inteiramente normalizado. O plano de acesso, outras implementações e detalhes de operação são tratados pelo sistema DBMS, e não devem ser refletidos no modelo lógico. Isto se contrapõe à prática comum para DBMSs SQL nos quais o ajuste de desempenho frequentemente requer mudanças no modelo lógico. 
(http://pt.wikipedia.org/wiki/Modelo_relacional).
CONCLUSÃO
	O constante aumento no número de incidentes de segurança e a alavancagem dos sistemas Web tornam importante a manutenção de sua seguridade. Porém, com as exigências do mercado, os desenvolvedores têm priorizado outros aspectos do desenvolvimento de software em detrimento da segurança. Das dez vulnerabilidades mais críticas da Web, têm relação direta com o processo de desenvolvimento. É necessário dar uma maior atenção ao aspecto de segurança nesta fase com a aplicação de práticas que reduzam as possibilidades de falhas e prejuízos para a empresa, os clientes e o próprio desenvolvedor.
5 REFERÊNCIAS
BISHOP, M. Introduction to Computer Security. 4ª ed. Boston/MA: Addison-Wesley, 
2008.
CENTRO DE ESTUDOS, REPOSTA E TRATAMENTO DE INCIDENTES DE 
SEGURANÇA NO BRASIL. Estatística dos Incidentes Reportados ao CERT.br. 
Disponível em: http://www.cert.br/stats/incidentes/. Acesso em: 12/03/2011.
FIORIO, M. et al. Soluções para o Desenvolvimento de Sistemas Seguros. VII Simpósio 
Brasileiro em Segurança da Informação e de Sistemas Computacionais, Rio de 
Janeiro/RJ, 2007, p. 153-198.
(http://pt.wikipedia.org/wiki/Streaming).
(http://inf.unisul.br/~ines/workcomp/cd/pdfs/2285.pdf)
(http://pt.wikipedia.org/wiki/Diagrama_de_atividade).
(http://pt.wikipedia.org/wiki/Modelo_relacional).
(http://hospedagem2.procergs.com.br/tutorial/PROCERGS-PHP-Seguro.pdf).
(http://hospedagem2.procergs.com.br/tutorial/PROCERGS-PHP-Seguro.pdf).
Sistema de Ensino Presencial Conectado
nome do cursO
BRUNO VIEIRA DOS ANJOS SENA
tELECINE MOZER
Segurança no Desenvolvimento de Aplicações Web
Diagrama de Atividade (UML)
Normalização do Diagrama Entidade Relacionamento (MRN)
Belo Horizonte
2014
BRUNO VIEIRA DOS ANJOS SENA
tELECINE MOZER
Segurança no Desenvolvimento de Aplicações Web
	Diagrama de Atividade (UML)
Normalização do Diagrama Entidade Relacionamento (MRN)
Trabalho de Análise e Desenvolvimento de Sistemas apresentado à Universidade Norte do Paraná - UNOPAR, como requisito parcial para a obtenção de média bimestral na disciplina de 3º Semestre 2014
Orientadores: 
Prof. Roberto Y. Nishimura
Prof. Anderson Emílio M. Gonçalves
Prof. Márcio Roberto Chiaveli
Prof. Veronice de Freitas
Prof. Vicente Henrique Salomão Lucarelli
Prof. André Luiz Ribeiro
Belo Horizonte
2014

Outros materiais