Anda di halaman 1dari 48

FACULDADE SENAC DE CINCIAS EXATAS E TECNOLOGIA

Andr Sabino Petean Galvo

Anlise dos aspectos de segurana dos protocolos de compartilhamento NFS e CIFS

So Paulo 2005

ANDR SABINO PETEAN GALVO

Anlise dos aspectos de segurana dos protocolos de compartilhamento NFS e CIFS

Trabalho de concluso de curso apresentado Faculdade Senac de Cincias Exatas e Tecnologia, como exigncia parcial para obteno do grau de Especialista em Segurana de Redes e Sistemas. Orientador: Prof. Dr. Volnys Borges Bernal

So Paulo 2005

Galvo, Andr Sabino Petean Anlise dos aspectos de segurana dos protocolos de compartilhamento NFS e CIFS / Andr Sabino Petean Galvo. So Paulo, 2005. 45 f. Trabalho de Concluso de Curso Faculdade Senac de Cincias Exatas e Tecnologia. Orientador: Prof. Dr. Volnys Borges Bernal.

1. Segurana da Informao 2. Protocolos NFS e CIFS I. Ttulo

Aluno: Andr Sabino Petean Galvo Ttulo: Anlise dos aspectos de segurana dos protocolos de compartilhamento NFS e CIFS A banca examinadora dos Trabalhos de Concluso em sesso pblica realizada em 09/03/2005, considerou o(a) candidato(a): (X) aprovado ( ) reprovado 1) Examinador(a) Prof. Msc. Luis Gustavo Gasparini Kiatake 2) Examinador(a) Prof. Murilo Rivau Fernandes 3) Presidente Prof. Dr. Adilson Eduardo Guelfi

Dedico este trabalho minha me, cujo gosto pelo estudo me incentivou a seguir firme em busca de meu objetivo.

AGRADECIMENTO

minha famlia, minha namorada e aos meus amigos, a quem tive de dedicar menos tempo at concluir este trabalho. Ao meu orientador Prof. Dr. Volnys Borges Bernal, cujos ensinamentos propiciaram a concretizao deste trabalho. Ao Programa de Incentivo PsGraduao da Dataprev, do qual me beneficiei para custear minha especializao.

Genialidade 1% inspirao e 99% transpirao.

(Thomas Alva Edison)

RESUMO

Os protocolos NFS e CIFS permitem o compartilhamento via rede de recursos entre sistemas com arquitetura cliente-servidor, quaisquer que sejam suas plataformas de hardware e software. A anlise dos aspectos de segurana destes protocolos aponta em ambos vulnerabilidades do ponto de vista da segurana da informao, que implicam em diminuio dos nveis de eficincia dos servios de segurana oferecidos por eles e independem das formas de implementao de ambos, pois decorrem da estrutura e do modo de funcionamento de seus mecanismos internos. Os servios de segurana de confidencialidade, autenticao, integridade, disponibilidade, controle de acesso e auditoria foram considerados para anlise, e o de irretratabilidade foi excludo porque no se aplica a um sistema de compartilhamento de arquivos. Constatou-se neste trabalho que o protocolo NFS no oferece os servios de confidencialidade e auditoria, oferece nveis de segurana baixos para os servios de autenticao (de parceiros e usurios), integridade (no acesso simultneo e na transmisso de dados) e controle de acesso, e oferece nvel de segurana mdio para o servio de disponibilidade. J o protocolo CIFS tambm no oferece os servios de confidencialidade e auditoria, oferece nveis de segurana baixos para os servios de autenticao de parceiros, integridade na transmisso de dados e disponibilidade, e oferece nveis de segurana mdios para os servios de autenticao de usurios, integridade no acesso simultneo e controle de acesso. Verses modificadas do NFS e do CIFS, como por exemplo o CNFS, podem implementar os servios ausentes ou oferecidos com baixo nvel de segurana pelas verses padro.

Palavras-chave: Segurana da Informao, Protocolos NFS e CIFS, Compartilhamento de Rede.

ABSTRACT

The NFS and CIFS protocols permit the network sharing of resources among client-server systems, regardless of the type of hardware or software platforms). The analysis of these protocols security aspects points out some vulnerabilities in both of them, in terms of information security, implying in the reduction of the efficiency level concerning the security services offered by these protocols, regardless of their implementation forms, as these vulnerabilities are originated by the structure and functioning forms of the protocols internal mechanisms. The security services concerning confidentiality, authentication, integrity, availability, access control and auditing have been considered for analysis; irrevocability was excluded because it does not apply to a file sharing system. Our studies have indicated that the NFS protocol does not cover the confidentiality and auditing services, and it presents low security levels regarding partners and users authentication services, as well as concerning integrity (in simultaneous access and data transmission) and access control services. The NFS protocol offers medium security level in terms of availability service. The CIFS protocol also does not offer the confidentiality and auditing services; and it presents low security levels regarding services such as partners authentication, data transmission integrity and availability. CIFS presents medium security levels concerning services such as users authentication, integrity in simultaneous access and access control. NFS and CIFS modified versions, for example, the CNFS, can implement the missing services, as well as those that offer low security level in the standard versions.

Keywords: Information Security, NFS and CIFS protocols, Network Sharing.

SUMRIO 1 INTRODUO ..............................................................................................12 2 CARACTERSTICAS GERAIS DOS PROTOCOLOS NFS E CIFS .......................................................................................................................15
2.1 Caractersticas gerais do protocolo NFS ........................................................15 2.1.1 Filosofia de funcionamento ...........................................................................16 2.1.2 Autenticao de usurios e checagem de permisses .................................17 2.1.3 Particularidades de funcionamento...............................................................18 2.2 Caractersticas gerais do protocolo CIFS .......................................................19 2.2.1 Filosofia de funcionamento ...........................................................................20 2.2.2 Autenticao de usurios e checagem de permisses .................................22 2.2.3 Particularidades de funcionamento...............................................................23

3 SERVIOS DE SEGURANA RELEVANTES PARA UM SISTEMA DE COMPARTILHAMENTO DE ARQUIVOS ..............25


3.1 Confidencialidade (sigilo).................................................................................26 3.2 Autenticao......................................................................................................27 3.3 Integridade .........................................................................................................29 3.4 Disponibilidade..................................................................................................30 3.5 Controle de acesso ...........................................................................................31 3.6 Auditoria.............................................................................................................32

4 VULNERABILIDADES DE SEGURANA DOS PROTOCOLOS NFS E CIFS .....................................................................33


4.1 Vulnerabilidades de segurana do protocolo NFS.........................................33 4.2 Vulnerabilidades de segurana do protocolo CIFS........................................36

5 COMPARAES ENTRE ASPECTOS DE SEGURANA DOS PROTOCOLOS NFS E CIFS .........................................................38


5.1 Confidencialidade, irretratabilidade e auditoria .............................................38 5.2 Autenticao......................................................................................................39 5.3 Integridade .........................................................................................................39 5.4 Disponibilidade..................................................................................................40 5.5 Controle de acesso ...........................................................................................41 5.6 Tabela comparativa entre os protocolos NFS e CIFS ....................................41

6 CONCLUSO ................................................................................................44 REFERNCIAS ................................................................................................45 GLOSSRIO ......................................................................................................46

12

1 INTRODUO

Uma das maiores vantagens de se interligar computadores via rede facilitar a troca de informaes entre eles, permitindo o compartilhamento de recursos como sistemas de arquivos e diretrios, impressoras, etc. Para propiciar o

