Submissão Autenticada de Ficheiros ao SIGEX

Documentos relacionados
Introdução ª Parte - Acesso à Aplicação Avaliação Online... 4 I Aceder à Aplicação Inscrição Acesso à Aplicação...

Manual do Gestor da Informação do Sistema

Segurança da Informação

Manual de candidatura por via electrónica

Guia rápido de criação e gestão de um espaço no SAPO Campus

Manual do Fénix. Portal Secretaria da Escola Portal Conselho Científico Portal Direcção de Curso. Candidatura Online para o 2.

Manual de Utilizador Plataforma de Estágios TIC.

GESTÃO DE INFORMAÇÃO PESSOAL OUTLOOK (1)

Catálogo Nacional de Compras Públicas. Manual de Fornecedores

O Manual do ssc. Peter H. Grasch

Alteração do POC (Decreto de Lei nº. 35/2005) no sispoc

Manual do Utilizador. Manual do Utilizador Modelo10 no sisgep. Data última versão: Versão : 1.2. Data criação:

1. Criar uma nova apresentação

GUIA PRÁTICO PROVA ESCOLAR (Abono de Família para Crianças e Jovens e Bolsa de Estudo)

Índice. Como aceder ao serviço de Certificação PME? Como efectuar uma operação de renovação da certificação?

Instruções para o participante no Curso de e-learning. Esquizofrenia Questões Aprofundadas

CONTRATO a TERMO RESOLUTIVO Manual do Candidato

Aplicação de RMAs - Instruções

Licenciatura em Informática. - Análise e Conceção de Sistemas de Informação. Gestão de Condómino. Documento de Análise.

Orientações para Usuários

www. t PAGINANAHORA Guia de gestão de conteúdos

Sistema de formação e certificação de competências

Algoritmo. Iniciação do Sistema e Estimativa do consumo. Perfil do utilizador. Recolha de dados

Novo Formato de Logins Manual de Consulta

Linguagem de. Aula 06. Profa Cristiane Koehler

Manual de Utilizador. //Internet Banking. BNI Online.

MANUAL DE UTILIZAÇÃO DO EQUIPA TIC

EW1085R2 Recetor Bluetooth MICRO USB Classe 2

Núcleo de Relacionamento com o Cliente. de Relacionamento com o Cliente GUIA PRÁTICO DE USO. Produtos

Curriculum DeGóis Guia de preenchimento do Curriculum Vitae (Informação mínima necessária)

CellBus DOCUMENTO DE CASO DE USO VERSÃO (1.0)

Como estudar o SIPIA CT

MÓDULO DE MATRICULA UNASUS

Abra o ficheiro «Formulário de Candidatura» e guarde-o no seu computador

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

Para aceder ao Portal das Finanças e validar ou confirmar as facturas deverão seguir o seguinte caminho:

Manual do Fénix. Gestão de Curriculum. SI (Versão 1.0)

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

Manual do InCD Reader

PROCEDIMENTO PARA CRIAÇÃO / ALTERÇÃO DE DOMÍNIO DE PREFEITURAS, CÂMARAS E ÓRGÃOS MUNICIPAIS/ESTADUAIS.

Política de Privacidade da Plataforma Comercial de Viagens Travelport para o GDS

Passo-a-passo Oi Torpedo Empresa

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

Avaliação do Desempenho do. Pessoal Docente. Manual de Utilizador

LED BACKUP. Para realizar Backups e Transmitir arquivos para Ledware, basta acessar o Menu Gerenciamento, Efetuar / Recuperar Backup:

Manual Web.Newhotel Configuração NewHotel

Assinatura Digital: problema

Como produzir e publicar uma apresentação online dinâmica (Prezi)

Portal do Projeto Tempo de Ser

EAmb V.1 ESPOSENDE AMBIENTE. GestProcessos Online. Manual do Utilizador

ÍNDICE INTRODUÇÃO...3

2 Gerenciamento de Log 2.1 Definições básicas

FEDERAÇÃO NACIONAL DE KARATE PORTUGAL

MANUAL DO UTILIZADOR

VERTENTE GESTÃO GLOBAL DE FICHEIROS E ADC S

Sistemas de Arquivos NTFS, FAT16, FAT32, EXT2 e EXT3

