Iniciando os testes de APIs Meraki com DevNet Sandbox

O Cisco Meraki é um conjunto de soluções de rede gerenciadas pela internet que permite uma única fonte de gerenciamento sobre locais, infraestrutura e dispositivos. Componentes incluem uma solução completa de TI gerenciada por nuvem para atendimento as soluções de wireless, switching, segurança, gerenciamento de dispositivos móveis (MDM) e comunicações, integrando o hardware, software e a nuvem.

Há cinco maneiras pelas quais uma aplicação pode estender as funcionalidades da plataforma Meraki:

  • A Dashboard API, que fornece um serviço RESTful para provisionamento, gerenciamento e monitoramento de dispositivos.
  • Alertas de webhook, um serviço que permite atualizações em tempo real da saúde e configuração da rede.
  • A API de localização, um método HTTP POST configurado no Meraki Dashboard que fornece informações de localização do cliente (GPS, X/Y) com base no posicionamento do mapa do Meraki Access Point (AP) e na intensidade do sinal do cliente.
  • O External Captive Portal (EXCAP), que permite que uma organização crie modelos de engajamento personalizados para dispositivos que aproveitam seu ambiente WiFi.
  • MV Sense, que oferece chamadas de API REST e fluxo de dados em tempo real para aproveitamento das câmeras MV12

O ambiente “Meraki DevNet Always On Read Only Sandbox” fornece um ambiente de desenvolvimento para validar e testar o ‘Cisco Meraki Dashboard’, Dashboard API, integração do Captive Portal, MV Sense, Webhook Alerts e Location Scanning.

Todas as chamadas de API são muito bem documentadas usando a especificação OpenAPI (Swagger interface). Há ótimo trabalho disponibilizando tudo como um Documento Postman, um recurso muito útil no desenvolvimento de uma API.

O Postman é uma ferramenta de desenvolvimento de API baseada no modelo web/cliente, perfeita para simular chamadas e explorar como funcionam determinadas APIs. A plataforma da Meraki está atualmente na sua API versão 1.x .

Qual o uso das APIs?
Existem muitos casos de uso para essas APIs, atendendo a requisitos de escalabilidade ​​para os administradores e automatização para as redes Meraki. Os casos de uso comuns são:

  • Provisionamento em massa (usando a API do painel)
  • Monitoramento avançado (usando MV Sense e APIs MR)
  • Automação de rede (usando chamadas MS)
  • Integrações na nuvem (integrar Meraki com dispositivos de terceiros — com Cisco Umbrella, por exemplo)

Cisco Sandbox

O ambiente Cisco DevNet Sandbox permite que engenheiros, desenvolvedores, administradores de rede, arquitetos ou qualquer pessoa que queira desenvolver e testar as APIs, controladores, equipamentos de rede, suíte de colaboração e muito mais da ferramentas da Cisco, possa fazê-lo gratuitamente!

https://developer.cisco.com/site/sandbox/

Ambiente Meraki

Nesse post faremos um laboratório utilizando a infraestrutura Meraki (Meraki Always On).

Faça login, no dashboard com as credenciais fornecidas, acesse o ambiente “DevNet Sandbox”

Certifique se o use o uso de API está ativo “Enable access to the Cisco Meraki Dashboard”. Logado no painel vá para: Organization -> Settings -> Dashboard API Access, marque a caixa:

Gere uma API key para aquela conta. Cada conta poderá ter até 2 API Keys.

Clique no seu Perfil (canto superior direito): My Profile -> API Access -> Clique em “Generate API Key” copie e armazene em local seguro.

Postman

Depois de seguir os passos acima, você pode começar a fazer chamadas de API para seu dashboard e dispositivos usando o Postman ou seus scripts Python.

Se você precisar de ajuda com o Postman, incluindo como importar a API Postman Meraki, confira: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/  com poucos cliques é possível instalar a Coleção “Meraki Dashboard API – v1”

Vamos fazer nossa primeira chamada de API e definir o escopo da nossa documentação da API, pois existem algumas maneiras de fazer isso:

  • Você pode acessá-lo através do Meraki Dashboard: Clique em Help -> API Docs.
  • Importe o documento de API mais recente do Postman para sua conta do Postman.

Após importar para sua conta você poderá ver quantas chamadas de API estão disponíveis e como ela está organizada, confira abaixo:

Escolha um request que você possa preencher facilmente com as informações que já possui (por enquanto só temos a chave da API, portanto precisamos de uma solicitação que exija apenas o valor da Chave da API), por exemplo, poderíamos listar todas as Organizações disponíveis no Chave de API que estamos usando, depois de inserir os campos obrigatórios no cabeçalho da API:

baseURL: https://api.meraki.com/api/v1

apiKey: ae829149e162f8dd0535ca5f0b98e96f1d3adc29 (a API key gerada )

1º Passo, crie um ambiente. Clique no ícone do olho na parte superior direita e  “Add” para criar um novo ambiente.

2º Defina as variáveis. Adicione as informações baseURL e keyAPI

3º Execute o teste para coletar o ID do ambiente “DevNet Sandbox” dentro de “Organization” do ambiente Meraki.

Armado com essas informações, podemos começar a criar scripts e integrar nosso ambiente Meraki com outras ferramentas/plataformas.

Uma vez que coletamos a informação do ID da Organização, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar o ID das redes.

Uma vez que coletamos a informação do ID da Rede, podemos atualizar as variáveis e coletar as informações de rede.

Por exemplo, podemos coletar as informações detalhadas dos equipamentos de rede, como endereço IP, serial, geolocalização, modelo, etc.

Coletar os SSIDs da rede:

Visualizando o mesmo SSID no ambiente Meraki:

Com o método PUT podemos alterar ou inserir nos parâmetros para a os SSIDs da Rede.

Referências

Andre Camillo: https://andrecamillo.medium.com/getting-started-with-meraki-apis-7633a822a9da

Charles Judd: https://www.youtube.com/watch?v=86uq_Imi-L0

Meraki API V1: https://developer.cisco.com/meraki/api-v1/

Postman, API development tool: https://www.postman.com/

Meraki API V1 Postman Documentation (import from here):  https://documenter.getpostman.com/view/897512/SzYXYfmJ

Getting started with Postman: https://developer.cisco.com/meraki/build/meraki-postman-collection-getting-started/

https://documenter.getpostman.com/view/897512/SzYXYfmJ#intro

Fortigate: SSL-VPN

A utilização de soluções de VPNs estende o acesso a redes privadas através da conectividade remota para o fornecimento de comunicação segura entre os dispositivos.

Uma VPN estabelece um túnel entre dois dispositivos, que estão separados por uma rede pública insegura, como a Internet por exemplo, entregando acesso seguro para a rede privada. A VPN pode também ser utilizada na comunicação entre uma matriz e suas filiais, entre empresas para fornecimento de serviços ou para o estabelecimento do teletrabalho.

Existem diversos mecanismos para estabelecimento de VPNs e os principais para conectividade para o acesso remoto utilizam o SSL ou IPsec.

O FortiOS suporta a utilização de VPNs IPsec e SSL, assim como outros métodos menos seguros.

Uma VPN deve utilizar métodos seguros para que somente usuários autorizados possam estabelecer a comunicação e acessar os recursos da rede. A comunicação deve ter como premissa a criptografia do tráfego ( que não poderá ser lido quando interceptado por usuários não autorizados).

Neste artigo  faremos um breve resumo sobre SSL-VPN no FortiOS.

Continue reading

The Art of Network Hunter (pt.2) – The Snitch PCAP!

Na primeira parte do post, conseguimos realizar a identificarão do ataque, conforme a conclusão do post a máquina 172.30.200.50 está infectada com um malware que responsável pela realização de requisições externas para o domínio www.gtishare.com [223.25.233.248].