compartilhamento de recursos entre computadores cujas plataformas de hardware e software so heterogneas, foram desenvolvidos protocolos de compartilhamento padronizados e documentados de maneira a permitir sua implantao em redes com diversos tipos de equipamentos e sistemas operacionais. Atualmente, devido ao uso majoritrio da pilha de protocolos TCP/IP (Transmission Control Protocol / Internet Protocol) em redes de computadores do mundo inteiro, e tambm devido ao uso macio dos sistemas operacionais Windows e Unix em servidores de rede, os protocolos mais populares para compartilhamento de recursos via rede so o NFS (Network File System), cuja verso mais difundida a de nmero 3 (IETF, 1995), e o CIFS (Common Internet File System, anteriormente denominado SMB - Server Message Block), na verso 1.0 (SNIA, 2002). No entanto, existem protocolos para compartilhamento de recursos cujo uso mais restrito, como por exemplo o AppleTalk e o AFP (Apple File Protocol), usados em sistemas operacionais Apple Macintosh, e o NFSP (NetWare File Sharing Protocol), usado em redes Novell NetWare. Os protocolos NFS e CIFS diferem substancialmente em suas caractersticas estruturais e de funcionamento, inclusive no que se refere aos mecanismos responsveis pela segurana dos recursos compartilhados por meio deles. E apesar destes dois protocolos serem implementveis em diversos sistemas operacionais, no que se refere aos servidores usados para compartilhamento de arquivos, o primeiro

13 majoritariamente implementado em sistemas operacionais da famlia Unix, e o segundo, em sistemas da famlia Windows. As origens distintas do NFS e do CIFS, detalhadas mais adiante, constituem uma razo plausvel para tal segmentao. O compartilhamento de recursos precisa ser feito de forma segura, para que as informaes circulantes na rede sejam protegidas de adulteraes e entidades no autorizadas no obtenham acesso a elas. No entanto, os protocolos NFS e CIFS foram projetados duas dcadas atrs, quando no havia a mesma preocupao com a segurana da informao que h hoje em dia, e mesmo tendo passado por modificaes importantes ao longo destes vinte anos, tanto o NFS quanto o CIFS possuem em suas verses mais recentes vulnerabilidades de segurana conhecidas. O objetivo deste trabalho analisar os aspectos de segurana dos protocolos NFS e CIFS, tomando por base suas particularidades de funcionamento e enfocando o compartilhamento de arquivos em rede para sistemas de arquitetura clienteservidor. O levantamento das vulnerabilidades de segurana e a anlise comparativa entre os dois protocolos foram elaborados de acordo com o estudo dos padres normativos definidos e documentados pelas entidades internacionais competentes pela RFC da IETF (Internet Engineering Task Force), no caso do NFS, e pela referncia tcnica da SNIA (Storage Networking Industry Association), no caso do CIFS e de maneira que independam das formas de implementao de ambos os protocolos. Segue a organizao dos demais captulos deste trabalho: Captulo 2 - descreve as caractersticas gerais dos protocolos NFS e CIFS, enfocando o funcionamento dos mecanismos de compartilhamento de arquivos;

14 Captulo 3 apresenta conceitualmente os servios de segurana da informao, restringindo-se aos servios de segurana relevantes para um sistema de compartilhamento de arquivos; Captulo 4 destaca as principais vulnerabilidades de segurana dos protocolos NFS e CIFS, constatadas por meio da anlise dos seus mecanismos de funcionamento; Captulo 5 traz comparaes entre aspectos de segurana dos protocolos NFS e CIFS, enumerando para cada servio de segurana os aspectos em que os dois protocolos se equiparam, como tambm os aspectos nos quais um protocolo leva vantagem sobre o outro; Captulo 6 faz a concluso deste trabalho, com as consideraes finais e sugestes para trabalhos futuros.

15

2 CARACTERSTICAS GERAIS DOS PROTOCOLOS NFS E CIFS

2.1 Caractersticas gerais do protocolo NFS

Desenvolvido pela empresa fabricante de computadores Sun Microsystems, que em 1985 o distribuiu pela primeira vez, em conjunto com o sistema operacional SunOS 2, o protocolo NFS (IETF, 1995) prov acesso remoto transparente a arquivos compartilhados via rede, e foi desenvolvido para funcionar

independentemente de equipamento, sistema operacional, arquitetura de rede e protocolo de transporte. Tal independncia obtida por meio do uso da RPC (Remote Procedure Call - chamada de procedimento remoto), cujos protocolos so descritos usando a XDR (eXternal Data Representation - representao externa de dados) (ALMEIDA, 1997). A RPC uma biblioteca de procedimentos por meio da qual um processo (processo cliente) pode fazer com que um outro processo (processo servidor) execute uma chamada a um procedimento como se o fizesse em seu prprio espao de endereamento. Desta maneira, o processo cliente e o processo servidor no precisam residir na mesma mquina. A XDR especifica um padro para formato de dados portvel, e utilizada pelas chamadas RPC para assegurar que os dados sejam representados da mesma maneira em computadores, sistemas operacionais e linguagens de programao distintos. Esta padronizao tambm resolve o problema dos diversos alinhamentos

16 estruturais, ordenao de bytes, e representaes de tipos de dados em mquinas diferentes que se comunicam.

2.1.1 Filosofia de funcionamento

Os clientes NFS so os responsveis pelo trabalho relativo converso do acesso a arquivos genrico, provido pelos servidores, em um mtodo de acesso a arquivos utilizvel por aplicaes e usurios. O protocolo NFS assume uma implementao stateless de servidor (STERN, 1992), pois o servidor no precisa manter informao sobre o estado de qualquer um dos seus clientes para funcionar corretamente. Em caso de pane isto uma vantagem, pois um cliente precisa apenas de refazer a tentativa de requisio at que o servidor responda, sem tomar conhecimento da pane ocorrida com o servidor. Porm em muitos casos o servidor NFS mantm um cache de operaes prvias, no intuito de melhorar seu desempenho. Dois nveis de transparncia so proporcionados pela montagem de um sistema de arquivos, utilizando NFS: para o cliente, o sistema de arquivos parece residir no disco ligado ao sistema local, e os arquivos e diretrios, sejam eles locais ou remotos, so vistos da mesma forma, pois o servidor esconde a localizao do arquivo na rede; o servidor esconde a estrutura de seu sistema de arquivos, fazendo com que o sistema de arquivos remoto parea ter a mesma estrutura que a do cliente. O NFS realiza o primeiro nvel de transparncia definindo um conjunto genrico de operaes de sistema de arquivos, executados como um sistema virtual (VFS

17 Virtual File System), e o segundo nvel surge na definio de ns virtuais (vnodes virtual nodes) relacionados s estruturas inode do sistema de arquivos do Unix, mas que ocultam a real estrutura do sistema fsico de arquivos. Aes que operam em todo o sistema de arquivos, como verificar a quantidade de espao restante no sistema de arquivos, so chamadas operaes VFS. Chamadas que operam em arquivos ou diretrios so operaes vnode. No lado do servidor, implementar um VFS envolve converter as operaes genricas de VFS e vnode em aes apropriadas para o sistema de arquivos real subjacente. Esta converso ocorre de forma invisvel ao processo do cliente, que faz uma chamada de sistema direta, transformada pelo cliente VFS em uma operao vnode, convertida pelo servidor em uma operao equivalente, porm adequada ao seu sistema de arquivos.