LASERTECK SOFTECK FC MANUAL DO USUÁRIO

AKNA SOFTWARE. Configurações. de DNS

Cadastro de Usuários e Agendamento de Consultas

Tutorial: criação de uma Ficha de Voluntário online

COMO LIGAR E CONFIGURAR

Kids Tracker GPS Watchi! G100. Prixton. Relógio com localizador para crianças

Requerimentos e Especificações de Software

LIBERAÇÃO DE ATUALIZAÇÃO CORDILHEIRA VERSÃO 2

Exemplo: Na figura 1, abaixo, temos: Clique aqui para continuar, que é a primeira atividade que você precisa realizar para iniciar seus estudos.

Algoritmos criptográficos de chave pública

Configuração de contas em Microsoft Outlook 2003/Mozilla Thunderbird

Trabalho de Desenvolvimento de Sistemas de Software GereComSaber 2ª Fase

TRIBUNAL REGIONAL FEDERAL DA 5ª REGIÃO

Trabalho de Implementação Jogo Reversi

Manual de orientação do Sistema de Requisição de Recibos Eleitorais SRE

MANUAL DE PROCEDIMENTOS PLATAFORMA DE INSCRIÇÕES ONLINE

Java NET: Interaja com a Internet. Ricardo Terra (rterrabh [at] gmail.com) Java NET: Interaja com a Internet Maio,

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

TUTORIAL DO ASSISTENTE VIRTUAL (QUICK START)

Índice. 5. Editar as seções de um curso 6. Estruturar o curso 7. Publicar o curso 8. Resumo do Fluxo de criação de um curso no educommons

UNIDADE 1 TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

RENT versão web. Manual de Utilizador para empresa Versão 2.0.0

Manual MQS. Logo após colocar essas informações abrirá a página inicial do sistema:

1. O DHCP Dynamic Host Configuration Protocol

GUIÃO DE EXPLORAÇÃO DA APRESENTAÇÃO DE:

Bem-vindo ao nosso mundo virtual! Guia do Portal de Ensino à Distância da Get Training 1

2ºCiclo (5º e 6º Anos de escolaridade) 3ºCiclo (7º e 8º Anos de escolaridade)

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

Guia de Apoio à Candidatura Online

Prof. Roberto Franciscatto 4º Semestre - TSI - CAFW. Free Powerpoint Templates Page 1

Transcrição:

Submissão Autenticada de Ficheiros ao SIGEX Segurança em Sistemas Informáticos José Martins - ei06031@fe.up.pt Marcelo Cerqueira - ei06093@fe.up.pt Grupo 10, T4

Índice Introdução... 3 Problema e Objectivos... 3 Solução... 4 Algoritmos Utilizados... 4 Criptografia... 4 Validação... 6 Teste... 7 Tecnologias... 8 Possíveis ataques... 8 Conclusão... 9 Anexos... 10 Manual de Instruções... 10 Submissão... 10

Introdução Cada vez mais, no meio académico, surge a necessidade de realizar provas em formato electrónico. Quer seja pela própria natureza da disciplina (ex: Programação), quer pela facilidade tanto para alunos como professores que podem até dispor de métodos de correcção automáticos. Para a FEUP é disponibilizado, pelo CICA, o SIGEX (Sistema de Gestão de Exames). Após a requisição de um exame por parte de um docente, o sistema irá fornecer uma chave privada e uma chave pública. A chave privada, será usada pelo professor e permite-lhe submeter os enunciados da prova, recolher todas as provas submetidas pelos alunos e controlar o tempo do exame. A chave pública é usada pelos alunos e permite-lhes aceder à página do exame, onde têm acesso aos enunciados e podem submeter a sua prova. Em termos gerais são estas as funcionalidades do SIGEX, mas existem alguns problemas do foro da segurança que serão detalhados no próximo capítulo. Problema e Objectivos Apesar de todas as funcionalidades deste serviço, actualmente não existe forma de saber se o exame que o professor vai corrigir é o mesmo que o aluno submeteu. O ficheiro pode ser alterado no intervalo de tempo entre a submissão e recolha enquanto está alojado nos servidores do CICA. É também importante referir que na altura do exame o aluno tem os recursos limitados, ou seja, uma forma de assinatura através de uma chave numa pen-drive não é viável. Para colmatar estas falhas de segurança e fazer face às limitações impostas surge o nosso trabalho. A ferramenta desenvolvida tem como objectivo garantir: Integridade dos ficheiros submetidos, ou melhor, permite detectar se a integridade desses mesmos ficheiros foi posta em causa, quer por alteração quer por destruição; Autenticidade das entidades envolvidas, isto é, as entidades são quem dizem ser; Irretractibilidade, ou seja, as entidades envolvidas não podem negar a sua identidade.

