1, o protocolo IP
IP é um conjunto de protocolos TCP / IP crítico, usa o protocolo IP, tais sistemas de computador heterogêneos na Internet (incluindo vários tipos diferentes de computadores e sistemas operacionais) podem ser conectados em rede.
IP protocolo de duas funções básicas: enfrentar e segmentação
- Dirigindo: protocolo de datagrama de IP pode ser feito de acordo com o endereço de destino do cabeçalho do pacote de dados que inclui um endereço de destino, isto é, o pacote transmitido a partir de um nó para outro, a transmissão final para os dados do destinatário.
- Segmento: se existe muito grande pacote, o pacote só pode enviar uma pequena rede de dados, IP suporta o protocolo pacote dividido em diferentes pacotes de dados, e indicar os pacotes reagrupados e passou para dentro da cabeça.
formato da mensagem (1) IP protocolo
- Versão : pista de qual a versão dos pacotes de dados que pertencem ao protocolo, por exemplo, usar este distinguir IPv4 e IPv6.
- Comprimento do cabeçalho : cabeçalho do protocolo IP indicando o tempo que a unidade é de 4 bytes isto é 32 bits
- Tipo de Serviço : para indicar quando a qualidade real das necessidades dos pacotes transmitidos durante uma determinada rede de serviços que é
- Comprimento total : é o comprimento de todo o datagrama incluindo um cabeçalho e uma porção de dados
- 16 bits de identificação : campo de identificação para a segmentação e remontagem de pacotes IP, todos os pacotes que pertencem aos mesmos segmentos de pacote inclui a mesma identificação.
- 3 flag (bandeira) : um comprimento de 3bit, agindo campo Flag é usado para indicar o pacote IP é dividido. Três de seus significados são: a fragmentação de pacotes IP não é permitido (DF, não fragmento), IP pacote, e depois disso houve divisão dividido pacote IP (MF, mais fragmentos). bit reservado é sempre 0, DF bit indica que o pacote não pode ser fragmentado durante 1, MF bit 1 indica que o pacote, bem como o segmento posterior.
- bandeira de varrimento Passo : Mark os dados de posição do segmento relatados em unidades de 8 bytes, o primeiro segmento é compensado 0
- Sobrevivência : um contador de pacotes para limitar o ciclo de vida, em segundos, o comprimento de campo é de 8 bits, o valor máximo de 255 descrito é armazenado, é contado após o nó no processo de aplicação real, cada nó contagem através de um Guardar 1, quando a contagem chegar a 0, o pacote para ser descartado.
- 8 protocolo de identificação (Protocolo) : Este campo é usado para identificar os dados transmitidos dos quais é um protocolo de camada superior. Por exemplo: 0x06 representa TCP, 0x11 representa a UPD, 0x01 representa ICMP e assim por diante.
- Cabeçalho de soma de verificação : somente a cabeça de foram a eficácia, devido a alguns campos da cabeça está sempre a mudar (por exemplo: campos de vida), e a cabeça de eficácia em cada nó teve de ser recalculadas.
- 32-bit endereço IP de origem (Fonte endereço IP) e do 32-bit endereço IP de destino: Este campo contém o endereço IP do remetente e do destinatário.
- Opção (Option) : lado do transmissor pode ser adicionalmente adicionado a alguns dos campos em um pacote IP de acordo com as necessidades, por exemplo: o registro itinerário (registro), roteamento de origem (fonte rota), o carimbo de tempo (timestamp) e similares.
2 ameaças de segurança e proteger contra o protocolo IP
(1) ameaças de segurança
IP escutas telefônicas
IP protocolo não é criptografado durante a transmissão, passou em claro, desde que o atacante para espionar informações de cabeçalho IP para ser capaz de interceptar e pacotes IP.
ataques de IP (IP falsificação falsificação)
de acordo com o protocolo de IP, o roteador só é determinado de acordo com o endereço de IP de destino do pacote de IP a partir do qual a porta de transmissão de pacotes IP, sem ter em conta para o endereço de IP da fonte do pacote de IP. Portanto, um atacante não pode determinar se a informação foi modificado endereço IP de origem ou o endereço IP de destino, o dispositivo de rede, modificando.
Um invasor pode facilmente implementar mudanças para o endereço IP via libpcap / winpcap biblioteca ou programação socket raw.
ataque IP spoofing tem um monte de danos, fornecendo suporte para a ataques de negação de serviço, para evitar ser rastreado e punido por pacote IP construído o mesmo endereço IP de destino, endereço IP de origem e um IP aleatório endereço
ataques de fragmentação IP:
no protocolo IP , permite que o remetente ou encaminhador intermediário (tais como um router) para ser fragmentado pacotes IP.
Um invasor pode usar este protocolo IP recurso, o corte de pacotes IP em pedaços muito pequenos, em seguida, enviado para o alvo.
fragmento IP faz transferência da rede de recombinação, mas apenas em um receptor recombinante
receptor devido à recombinação desses fragmentos desperdício mínimo um monte de recursos de computação
abordagem de defesa (2) IP ameaça à segurança protocolo
Penetração de filtragem
- Uma entrada fornecido um gateway de rede
- gateway de configuração do endereço IP de origem filtrando pacotes IP ilegais
filtragem egress
- Definir um gateway na saída de rede
- gateway de configuração do endereço IP de origem filtrando pacotes IP ilegais
traceback IP
- Voltar IP pacote em um caminho através da rede
- Acompanhe endereço ou rede onde o atacante
solução ameaças de segurança protocolo IP melhor é usar o protocolo IP Security (IPSec)
3, o protocolo TCP
protocolo TCP é um protocolo com orientao de ligação, isto é, a transmissão de dados, comunicar partes necessitam de estabelecer uma ligação
(. 1) do formato de mensagem de protocolo TCP
- porta de origem TCP : os dados da porta transmitindo número tomada do terminal
- TCP porta de destino : O propósito do número de porta de soquete
- SEQ ID NO : 32, que identifica a localização dos segmentos TCP para todo o fluxo de dados, utilizado para a identificação do número de sequência de segmento, em - - a transmissão, o número de sequência de transmissão por um após uma fatia
- número de reconhecimento : 32; um fragmento identificador do receptor enviado pelo emissor esperado e contadas como uma confirmação de recepção de pacotes. bandeira ACK é 0, o nero de resposta é inválido porção (por exemplo, em primeiro lugar ligado [a SYN] pacotes), a resposta é uma bandeira ACK No. 1 é válida.
- Comprimento do cabeçalho : cabeçalho do protocolo TCP indicando o comprimento, isto é, em unidades de 4 bytes de 32 bits. Reconhecimento alteração do número, não é um simples aditivo, dependendo do tamanho do fragmento recebido
- Reservado : Reserved comprimento do campo de 3 bits deve ser definido para todos 0
- bits de controle : pacote TCP usado para identificar o tipo e significado
do URG: ponteiro urgente é válido
PSH: enviando a inundação
RST: redefinir a conexão
ACK: reconhecer número de seqüência é válida
a SYN: significado sincronizado, SEQ ID NO negociação
do FIN: conexão releasable - Janela : Indica o remetente pode aceitar mais dados de tamanho, dados de transmissão é maior do que o outro para impedir a sua área de dados tamponada, a partir do número de sequência de reconhecimento do campo começa a contagem.
- Checksum : soma de verificação abrange todo o segmento TCP, campos obrigatórios, calculado pelo remetente é armazenado, o terminal de recepção para autenticar
- ponteiro urgente : Quando o sinalizador é definido urgente, ponteiro urgente é válido
- Opções : campo de opções para indicar o tipo do primeiro byte, o segundo byte indica o comprimento total da opção, imediatamente depois de o valor da opção (comprimento opção é o comprimento total de -2).
Estabelecimento (2) conexão TCP
O TCP é um protocolo orientado a conexão, é preciso estabelecer uma conexão antes de os dois lados formalmente transmitidas comunicação de dados, neste acordo, para estabelecer uma conexão é estabelecida através de um aperto de mão de três vias.
Como se mostra, numa tal rede, o host A e B do hospedeiro de dados de transmissão, o primeiro hospedeiro A envia um SYN B compreendendo um conjunto de dados válidos, os dados no seu número de sequência inicial indicada A utilizado foi de 1000, enquanto o SYN bit identificado como válido. Após o host B recebe a mensagem SYN, anfitrião B irá retornar uma mensagem ACK válido para A, B informações sobre as informações do host inclui o número de série 2000 e este número de série mais 1, sua descrição informações recebidas Host A para o Host A . Uma série depois de receber informações do host A também irá ACK afirmou, enquanto o número de série do seu próprio pacote mais um, e dizer uns aos outros, ele pode enviar o próximo número da seqüência de pacotes é 2001, estabelecendo assim um TCP completa conexão.
(3) para liberar a conexão TCP
conexão liberação TCP é uma conexão TCP recursos ocupado liberado. Primeiro, o host B para o host A envia uma mensagem válida FIN para a liberação de uma conexão TCP, o Host B envia um ACK recebeu dados válidos, diz o host A, série B foi libertado da conexão TCP. Como esse processo é uma conexão bidirecional, ele envia uma mensagem após o anfitrião B para o host A envia uma mensagem necessário para liberar a conexão do host A, host B será desligado após a mensagem de resposta host A. Após o recurso de conexão TCP é ocupado pelo sistema de recuperação.
Características (4) protocolo TCP
- conexão full-duplex (full-duplex conexão)
em ambas as extremidades da ligação tem duas independente umas das outras e em frente do canal de transmissão, ou seja, o canal de duas vias. - orientados a conexão (orientada a conexão)
comunicações, tanto antes do início da transmissão de dados, a ligação deve ser estabelecida (VC) para um entre elas lógica através da moda "three-way handshake", para transmissão de dados - Fiabilidade (de confiança)
número da sequência de reconhecimento de TCP e números, por meio de um eventual tempo de perda de pacotes para retransmissão, o número de reconhecimento pode saber se o pacote é recebido. Então TCP dados confiáveis podem ser transmitidos. folha automático; garantida dados de fornecimento ao fim de camada de aplicação é correcta; automaticamente filtrar pacotes duplicados; reconhecimento - se que os dados de retransmissão de pacotes de chegada fiável
aplicações de transmissão de fluxo de bytes e (byte de transmissão), e rede irá fase dividida fornece uma interface consistente para o serviço de streaming
4, os riscos de segurança protocolo TCP
Existente protocolo TCP principais ameaças à segurança
ataques SYN Flood (SYN inundação)
antes da introdução de três vias aperto de mão TCP para estabelecer um necessidades de conexão, a primeira mensagem enviada neste processo é chamado mensagem SYN, um atacante pode enviar um grande número de host de destino a primeira mensagem, e ser ignorado ACK mensagem enviada de volta para a outra parte. Desta forma, um atacante pode conseguir um ataque de negação de serviço no host. O anfitrião recebendo após cada mensagem SYN recebido irá despender recursos para armazenar o conteúdo dessas conexões TCP, se o número de ataques por parte de quem enviou grande o suficiente, então os recursos de armazenamento recebimento de acolhimento serão consumidos quando o usuário normal acolhimento quando acessado, ele não pode fornecer serviços.
ACK ataques de inundação (Inundações ACK) - IP aleatório
atacante gerado aleatoriamente fonte aleatória IP e uma porta de origem aleatório, no caso de conexão TCP estabelecida, enviando um ACK alvos de mensagens válidas, ao contrário da de três way handshake TCP predeterminado host B envia uma mensagem para redefinir a conexão para o atacante. Se o atacante desta forma e continuar a gerar porta de origem aleatório aleatório, anfitrião B vai fazê-lo gastar um monte de tempo para consultar a tabela local. Em seguida, o atacante será ocupado lidar com estes solicitação ilegal, quando o usuário normal para acessar o host, você não pode prestar serviços.
Inundando ataques ACK (ACK inundação) - IP falso
desta forma, um número atacante pode falso endereço IP e porta de um alvo a ser atacado, em seguida, modificar o endereço IP de origem do endereço IP de destino, para a rede após o atacante enviar um vermelhidão mensagem ACK, após o qual o anfitrião recebe essas mensagens, essas mensagens são ilegais para aceitar ACK anfitrião mensagem RET enviará uma volta mensagem para o endereço IP de origem, quando os tempos suficientes mensagem RET, serão orientadas ocupado tratando estes solicitação ilegal, quando o usuário normal para acessar o host, ele não pode fornecer serviços.
Serial ataques número de predição
no protocolo TCP, os pacotes de dados se a outra parte pode receber o número de série depende de se o pacote é um número de sequência esperada pela outra parte, os dois lados criaram uma ligação TCP é confirmada pela sequência e números de confirmação ambos transmitidos, como o atacante, se você sabe o número de série da mensagem seguinte da conexão TCP foi estabelecida através da especulação porto e previsão de número de série, em seguida, o atacante pode forjar um pacote de dados correspondente, e envia para a rede, depois a outra parte recebe este pacote será considerada uma pacotes legítimos, então ser aceitas e processadas.
ataque LAND
se a origem eo destino IP mesmo olhar como? Ao estabelecer três vias aperto de mão, enviando uma mensagem SYN, o endereço IP de destino IP e IP são o servidor de origem, em seguida, o servidor irá estabelecer uma conexão com o seu próprio espaço, que ocupam uma grande quantidade de recursos.