2.1.2 Autenticao de usurios e checagem de permisses

Cada chamada RPC possui um campo para parmetros de autenticao, e o contedo deste campo determinado pelo tipo de autenticao usado por servidores e clientes NFS (IETF, 1995). Um servidor pode suportar, ao mesmo tempo, vrias modalidades de autenticao, identificadas pelos seguintes

parmetros: AUTH_NONE - autenticao nula, no h passagem de informao de autenticao; AUTH_UNIX - autenticao Unix, por meio dos IDs de usurio e de grupo fornecidos pelo cliente;

18 AUTH_DES - autenticao por meio de um esquema de chaves pblicas, com troca de chaves de sesso encriptadas com o algoritmo DES; AUTH_KERB - autenticao por meio do esquema Kerberos (chaves privadas), com troca de chaves de sesso encriptadas com o algoritmo DES. O servidor NFS verifica permisses ao obter, em cada requisio remota, as credenciais contidas na informao de autenticao da chamada RPC, sendo que no modelo de autenticao Unix so usados os IDs de usurio e de grupo, o que implica no compartilhamento da lista de IDs por parte do cliente e do servidor, ou em um mapeamento local dos IDs de usurio e grupo, por parte do servidor. Na prtica, tipicamente o servidor segue um esquema de mapeamento esttico, ou um mapeamento estabelecido pelo usurio que faz uso do cliente NFS no momento da montagem.

2.1.3 Particularidades de funcionamento

O comportamento padro da RPC, enquanto protocolo de ligao, conectar cliente e servidor usando o nmero de verso NFS mais alto que ambos suportarem. A implementao do NFS Version 3 (NFSv3) usualmente combina um projeto stateless com a escolha de um protocolo de transporte de rede no confivel o UDP, normalmente usando a porta 2049 e isto implica na possibilidade de retransmisso, inclusive com possveis danos, de requisies no-idempotentes. Quando usado no contexto de um servidor de arquivos, o termo idempotente pode distinguir entre tipos de operaes; uma requisio idempotente uma requisio que o servidor pode executar mais de uma vez com resultados equivalentes

19 algumas operaes NFS so obviamente no-idempotentes, pois no podem ser reprocessadas sem ateno especial simplesmente porque podem falhar se for feita uma segunda tentativa (ex.: um arquivo s pode ser removido uma nica vez). Contudo, o protocolo NFS tambm pode ser implementado com o protocolo de transporte TCP, sendo que para o NFS Version 4 (NFSv4), mais recente e ainda pouco utilizado, a RFC recomenda o uso de protocolos de transporte com controle de congestionamento; incluem-se nesta condio os protocolos SCTP e TCP, sendo que este ltimo permite maior interoperabilidade.

2.2 Caractersticas gerais do protocolo CIFS

O protocolo CIFS (SNIA, 2002) tem por objetivo prover um mecanismo aberto, e independente de plataforma, para sistemas clientes requisitarem servios de arquivo de sistemas servidores da rede. O CIFS baseado no padro do protocolo SMB, originalmente desenvolvido pela Intel e pela Microsoft no incio dos anos 80 para ser executado em redes locais do tipo PC-Network (substitudas posteriormente pelo padro Ethernet), que faziam uso do protocolo NetBIOS (Network Basic Input/Output System). Inmeros aplicativos foram escritos para uso com a interface de programao do NetBIOS, o que motivou vrios fornecedores de software, mesmo aps o surgimento de novos padres para redes locais, a implement-lo sobre outros protocolos de rede, dentre eles o TCP/IP. A partir do lanamento do sistema operacional Windows 2000, passou a ser suportado o transporte de pacotes SMB sobre TCP/IP sem encapsulamento NetBIOS, porm para manter a compatibilidade com seus predecessores o Windows

20 2000 inclui suporte a este encapsulamento. Em 1996, por razes meramente mercadolgicas, a Microsoft renomeou o protocolo SMB e deu a ele o nome de CIFS. Hoje em dia, esta nova designao mais usada como referncia ao conjunto de aplicativos que habilitam o compartilhamento de diretrios, arquivos, impressoras e outros dispositivos conectados em rede, enquanto que o termo SMB usado tipicamente quando discutido o protocolo de compartilhamento de arquivos em si.

2.2.1 Filosofia de funcionamento

No sentido de realizar acesso a um arquivo em um servidor CIFS (SNIA, 2002), um cliente tem de: analisar e segmentar o nome completo deste arquivo para determinar o nome do servidor; determinar o nome relativo do arquivo dentro deste servidor; resolver o nome do servidor para um endereo da camada de transporte (obter o endereo IP, usando DNS Domain Name System ou NetBIOS); conectar-se ao servidor (se no houver alguma conexo estabelecida disponvel) e ento trocar mensagens CIFS com ele. A primeira mensagem deve indicar os dialetos do protocolo CIFS suportados pelo cliente, os quais sero comparados com a lista de dialetos suportados pelo servidor, que por sua vez retornar uma mensagem respondendo qual dialeto escolheu. Uma vez estabelecida a conexo, as regras para seu encerramento confivel so:

21 se um servidor receber de um cliente - com o qual j est conversando - uma requisio para estabelecer uma conexo de transporte, ele deve encerrar todas as outras conexes de transporte com este cliente, no intuito de propiciar ao cliente recuperar-se de uma situao de reinicializao repentina, em que no foi possvel terminar de forma limpa suas atividades de compartilhamento de recursos com o servidor; um servidor pode derrubar a conexo de transporte com um cliente a qualquer momento, se este cliente estiver gerando requisies ilgicas ou malformadas, contudo o servidor deve primeiro retornar ao cliente um cdigo de erro que indique a causa do fechamento da conexo, sempre que possvel; se um servidor obtiver um erro irrecupervel no transporte para um cliente (ex.: falha de envio) a conexo deve ser abortada; um servidor pode terminar a conexo de transporte quando um cliente no tiver recursos abertos nele, no entanto para auxiliar seu desempenho recomenda-se o trmino da conexo depois de decorrido algum tempo ou se os recursos do servidor estiverem escassos. O protocolo CIFS inclui um mecanismo denominado oplocks (opportunistic locks, ou travas oportunistas), que permite ao cliente bloquear um arquivo de maneira revogvel pelo servidor em determinadas condies, com o propsito de propiciar ao cliente fazer um cache seguro de dados de arquivo. H trs tipos de oplocks: exclusivo, capaz de garantir a um cliente que ele seja o nico a abrir um determinado arquivo;

22 batch, que permite a um cliente adiar o fechamento de um arquivo aberto e reaberto repetidamente por uma aplicao; nvel II, que pode ser revogado pelo servidor sem que o mesmo espere por uma resposta do cliente, garantindo somente que esta revogao acontea antes de um outro cliente escrever no arquivo com sucesso. Dois outros mecanismos habilitam que um cliente controle como outros clientes acessam um arquivo, byte range lock e sharing lock (bloqueios de seqncia de bytes e de compartilhamento, respectivamente), que podem ser mantidos por quanto tempo o cliente desejar e ficam expostos aplicao, a qual tem controle explcito sobre a obteno e a liberao destes tipos de bloqueios.

2.2.2 Autenticao de usurios e checagem de permisses

