Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de...

38
por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores I Prof.: Otto Carlos Muniz Bandeira Duarte Primeiro semestre de 2011

Transcript of Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de...

Page 1: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

por

Igor Drummond AlvarengaBruno Lange Ramos

Universidade Federal do Rio de JaneiroDepartamento de Engenharia EletrônicaEEL878 – Redes de Computadores IProf.: Otto Carlos Muniz Bandeira DuartePrimeiro semestre de 2011

Engenharia de Computação e Informação Engenharia de Controle e Automação

Page 2: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Introdução• Gerência de redes

• O Protocolo• Segurança• Principais ameaças• Versões do protocolo• Diagrama do protocolo SNMPv3• USM• VACM

• Conclusão• Referências• Questões propostas

Page 3: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 4: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Parte integrante do conjunto de protocolos TCP/IP;

• Tem como finalidade o gerenciamento de dispositivos em uma rede IP;

• Suas principais funcionalidades são:• monitoramento;• configuração remota;• resposta automatizada a incidentes.

Page 5: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Modelo FCAPS (Fault, Configuration, Accounting, Performance and Security Management), estabelecido pela ISO;• gerenciamento de falhas;• gerenciamento de configuração;• gerenciamento de contabilidade;• gerenciamento de desempenho;• gerenciamento de segurança.

• O Simple Network Management Protocol surge como ferramenta para o auxílio na implementação deste modelo.

Page 6: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 7: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Arquitetura:•dispositivos gerenciados;•agentes;•gerentes.

• Definições:•ASN – Abstract Syntax Notation;•SMI – Structure;•MIB – Management Information Base.

Page 8: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 9: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• GetRequest;• SetRequest;• GetNextRequest;• GetBulkRequest;• Response;• Trap;• InformRequest.

Page 10: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 11: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 12: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 13: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Disfarces;• Modificação de mensagens;• Modificação do fluxo de mensagens;• Negação de serviço;• Vazamento de informação;• Análise de tráfego.

Page 14: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Autenticação: nomes de comunidade;• Cada agente possuí seu próprio conjunto de comunidades;• Os nomes de comunidade não são atrelados a entidades;

• Mensagens UDP sem nenhum tipo de privacidade.

• Qualquer um que conheça o nome correto de comunidade poderá enviar um comando SNMP válido para um agente.

• Qualquer estação que capture o tráfego da rede tem acesso a todos os nomes de comunidades que nela trafeguem.

Page 15: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Foco inicial em aprimoramento de segurança;• Bifurcação e incompatibilidade;• SNMPv2 party-based;• SNMPv2u;• SNMPv2*;

• Comprometimento e criação do SNMPv2c;

• Nada foi mudado em termos de segurança.

Page 16: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Foco na melhoria da segurança;• Oferece proteção às principais ameaças,

garantindo:• autenticação;• confidencialidade;• integridade;• controle de acesso.

• Encapsulamento de um PDU do SNMPv1 ou SNMPv2c em uma mensagem SNMPv3;

• Modelo de segurança baseado em usuário (USM);• Modelo de controle de acesso baseado em visões

(VACM).

Page 17: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 18: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• A USM requer que o campo msgSecurityParameters esteja preenchido com os dados do agente;

• A descoberta se dá em duas etapas:• descoberta da snmpEngineID do agente;• descoberta de snmpEngineBoots e snmpEngineTime.

Page 19: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Módulo de temporização (timeliness):• parte do processo de autenticação;• ocorre imediatamente após a autenticação do pacote

recebido.• Campo snmpEngineBoots incorreto: pacote descartado;• Campo snmpEngineTime difere em mais 150 segundos:

pacote descartado;• Em caso de sucesso, o pacote é considerado temporizado.

Page 20: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Enviando um pacote autenticado:• o pacote é criado;• o bit sinalizador de autenticação é ativado;• a função resumo é computada pelo pacote utilizando a