Uma vez que identificamos o “paciente 0”, precisaremos entender tudo o que aconteceu pós infecção para tentarmos traçar uma timeline de eventos. O Primeiro passo é realizar uma rápida analise do report gerado no Hybrid Analysis [ https://goo.gl/62xumA ].

Aparentemente, o arquivo é apenas um PDF, como pode ser visto, ele foi aberto normalmente na máquina sandbox.

Continue reading

The Art of Network Hunter (pt.1) – PCAPs don’t lie!

Na época que eu era Consultor de Segurança, fiz um curso ministrado por uma galera muito legal da RSA sobre uma solução interessante, o RSA NetWitness.

O NetWitness é uma ferramenta é muito poderosa e capaz de armazenar e fazer analises avançadas de tráfego de rede, mostrando de maneira “visível” as comunicações que estão acontecendo na rede corporativa, através de parsers criados em LUA script.

Essencialmente o NetWitness possui 2 módulos principais, NetWitness for Packets [ https://goo.gl/a1xk4H ] e NetWitness for Logs [ https://goo.gl/icv6Df ], o curso que fiz com meu amigo Xopis [ recomendo -> https://goo.gl/GtP3WC ] foi quase que inteiramente sobre o NetWitness for Logs, porém logo percebi que a parte divertida e que eu realmente iria me interessar do NetWitness, era o NetWitness “for Packets“, devido a sua maleabilidade no tratamento de pacotes de rede.

Durante esse curso eu escutei um termo muito legal, que fazia parte do meu cotidiano diário mas eu nem fazia ideia: “Network Hunter”

Continue reading

Dica: utilizando o Flexible Netflow

O Netflow é uma tecnologia disponível no Cisco IOS que fornece estatísticas dos pacotes que atravessam um roteador ou Switch. O Netflow coleta e exporta os dados para fins de monitoração, segurança da rede, análise de trafego, análise de capacidade, IP accounting e etc.

Ao invés de apenas contar os pacotes, o NetFlow considera esses pacotes como parte de um fluxo, monitorando o início, meio e fim. Podemos definir um fluxo como uma sequência unidirecional de pacotes que possuem características comuns entre a origem e o destino.

Continue reading

Tipos de Endereços IPv6

#ArtigoRecuperado

No IPv6 temos três tipos de endereços: Unicast, Multicast e Anycast.

Obs: Os endereços Broadcast foram extintos no IPv6, porém essa funcionalidade é realizada pelos endereços multicast.

Unicast: como no IPv4 os endereços unicast identificam apenas uma única interface. Eles são utilizados na comunicação entre dois nós, quando um pacote é enviado para um endereço unicast ele é entregue em uma única interface, estabelecendo uma comunicação ponto-a-ponto. Os endereços unicast foram subdivididos em três grupos:

Continue reading

Distância Administrativa

Os roteadores utilizam a distância administrativa para escolher o melhor caminho quando aprendem mais de uma rota para o mesmo destino através de protocolos distintos.  A confiabilidade de um protocolo de roteamento é definida através da distância administrativa.

Quanto menor o valor da distância administrativa mais confiável o protocolo. Esses valores variam de 0 à 255, onde 0 é mais confiável e 255 é menos confiável

Continue reading

HSRP

O artigo abaixo sobre HSRP foi compartilhado pelo Fernando Lucas. O texto do Fernando ficou excelente, espero que gostem!!!

O protocolo HSRP (Hot Standby Router Protocol) permite que dois ou mais roteadores em um grupo HSRP compartilhem o mesmo endereço, atuando de forma redundante [como gateway].

Endereço MAC para o HSRP

O protocolo HSRP provê redundância da seguinte forma: quando um PC envia um ARP Request para o endereço que podemos chamar de VIP ( Virtual IP Address ) configurado nos Roteadores para o funcionamento do HSRP, o mesmo é respondido com um endereço “MAC Virtual” (para a alta disponibilidade fornecida pelo protocolo) , conforme exemplo abaixo: Continue reading

IKE Fase 1: Resumo

Quando você está tentando fazer a uma conexão segura entre 2 hosts através da Internet, um caminho seguro deverá ser estabelecido, como por exemplo, por uma conexão VPN IPSec. Além dos mecanismos de autenticação e validação da informação a VPN IPSec necessita de um mecanismo eficiente de gestão de chaves.

O processo de gestão de chaves diz respeito à criação, eliminação e alteração das chaves. A implementação de uma solução VPN IPSec  utliza-se de um processo de criptografia que envolve uma periódica troca de chaves, embora o IPSec não integre um mecanismo de gestão de chaves, o IETF definiu como norma de gestão o protocolo híbrido ISAKMP/Oakley também denominado IKE, Internet Key Exchange para autenticar os dispositivos e  gerar as chaves criptografadas. O protocolo IKE utiliza o termo security association (SA), que é um acordo entre os equipamentos pares para troca de tráfego IPSec utilizando os requerimentos necessários para estabelecer as proteções aplicadas em uma conexão. Continue reading

Cabeçalhos de extensão IPv6

Na versão 6 do protocolo IP (IPv6) as opções adicionais são abordadas através dos cabeçalhos de extensão , tais cabeçalhos, não possuem um tamanho fixo e também não há limite da quantidade exata destinada as extensões (diferente do cabeçalho base onde o tamanho é fixo). Outro ponto que temos que observar é a localização desses cabeçalhos que ficam entre o cabeçalho base e a camada de nível superior, como estamos falando do protocolo IP que encontra-se na camada de rede, obviamente entendemos que a camada de nível superior é a camada de transporte – no desenho abaixo exemplificamos como Upper Layer Header (em tradução livre, o cabeçalho da camada acima). Continue reading