O protocolo CIFS requer autenticao de usurios no servidor para permitir acesso aos arquivos, e cada servidor autentica seus prprios usurios. Um servidor requer do cliente o provimento de um nome de usurio e de alguma prova de identidade, na maioria das vezes uma derivao criptogrfica de uma senha, para permitir o acesso aos seus recursos. A granularidade de autorizao fica por conta do servidor, que pode usar, por exemplo, o nome da conta para conferir listas de controle de acesso individualmente nos arquivos, ou ter uma lista de controle de acesso que se aplique a todos os arquivos na rvore de diretrio. Quando um servidor valida o nome da conta e a senha apresentados pelo cliente, um identificador que representa esta instncia autenticada do usurio retornado para o cliente no campo UId da resposta SMB. Este UId deve ser includo

23 em todas as requisies subseqentes feitas em benefcio do usurio daquele cliente. A autenticao de usurio permite ao servidor verificar se o cliente conhece a senha de um usurio, e a autenticao de mensagem permite ao servidor e ao cliente a verificao das mensagens de uma sesso. O servidor determina, por meio do campo SecurityMode da mensagem CIFS, o estilo de autenticao a ser usado por seus clientes nas requisies de arquivos compartilhados. A autenticao de usurio baseada no conhecimento compartilhado da sua senha, e o estilo desta autenticao pode envolver o envio pelo cliente de senhas em texto puro para o servidor (desencorajado porque expe a senha do usurio, e desabilitado por padro), ou ainda envolver um protocolo de desafio/resposta, pelo qual o servidor envia um desafio ao cliente e recebe dele uma resposta comprobatria de seu conhecimento da senha de usurio. Esta resposta criada a partir do desafio pela encriptao do mesmo com uma chave de sesso de 168 bits, derivada da senha do usurio, e ento retornada ao servidor para que este a valide por meio do mesmo clculo computacional. Mensagens entre servidor e cliente podem ser autenticadas ao se computar um cdigo MAC (Message Authentication Code) anexo a cada mensagem, construdo com uma chave MD5 de forma anloga a do protocolo IPSec, usando uma chave MAC computada da chave de sesso e usando tambm a resposta ao desafio do servidor. O cdigo MAC se situa tanto sobre o texto da mensagem como sobre um nmero seqencial implcito, para prevenir ataques de repetio.

2.2.3 Particularidades de funcionamento

24 Como mencionado anteriormente, a partir do lanamento do sistema operacional Windows 2000, a Microsoft introduziu o protocolo SMB executado diretamente sobre o protocolo TCP e sem necessidade de suporte NetBIOS, e o renomeou para CIFS (no h, at o momento presente, opo de uso do protocolo UDP). No somente foi dispensado o NetBIOS, como todos os sistemas de apoio (como resoluo de nomes, navegao e at autenticao) foram substitudos por servios padronizados. A resoluo WINS, por exemplo, foi substituda pelo DNS dinmico, e agora o sistema Kerberos usado para autenticao. No mago destas alteraes reside o servio Active Directory do Windows 2000, baseado no padro X.500.

25

3 SERVIOS DE SEGURANA RELEVANTES PARA UM SISTEMA DE COMPARTILHAMENTO DE ARQUIVOS

Conceitualmente, um servio de segurana uma funcionalidade relacionada segurana que pode vir a ser oferecida por um componente de software (STALLINGS, 1998). O suporte do componente de software a este servio de segurana depende dos seguintes fatores: da relevncia do servio de segurana em relao finalidade do software; do nvel de segurana almejado; do custo envolvido; da viabilidade tecnolgica.

Desta forma, qualquer concepo de sistema de compartilhamento de arquivos o qual no deixa de ser um componente de software - deve considerar tais fatores na definio de quais servios de segurana este sistema ir implementar, e em que nvel de segurana eles sero oferecidos. Para simplificar a avaliao dos servios de segurana oferecidos por um sistema de compartilhamento de arquivos, neste trabalho ser atribudo um nvel de segurana para cada um destes servios nvel baixo, mdio ou alto - como acontece no seguinte exemplo: na transferncia de arquivos de um sistema servidor para um sistema cliente, o servio de segurana de sigilo pode ser oferecido com o uso de criptografia simtrica, mas se o algoritmo usado for fraco e exigir pouco esforo computacional para ser decifrado, o nvel de segurana deste servio pode ser considerado baixo.

26 A seguir sero descritos os servios de segurana sugeridos para implementao em um modelo conceitual de protocolo de compartilhamento de arquivos (exclui-se o servio de irretratabilidade, no aplicvel neste contexto).

3.1 Confidencialidade (sigilo)

Com referncia a sistemas de compartilhamento de arquivos, o servio de confidencialidade precisa abranger no somente arquivos e diretrios como tambm as informaes de autenticao, como chaves de sesso e IDs de usurios. As entidades no autorizadas devem ser impedidas de tomar conhecimento do contedo dos arquivos armazenados no servidor, e das informaes contidas nos dados que trafegam pelo canal de comunicao entre este servidor e seus clientes, sendo que para este fim considera-se como entidade um usurio, aplicativo, processo do sistema, equipamento ou computador. Qualquer informao armazenada ou transmitida em texto puro est vulnervel do ponto de vista do sigilo, contudo se for implementado em ambas as situaes um protocolo de criptografia de dados, dois problemas importantes apresentam-se: o desempenho do sistema de compartilhamento de arquivos fica prejudicado, de forma diretamente proporcional ao poder computacional exigido em cada operao de encriptao ou decriptao de dados, e quantidade de repeties destas operaes exigida pela leitura, escrita e execuo dos arquivos;

27 o sigilo das informaes depender tambm da implementao de um mecanismo seguro de distribuio de chaves criptogrficas entre clientes e servidores de arquivos.

3.2 Autenticao

O servio de autenticao subdivide-se em dois tipos, no que se refere aos protocolos de compartilhamento de arquivos: a autenticao do parceiro de comunicao nas interaes entre entidades, comprobatria da identidade dos parceiros e certificadora de que nenhuma destas entidades impostora; a autenticao de um usurio no sistema, a qual garante a autenticidade do usurio que requisita um recurso do servidor, verificando se este usurio no um impostor. Tradicionalmente, em uma rede que utilize a pilha de protocolos TCP/IP, o mecanismo de autenticao das entidades parceiras de comunicao a verificao de endereo IP. O nvel de segurana deste mecanismo de autenticao muito baixo, pois um equipamento impostor pode facilmente se fazer passar por uma das entidades parceiras caso assumisse o endereo IP dela. Uma maneira

recomendvel de se autenticar os parceiros em uma conexo remota usar criptografia assimtrica, estabelecendo uma conexo segura e autenticada entre as duas entidades, na medida em que somente com sua chave privada uma entidade pode decifrar uma mensagem enviada pela entidade parceira, j que a parceira usa a chave pblica daquela entidade para criptografar a mensagem. Este mecanismo

28 usado, por exemplo, pelos protocolos SSL (Secure Socket Layer) e SSH (Secure Shell), muito empregados atualmente para autenticao de parceiros de

comunicao, respectivamente em servidores WWW (World Wide Web) e servidores de acesso remoto. A ttulo de exemplo, um mecanismo semelhante ao de assinatura digital seria uma alternativa para autenticar usurios com um bom nvel de segurana, mesmo que para seu funcionamento seja necessrio implementar um sistema centralizado de gerenciamento e distribuio de chaves criptogrficas assimtricas via rede. O mecanismo sugerido funcionaria da seguinte maneira: a cada requisio do cliente, o servidor de arquivos receberia uma mensagem de autenticao de usurio, a qual teria anexo um hash de seu contedo, criptografado com a chave privada do usurio. O servidor, por sua vez, aplicaria na mensagem o mesmo algoritmo usado pelo cliente para gerar o hash e decifraria o contedo criptografado com a chave pblica do usurio, comparando o hash decifrado com o hash que ele mesmo gerou. Caso os hashes sejam realmente idnticos, comprovase a identidade do usurio responsvel pela requisio remetida pelo cliente.