Solução Algoritmos Utilizados Para o desenvolvimento da aplicação foi utilizada criptografia baseada em cifragem irreversível (uni-direccional). A ideia chave deste tipo de criptografia é calcular um número (denomindo hash value) que seja característico de um texto ou ficheiro. Uma das principais vantagens é o facto do texto original não ser recuperável após ser aplicado o algoritmo. É bastante utilizado em situações que se pretende criar um canal de comunicação que favoreça autenticação entre as entidades envolvidas e verificação de integridade das mensagens trocadas. As propriedades de um algoritmo irreversível são: Simplicidade - a codificação do texto original é fácil; Não Reversabilidade - é impraticável inverter a sua função; Unicidade - é actualmente, computacionalmente impossível, encontrar dois textos P1 e P2 tal que H(P1) = H(P2); O algoritmo unidireccional utilizado nesta aplicação é o MD5 (Message Digest 5), desenvolvido em 1991 por Ronald Rivest MD4, usado especialmente para verificação de integridade em mensagens em que o o número resultante da aplicação da função tem 128 bits. Um exemplo da hash de uma mensagem calculada através do algoritmo MD5 será: Criptografia Um esquema da criptografia utilizada na aplicação após a submissão na sistema SIGEX está ilustrada na figura seguinte:

O sistema inicialmente calcula um hash value do ficheiro submetido utilizando o algoritmo MD5 e transforma-o num código fixo de 128 bits. Esse ficheiro F é concatenado à palavra-passe PWa do aluno que submeteu o ficheiro e é calculado através do mesmo algoritmo um código P. Esta palavra-chave do aluno é introduzida pelo aluno após a submissão do ficheiro e o respectivo pedido de recepção dos códigos para verificação de adulteração de dados. O código P calculado anteriormente é novamente concatenado a uma palavrapasse do conhecimento do CICA e transformada através do algoritmo MD5 um código Q. Posteriormente, para a validação de ambas as palavra-passe, será calculado um código auxiliar L para esta função como na figura seguinte: L é obtido através do hash da concatenação da palavra-passe do CICA e do aluno. Posteriormente os códigos P, Q e L são enviados para o email que o aluno especificou na altura em que submeteu o ficheiro correspondente ao resultado do exame e após ter feito um pedido de recepção dos códigos para verificação de adulteração de dados.

Validação O aluno, quando suspeita de alteração e adulteração de dados do ficheiro que submeteu anteriormente (através de, por exemplo, uma nota de um exame diferente que a esperada), deve dirigir-se à entidade de disponibilizou o SIGEX (neste caso, o CICA) para proceder à validação e teste dos códigos P, Q e L com o ficheiro submetido. Após a introdução dos códigos (P, Q e L), ficheiro F submetido e a palavrapasse do aluno, é efectuada a primeira validação que corresponde à verificação de alteração dos códigos P e Q, ou seja, são comparados os ficheiros Q e a hash obtida da junção de P com a palavra-passe do CICA. Uma comparação equalitativa positiva valida os códigos introduzidos e o sistema passa à próxima validação, se essa igualdade não for verificada não é possível continuar devido à possibilidade dos códigos terem sido modificados pelo aluno. A segunda validação tem como objectivo a detecção de um erro na introdução das palavras-passe pelo aluno e pelo CICA.

É utilizada uma comparação entre o hash value da concatenação de ambas as palavras-passe e o código L anteriormente enviado para o email do aluno. Se essa igualdade for verificada as palavras-passe inseridas estão correctas, se não for esse o caso as palavras-passe estão incorrectamente inseridas. Teste A fase de teste é o objectivo do projecto, ou seja, verificar a adulteração de dados do ficheiro submetido no SIGEX. Para verificar a adulteração de dados do ficheiro submetido é calculado do mesmo o MD5 e posteriormente utilizado no cálculo do mesmo algoritmo utilizando a sua concatenação com a password inserida pelo aluno. O sistema verifica se o código P será igual a esse valor. Se o teste for positivo então não houve adulteração de dados do ficheiro. Se o teste for negativo então o ficheiro submetido foi modificado, e o aluno poderá reclamar da nota que lhe foi atribuída.

