06 julho, 2012

Modelo OSI

A Organização Internacional para Padronização (ISO), é a instituição responsável pela implementação de um modelo geral para interligação de sistema denominado Modelo de Referência para a Interligação de Sistemas Abertos (modelo OSI).

Conceitos e Objectivos

O modelo OSI diz respeito à interligação de sistemas – o modo como eles trocam informações – e não às funções que são executadas por um dado sistema. O modelo OSI oferece uma visão generalizada de uma arquitectura estratificada e organizada em camadas. Pela definição que foi dada a sistema, a arquitectura aplica-se a sistemas muito simples como a ligação de um terminal a um computador, e a sistemas muito complexos, como a interligação de duas redes completas de computadores. OSI também pode ser usado como modelo para uma arquitectura de rede. O desenvolvimento deste modelo está constantemente sofrendo alterações para poder adaptar-se aos diversos sistemas existentes.

Camadas

O modelo OSI utiliza uma abordagem estratificada com certos conjuntos de funções alocadas às diversas camadas.

Uma entidade é um elemento activo de uma camada. Duas entidades de uma camada prestam serviços às entidades da camada imediatamente acima e, por sua vez, recebem serviços da camada situada imediatamente abaixo. Por exemplo, as entidades da camada de apresentação prestam serviços à camada de aplicação e recebem serviços da camada de sessão.

  1. Física
    Activação e desactivação das ligações físicas, mediante solicitação da camada de dados. Transmissão dos bits por uma ligação física em modo síncrono ou assíncrono. Tratamento das actividades de gerência da cama física, inclusive a activação e controlo de erros.
  2. Dados
    Estabelecimento e libertação de ligações de dados. Sincronização da recepção de dados que tiverem sido partidos por várias ligações físicas. Detecção e correcção de erros de transmissão, com retransmissão de quadros, se necessário.
  3. Rede
    Determinação de um roteamento óptimo sobre as ligações de rede que podem existir entre dois endereços de rede. Provisão de uma ligação de rede entre duas entidades de transporte. Multiplexação de múltiplas ligações de rede numa única ligação de dados. Tratamento das actividades da camada de rede. inclusive a activação e controlo de erros.
  4. Transporte
    Colocação em sequência das unidades de dados transferidas, para garantir que sejam entregues na mesma sequência em que foram enviadas. Detecção de erros e recuperação após erros. Controlo do fluxo de dados para evitar a sobrecarga dos recursos da rede. Realização das actividades de supervisão da camada de transporte.
  5. Sessão
    Provimento de uma mapeamento de um-para-um entre uma ligação de sessão e uma ligação de apresentação, em qualquer altura. Evitar que uma entidade de apresentação seja sobrecarregada de dados pelo uso do controlo de fluxo de transporte. Restabelecimento de uma ligação de transporte para suportar uma ligação de sessão. Realização das actividades de gestão da camada de sessão.
  6. Apresentação
    Emissão de uma solicitação para que a camada de sessão estabeleça uma sessão. Iniciação da transferência de dados entre entidades de aplicação ou utilizadores. Execução de qualquer transformação ou conversão de dados que forem necessárias. Emissão de uma solicitação para que a camada de sessão encerre a sessão.
  7. Aplicação
    Execução das funções de aplicação comuns que são funções que proporcionam capacidades úteis a muitas programas. Execução das funções de aplicação específicas, que são funções necessárias para responder aos requisitos de uma particular aplicação.

 


Frase do dia:
Nenhum grande avanço foi feito na ciência, na política ou na religião sem nenhuma controvérsia. --Lyman Beecher

05 julho, 2012

Arquitectura SNA

SNA significa System Network Architecture e é propriedade da IBM. Mesmo tendo sido definida antes do modelo OSI, é também baseada numa estrutura de camadas.

As duas arquiteturas possuem muitas semelhanças, embora também haja muitas diferenças nos serviços que são prestados e na maneira como estes serviços estão distribuídos entre as camadas.

Utilizado geralmente em sistemas de grande porte (mainframes), esse tipo de arquitectura tende a ser colocado em evidência novamente, com o aumento da necessidade de interligação entre redes de computadores e mainframes e a construção de redes cada vez mais complexas.

Alguns tipos de sessão são permanentes, sendo estabelecidas automaticamente quando a rede entre em operação, elas permanecem enquanto a rede está operacional, outros tipos são dinâmicos, são estabelecidos quando são necessários. A qualquer momento numa rede SNA, é possível que haja muitas sessões estabelecidas simultaneamente, e muitas delas podem partilhar os mesmo dispositivos físicos e enlaces de comunicação.