Fluxograma 1 Assinatura Digital

29 Fonte: Trinta; Macedo, 1998

3.3 Integridade

Em um sistema de compartilhamento de arquivos, imprescindvel que o protocolo utilizado garanta um alto nvel de segurana para o servio de integridade, tanto no transporte quanto no armazenamento dos dados compartilhados entre clientes e servidores. Alm de impedir que entidades no autorizadas modifiquem o contedo de quaisquer arquivos compartilhados na rede, o servio de integridade do protocolo de compartilhamento precisa controlar tambm os acessos simultneos a estes arquivos, no intuito de evitar a corrupo acidental do contedo dos mesmos. Quanto manuteno da integridade das informaes trocadas entre clientes e servidores que compartilham arquivos, durante a transmisso das mesmas, faz-se necessria a preveno contra ataques capazes de explorar vulnerabilidades do servio de integridade existentes nesta transmisso. Um destes ataques o Man In The Middle, por meio dos quais entidades no autorizadas obtm acesso aos dados que trafegam via rede, ao se interporem no caminho entre os parceiros de uma comunicao em andamento, e podem alterar esses dados sem que nenhuma das entidades parceiras detecte suas intervenes. O emprego de criptografia (algoritmos de hash e verificadores criptogrficos) na transmisso de informaes pela rede eficiente contra este tipo de ataque, porm o nvel de segurana fica comprometido se clientes e servidores de arquivos trocarem chaves simtricas por meio da rede, pois elas podem ser capturadas por terceiros e usadas para violar a comunicao entre os parceiros.

30 Para evitar adulterao ou perda de informaes, mesmo que acidentais, necessrio manter um nvel satisfatrio de segurana nas operaes em que dois ou mais clientes requisitam acesso simultneo a arquivos compartilhados por um servidor. Conforme foi descrito no Captulo 2, as implementaes atuais do protocolo CIFS j utilizam os mecanismos denominados oplocks, byte range lock e sharing lock, com a finalidade de gerenciar o compartilhamento simultneo de arquivos, e tais mecanismos garantem um bom nvel de segurana ao servio de integridade. 3.4 Disponibilidade

Indubitavelmente, quando um recurso relacionado a um sistema de informao implementado em uma corporao, instituio de ensino ou mesmo em um laboratrio, espera-se que sua taxa de disponibilidade seja prxima de 100%, ou seja, o sistema deve estar pronto para atender a uma requisio de uso a qualquer momento. com o objetivo de garantir que os dados compartilhados em uma rede estejam sempre disponveis para os usurios autorizados, que se implementam nos servidores de arquivos mecanismos capazes de manter em nveis aceitveis o servio de segurana de disponibilidade. Entende-se por disponibilidade, neste caso, no somente o funcionamento ininterrupto do sistema de compartilhamento de arquivos, mas tambm um desempenho prximo do ideal, compatvel com os recursos fsicos e lgicos empregados nele. Um bom modelo de protocolo de compartilhamento de arquivos aproveitaria as caractersticas dos protocolos NFS e CIFS que propiciam um bom nvel de segurana para o servio de disponibilidade, como a recuperao rpida em caso de pane (NFS) e o controle eficiente das conexes entre cliente e servidor (CIFS), e

31 eliminaria as vulnerabilidades relativas disponibilidade, como a incapacidade de diferenciar um servidor lento de um servidor inoperante (NFS) e o funcionamento dependente de um servio de resoluo de nomes (CIFS) as quais sero detalhadas mais adiante. H tambm solues de compartilhamento de arquivos cujo armazenamento de dados no feito por um servidor centralizado, o que permite redundncia no fornecimento de acesso a arquivos e diretrios, e garante o servio de disponibilidade em caso de falha de servidor. Um exemplo interessante deste tipo de soluo o GFS (Global File System) (SOLTIS; RUWART; OKEEFE, 1996), sistema em que vrios dispositivos de disco, distribudos em ns independentes e interligados via rede, so logicamente agrupados em um espao de armazenamento unificado denominado NSP (Network Storage Pool). O NSP faz com que o sistema de arquivos aparente ser local para cada n, enquanto o GFS sincroniza o acesso a arquivos em todo o bloco de dispositivos. O GFS totalmente simtrico (todos os ns de armazenamento so iguais e no h um servidor centralizado que poderia representar um gargalo ou ponto individual de falha), usa cache para leitura e gravao e mantm plenamente a semntica do sistema de arquivos Unix.

3.5 Controle de acesso

O nvel de segurana do servio de controle de acesso implementado por um protocolo de compartilhamento de arquivos est fortemente vinculado ao nvel de segurana do servio de autenticao, pois um servidor precisa identificar inequivocamente os usurios responsveis pelas requisies de acesso recebidas por ele, para garantir que somente as entidades autorizadas consigam acesso aos

32 seus arquivos, como tambm que as autorizaes de acesso sejam concedidas apenas pelos responsveis e que no sejam alteradas indevidamente. Assim sendo, para implementar o servio de controle de acesso com um bom nvel de segurana, um servidor de compartilhamento de arquivos deve gerenciar de forma segura as permisses de acesso concedidas aos seus clientes em decorrncia da autenticao dos mesmos. O gerenciamento do servio de controle de acesso pode ser feito pelo protocolo de compartilhamento de arquivos em conjunto com o sistema operacional, usando listas de controle de acesso (ACLs) e um sistema centralizado de gerenciamento de IDs de usurios, nos moldes do que atualmente se implementa com o protocolo CIFS em redes com o sistema operacional Windows 2000 instalado no controlador de domnio. Desta maneira alcana-se um bom nvel de segurana.

3.6 Auditoria

Armazenar informaes sobre as requisies recebidas de seus clientes seria a nica maneira de um servidor de arquivos propiciar a auditoria da utilizao dos arquivos compartilhados. Neste caso, o nvel de segurana oferecido pelo servio de auditoria diretamente proporcional ao detalhamento das informaes coletadas pelo servidor, e das informaes constantes em cada pacote de dados gerado pelo cliente, conforme o padro do protocolo de compartilhamento. Contudo, deve-se evitar a coleta excessiva de informaes sobre a utilizao dos arquivos compartilhados, porque o armazenamento das mesmas no servidor e a sobrecarga nos pacotes que trafegam pela rede a cada requisio dos clientes podem ocasionar lentido no funcionamento do sistema como um todo.

33

4 VULNERABILIDADES DE SEGURANA DOS PROTOCOLOS NFS E CIFS

As vulnerabilidades de segurana dos protocolos NFS (IETF, 1995) e CIFS (SNIA, 2002) descritas a seguir advm das particularidades estruturais e de funcionamento destes protocolos, e independem das formas de implementao dos mesmos. Consideram-se nesta anlise as vulnerabilidades referentes ao provimento dos servios de segurana da informao descritos no Captulo 3. De incio, ressalta-se que nenhum dos dois protocolos se prope, em sua concepo, a prover o servio de confidencialidade. Para garantir este servio de segurana seria necessrio aplicar mtodos criptogrficos no armazenamento de dados no servidor e no transporte de dados entre ele e seus clientes, mas tais mtodos no so suportados pelo NFS e pelo CIFS em suas formas nativas, exigindo uso de aplicativos adicionais. Outrossim, no faz parte da proposta do NFS e do CIFS o servio de auditoria, pois clientes e servidores de ambos os protocolos no guardam registros que propiciem a identificao inequvoca das entidades que realizaram operaes de compartilhamento de arquivos, a cronologia destas operaes e a quantificao das mesmas.