Tecnologias As tecnologias utilizadas para a implementação desta aplicação são: HTML - utilizada para o desenvolvimento das páginas web; PHP - utilizada para o desenvolvimento das páginas web e para a aplicação dos algoritmos de encriptação; Javascript - utilizada para a validação dos e formulários e interacção com a páginas web; CSS - utilizada para definir a apresentação das páginas web; Possíveis ataques O MD5 é um algoritmo de encriptação unidireccional e é usado sobretudo para verificar a integridade de mensagens. Este tipo de algoritmos dificulta, idealmente impossibilita, que, uma vez tendo a hash de uma mensagem, reverter essa hash de forma a obter a mensagem original. Como a nossa aplicação usa este algoritmo várias vezes durante a sua execução, um possível ataque é tentar, através de brute-force, reverter a hash. Neste algoritmo em específico, isso é considerado impraticável, uma vez que teriam de ser testadas 2¹²⁸ entradas. Outro tipo de ataque e ainda baseado no brute-force, é o ataque de aniversário, que, reduz para o número de entradas a testar para 2⁶ ⁴, o que ainda é considerável. Outra forma de conseguir ludibriar o sistema, é o aluno conseguir de alguma forma, conseguir descobrir a palavra-passe do CICA. A segurança desta palavra passe, que estará armazenada num ficheiro, ficará a cargo do CICA. Deverá tentar, através de criptografia ou de outros métodos, manter a palavra-passe protegida de acessos não autorizados. Existe ainda a possibilidade, considerada muito remota, de haver colisões. Ou seja, diferentes ficheiros produzirem a mesma hash, ainda assim teriam de acontecer 4 colisões simultâneas (número de vezes que o algoritmo é aplicado), o que é altamente improvável e só uma infeliz coincidência poderia produzir esse resultado.

Conclusão A aplicação desenvolvida, se aplicada, forma uma mais valia tanto para o aluno, como para o professor e o CICA. O aluno poderá reclamar caso suspeite de uma alteração dos dados. Desta forma impede-se que um sujeito com intenção de prejudicar o aluno, altere o ficheiro submetido, e impede também que o aluno tente melhorar o seu exame depois do prazo de submissão. Estas vantagens poderiam tornar-se realidade com uma simples alteração do sistema actual e que achamos ser de fácil implementação. Isto permitiria evitar situações desagradáveis, tornando o sistema mais seguro e consistente.

Anexos Manual de Instruções Este manual permite mostrar passo-a-passo as funcionalidades da ferramenta desenvolvida. Existem duas operações básicas distintas que é possível fazer: submeter ficheiros de forma segura (Alunos) e verificar a integridade dos ficheiros (CICA). Submissão 1º - Aceder à página da ferramenta; 2º - Escolher o ficheiro que se pretende submeter; 3º - Clicar sobre Receber Notificação caso se pretenda submeter o ficheiro de forma segura; 4º - Preencher o endereço de email onde se pretende receber a notificação; 5º - Preencher os campos da password com uma palavra-passe que deve ser lembrada pelo aluno caso pretenda reclamar uma possível alteração do ficheiro; 6º - Clicar em Submeter ; 7º - O aluno recebe no seu email uma notificação do CICA que deve ser arquivada para uma possível futura reclamação;

Verificação 1º - Se o aluno suspeitar de uma possível fraude de alteração ou destruição parcial do(s) ficheiro(s) que submeteu dirige-se ao CICA; 2º - O responsável do CICA acede à página da Verificação de Adulteração de Dados ; 3º - Escolhe o ficheiro que o professor corrigiu; 4º - Através do email que o aluno deve possuir introduz os valores de P, Q e L; 5º - O aluno introduz a palavra-passe que usou no dia do exame; 6º - Carrega em Submit ; 7º - O sistema irá informar o CICA se existiu ou não adulteração do ficheiro;