authKey para o usuário especificado em msgUserName;• o resultado computado pela função resumo é inserido no

campo msgAuthenticationParameters;• O pacote é enviado.

Page 21: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Enviando um pacote encriptado:• o pacote é criado;• os bits sinalizadores de autenticação e encriptação são

ativados;• um valor aleatório para o salt é computado;• o campo scopedPDU é encriptado com a privKey do

usuário especificado em msgUserName e o salt;• O salt é inserido no campo msgPrivacyParameters;• O pacote é autenticado;• O pacote é enviado.

Page 22: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Autenticação: • Keyed Hashing for Message Authentication (HMAC);• + Message Digest 5 (MD5) → HMAC-MD5-96;• + Secure Hash Algorithm 1 (SHA-1) → HMAC-SHA-96.

• Confidencialidade:• Cipher Block Chaining mode to the Data Encryption

Standard (CBC-DES).

Page 23: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 24: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 25: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Flexibilidade de implementação;• Aceitação;• Variedade de implementações proprietárias e de

código aberto no mercado.• Preocupações: • Gerenciamento complexo de chaves.• Escalabilidade.

• Direções futuras:• Transport Layer Security (TLS).

Page 26: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 27: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• [1] A Brief Tour of the Simple Network Management Protocol. CERT Coordination Center, Carnegie Mellon University, 2002.

• [2] MAURO, D. R.; SCHMIDT, K. J. Essential SNMP. Segunda Edição. Sebastopol, CA, Estados Unidos da America: O'Reilly Media, Inc., 2005. 460 p. ISBN 0-596-00840-6.

• [3] MILLER, M. A. Managing Internetworks with SNMP v2. Estados Unidos da América: M & T Books, Inc., 1997. 704p. ISBN: 1558515615.

• [4] SNMPv3 Handbook. CISCO, 2007.• [5] SNMPv3 vs. v1 and v2c. Ubizen AETHIS,

SNMP Research International, 2002.

Page 28: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• SNMP v1• RFC 1155 — Structure and Identification of Management

Information for the TCP/IP-based Internets;• RFC 1156 — Management Information Base for Network

Management of TCP/IP-based internets;• RFC 1157 — A Simple Network Management Protocol

(SNMP);• RFC 1213 — Management Information Base for Network

Management of TCP/IP-based internets: MIB-II.

Page 29: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• SNMP v2• RFC 1441 — Introduction to version 2 of the Internet-standard Network Management

Framework;• RFC 1445— Administrative Model  for version 2 of the Simple Network Management

Protocol (SNMPv2);• RFC 1446 — Security Protocols for version 2 of the Simple Network Management Protocol

(SNMPv2);• RFC 1447 — Party MIB for version 2 of the Simple Network Management Protocol (SNMPv2);• RFC 1451 — Manager-to-Manager Management Information Base;• RFC 1901 — Introduction to Community-based SNMPv2;• RFC 1905 — Protocol Operations for version 2 of the Simple Network Management Protocol

(SNMPv2);• RFC 1906 — Transport Mappings for version 2 of the Simple Network Management Protocol

(SNMPv2);• RFC 1907 — Management Information Base for version 2 of the Simple Network

Management Protocol (SNMPv2);• RFC 1908 — Coexistence between version 1 and version 2 of the Internet-standard Network

Management Framework;• RFC 1909 — An Administrative Infrastructure for SNMPv2;• RFC 1910 — User-based Security Model for SNMPv2;• RFC 2089 — V2ToV1 Mapping SNMPv2 onto SNMPv1 within a bi-lingual SNMP agent;• RFC 2578 — Structure of Management Information Version 2 (SMIv2);• RFC 2579 — Textual Conventions for SMIv2;• RFC 2580 — Conformance Statements for SMIv2.

Page 30: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• SNMP v3• RFC 3410 — Introduction and Applicability Statements for Internet

Standard Management Framework;• RFC 3411 — An Architecture for Describing Simple Network Management