4.1 Vulnerabilidades de segurana do protocolo NFS

34 As chamadas RPC, usadas para a comunicao entre o cliente e o servidor NFS, incluem parmetros de segurana usados especificamente para autenticar o sistema cliente junto ao servidor, pois a autenticao do usurio solicitante do acesso via NFS feita apenas no momento em que este usurio realiza o login no sistema cliente. Adicionalmente, o servidor pode controlar o acesso ao servio portmapper servio do Unix que administra o NFS - por meio da configurao de uma lista de sistemas clientes permitidos (identificados pelo endereo IP). Dentre os tipos de autenticao usados pelo servidor NFS para autenticar as transmisses de dados compartilhados com seus clientes, dois no oferecem segurana alguma: o nulo, no qual nenhuma informao de autenticao transferida; e o de credenciais de sistema, em que so informados os identificadores de usurio e grupo do Unix, os quais podem ser facilmente obtidos por quaisquer usurios do sistema operacional, permitindo a qualquer um se fazer passar pelo verdadeiro usurio. Outros dois tipos de autenticao oferecem alguma segurana com o uso de chaves de sesso cifradas, contudo isto feito por meio de algoritmos fracos para os padres atuais: um dos tipos com esquema de chaves pblicas DiffieHellman e o outro com chaves privadas Kerberos verso 4 - ambos os tipos usando criptografia pelo algoritmo DES. O servidor NFS (STERN, 1992) deixa transparente a localizao dos arquivos na rede, fazendo com que, para seus clientes, o sistema de arquivos remoto parea residir no disco ligado ao sistema local; tanto arquivos quanto diretrios so vistos da mesma forma, sejam eles locais ou remotos (embora a localizao efetiva de arquivos ou diretrios possa ser facilmente verificada com o uso de comandos NFS). Esta transparncia pode facilmente acarretar em alteraes ou remoes acidentais

35 de arquivos e diretrios por parte do cliente, causando danos integridade dos dados compartilhados pelo servidor NFS. No h mecanismo de recuperao para operaes incompletas caso o servidor NFS eventualmente fique indisponvel, as requisies RPC podem ser repetidas e os clientes NFS so notificados por meio de um acknowledgement (pacote que informa o reconhecimento dos dados) a cada requisio completada; cada pedido NFS contm informao suficiente para seu atendimento, sem qualquer referncia de estado no cliente ou no servidor. Desta forma, o tempo de recuperao necessrio para que um servidor NFS volte a funcionar aps uma parada minimizado, porm os clientes NFS no conseguem diferenciar um servidor que parou de funcionar de um servidor muito lento, e aps um tempo de espera (timeout) seguem retransmitindo pedidos at que os mesmos sejam completados, seja por meio de um acknowledgement do servidor ou devido a um erro de chamada RPC. Este comportamento gera sobrecarga desnecessria no trfego de pacotes entre o servidor NFS e seus clientes, que pode acarretar em diminuio da disponibilidade dos recursos de rede para outros servios oferecidos pelo servidor. Uma rede de compartilhamento de arquivos pelo protocolo NFS pra de funcionar se o servidor for restaurado e os clientes no forem reinicializados, pois quando feita a reconstruo dos sistemas de arquivo do servidor todos os nmeros de inode (identificador do arquivo no disco para um sistema Unix) anteriormente gerados so reconfigurados, fazendo com que todos os file handles (manipuladores de arquivos) dos clientes tornem-se invlidos, em virtude do processo randmico de renumerao dos inodes que ocorre na restaurao dos sistemas de arquivo do servidor.

36 A semntica do sistema de arquivos Unix no totalmente atendida pelo servio NFS. Neste sistema operacional possvel travar um arquivo aberto (lock), de forma que outros processos no obtenham acesso a ele, e quando este arquivo fechado o lock liberado; tal operao garante a integridade do arquivo que est sendo usado por algum processo do sistema local. Em um servidor stateless como o NFS, no se pode associar um lock a um arquivo aberto, porque o servidor no sabe quais arquivos esto abertos. No entanto, o cliente NFS pode emular o travamento de um arquivo, como feito, por exemplo, quando uma operao de remoo dirigida a um arquivo aberto: o cliente envia um pedido RPC NFS para renomear o arquivo, acrescentando ao seu nome os caracteres .nfs e um sufixo que torna este nome nico para o sistema; quando eventualmente o arquivo fechado, o cliente ento efetua a operao de remoo do arquivo previamente desvinculado.

4.2 Vulnerabilidades de segurana do protocolo CIFS

Um cliente CIFS (SNIA, 2002) obrigatoriamente deve ter meios de resolver o nome de um servidor CIFS para um endereo de rede, seja por meio dos protocolos NetBIOS ou DNS, e este servidor tambm obrigatoriamente deve registrar seu nome em um servio de resoluo de nomes conhecido de seus clientes. Esta imposio implica em uma dependncia do servio CIFS em relao ao servio de resoluo de nomes disponvel na rede local, a qual compromete a disponibilidade do servidor, pois no caso de indisponibilidade do mesmo o servio CIFS no ir funcionar. De maneira anloga, pelo fato do protocolo CIFS ser dependente do DNS ou do NetBIOS (este ltimo ainda implementado por razes de compatibilidade), caso seja

37 explorada uma vulnerabilidade de segurana de um destes dois protocolos e o servio de resoluo de nomes seja usado de forma maliciosa por uma entidade atacante, o servidor CIFS sofrer indiretamente as conseqncias deste ataque. Recomenda-se por padro que no se habilite a autenticao dos usurios com envio de senhas em texto puro para um servidor CIFS, pois isto expe a senha do usurio a qualquer aplicao que tenha acesso rede. Esta vulnerabilidade evitada se os sistemas clientes usarem o protocolo de desafio/resposta no envio das credenciais de autenticao do usurio (conforme descrito no Captulo 2), as quais sero checadas no servidor perante o diretrio de usurios local e as listas de controle de acesso (ACLs). O servidor CIFS efetua a autenticao dos usurios de seus sistemas clientes usando os recursos do prprio sistema operacional, e os mtodos de gerao de credenciais de usurio atualmente encontrados nas diversas verses do Windows, como o LAN Manager, o NTLMv2 e o Kerberos, no oferecem muita segurana porque geram credenciais que no demandam grande esforo computacional para serem decifradas.

38

5 COMPARAES ENTRE ASPECTOS DE SEGURANA DOS PROTOCOLOS NFS E CIFS

Considerando-se as vulnerabilidades de segurana dos protocolos NFS e CIFS, podem ser feitas comparaes entre eles, no intuito de verificar em quais aspectos os dois protocolos so equivalentes e em quais aspectos um protocolo mais seguro que o outro. Tais comparaes, da mesma forma que o levantamento de vulnerabilidades do captulo anterior, so feitas considerando-se apenas as caractersticas estruturais e de funcionamento do NFS e do CIFS, e independem das formas de implementao dos mesmos. As comparaes entre aspectos de segurana dos protocolos NFS e CIFS que se seguem esto divididas por servio de segurana.