Uma função importante da uma rede SNA é a capacidade de implementar um caminho virtual ou lógico entre utilizadores, de modo a que eles possam comunicar facilmente uns com os outros, isto é, estabelecer sessões. Este caminho é determinado de maneira virtual ou lógica porque, embora a informação pareça viajar de ponto-a-ponto de um utilizador para o outro, ela pode, na verdade, passar por vários pontos intermediários no seu trajecto através da rede. À medida que os dados passam por esses dispositivos intermediários na rede podem ser executadas operações que permitem que os dados passem mais eficientemente pela rede. Em alguns casos, os dados podem até ser convertidos de uma forma para outra, conforme se movimentam pela rede. Todas estas funções são transparentes para o utilizador.

Os componentes que formam uma rede SNA podem ser divididos em duas categorias principais, cada uma consistindo no hardware, software e microcódigos contidos nos dispositivos que criam a rede.

03 julho, 2012

Rob Dougan – Clubbed To Death (Um vídeo muito apreciado por hackers)

IP’s Fantasmas

Quando os velhos hackers começaram-se a sentir vigiados pelos logs criados pelos servidores e pelas capturas de datagramas de pacotes IP, eles passaram a fazer uso de uma técnica que lhes permitisse, ao mesmo tempo, mascarar o endereço IP da interface e continuar a navegar pela Internet, ou pela rede interna. Foi assim que nasceu o spoofinf (de spoof, enganar).

O spoofing consiste na criação de pacotes TCP/IP mediante um endereço de IP falso, criado com a edição dos cabeçalhos ou datagramas de IP. Num ataque do tipo spoofing, entram em jogo três computadores: um atacante, um alvo, e uma máquina ou rede suplantada pelo atacante, a qual tem a sua identidade assumida por ele. O sistema com a identidade subtraída costuma ter relação com o sistema atacado, seja para causar mais confusão no momento do ataque (“Um sistema amigo está-nos a atacar”), seja para de facto, fazer-se passar por outra rede ou pessoa, como costumam fazer os crackers.

A maioria dos ataques que utilizam sistemas de spoofing emprega o padrão chamado de “cebola”. Uma cebola possui diversas camadas: assim que você descasca a casca, encontra um invólucro exactamente igual ao anterior, e assim sucessivamente até chegar ao núcleo. Da mesma maneira, um ataque de spoofing feito por hackers experientes utiliza, não raramente, mais de uma modalidade de ataque coordenado ou, mais exactamente, um ataque dentro do outro. Isso posto, vajemos como pode ele ser feito.

Sempre que um hacker tenta se apoderar do endereço de uma rede ou host, ele não pode, simplesmente, apossar-se do endereço actual. Num segmento de comunicação, não importa o seu tamanho, duas interfaces não podem ter o mesmo endereço, sob pena de que uma delas não poderá realizar a comunicação. A acção conjunta normalmente passa por:

  • Redireccionar a ligação verdadeira para um servidor falso ou um servidor DNS “envenenado” (Poisoned DNS);
  • Derrubar o sistema original com um ataque de negação de serviço e assumir a sua identidade no prazo de recuperação.

O primeiro caso, que ganhou o status de arte no mundo das invasões em meados de 2006, passa pela necessidade de realizar um ataque do estilo ping flood no sistema de cache de um servidor DNS ligado ao alvo.

O segundo caso, muito mais comum, ocorre quando um atacante derruba um servidor com um ataque ping flood, que pode ser realizado com pacotes TCP ou SYN.

Além de spoofing de IP e de DNS, são muito conhecidos os spoofings de MAC Adress e similares em que gateways ou routers são enganados por enxurradas de pacotes falsos, confundindo o dispositivo e permitindo a livre passagem de um atacante.

Protocolo SPX/IPX

O Sequenced Packet Exchange/Internet Packet Exchange é o protocolo utilizado pela rede Netware da Novell. Implementa as camadas 3 e 4 do modelo de referência OSI, e utiliza como protocolo de camada 2, exclusivamente o Ethernet. Durante muitos anos, Netware e Ethernet foram considerados sinónimos. Possuem várias semelhanças com o TCP/IP. Já foram os protocolos mais populares, mas, sendo o TCP/IP a base da Internet, acabaram por perder terreno.

IPX – O IPX seria o equivalente ao protocolo de redes. É uma implementação muito volumosa e cheia de recursos. Tem algumas características vantajosas como a detecção de endereços MAC e atribuição automática de endereço IPX, ao contrário de outros protocolos como o IP, que fazem com que o utilizador tenha de atribuir manualmente um endereço para cada interface ou configurar um serviço externo que automatize este processo.

SPX -  Da mesma forma que o IPX, o SPX tem correspondência com o protocolo OSI de transporte. Uma das características mais importantes dessa implementação é que o SPX tem de receber a confirmação dos pacotes enviados antes de poder enviar outro, o que cria prejuízos para o desempenho da rede.