Protocol (SNMP) Management Frameworks;• RFC 3412 — Message Processing and Dispatching for the Simple Network

Management Protocol (SNMP);• RFC 3413 — Simple Network Management Protocol (SNMP) Application;• RFC 3414 — User-based Security Model (USM) for version 3 of the Simple

Network Management Protocol (SNMPv3);• RFC 3415 — View-based Access Control Model (VACM) for the Simple

Network Management Protocol (SNMP);• RFC 3416 — Version 2 of the Protocol Operations for the Simple Network

Management Protocol (SNMP);• RFC 3417 — Transport Mappings for the Simple Network Management

Protocol (SNMP);• RFC 3418 — Management Information Base (MIB) for the Simple Network

Management Protocol (SNMP);• RFC 3419 — Textual Conventions for Transport Addresses.

Page 31: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• SNMP v3• RFC 3430 — Simple Network Management Protocol (SNMP) over

Transmission Control Protocol (TCP) Transport Mapping;• RFC 3584 — Coexistence between Version 1, Version 2, and Version 3 of

the Internet-standard Network Management Framework;• RFC 3826 — The Advanced Encryption Standard (AES) Cipher Algorithm in

the SNMP User-based Security Model;• RFC 4789 — Simple Network Management Protocol (SNMP) over IEEE 802

Networks;• RFC 5343 — Simple Network Management Protocol (SNMP) Context

EngineID Discovery;• RFC 5590 — Transport Subsystem for the Simple Network Management

Protocol (SNMP);• RFC 5591 — Transport Security Model for the Simple Network Management

Protocol (SNMP);• RFC 5592 — Secure Shell Transport Model for the Simple Network

Management Protocol (SNMP);• RFC 5608 — Remote Authentication Dial-In User Service (RADIUS) Usage

for Simple Network Management Protocol (SNMP) Transport Models;• RFC 5953 — Transport Layer Security (TLS) Transport Model for the Simple

Network Management Protocol (SNMP).

Page 32: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.
Page 33: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• 1) Quais são os três componentes fundamentais de uma rede gerenciada pelo SNMPv3?

• 2) O que é uma MIB? Que tipo de informação pode ser associada a uma MIB?

• 3) O que torna o mecanismo de autenticação do SNMPv1 e SNMPv2c extremamente frágil?

• 4) Por que o SNMPv3 não pode oferecer privacidade sem autenticação?

• 5) Quais as condições necessárias para que um agente envie uma mensagem não solicitada a uma NMS?

Page 34: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Os principais componentes de uma rede gerenciada pelo SNMP são:• Agentes;• Sistemas gerenciados;• Estações de gerenciamento de redes (NMS).

Page 35: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• A MIB é essencialmente um banco de dados onde estão relacionadas e organizadas as variáveis de estado gerenciáveis pelo protocolo SNMP para um dado agente.

• Qualquer tipo de informação disponível no sistema gerenciado e acessível a um agente pode ser associada a uma MIB.

Page 36: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• A maior fragilidade do mecanismo de autenticação das versões históricas do SNMP reside no fato de que qualquer um que conheça o nome de comunidade com os privilégios adequados pode enviar um comando do SNMP pela rede. A situação é agravada pelo fato destes nomes transitarem em texto simples pela rede, dentro de pacotes UDP.

Page 37: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Não existe um modo noAuthPriv (sem autenticação, porém com privacidade) no uso do protocolo SNMPv3, pois a autenticação é necessária para garantia dos parâmetros de privacidade.

Page 38: Por Igor Drummond Alvarenga Bruno Lange Ramos Universidade Federal do Rio de Janeiro Departamento de Engenharia Eletrônica EEL878 – Redes de Computadores.

• Estarem definidas as condições de ativação de uma TRAP no agente, e estas condições serem atendidas em dado momento. Isto ocasionará uma mensagem assíncrona do agente para a NMS, sem que esta tenha solicitado nenhuma informação previamente.