5.1 Confidencialidade, irretratabilidade e auditoria

Os protocolos NFS e CIFS no oferecem o servio de confidencialidade para os sistemas de compartilhamento de arquivos que os utilizam (nenhum deles oferece criptografia nativa). O emprego de qualquer um destes protocolos no impede que entidades no autorizadas obtenham acesso aos arquivos armazenados pelos servidores, na medida em que os dados permanecem disponveis em sua forma pura. Tambm ficam vulnerveis ao acesso por parte de entidades no autorizadas as informaes contidas nas requisies de clientes, pois elas trafegam de forma aberta pelos canais de comunicao entre clientes e servidores.

39 O servio de irretratabilidade no se aplica a um sistema de compartilhamento de arquivos e desta forma no oferecido pelo NFS e pelo CIFS, como tambm no oferecido o servio de auditoria, inviabilizado pela ausncia de registros em log das operaes efetuadas por clientes e servidores.

5.2 Autenticao

O mecanismo de autenticao de usurios do protocolo CIFS possui um nvel de segurana consideravelmente superior ao do protocolo NFS. O servidor CIFS recebe do cliente uma prova da identidade do usurio (normalmente uma derivao criptogrfica da senha) e a verifica, enquanto no caso do NFS o cliente quem verifica os nmeros de ID do usurio e do grupo do usurio no Unix, propiciando que uma entidade impostora possa facilmente se fazer passar pelo usurio autntico apenas informando estes nmeros de ID. Os protocolos NFS e CIFS oferecem nvel baixo de segurana para a autenticao de parceiros. Os servidores NFS usam uma lista de clientes, designados pelo endereo IP ou pelo nome no DNS, para identificar aqueles para os quais devem liberar o acesso aos arquivos compartilhados, enquanto os servidores CIFS somente identificam seus clientes por meio do servio de resoluo de nomes disponvel na rede (NetBIOS ou DNS); ambos os mecanismos so muito vulnerveis a ataques de entidades impostoras.

5.3 Integridade

40 Os protocolos CIFS e NFS no garantem a integridade dos dados compartilhados entre clientes e servidores nos canais de comunicao, porque no possuem mecanismos de verificao de contedo de arquivos, capazes de garantir aos parceiros de comunicao que durante o trfego das informaes no houve dano ou adulterao do contedo dos arquivos por parte de entidades no autorizadas (como, por exemplo, em caso de ataques Man In The Middle). Os servidores NFS no mantm controle de estado sobre as conexes com seus clientes, e isto faz com que seu mecanismo de gerenciamento de acessos simultneos a arquivos compartilhados seja bem menos eficiente que o mecanismo empregado pelos servidores CIFS, que realizam este tipo de controle. O controle de estado, feito por meio de seqncias de mensagens trocadas entre clientes e servidores CIFS, permite que se estabeleam conexes confiveis e a

implementao do mecanismo de oplocks. Tal mecanismo propicia ao cliente a realizao de um cache seguro de dados, com bloqueio de arquivo passvel de revogao pelo servidor, liberando acesso simultneo para outro cliente sem comprometer a integridade do arquivo em questo.

5.4 Disponibilidade

O protocolo NFS oferece um nvel de segurana maior do que o do protocolo CIFS para o servio de disponibilidade. O NFS no recupera operaes incompletas, minimizando o tempo de recuperao caso uma eventual falha torne inoperante o servidor. O CIFS, por sua vez, tem seu funcionamento dependente de um servio de resoluo de nomes disponvel na rede (NetBIOS ou DNS), e este vnculo compromete sua prpria disponibilidade.

41 Contudo, nenhum dos dois protocolos oferece redundncia para os servios de compartilhamento de arquivos oferecidos pelo servidor aos seus clientes.

5.5 Controle de acesso

A concesso de permisses de acesso a arquivos remotos oferece maior nvel de segurana quando usado o protocolo CIFS, porque com o uso do protocolo NFS quem controla o acesso aos arquivos compartilhados pelo servidor apenas o cliente, que aps conceder a permisso de acesso ao usurio envia a sua requisio ao servio NFS residente no servidor. O servio NFS tem acesso irrestrito aos arquivos armazenados no servidor e atende prontamente as requisies de seus clientes, e como os clientes NFS usam os nmeros de identificao de usurio e de grupo do Unix para controle de acesso, nmeros idnticos podem se referir a usurios diferentes no servidor e no cliente, havendo a possibilidade de se permitir acesso equivocadamente a entidades no autorizadas. O servidor CIFS realiza controle de acesso local para os arquivos compartilhados, inclusive com o auxlio de mecanismos do prprio sistema operacional Windows (de acordo com a verso instalada no servidor), como por exemplo as listas de controle de acesso (ACLs).

5.6 Tabela comparativa entre os protocolos NFS e CIFS

No intuito de consolidar os resultados deste trabalho, a seguir a Tabela 1 resume a anlise comparativa entre os protocolos NFS e CIFS, no que se refere aos

42 servios de segurana da informao (com a atribuio de nveis de segurana para os servios oferecidos, como descrito no Captulo 3):

Tabela 1 Protocolos NFS e CIFS, comparados quanto aos servios de segurana. PROTOCOLO NFS CIFS

SERVIO

Servio no oferecido: as informaes trafegam CONFIDENCIALIDADE pelo canal de comunicao e so armazenadas no servidor em sua forma pura. Nvel baixo: lista de Nvel baixo: clientes se clientes autorizados, DE identificam pelo nome identificados pelo PARCEIROS no DNS ou no NetBIOS. endereo IP ou pelo nome no DNS. AUTENTICAO Nvel baixo: usurios Nvel mdio: usurios identificados no cliente, identificados no DE por meio dos IDs de servidor, por meio de USURIOS usurio e de grupo do derivao criptogrfica Unix. da senha. Nvel baixo: servidor no controla o estado das conexes com seus clientes. Nvel mdio: servidor controla o estado das conexes com seus clientes, propiciando o uso do mecanismo de oplocks.

NO ACESSO SIMULTNEO A ARQUIVOS INTEGRIDADE NA TRANSMISSO DE DADOS ENTRE CLIENTE E SERVIDOR

Nvel baixo: no h checagem do contedo dos dados aps sua transmisso do servidor para o cliente.

DISPONIBILIDADE

Nvel baixo: Nvel mdio: servidor funcionamento do servidor depende minimiza o tempo de restabelecimento de diretamente da seus servios aps uma disponibilidade de um falha, no recuperando servio de resoluo de operaes incompletas. nomes na rede (DNS ou NetBIOS).

43 Tabela 1 (cont.). SERVIO NFS PROTOCOLO CIFS

CONTROLE DE ACESSO

AUDITORIA

Nvel baixo: controle de acesso feito apenas no Nvel mdio: controle de cliente, cuja requisio acesso feito no servidor, com auxlio de atendida no servidor mecanismos do sistema por um servio cujo operacional Windows. acesso a recursos irrestrito. Servio no oferecido: servidor no registra informaes sobre as requisies atendidas.

44

6 CONCLUSO

Aps

anlise

dos

aspectos

de

segurana

dos

protocolos

de

compartilhamento NFS e CIFS, confirmou-se a premissa de que haveria em ambos vulnerabilidades significativas do ponto de vista da segurana da informao. possvel afirmar que tanto o NFS quanto o CIFS no permitem que clientes e servidores compartilhem arquivos com total segurana em um ambiente de rede, se levarmos em considerao que existem servios de segurana no oferecidos por ambos os protocolos, e que a maioria dos servios oferecidos apresenta nveis baixos de segurana. Ressalta-se, no entanto, que os servios de segurana oferecidos de forma ineficiente ou mesmo no oferecidos pelos protocolos NFS e CIFS podem ser implementados em verses modificadas dos mesmos, como por exemplo o CNFS (HARRINGTON; JENSEN, 2003), cujo prottipo habilita o controle de acesso criptogrfico em um servidor de arquivos NFS. Desta maneira possvel aumentar o nvel de segurana de um servio de compartilhamento de arquivos, mantendo a compatibilidade entre os sistemas que fazem uso do mesmo protocolo.

45

REFERNCIAS

IETF - THE INTERNET ENGINEERING TASK FORCE. RFC 1813: NFS Version 3 Protocol Specification. Jun. 1995. Disponvel em: <http://www.ietf.org/rfc/rfc1813.txt>. Acesso em: 10 jan. 2005. SNIA STORAGE NETWORKING INDUSTRY ASSOCIATION. Common Internet File System (CIFS) Technical Reference: SNIA Technical Proposal. Reviso 1.0, Mar. 2002. Disponvel em: <http://www.snia.org/tech_activities/CIFS/CIFS-TR-p00_FINAL.pdf>. Acesso em: 10 jan. 2005. ALMEIDA, Rubens Q. Arquitetura TCP/IP. Unicamp, 1997. Disponvel em: <http://www.redes.unb.br/download/tcpip.pdf> Acesso em: 23 mar. 2005 STERN, Hal. Managing NFS and NIS. OReilly, 1992. STALLINGS, William. Network and Internetwork Security: principles and practice. 2nd Edition, Prentice Hall, 1998. TRINTA, Fernando A. M., MACDO, Rodrigo C. Um estudo sobre criptografia e assinatura digital. Universidade Federal de Pernambuco, 1998. Disponvel em: <http://www.di.ufpe.br/~flash/ais98/cripto/criptografia.htm> Acesso em: 20 jan. 2005. SOLTIS, Steven R., RUWART, Thomas M., OKEEFE, Matthew T. The Global File System: technical report. Laboratory for Computational Science and Engineering, University of Minnesota, 1996. HARRINGTON, Anthony, JENSEN, Christian. Cryptographic access control in a distributed file system. SACMAT '03: Proceedings of the eighth ACM symposium on Access control models and technologies, Como, Italy, p. 158-165, ACM Press, 2003.

46

GLOSSRIO

Active Directory: componente do sistema operacional Windows 2000 que atua como autoridade central de segurana de rede. Algoritmo: seqncia finita e no ambgua de instrues computveis para solucionar um problema. Arquitetura cliente-servidor: toda arquitetura de rede onde estaes (microcomputadores) executam aplicaes clientes que utilizam programas servidores para transferncia de dados do prprio servidor ou para comunicao com outras estaes e suas aplicaes clientes. Cache: local de armazenamento de dados que o computador precisar usar em curto tempo ou usa com mais freqncia. Criptografia: conjunto de tcnicas que permitem ocultar informaes, tornando-as ininteligveis para aqueles que no tem acesso s convenes combinadas. DES (Data Encryption Standard): algoritmo de encriptao com tamanho de chaves de 56 bits, criado em 1977 nos Estados Unidos. Diffie-Hellman: mtodo de troca de chaves criptogrficas que permite a definio de uma chave de sesso para a comunicao segura entre duas entidades, mesmo em um meio de comunicao inseguro. DNS (Domain Name System): base de dados hierrquica e distribuda, usada para a resoluo de nomes de domnios em endereos IP e vice-versa. Ethernet: tecnologia de interconexo para redes locais, padronizada como IEEE 802.3, e que define cabeamento e sinais eltricos para a camada fsica e formato de pacotes e protocolos para a camada de controle de acesso ao meio (Media Access Control - MAC) do modelo OSI. Granularidade: nvel de detalhamento. Hash: mtodo que utiliza algoritmos para transformar dados de tal forma que o resultado seja exclusivo e no possa ser retornado ao formato original. A funo do hash verificar qualquer modificao em um dado. Idempotentes: termos de resultados equivalentes. Inode: identificador nico que um arquivo recebe no sistema operacional Unix. IPSec: sistema de padres abertos que empregam criptografia para auxiliar na comunicao segura em redes IP.

47 Kerberos: protocolo de autenticao entre aplicaes cliente-servidor, que usa criptografia de chave simtrica. LAN Manager: protocolo de autenticao de rede nativo do sistema operacional Windows NT 4.0, que trabalha com senhas de no mximo 14 caracteres, convertidas para letras maisculas e divididas em dois blocos de sete letras. MD5: algoritmo capaz de gerar um hash de 128 bits a partir de uma mensagem de um tamanho qualquer, usado como mecanismo de verificao de integridade. NetBIOS (Network Basic Input/Output System): controlador de dispositivos de hardware do tipo PC-Network, cuja interface para programao de aplicao ainda implementada em redes Ethernet com o protocolo TCP/IP. NTLMv2: segunda verso do protocolo NTLM (originado pela evoluo do protocolo LAN Manager), permite um espao de chaves de 128 bits para as chaves derivadas de senhas e usa o algoritmo HMAC-MD5 para checagem de integridade de mensagens. RFC (Request For Comments): documento tcnico ou informativo cujo assunto varia desde especificaes, padres e normas tcnicas at questes histricas acerca da Internet. RPC (Remote Procedure Call): protocolo para execuo remota de procedimentos em computadores ligados em rede, que pode ser implementado sobre diferentes protocolos de transporte. SMB (Server Message Block): protocolo de compartilhamento originalmente desenvolvido para ser executado em redes locais do tipo PC-Network com a interface do NetBIOS, e que recebeu em 1996 o nome de CIFS, aps o lanamento do sistema operacional Windows 2000, que por sua vez foi a primeira verso do Windows a suportar o transporte de pacotes SMB sobre TCP/IP sem encapsulamento NetBIOS. SSH (Secure Shell): protocolo de conexo remota que usa criptografia assimtrica para autenticao de parceiros e sigilo da comunicao. SSL (Secure Socket Layer): protocolo usado para transferncia segura de informaes pela Internet, muito utilizado para autenticao de servidores Web (por meio de certificados digitais) e, opcionalmente, dos clientes tambm. TCP/IP (Transmission Control Protocol / Internet Protocol): conjunto de protocolos de comunicao utilizado para troca de dados entre computadores em ambientes de redes locais ou remotas, como a Internet. UDP (User Datagram Protocol): protocolo da camada de transporte do modelo OSI orientado a datagrama, realiza transmisso rpida e no confivel de informaes, na medida em que no controla o fluxo das mesmas.

48 Unix: sistema operacional multiusurio e multitarefa, composto basicamente pelo sistema de arquivos, ncleo (kernel) e interpretador de comandos (shell). Possui vrias verses (ou distribuies), de diferentes fabricantes. Windows: denominao comum aos sistemas operacionais desenvolvidos pela Microsoft Corporation. WINS (Windows Internet Name Services): servio de resoluo de nomes compatvel com NetBIOS, oferecido por servidores com sistema operacional Windows. WWW (World Wide Web): rede de documentos hipertexto veiculados na Internet. X.500: protocolo que especifica um modelo para a conexo de servios de diretrios locais, a fim de formar um diretrio global distribudo.

Anda mungkin juga menyukai