Você está na página 1de 41

FANOR – FACULDADE NORDESTE

CURSO DE SISTEMAS DE INFORMAÇÃO

LUAN ROCHA PRATES

O DESAFIO DA SEGURANÇA EM INTERNET DAS COISAS: UMA ABORDAGEM


UTILIZANDO REDES DEFINIDAS POR SOFTWARE

FORTALEZA
2017
LUAN ROCHA PRATES

O DESAFIO DA SEGURANÇA EM INTERNET DAS COISAS: UMA ABORDAGEM


UTILIZANDO REDES DEFINIDAS POR SOFTWARE

Monografia apresentada ao curso de


Sistemas de Informação, da Fanor –
Faculdade Nordeste | DeVry Brasil, como
requisito parcial para obtenção do grau de
Bacharel em Sistemas de Informação.
Orientador: Prof. MSc Germano Fenner

FORTALEZA
2017
Dados Internacionais de Catalogação na Publicação (CIP)

Bruna de Melo Medeiro CRB3/1256

004
P925d Prates, Luan Rocha.
O desafio da segurança em internet das coisas: uma abordagem
utilizando redes definidas por software. / Luan Rocha Prates. -- 2017.
42 f.

Trabalho de Conclusão de Curso (Graduação) – Faculdade


Nordeste, 2016.
Orientador: Prof. Ms. Germano Fenner.

1. Internet. 2. Gerenciamento de segurança em internet. 3.Software.


I. Fenner, Germano. II. Título.
LUAN ROCHA PRATES

O DESAFIO DA SEGURANÇA EM INTERNET DAS COISAS: UMA


ABORDAGEM UTILIZANDO REDES DEFINIDAS POR SOFTWARE

Monografia apresentada ao curso de


Sistemas de Informação, da Fanor –
Faculdade Nordeste | DeVry Brasil, como
requisito parcial para obtenção do grau de
Bacharel em Sistemas de Informação.
Orientador: Prof. MS. Germano Fenner

Aprovada em: ____/____/_________.

______________________________________________________
Prof. Ms. Germano Fenner
Fanor - Faculdades Nordeste

______________________________________________________
Prof. Ms. Claudemirton
Fanor - Faculdades Nordeste

______________________________________________________
Prof. Ms. Anderson
Fanor - Faculdades Nordeste
A Deus.
A Internet, a o movimento open-source e
a todos que acreditam no conhecimento
colaborativo como degrau evolutivo da
humanidade.
AGRADECIMENTOS

Agradeço a: minha amada mãe Kilvia minha amada mãe, uma guerreira e a mulher
mais incrível que eu já conheci, por todo o suporte ao longo da minha jornada. Meu irmão,
por me inspirar a seu modo. Mmeus colegas, por todos os mementos de alegria e
angustia que passamos juntos durante esses anos e todo o conhecimento trocado em
nossas numerosas conversas. Aos professores por todo conhecimento transmitido, toda a
preção, cobrança nos prazos e toda a inspiração. Pois através disso me transformei em
um profissional diferenciado no mercado. Principalmente ao Germano Fenner meu
orientador e Herleson Pontes, por além de colaborarem para minha formação acadêmica
ajudarem na minha formação pessoal. A Adtalem Educacional do Brasil por todo o
suporte na aminha formação. Agradeço ae todos que conheci que de alguma forma
contribuíram para meu crescimento pessoal, acadêmico e profissional. Principalmente aos
que não acreditarão no meu sucesso, a esses só tenho a dizer que “o fracasso não é o
oposto do sucesso é o caminho para até ele”. E finalmente deixo meu agradecimento
aAos hackers, makers, todos que produzem conteúdo gratuito de qualidade e acreditam
que todo e qualquer tipo de conhecimento pertence a humanidade. Deixo aqui meu muito
obrigado a todos.
Eu acreditava, e ainda acredito na
natureza transformadora da Internet, ou
seja, a sua capacidade não só de
estimular o nascimento de novas ideias,
mas também de estimular a sua evolução
intelectual, essa é a sua marca registrada.
(Richard M. Stallman)
RESUMO

As tecnologias estão evoluindo, vivemos uma nova revolução tecnológica que já


começou. A Internet das coisas é uma grande aposta para os próximos anos. Com
ela vêm novas perspectivas de negócios e consequentemente novos mercados para
explorar. Sugerem, no entanto, novos desafios. Talvez o maior deles seja a
segurança. Juntamente com essas novas possibilidades, percebe-se um
engessamento das redes e da Internet. Os dispositivos que transmitem os dados
gerenciam sua comutação por meio físico, limitando e delegando as possibilidades
de roteamento para algoritmos embarcados pelos fabricantes. Software Defined
Networking (SDN) é um novo paradigma que nasceu como uma solução de
segurança, mas pode ser usado na rede como um todo, permitindo uma visão
global. Este trabalho se propõe a avaliar os impactos da utilização de SDN para
gerenciamento de segurança em Internet das Coisas (IoT).
ABSTRACT

Technologies are evolving, we are living a new technological revolution that has
already begun. The Internet of Things is a great bet for years to come. With it come
new business prospects and consequently new markets to explore. They suggest,
however, new challenges. Perhaps the greatest of them is security. Together with
these new possibilities, one can perceive a thickening of networks and the Internet.
The devices that transmit the data manage their physical switching, limiting and
delegating the routing possibilities to algorithms shipped by the manufacturers. SDN
is a new paradigm that was born as a security solution, but can be used in the
network as a whole, allowing a global vision. This work proposes to evaluate the
impacts of the use of SDN for security management in IoT.
LISTA DE ILUSTRAÇÕES

Figura 1 - Projeção de crescimento para os dispositivos conectados à internet ....... 17


Figura 2 - Comparação da comunicação humana com a dos dispositivos em rede.. 21
Figura 3 - Modelo OSI. .............................................................................................. 22
Figura 4 - Fases de sistemas IoT. ............................................................................. 24
Figura 5 - Representação de uma rede local. ........................................................... 27
Figura 6 - Arquitetura interna de um switch. .............................................................. 29
Figura 7 - Representação conceitual de um switch. .................................................. 29
Figura 7 - Conexões dos computadores na internet (2005). ..................................... 30
Figura 9 - Conceito de SDN. ..................................................................................... 31
Figura 10 - Smart home............................................................................................. 36
LISTA DE TABELAS

Tabela 1 – Fazes de sistemas IoT Ataques por fase nos sistemas IoT .................... 25
Tabela 2 – Ataques por fase nos sistemas IoT ......................................................... 27
Tabela 3 – Tabela de encaminhamento de um switch .............................................. 28
LISTA DE ABREVIATURAS E SIGLAS

IoT Internet das coisas


SDN Redes definidas por software
RFID Radio Frequency Identification
PCs Computadores Pessoais.
MIT Massachusetts Institute of Technology.
ISO Internation Standard Organization.
OSI Open System Interconnection.
WSC Redes de Sensores Sem Fio.
NFC Near Field Communication.
NFV Network Functions Virtualization.
DCs Centros de Dados

IrDA Associação de dados de infravermelho


SUMÁRIO

1 INTRODUÇÃO ............................................................................................. 15
1.1 MOTIVAÇÃO ...................................................................................... 15
1.1.1 Motivação de mercado ................................................................. 16
1.1.2 Motivação técnica ........................................................................... 16
1.2 DELIMITAÇÃO DO TEMA .................................................................. 18
1.3 FORMULAÇÃO DO PROBLEMA .......................................................... 18
1.4 HIPÓTESE ............................................................................................ 19
1.5 OBJETIVOS .......................................................................................... 19
1.5.1 Objetivo geral.................................................................................. 19
1.5.2 Objetivos específicos ...................................................................... 19
1.6 JUSTIFICATIVA .................................................................................... 19
1.7 ESTRUTURA DA MONOGRAFIA ......................................................... 20
2 FUNDAMENTAÇÃO TEÓRICA ................................................................... 20
2.1 FUNDAMENTOS TEÓRICOS ............................................................... 20
2.1.1 Redes ............................................................................................. 20
2.1.3 Internet das coisas – IoT ................................................................ 22
2.1.5 IoT security ..................................................................................... 27
2.1.6 Redes definidas por software ......................................................... 27
2.2 TRABALHOS RELACIONADOS ........................................................... 36
3 CENÁRIO .................................................................................................... 37
4 SOLUÇÃO PROPOSTA .............................................................................. 37
5 CONCLUSÕES E TRABALHOS FUTURO .................................................. 40
REFERÊNCIAS BIBLIOGRÁFICAS ............................................................... 40
15

1 INTRODUÇÃO

A Internet quebrou muitas barreiras conectando pessoas, empresas e


comunidades de interesses em todo o mundo. Hoje milhares de sensores geram
dados, os dados produzem conhecimento, o conhecimento ajuda na tomada de
descisões mais assertivas, influenciando diretamente o futuro de governos e
organizações.
A generalização de smartphones tem gerado uma grande aceitação e adoção
por parte de empresas, consumidores e população em geral. Hoje, vemos o elevado
crescimento no tráfego móvel em relação ao telefone fixo. Segundo Fawzi Behmann
e Kwok Wu (2015) o crescimento do ecossistema para aplicações móveis causará
um declínio gradual no crescimento de Computadores Pessoais (PCs) e o rápido fim
da vida útil dos equipamentos de área de trabalho.
Com advento da Internet das Coisas (IoT), a quantidade de dispositivos
conectados em rede crescerá de forma exponencial, e com eles as vulnerabilidades
de segurança das redes. Uma proposta interessante para solucionar este problema
é utilizarmos um novo paradigma voltado para a segurança e inteligência de rede, as
redes definidas por software ou redes programáveis (SDN).
Este trabalho aborda o tema segurança em IoT utilizando SDN como
alternativa para o problema. Segundo Araújo (2015), uma pesquisa da Ernst &
Young mostra que apenas cerca de 8,5% das organizações que participaram da
pesquisa possuem processos maduros em relação a segurança da informação. Ele
conclui que ignorar a segurança da informação nos dias de hoje, quando temos a
sociedade do conhecimento e a IoT, é praticamente um suicídio organizacional. Isso
mostra que a questão da segurança nas redes atualmente existentes ainda é um
problema não solucionado, e já caminhamos para uma nova era da internet, onde
segundo Fei Hu (2016), teremos 8 bilhões de dispositivos conectados à rede até
2020. Precisamos buscar desde já alternativas para proporcionar redes mais
seguras e resistentes aos principais tipos de ataques conhecidos.
Como MS Wangham (2006) afirma a IoT requer soluções de segurança
especificas e feitas sob medida. Devido a necessidade de melhorar a segurança
das redes e da grande quantidade de dados gerados pelos dispositivos e sensores
que compõem a IoT, essa pesquisa se justifica através da a aplicação de SDN,
como abordagem de rede contribuindo para a avaliação das vantagens do
gerenciamento programável das regras de segurança e políticas de acesso aos
dados.

1.1 MOTIVAÇÃO

Esta seção tratará das principais motivações para o desenvolvimento deste


estudo acadêmico. E será responsável por abordar qual a relevância de se tratar a
16

segurança em IoT e a adoção de SDN para o mercado, bem como as motivações


técnicas para uma abordagem utilizando essas tecnologias.
1.1.1 Motivação de mercado

Segundo estudo feito pela Empresa global de consultoria nas Indústrias de


tecnologia da informação IDC com 2300 executivos em 15 países, 48% dos
entrevistados já implantaram soluções de IoT, e 58% disseram que o IoT é
estratégico para a sua estratégia de negócio. Assim podemos afirmar que a Internet
das coisas é parte fundamenta para ampliar as estratégias de negócios. Christina
(2013) estima que o setor de tecnologias vestíveis, que consistem em dispositivos
inteligentes que são utilizados pelos usuários como peças do vestuário, os
wearables e objetos inteligentes, vai aumentar dez vezes nos próximos três anos
passando de US $ 3-5 bilhões para US $ 30-50 bilhões. Esses números parecem
bem surpreendentes, mas quando paramos para analisar a expectativa do impacto
total dessas tecnologias, vemos o verdadeiro potencial da IoT. Rifkin (2016) cita que
a Cisco estima que o impacto econômico da IoT atingirá US $ 14,4 trilhões até 2022.
De acordo com o relatório de Insights da internet industrial para 2015, feito pela
General Electric (GE) em parceria com a Accenture, mostra que fazendo a análise a
partir de uma estimativa conservadora de investimentos mundiais de US $ 500
bilhões até 2020 as previsões mais otimistas indicam que pode chegar a injetar US $
15 trilhões no PIB global até 2030.
A compra da startup focada em SDN, Nicira pela empresa de VMware, grande
empresa de virtualização. Em julho de 2012 por 1,26 Bilhões de dólares. E a adoção
de SDN para o gerenciamento e virtualização de redes em datacenters pelos
provedores de nuvem de gigantes como Amazon com o AWS e Google em sua rede
chamada B4 que já trabalha a mais de 5 anos utilizando a arquitetura
SDN/OpenFlow, OpenFlow é a implementação da especificação SDN, estudaremos
mais o OpenFlow. Bem como a fabricação e comercialização de diversos modelos
de switchs híbridos, equipamentos que tem a lógica embarcada, mas também
podem atuar com o protocolo openFlow. Todo isso indica que as redes
programáveis são uma realidade para o mercado já tendo se iniciado o processo de
adoção da tecnologia.

1.1.2 Motivação técnica

Segundo a IHS Markit, empresa fornecedora de informação e análises,


passaremos de 15,4 bilhões de dispositivos conectados em 2015 para 30,7 bilhões
em 2020 e 75,4 bilhões em 2025, conforme podemos ver na Figura 1.
17

Figura 1 - Projeção de crescimento para os dispositivos conectados à internet

Fonte: IHS – IoT platforms: enabling the Internet of Things

Assim podemos imaginar que quando tivermos 75 Bilhões de dispositivos


conectados muitos dos quais objetos pessoais de pessoas comuns produzindo
dados que nunca tivemos acesso. Como poderemos garantir a privacidade e a
segurança desses dados? Chabrindon (2014) e Weber (2010) mostram que a
privacidade é extremamente necessária para o controle deste novo ambiente
complexo. Santos (2015) ressalta que a troca de dados invisível e constante entre as
coisas e as pessoas, e entre as coisas e outras coisas, irá ocorrer de forma que os
proprietários e criadores desses dados não sejam identificados. A própria escala e
capacidade das novas tecnologias vai ampliar este problema.
A Comissão Europeia iniciou esse debate em 2012 e estabeleceu um
princípio para nortear os avanços de IoT. Declarando que considera que a
privacidade, a proteção de dados e a segurança das informações são requisitos
interessantes aos serviços de IoT. E também que a segurança das informações é
percebida como requisito básico na provisão de serviços de IoT para a indústria com
o propósito de garantir segurança para as organizações em si, como também em
benefício dos cidadãos.
Ambas representam revoluções, quebrando paradigmas cada uma em sua
área juntas e integradas com um diverso ecossistema de novas tecnologias
emergentes representam a consolidação da era pós-digital, que segundo Longo
(2015) é exatamente a realidade em vivemos hoje, onde a presença da tecnologia
digital é tão ampla e onipresente que na maioria do tempo nem notamos que ela
está lá. Só percebemos sua existência quando falta.
18

Assim entendemos que devido a rápida evolução e ampla aceitação de


mercado de ambas as tecnologias elas se complementam com SDN suprindo a
necessidade de uma infraestrutura elástica, versátil e dinâmica da IoT. E a própria
demanda de uma infraestrutura com essas características estimulando o
desenvolvimento de SDN.

1.2 DELIMITAÇÃO DO TEMA

O tema SDN representa uma quebra de paradigma. Pois permite que os


dispositivos de rede sejam transformados em software. Segundo Pujolle (2015) as
limitações das arquiteturas de rede atuais estão se tornando aparentes. Além disso
as redes atuais não fornecem agilidade e são completamente desconectadas dos
serviços. SDN oferece uma ampla gama de vantagens entre elas estão a análise
global das necessidades, configurações e políticas dinâmicas, feedback muito maior
e o conhecimento preciso do cliente e das suas aplicações e necessidades.
O surgimento da computação móvel bem como o desenvolvimento e
manutenção de novos serviços e soluções na web, aumentou o fluxo de informação
que transita pela Internet e transformou as redes em um ponto estratégico para as
organizações. Para Caraguay (2014) esses avanços aumentam o desenvolvimento
de dispositivos que registram, processam e enviam informações automaticamente
através da rede. Sendo eles principalmente sensores e atuadores que utilizam
tecnologias de redes de sensores sem fio como RFID, Bluetooth, WSN, NFC. Nesse
contexto surgiram novos conceitos e paradigmas como como a própria IoT.
Logo pode-se perceber que existe uma necessidade latente de uma rede
mais flexível, escalável e segura que disponibilize uma infraestrutura dinâmica para
o pleno desenvolvimento da IoT, viabilizando e potencializando todos os ganhos já
mencionados. Em Valéry (2015), se houver omissão na parte de segurança da
informação que venha a comprometer seriamente as informações pessoais ou
corporativas seja por ignorância ou displicência, a internet das coisas pode entravar
antes mesmo de passar pelo portão.

1.3 FORMULAÇÃO DO PROBLEMA

A computação está mudando, com todo um novo ecossistema, aplicações


móveis e inteligentes, Big Data, computação em nuvem e o conceito de computação
ubíqua que segundo Marc Weiser (2015) é quando a computação passa para outros
objetos que não tem a finalidade de computação, ele previu a mais de uma década
que os computadores seriam parte integrada dos mais diversos objetos como:
canetas, etiquetas de roupas, xícaras de café, interruptores de luz, etc. E tudo isso
funcionaria de forma transparente para os usuários. Para Semicond (2014) devido a
esse novo ecossistema de aplicações cada vez mais conectadas, as redes precisão
migrar do modelo estático para um modelo mais dinâmico e escalável. Ele mostra
19

como SDN pode oferecer soluções escaláveis e rapidamente adaptáveis para esse
horizonte de tecnologias emergentes. Portanto, buscou-se reunir dados e
informações com o propósito de responder ao seguinte problema de pesquisa: SDN
pode auxiliar para melhorar a segurança na IoT?

1.4 HIPÓTESE

Na rede global de computadores temos visto o número de dispositivos


conectados crescer de forma acelerada. Com eles a necessidade de melhorar a
segurança das redes e da grande massa de dados gerados pela IoT, nesta pesquisa
verificaremos se o problema de segurança em IoT pode ser minimizado com a
aplicação de SDN. Nesse contexto avaliaremos possibilidade da utilização desse
novo paradigma frente aos principais problemas de segurança em IoT.

1.5 OBJETIVOS

A seguir, são descritos o objetivo geral e os objetivos específicos relacionados


com esse trabalho.

1.5.1 Objetivo geral

O presente trabalho tem como objetivo geral verificar como a aplicação de


SDN pode auxiliar para melhorar a segurança de sistemas IoT, bem como os dados
gerados por ele, com a finalidade de apresentar a vantagem do gerenciamento
programável das regras de segurança e políticas de acesso aos dados. Através da
pesquisa de publicações em livros revistas científicas, sites especializados e artigos
publicados.

1.5.2 Objetivos específicos

● Descrever como funcionam a SDN e quais as suas vantagens de segurança


em relação ao paradigma atual.
● Explicar o que é a IoT e qual a necessidade de garantirmos sua segurança.
● Buscar informações cientificas sobre como SDN pode ser aplicado em IoT.
● Discutir qual a relevância de utilizar SDN nas redes de IoT.

1.6 JUSTIFICATIVA
20

Diante da extrema necessidade de se garantir no contexto de internet das


coisas os princípios básicos da segurança da informação que são autenticidade,
confidencialidade, integridade, disponibilidade, e não repúdio. É muito relevante a
utilização dos recursos de redes programáveis. Para tanto é necessária a avaliação
da real eficácia de SDN em segurança, procurando ter uma visão clara das
vantagens e desvantagens dessa abordagem.
O que impulsionou a realização desse trabalho foi entender a relevância da
aplicação de definidas por software para o contexto de segurança em IoT
apresentando conceitos, definições, estratégias e abordagens que combinam as
duas tecnologias. Para superar um dos maiores desafios dos profissionais,
estudiosos e acadêmicos. Com base nos princípios de segurança voltados para
estratégias de soluções em IoT.

1.7 ESTRUTURA DA MONOGRAFIA

No decorrer deste trabalho serão apresentados alguns conceitos,


relacionados à IoT, que serão usados para a fundamentação teórica. Pode-se citar
também os de conceitos: Redes, internet, IoT Security, SDN, OpenFlow,
controladores. Que fazem parte do ecossistema de tecnologias da nova era da
internet. Após o desenvolvimento da fundamentação teórica, pretende-se relatar os
cenários envolvidos projetados para a pesquisa. Logo em seguida, explanaremos
sobre a solução proposta e como se deu a sua aplicação. Por último, serão
demonstradas as conclusões da pesquisa e as sugestões de trabalhos futuros.

2 FUNDAMENTAÇÃO TEÓRICA

2.1 FUNDAMENTOS TEÓRICOS

2.1.1 Redes

Segundo Kurose (2013) uma rede de computadores pode ser definida como
uma conexão de dois ou mais computadores para possibilitar o compartilhamento de
recursos e informações. Hoje sabemos que as redes não se limitam a penas a
computadores, mas a uma vasta gama de dispositivos e sensores. Como Forouzan
(2013) explica, um dispositivo pode ser tanto um dispositivo de conexão como um
roteador, que ligam redes a outras redes, ou switch, que ligam os dispositivos entre
si. Como um host (ou Sistema final) podendo ser um desktop, laptop, estação de
trabalho, telefone celular ou sistema de segurança. Mendes (2015) complementa
dizendo que as redes são a forma padrão para interligar dispositivos para o
compartilhamento de recursos físicos ou lógicos.
Como Comer (2016) afirma a partir dos anos 70 as redes cresceram
explosivamente, pois as redes se transformaram em requisito essencial para a
21

nossa infraestrutura de negócios. Estando hoje em toda parte. Esse crescimento


também teve impacto econômico. As redes disponibilizaram novas formas de
comunicação tanto para as pessoas como no mundo dos negócios. Logo com o
crescente aumento da importância de disponibilidade de acesso a essas facilidades
de comunicação e acesso a informações. Kurose (2013) afirma que as redes estão
projetadas para crescer indefinidamente.

2.1.1.1 Protocolos de Rede

No início da década de 1970 surgiu uma revolução que mudou nossa


perspectiva das redes de computadores, a internet. Com ela veio a demanda por
tecnologias de comutação de pacotes que atendessem as suas necessidades. Em
1973, Vinton Cerf e Robert Kahn propuseram um conjunto de padrões para a as
tecnologias de comutação de pacotes para que conseguíssemos um funcionamento
global. O resultado foi a família de protocolos TCP/IP, o que hoje chamamos de
internetworking. Conceito extremamente poderoso que é a base para a internet de
hoje. O que torna esse conjunto de protocolos tão significativos é a sua tolerância a
heterogeneidade. Ou seja, ele não foca em detalhes como tamanho dos pacotes ou
o método usado para identificar o destino.
Kurose (2013) exemplifica os protocolos fazendo uma analogia com as boas
maneiras humanas e dá um exemplo de quando nos aproximamos de outra pessoa
e perguntamos as horas. No exemplo que ele nos dá existem mensagens
específicas que são enviadas e ações especificas que são executadas em função
das respostas recebidas, como podemos ver na figura 2.

Figura 2 - Comparação da comunicação humana com a dos dispositivos em rede

Fonte: Kurose (2013)


22

Assim podemos dizer que os protocolos definem o formato e a ordem das


informações recebidas e enviadas pelos dispositivos da rede e também as ações
que devem ser tomadas a partir do envio ou recebimento de uma mensagem.
Entre as características mais importantes da família de protocolos TCP/IP
está a capacidade de aceitar novas formas de comutação de pacotes. O que garante
que novas tecnologias podem ser implementadas sem prejuízos à rede como um
todo.
O modelo OSI foi criado no fim dos anos 70 pela ISO. Ele é um conjunto de
protocolos que permiti a comunicação entre duas maquinas diferentes, independente
das arquiteturas que elas tivessem. E seu objetivo era permitir a comunicação sem
que fossem necessárias alterações no software e no hardware dos dispositivos.
Segundo Furouzan (2009) acreditava-se que o modelo OSI se tornaria o padrão
definitivo para a comunicação de dados pois seu modelo em camadas dominava a
comunicação de dados e interconexão de redes antes de1990.

Figura 3 - Modelo OSI

Fonte: Livro Protocolo TCP/IP - 3.ed.

Porém pelos motivos já mencionados o TCP/IP se transformou na arquitetura


comercial dominante por que foi usado e testado exaustivamente através da
Internet.

2.1.3 Internet das coisas – IoT

O conceito de Internet das coisas foi proposto em 1999 pelo laboratório de


Auto-ID Massachusetts Institute of Technology (MIT). A IoT pode ser definida como
23

"dados de dispositivos continuamente disponíveis através da Internet. "A interligação


das coisas (objetos) que podem ser tratadas de forma inequívoca e redes
heterogéneas constituem a Internet das coisas. A IoT já é considerada uma
realidade. Jeremy Rifkin (2016) cita que em 2007 havia milhões de sensores
conectados a todo tipo de dispositivos humanos ligados a IoT. Em 2013 já
ultrapassavam s 3,5 Bilhões e em 2030 estima-se 100 Trilhões. Essa grande
quantidade de novas coisas conectadas a rede, que precisa ser mais dinâmica,
segura e elástica, como Carlos Cesar Santos afirma em seu artigo, The challenge of
privacy on the IoT. Para atender as necessidades e requisitos dos sistemas a cada
dia mais, conectados, robustos, inteligentes e complexos. Sensores e dispositivos
conectados, Machine to Machine (M2M), máquinas se comunicam com máquinas
sem que precisemos interagir com elas para o seu funcionamento.

A Internet das coisas irá conectar todas as coisas com todo o mundo numa rede
global integrada. Pessoas, máquinas, recursos naturais, linhas de produção hábitos de
consumo, fluxos de reciclagem e praticamente todo e qualquer aspecto da vida econômica e
social estará conectado via sensores e software à plataforma da IoT, alimentando
continuamente cada nó - empresas, lares, veículos - com Big Data, minuto a minuto, em
tempo real.

(Rifkin, 2014)

O fato de um número tão grande de dispositivos todos conectados e


interagindo entre si, de forma autônoma, produzindo terabytes de informação traz à
tona um grande desafio, como podemos mitigar as ameaças e vulnerabilidades e
garantir a segurança dentro de um ambiente tão dinâmico heterogêneo?
Nesse Trabalho vamos avaliar se SDN pode ajudar a responder essa grande
questão. Segurança em IoT é um grande desafio pois, na rede como ela é hoje
ainda não conseguimos garantir os requisitos mínimos de confidencialidade,
autenticidade, disponibilidade, integridade e não repudio. Com a IoT se tornando
uma realidade cada vez mais tangível, a complexidade das soluções de segurança
tende a escalar.
Como Hu (2016) afirma, a Internet das coisas também vê tudo como coisas,
nem mesmo diferencia entre humanos e máquinas. Assim coisas podem ser:
usuários finais, centros de dados (DCs), unidades de processamento, smartphones,
tablets, Bluetooth, ZigBee, a associação de dados de infravermelho (IrDA), ultra-
wideband (UWB), redes celulares, redes Wi-Fi, Near Field Communication (NFC)
DCs, Radio-Frequency IDentification (RFID) e suas tags, sensores e chips,
equipamentos domésticos, relógios de pulso, veículos e portas das casas; Em outras
palavras, a IoT combina "físico e virtual" em qualquer lugar e a qualquer momento,
atraindo a atenção de ambos "maker e hacker." Inevitavelmente, deixando
dispositivos sem intervenção humana por um longo período pode levar ao roubo.
Internet das coisas incorpora muitas coisas como essas. Proteção era um grande
24

problema quando apenas dois dispositivos foram acoplados. Proteção para o


Internet das coisas seria inimaginavelmente complexa.

Como tudo estará conectado em uma rede pessoal que chamamos de


Personal Area Network (PAN) como explica Pereira (2011). Para enfrentarmos
tamanho desafio podemos utilizar SDN para melhorar a eficácia no quesito
segurança. Com esse novo paradigma de rede temos mais liberdade para
implementar uma solução programável. Como Tadinada (2014) mostra em seu
artigo, Redes Definidas por Software: redefinindo o futuro da Internet e da Internet
das Coisas na era da Computação em Nuvem. SDN pode ser aproveitado para
fornecer soluções escaláveis nesta paisagem diversificada e em rápida mudança
emergente. Em IoT, SDN pode ser efetivamente usado para abordar os desafios
enfrentados pela da natureza dinâmica das redes.
Assim sendo, quando pensamos em soluções para garantir a segurança
dessas redes complexas e heterogêneas, compostas por bilhões de dispositivos,
com características e funções diferentes, SDN se mostra uma solução a altura do
desafio. Pois nos proporciona grade liberdade no gerenciamento da rede, além de
ter nascido a partir de conceitos de segurança de rede.

A IoT é uma revolução que tem grandes impactos na infraestrutura de TI e de rede.


Como ela na última década, a virtualização de rede é, simultaneamente, no seu caminho com
rede para virtualização de funções de rede (NFV) e Redes Definidas por Software (SDN).
NFV e SDN são abordagens aumentam a agilidade da infraestrutura, assim, facilitando a
concepção, fornecimento e operação de serviços de rede de uma forma dinâmica e escalável.
Internet das coisas vai empurrar a infraestrutura para o seu limite com os numerosos e
diversos requisitos para cumprir, nós, portanto, acreditam que a agilidade trazida pela
combinação de NFV e SDN é essencial para enfrentar a revolução da Internet das coisas.

(Nathalie Omnes, 2015).

Segurança é fundamental hoje, mas para uma rede ubíqua, neural, global,
autônoma, inteligente, dinâmica e hiper-conectada é tão indispensável quanto
complexa. SDN nos fornece uma boa alternativa para essa questão tão importante,
segurança para IoT. Devemos estar preparados para os grandes desafios que estão
por vir a partir de todo um novo ecossistema de aplicações e tecnologias
convergindo para web, para que posamos garantir a Internet do Futuro.
2.1.3.1 Etapas dos sistemas IoT

A Internet das coisas tem cinco fases, que vão desde a coleta de dados até a
entrega de dados ao usuário como mostrado na Figura 4.
25

Figura 4 - Fases de sistemas IoT

Fonte: Elaborado pelo autor


Tabela 1 - Fazes de sistemas IoT

Fases Descrição
I: Coleta de dados Podemos usar como exemplo um sistema de
rastreamento de veículos, onde o passo mais
importante é coletar os dados dos dispositivos. Com
base nas características do dispositivo, são utilizados
diferentes tipos de coletores de dados. O dispositivo
pode ser um estático, que sempre retorna a mesma
informação (sensores corporais ou etiquetas RFID)
ou um transmissor dinâmico, que varia a informação
transmitida de acordo com a leitura do ambiente
(sensores e chips).
II: Armazenamento Os dados coletados na fase I devem ser
armazenados. Se o dispositivo tiver a sua memória
interna, os dados podem ser armazenados
localmente. Como geralmente, os componentes da
IoT são instalados com baixa memória e baixa
capacidades de processamento. A nuvem pode
assumir a responsabilidade de armazenar os dados.
III: O processamento Na IoT os dados armazenados são analisados em
inteligente data centers (DCs) em nuvem que fornecem serviços
inteligentes para o trabalho em tempo real. Eles
analisam e respondem a requisições e consultas,
além de gerenciar os dispositivos. Para o serviço em
cloud não existe diferença entre uma porta e um bot
(diminutivo de robot). A IoT oferece serviços de
processamento e controle inteligente de todas as
coisas igualmente.
IV: transmissão dos dados A transmissão de dados acontece durante todo o
processo. Os dados transmitidos podem vir de
sensores, etiquetas RFID, ou chips para DCs. De
DCS para unidades de processamento ou partir de
processadores para controladores, dispositivos ou
usuários finais.
IV: transmissão dos dados Entrega imediata dos dados processados para os
dispositivos, sem erros ou alterações é uma tarefa
difícil que nunca deve deixar de ser realizada.
26

2.1.3.2 Desafios em IoT

Segundo Antunes (2016) a IoT apresenta muitos desafios, ele destaca entre
eles a autonomia e o gerenciamento da heterogeneidade dos dispositivos que fazem
parte da rede. Butler (2016) cita alguns desafios para IoT em seu artigo publicado
na CEO em junho, entre eles estão:
• Segurança: Com tantos dispositivos conectados aumentam
consideravelmente as chances de ataques. Em qualquer lugar, dispositivos
poderiam ser infectados para serem usados maliciosamente ou ter seus dados
roubados para espionagem industrial. Stephen (2016), investidor anjo, diz que
a segurança é o Velho Oeste em IoT. Existe um debate sobre normas que
devemos desenvolver em várias camadas da pilha de desafios que vai da
infraestrutura passando pelos aplicativos até a conectividade.

• Fragmentação do mercado: A IoT é construída em várias camadas:


uma camada de conectividade para dispositivos permitindo a comunicação e
transferência de dados; uma camada de infraestrutura para o gerenciamento
de dispositivos; uma camada de aplicativos para análise das informações.
Estas camadas usam vários componentes como: sensores, equipamentos de
rede, servidores, aplicativos, etc. A boa notícia, de acordo com Kaplan (2016),
toda a tecnologia necessária já existe... O problema fundamental é como
aplicá-la em cenários no mundo real. É um mercado fragmentado com
componentes parciais disponíveis a partir de diferentes fornecedores, mas
pode ser uma prática confusa e difícil compilar as peças necessárias.

• Dados: Internet das coisas pode criar uma infinidade de dados em


streaming a partir dos dispositivos conectados. Os dados precisam ser
coletados, analisados e armazenados. Um primeiro passo para a
implementação da Internet das coisas é implantar dispositivos, em seguida,
devemos analisar os dados.

Santos (2015), assim com Walls (2015) em artigo publicado na Gartner,


destacam privacidade e segurança como os principais desafios em IoT Podemos
27

perceber que em várias publicações a segurança sempre aparece como fator crítico
no contexto de IoT.

2.1.5 IoT security

Segundo Jeyanthi (2016). Por volta do ano 2020, com IPv6 e da rede de 5G,
milhões de dispositivos heterogêneos faram a IoT. Privacidade e segurança vão ser
os principais fatores de preocupação nesse momento. A IoT pode ser vista em
diferentes perspectivas e dimensões, em diferentes contextos, da academia e da
indústria; seja qual for o ponto de vista, a IoT ainda não atingiu a maturidade e é
vulnerável a todos os tipos de ameaças e ataques. Os sistemas de prevenção ou
recuperação utilizados na rede tradicional de Internet não pode ser utilizado na IoT
devido à sua conectividade.
Na IoT a única coisa que é constante é a mudança, assim a evolução das
ameaças causou um aumento das medidas de segurança que devemos levar em
consideração. Analisaremos os problemas em três dimensões, pela perspectiva da
fase, da arquitetura e decomponentes mostram os tipos possíveis de ataques nestes
três pontos de vista, representando assim, a IoT como a Interligação de ameaças.
Ataques por fase, demonstra a variedade de ataques contra as cinco fases
dos sistemas de IoT:
Tabela 2- Ataques por fase nos sistemas IoT

Ataques por fase nos sistemas IoT


Coleta de dados • Vazamento de dados, Soberania de dados;
• Violação de dados, Autenticação de dados;
• Ataque à disponibilidade, controle de acesso,
Armazenamento integridade;
• Negação de serviço, representação, modificação de
dados sensíveis;
Processamento • Ataque à autenticação
Inteligente
Transmissão • Segurança de canal, seqüestro de sessão
dos dados • Protocolos de roteamento, inundação
Entrega • Homem ou máquina;
• Maker ou hacker.

2.1.6 Redes definidas por software

Em uma rede utilizando um modelo atual, usaremos aqui uma rede local
como exemplo, mas o mesmo contexto se aplica a um contexto de roteamento.
Tenhamos uma rede em uma empresa fictícia, nessa rede ligamos cinco switchs e
alguns hosts como mostrado na figura.
28

Figura 5 -Representação
Representação de uma rede local

Fonte: Desenvolvido pelo autor

Vejamos então o que podemos fazer com esses switch’s, da perspectiva de


desenvolvimento, dentro dessa rede. Para isso vamos entender como o switch
sw
funciona. Como Kurose (2013)
(2013) explica em cada switch existe uma tabela de
encaminhamento que armazena o endereço MAC dos Hosts conectados a ele, bem
como a respectiva porta de saída para esse Host.

Tabela 3 - Tabela de encaminhamento de um switch.


switch

Endereço Porta

MACA 15

MACB 2

MACC 13

MACD 8

Fonte: Desenvolvido pelo autor

Existe uma diferencia ente o encaminhamento e o roteamento dos pacotes de


uma rede, o roteamento envolve o planejamento da rota que o pacote deve seguir e
utiliza os algoritmos que garantem o menor esforço. Já o encaminhamento é apenas
o repasse do pacote. No exemplo da figura a cima MACA para MACD, o pacote
entra pela porta 1, a tabela é consultada e verificamos que MACD está na porta 13,
então o pacote é encaminhado pela porta 13.
Nós, em quanto pesquisadores, não temos como mudar esse
comportamento, pois toda a lógica de roteamento está implementada fisicamente. E
29

organizado conceitualmente em dois planos, o de dados e o de controle. O plano de


dados é o caminho de cada pacote, o pacote chega a tabela de encaminhamento é
consultada e atualizada e o pacote sai. O plano de controle é tudo que acontece “por
traz”, as atualizações na tabela de encaminhamento e a manutenção das
estatísticas. Por exemplo a lógica da interface web embarcada no switch, a
programação de VLAN que pode existir ou serviços como firewall.
Vamos analisar a estrutura do switch hp procurve 2824, ele possui um grande
espaço vazio para se encaixar melhor no hack porém segundo o manual do
fabricante a parte logica está implementada na placa.

Figura 6 - Arquitetura interna de um switch

Fonte: desenvolvido polo autor com fontes da Internet.

Do lado esquerdo em vermelho temos a área de power supply parte que é


responsável pela alimentação e consumo de energia. Do lado direito é a área do
processador e ao centro a maior área em laranja é o switch fabric o hardware que
faz o chaveamento propriamente dito. A grande questão é que não podemos fazer
qualquer alteração no switch fabric, essa implementação física é que causa o
engessamento da rede.
30

Figura 7 - Representação conceitual de um switch

Fonte: Desenvolvido pelo autor.

Temos então que a maior parte do dispositivo analisado é composta por um


hardware especializado, um sistema operacional rodando no processador, pode ser
uma distribuição Linux ou o Cisco OS, e por fim as aplicações que citamos no plano
de controle. Nesse modelo muitas funções complexas estão embutidas na
infraestrutura, segundo Guedes (2014) essa é uma arquitetura fechada, sem
facilidade para inserção de novas funcionalidades, calcificada. Se quisermos fazer
pesquisas sobre como a rede funciona, estamos limitados a pesquisar o protocolo
Ethernet ou IP, mexer no comportamento da rede a baixo disso é muito difícil nesse
paradigma.
A mesma estrutura que estudamos nesse switch é encontrada nos roteadores
de núcleo de rede que implementam o mesmo paradigma. A figura 6 é uma
visualização gráfica de várias rotas em uma porção da Internet mostrando a
escalabilidade da rede Criada por Matt Britt em 2005 usando dados do mapeamento
da internet.
Figura 8 - Conexões dos computadores na internet (2005)
31

Fonte: Matt Britt

Segundo David Anderson (2014), há há um sentimento crescente entre muitos


pesquisadores da Internet de que o Internet Protocol (IP) e a infraestrutura de
roteamento IP se tornaram
aram calcificados em virtude de seu enorme sucesso. A
internet se tornou tão grande e importante que fazer pesquisa na rede se tornou
inaceitável devido à presença de aplicações críticas rodando na web. Os roteadores
e switchs
witchs em sua maioria são maquinas fechadas, com sistemas de roteamento
embarcados, ou seja, a partir daí não temos como alterar o funcionamento da
internet. Hoje, as pesquisas que alteram o comportamento da rede, são feitas em
nível de aplicação, um exemplo
exemp são as redes peer-to-peer (P2P).
Como alternativa a esse problema foi proposto o conceito de SDN, que é uma
nova forma de olhar para a infraestrutura da rede. Assim o núcleo da rede volta a ter
recursos de programação, podemos então programar o roteador
roteador para mudar a forma
com que ele vai trabalhar. Segundo a revista NetworkWorld Magazine, os
pesquisadores dizem que ponto não é que a Internet
nternet está quebrada,
quebrada ela apenas se
tornou engessada diante de novas ameaças de segurança.
32

Segundo Nadeau (2013), a proposta de SDN é separar as partes de


encaminhamento e roteamento dos dispositivos. Ao invés de termos um SO para
cada dispositivo. Temos um hardware simplificado e um SO de rede para
gerenciarmos as rotas dos pacotes em nível lógico. Ele explica ainda, que apesar da
figura 7 mostrar a parte logica como apenas um componente, nada impede que esse
ponto gerenciamento da rede seja distribuído.
Assim qualquer aplicação agora roda diretamente na rede, desde a parte de
controle de acesso, balanceamento de carga para sistemas de servidores web
replicados, roteamento inteligente que considera os vários links em qualquer
momento dependendo da banda, qualidade de serviço diferenciada tudo isso ao
invés de rodar em cada dispositivo roda em um sistema operacional de rede.
Figura 9 - Conceito de SDN

Fonte: Desenvolvido pelo autor

Com isso ganhamos uma visão global a partir do sistema operacional da


rede, assim qualquer aplicação pode olhar para o grafo da rede e entender
exatamente como a rede está montada podendo tomar uma decisão global.
Diferente de hoje é isso é feito em cada dispositivo. Isso traz muito mais flexibilidade
e facilidade para criar novas funcionalidades.
A Open Networking Foundation (ONF) define a arquitetura SDN nos
seguintes princípios básicos:
• Diretamente programáveis: controle de rede é programável diretamente
porque ele é desacoplado das funções de encaminhamento.
• Ágil: Abstraindo controle a partir do encaminhamento, permite aos
administradores ajustar dinamicamente o fluxo de tráfego em toda a
rede para atender às necessidades em constante mudança.
33

• Centralmente controlado: a inteligência de rede é logicamente


centralizada em controladores SDN baseados em software que
mantêm uma visão global da rede, que aparece para as aplicações e
mecanismos de política como um interruptor simples, lógico.
• Programaticamente configurado: SDN permite que os gerentes de rede
configurar, gerenciar, proteger e otimizar os recursos de rede muito
rapidamente via, programas SDN automatizados dinâmicas, que eles
podem escrever-se porque os programas não dependem de software
proprietário.
• Baseadas em padrões abertos: Quando implementado por meio de
padrões abertos, SDN simplifica o design de rede e operação porque
as instruções são fornecidas pelos controladores de SDN em vez de
vários dispositivos, específicos do fornecedor e protocolos.

2.1.6.1 Controladores SDN

Como a proposta de SDN é programar a rede via software poderíamos usar


uma interface de programação para controlar cada switch individualmente. Porém
essa abordagem traz problemas parecidos com os de desenvolvimento de software
vinculado a um dispositivo de hardware. Que são: lidar com tarefas de baixo nível,
dependência do software ao hardware, a atualização ou substituição do hardware
implica na necessidade de atualizações no software.
Esse foi o motivo para a arquitetura ter sido pensada dessa forma, separando
o plano de dados do plano de controle. Fornecendo uma abstração de alto nível para
o desenvolvedor. Guedes (2014) menciona que esse elemento define a natureza de
uma rede definida por software. Ele é o controlador, que funciona como um sistema
operacional para a rede: fornecendo diretamente o controle aos dispositivos da rede,
provendo uma interface mais amigável e eficiente e abstraindo os detalhes de cada
componente.
Casado (2010) cita que o controlador de rede também pode ser chamando de
sistema operacional de rede, ou, ainda, hypervisor da rede (em referência ao
conceito vindo da área de sistemas virtualizados) podendo assim, concentrar a
comunicação com todos os elementos programáveis que compõem a rede e
oferecer uma visão unificada do estado da rede. O que é um dos pontos fortes de
SDN, pois com ele é possível fazermos análises completas e tomar decisões sobre
como o sistema todo deve operar. Essa percepção global simplifica a identificação
dos problemas e facilita a tomada de decisão.
Listaremos aqui os principais controladores SDN que existem atualmente
segundo Guedes (2014):
34

• NOX – é o primeiro controlador, considerado como original OpenFlow.


Tem como principal função o desenvolvimento de controladores
eficientes em C++. Ele opera sobre o conceito de fluxos de dados.
• Trema – é uma implementação OpenFlow para desenvolvimento de
controladores que usa as linguagens de programação Ruby e C. O
escopo de Trema é ajudar os desenvolvedores a desenvolver seus
próprios controladores OpenFlow mais facilmente. Não tem com o
objetivo fornecer uma implementação específica de um controlador
OpenFlow.
• Maestro – é uma plataforma altamente escalável de controladores
para switches OpenFlow em Java. Cai (2010).
• Beacon – é outro controlador baseado em Java que suporta tanto a
operação baseada em eventos quanto em threads.
• FML – A linguagem FML (Flow Management Language) é uma
linguagem declarativa de alto nível que permite especificar políticas de
gerência e segurança em redes OpenFlow. FML foi desenvolvida para
substituir os mecanismos tradicionais de configuração de redes para
reforçar as políticas dentro das redes de empresas Hinrichs (2009).
• Frenetic – Foster (2010) ressalta que o Frenetic é um sistema com
base em linguagem funcional desenvolvido para programar redes, foi
implementado sobre NOX, em Python, e visa resolver problemas de
programação com o OpenFlow/NOX.
• Onix – é um controlador desenvolvido em parceria pela Nicira, Google
e NEC, com o objetivo de permitir o controle de redes de grandes
dimensões de forma confiável Koponen (2010). Para garantir a
escalabilidade e confiabilidade do sistema, Onix provê abstrações para
particionar e distribuir o estado da rede em múltiplos controladores
distribuídos, endereçando as questões de escalabilidade e tolerância a
falha que surgem quando um controlador centralizado é utilizado.
• Click - O roteador modular Click é um projeto que expressou o objetivo
de permitir que equipamentos de rede fossem programáveis bem antes
do advento de redes definidas por software. Sendo considerado um
dos projetos que influenciaram a definição de OpenFlow.
35

• Floodlight – é um controlador OpenFlow para redes corporativas


baseado totalmente na linguagem Java e distribuído segundo a licença
Apache. O projeto se originou do controlador Beacon e agora é
apoiado por uma comunidade de desenvolvedores e também pela Big
Switch Networks, start-up que produz controladores comerciais que
suportam o Floodlight.
• SNAC - Simple Network Access Control (SNAC) [sna 2012] é um
controlador OpenFlow no qual se utiliza uma interface web para
monitorar a rede.
• NEC Programmable Flow – Produto comercial, a família NEC
Programmable Flow provê tanto componentes de software como
hardware. O software, é o ProgrammableFlow Management Console,
que uma ferramenta para monitoramento que fornece um ponto de
controle centralizado. O hardware, é o controlador Programmable-
FlowController que permite virtualização em nível de rede e é útil, por
exemplo, para data center pois permite monitorar e controlar redes com
vários níveis de gerência.
• Mininet – Não é um controlador propriamente dito, e sim uma
ferramenta de simulação de Redes Definidas por Software. É um
sistema que permite a rápida prototipação de grandes redes utilizando
apenas um computador. Mininet cria Redes Definidas por Software
escaláveis utilizando premissas de virtualização do Sistema
Operacional, como processos e namespaces de rede. Com essa
premissa, ele permite rapidamente criar, interagir e customizar
protótipos de Redes Definidas por Software.

2.1.6.2 OpenFlow

Segundo a ONF OpenFlow é a primeira interface de comunicação padrão


definido entre o controle e encaminhamento de camadas em uma arquitetura SDN.
OpenFlow permite acesso direto a e manipulação do plano de encaminhamento de
dispositivos de rede, como switches e roteadores, tanto físicos quanto virtuais.
Ou seja, é uma tecnologia baseada em SDN que trata a alta largura de
banda, a natureza dinâmica de aplicações de hoje, adaptar a rede a constante
mudança necessidades do negócio, e reduzir significativamente as operações e a
36

complexidade do gerenciamento. Surgiu a partir de um grupo de pesquisa da


Universidade de Stanford.
Como comentamos a sessão anterior em SDN o hardware dos
dispositivos é simplificado, esse hardware simplificado é o que Pfaff (2011) chama
de Switch OpenFlow, ele deixa claro que apesar de chamar de Switch ele é um
elemento da comutação ou seja pode acabar operando como roteador, como switch
ou até como um gateway implementando funcionalidades mais complexas.

2.2 TRABALHOS RELACIONADOS

SDN arquitetura baseada em Internet das coisas e Melhoria da segurança,


publicado na Conferência Internacional IEEE 29 em 2015. Escrito por Olivier
Flauzac, Carlos González e Abdelhak Hachani. O trabalho apresenta uma nova
arquitetura baseada em SDN para a rede com ou sem infraestrutura, que eles
chamam de um domínio SDN. Um único domínio inclui rede com fio, rede sem fio e
redes ad-hoc. Em seguida, eles propõem uma segunda arquitetura para incluir redes
de sensores em uma rede baseada em SDN e em um domínio. Em terceiro lugar,
eles interligam vários domínios e descrevem como podem reforçar a segurança de
cada domínio e como distribuir as regras de segurança a fim de não comprometer a
segurança de um domínio. E por fim apresentam uma nova arquitetura segura e
distribuída para a IoT.
Internet das coisas: Evolução para uma sociedade hiper-conectada, publicado
na conferencia asiática da IEEE em 2014, escrito por Alex Jinsung Choi. O artigo
ressalta a expressiva massa de dados que coletamos e temos que analisar em uma
sociedade hiper-conectada, mostrando as diversas aplicações em IoT e apontando
para uma solução de infraestrutura para a questão de segurança.
A rede e infraestrutura de TI programável e virtualizado para a Internet das
coisas: Como podem NFV & SDN ajudar a enfrentar os próximos desafios, publicado
em 2015 na Conferência Internacional de Inteligência em Redes de Nova Geração.
Escrito por Nathalie Omnes, Marc Bouillon e Gael Fromentoux. Eles destacam que
IoT vai empurrar a infraestrutura para o seu limite com os diversos e numerosos
requisitos para cumprir. Eles acreditam que a agilidade trazida pela combinação de
Network Functions Virtualization (NFV) e SDN é essencial para enfrentar a revolução
da Internet das coisas. Primeiro eles destacam alguns desafios de IoT que a
infraestrutura de rede e de TI terão de enfrentar. Os benefícios NFV e SDN são
apresentados a partir de um ponto de vista do operador de rede. Depois eles fazem
uma descrição do ecossistema da IoT e proporem uma nova arquitetura
multicamadas envolvendo SDN e NFV por fim o artigo mostra como a arquitetura
proposta é capaz de lidar com os desafios identificados.
O artigo SDN: Redefinindo o Futuro da Internet em IoT na era da nuvem.
Publicado em 2014 na conferência internacional sobre o futuro da IoT e Cloud.
Descreve como a tecnologia SDN pode ser aproveitada para fornecer soluções
escaláveis nesse cenário emergente de mudanças rápidas. Podendo ser utilizado
37

em contextos em que há uma necessidade de programação dinâmica para tornar as


redes mais ágeis, mais inteligentes e mais rápidas.

3 CENÁRIO

O cenário abordado é o controle de cesso em uma rede pessoal com


múltiplos dispositivos em uma residência. Onde adicionaremos um controlador como
um componente interno para a rede visando atender os requisitos de segurança.
Para isso iremos considerar a rede doméstica com uma estrutura tradicional, com
um roteador ligado ao provedor de internet para prover acesso à rede para os
dispositivos locais. O elemento de IoT que vamos considerar nesse cenário é a
diversidade de dispositivos. Separamos o plano de controle do plano de dados, para
garantir a escalabilidade da rede e permitir a implementação de outros serviços na
rede local. O desenvolvimento do cenário será feito utilizando o simulador MININET,
o qual permite a implementação da rede proposta baseada em SDN/OpenFlow.
Figura 10 - Smart Home

Fonte: Blog Juliette Kayyem

4 SOLUÇÃO PROPOSTA

Para implementação usaremos o POX, pois a sua sintaxe é bem intuitiva e


simples. Para criar um componente é só criar um arquivo que contenha o método
launch e registre uma função para os eventos cadastrados. Como podemos ver no
exemplo adaptado do site SDN Hub, o trecho de código a seguir cria um switch
ethernet comum com aprendizado. Quando um pacote passa pelo switch, ele
armazena a origem do pacote e mapeia o endereço ethernet dele para a porta de
onde ele veio. A depois, verificamos se o destino é conhecido, para que o pacote
seja encaminhado pela porta correta, ou enviamos o pacote por todas as portas para
que ele chegue ao destino.
38

1 from pox.core import core


2 from pox.openflow.libopenflow_01 import *
3
4 log = core.getLogger()
5
6 macToPort = {}
7
8 def flood(event):
9 msg = ofp_packet_out()
10 msg.actions.append(ofp_action_output(port = OFPP_FLOOD))
11 msg.buffer_id = event.ofp.buffer_id
12 msg.in_port = event.port
13 event.connection.send(msg)
14
15 def installFlow(packet,event):
16 msg = ofp_flow_mod()
17 msg.match.dl_dst = packet.dst
18 msg.match.dl_src = packet.src
19 msg.buffer_id = event.ofp.buffer_id
20 msg.actions.append(ofp_action_output(port = macToPort[packet.dst]))
21 event.connection.send(msg)
22
23 def handle_PacketIn (event):
24 packet = event.parse()
25
26 if packet.dst.isMulticast():
27 flood(event)
28 return
29
30 if packet.src not in macToPort:
39

31 macToPort[packet.src] = event.port
32 log.info("Aprendeu localizacao de %s",packet.src)
33
34 if packet.dst not in macToPort:
35 log.info("Fazendo flood do pacote de %s para %s",packet.src,packet.dst)
36 flood(event)
37 else:
38 installFlow(packet,event)
39 log.info("Instalando fluxo de %s para %s",packet.src,packet.dst)
40
41 def launch ():
42 core.openflow.addListenerByName("PacketIn", handle_PacketIn)

Aqui comentaremos o código a cima linha a linha. Com o padrão número da


linha, descrição do que estamos fazendo.
1 e 2, importamos as bibliotecas core do POX. 4, inicializamos a variável log.
6, inicializamos a variável que contém o dicionário de tradução de endereço MAC
para porta do switch. É importante ressaltar que esse exemplo não cria instâncias
para diferentes switches, assim, não pode ser aplicado para um ambiente com mais
de um switch OpenFlow conectado ao controlador. 8-13, criamos uma mensagem
OpenFlow para enviar o pacote para todas as portas do switch. 15-21, definimos
uma sub-rotina installFlow. Essa sub-rotina cria um fluxo na tabela do switch
OpenFlow para que todos os pacotes a partir do registrado com o buer_id
correspondente que sigam o mesmo fluxo sejam encaminhados pela mesma porta
do switch. Nesse caso apenas definimos como critérios de validação do fluxo os
endereços de origem e destino do cabeçalho ethernet, mas poderíamos definir
diversos outros campos. 23-39, definimos uma sub-rotina handle_PacketIn, que foi
criada como uma sub-rotina que executa a lógica do switch e que vai ser chamada
sempre que o evento de PacketIn for executado pelo POX, ou seja, sempre que um
pacote for encaminhado ao controlador e não entra em nenhum fluxo do switch
OpenFlow.
Nosso switch apenas realiza o comportamento esperado de um switch
ethernet convencional, encaminhado multicasts para todas as portas, validando se já
contém o mapeamento do endereço da origem do pacote e armazenando-o caso
não contenha, validando se contém o endereço do destino, instalando o fluxo caso
conheça e enviando o pacote para todas as portas caso contrário. 41-42, criamos a
função launch, que será executada assim que o módulo é chamado pelo POX. No
caso, ele apenas registra que a função handle_PacketIn deverá ser chamada
sempre que o evento PacketIn for levantado.
40

5 CONCLUSÕES E TRABALHOS FUTURO

Apesar de ser uma tecnologia emergente SDN ainda está evoluindo. Essa
evolução segue muito forte na área de virtualização de servidores muito apoiada
pelas tecnologias NFV. A crescente demanda por redes mais flexíveis, robustas e
seguras vai impulsionar a adução da tecnologia. O crescimento do número de
dispositivos conectados à rede e a percepção das vulnerabilidades existentes pelos
usuários de massas também será um fator determinante.
Nesse trabalho mostramos que é possível usar SDN para controlar o fluxo de
acesso dos dispositivos sejam maquinas comuns, smartphones ou dispositivos IoT.
Tivemos sucesso na exploração e explicação dos dois paradigmas e de como SDN
pode ser a solução para alguns problemas em IoT. Atingido assim os objetivos
traçados no início desse trabalho.
Os próximos passos são criação de um ambiente virtualizado em cloud para
teste de negação de serviço. E a implementação da solução de software que irá
tratar o fluxo das requisições.

REFERÊNCIAS BIBLIOGRÁFICAS

ANDRÉ LEMOS, A comunicação das coisas. Internet das Coisas e Teoria Ator-
Rede. Etiquetas de radiofrequência em uniformes escolares na Bahia.
Apresentado no SimSocial, 2012. Salvador, Bahia, outubro.
KERLEY, CHRISTINA. Smart revolution, 2013.
FAWZI BEHMANN E KWOK WU, Collaborative Internet of Things (C-IoT): for
Future Smart Connected Life and Business, John Wiley & Sons, 23 de abr de
2015
VINTON CERF E ROBERT KAHN. A brief history of the Internet. 2009
GE AND ACCENTURE. Industrial internet insights report for 2015, 2015.
VERMESAN, OVIDIU E FRIESS, PETER. From Research and Innovation to
Internet of Things – Market Deployment, p. 1-40, 2015.
HU, FEI E N. JEYANTHI. Security and Privacy in Internet of Things (IoTs), p. 1-
35, 2016
NITESH DHANJANI, Abusing the Internet of Things. O’Reilly
LOUKIDES, MIKE E BRUNER JON. What Is the Internet of Things? p. 1-26, 2015.
41

SANTOS, CARLOS CESAR E SALES, J. D. DE ARAÚJO. O Desafio da


Privacidade na Internet das Coisas, Publicado na Revista Gestão.Org, v. 13,
Edição Especial, 2015. p. 282-290.
Livros no Google Play
ARAÚJO, VICTOR M. Segurança da Informação. Clube de Autores, 17 de nov de
2015.
RIFKIN, JEREMY. Sociedade com custo marginal zero. p. 25-30, 93-100, 2016.
TEIXEIRA, FERNANDO. WONG, HAO CHI. PEREIRA, FERNANDO. NOGUEIRA, J
MARCOS. VIEIRA, GUSTAVO. Siot – Defendendo a Internet das Coisas contra
Exploits. Publicado no 32° Simpósio Brasileiro de Redes de Computadores e
Sistemas Distribuídos – SBRC, 2014.
MS WANGHAM, Segurança em Serviços Web, SBSeg 2006.
FAROOQ. WASEEM, MUHAMMAD. KHAIRI ANJUM. A Critical Analysis on the
Security Concerns of Internet of Things (IoT), International Journal of Computer
Applications, Volume 111 - No. 7, February 2015.
LONGO, WALTER. Marketing e comunicação na era pós-digital: As regras
mudaram, Casa Educação - 26 de nov de 2015.
EMILIO TISSATO NAKAMURA, PAULO LÍCIO DE GEUS Segurança de Redes em
Ambientes Cooperativos, Novatec Editora, 24 de ago de 2007.
JANTILA, SAKSIT E CHAIPAH, KORNCHAWAL. A Security Analysis of a Hybrid
Mechanism to Defend DDoS Attacks in SDN, 2016 International Electrical
Engineering Congress, iEECON, March 2016.
ROSS, KEITH W. E KUROSE, JIM. Redes de Computadores e a Internet - Uma
abordagem Top-Down - 6ª Ed. 2013. Pearson Education
RAJKUMAR BUYYA, AMIR VAHID DASTJERDI Internet of Things: Principles and
Paradigms, Elsevier, 11 de mai de 2016.
DOUGLAS E. COMER, Redes de Computadores e Internet - 6.ed. Bookman
Editora, 1 de mai de 2016.
DOUGLAS ROCHA MENDES, Redes de computadores - 2ª Edição: Teoria e
prática, Novatec Editora, 19 de nov de 2015.
LOWE, DOUG, Redes de Computadores Para Leigos - 9ª Edição. Alta Books
Editora, 16 de out de 2012.
BEHROUZ A. FOROUZAN, FIROUZ MOSHARRAF, Redes de Computadores:
Uma Abordagem Top-Down, AMGH Editora, 1 de jan de 2013.
BEHROUZ A. FOROUZAN, SOPHIA CHUNG FEGAN Protocolo TCP/IP - 3.ed.
AMGH Editora, 1 de jun de 2009
42

VANDANA C.P. Security improvement in IoT based on Software Defined


Networking (SDN), International Journal of Science, Engineering and Technology
Research (IJSETR), Volume 5, Issue 1, January 2016.
JOSUE B. ANTUNES, ISTVAN L. DÉNES, MARCONI SANTOS, TIAGO O.
CASTRO, DANIEL F. MACEDO, ManIoT: Uma Plataforma para Gerenciamento
de Dispositivos da Internet das Coisas, 2016.
ONF, SDN Arch Glossy, September 2016.
M.U. FAROOQ, MUHAMMAD WASEEM, A Critical Analysis on the Security
Concerns of Internet of Things (IoT), International Journal of Computer
Applications (0975 8887) Volume 111 - No. 7, February 2015.
SAKSIT JANTILA AND KORNCHAWAL CHAIPAH, A Security Analysis of a Hybrid
Mechanism to Defend DDoS Attacks in SDN, International Electrical Engineering
Congress, iEECON2016, 2-4 March 2016, Chiang Mai, Thailand.
MARC KOERNERA, ODEJ KAO, Evaluating SDN Based Rack-to-Rack Multi-path
Switching for Data-Center Networks, International Conference on Future Networks
and Communications (FNC-2014).
CASADO, M., KOPONEN, T., RAMANATHAN, R., AND SHENKER, S. (2010b).
Virtualizing the network forwarding plane. In Proceedings of the Workshop on
Programmable Routers for Extensible Services of Tomorrow, PRESTO, New York,
NY.
CAI, Z., COX, A. L., AND NG, T. S. E. Maestro: A system for scalable openflow
control. Technical Report, Rice University, (2010).
HINRICHS, T. L., GUDE, N. S., CASADO, M., MITCHELL, J. C., AND SHENKER, S.
Practical declarative network management. In Proceedings of the 1st ACM
workshop on Research on enterprise networking, WREN ’09, New York, NY, (2009).
FOSTER, N., FREEDMAN, M. J., HARRISON, R., REXFORD, J., MEOLA, M. L.,
AND WALKER, D. Frenetic: a high-level language for openflow networks. In
Proceedings of the Workshop on Programmable Routers for Extensible Services of
Tomorrow, PRESTO, New York, NY, (2010).
KOPONEN, T., CASADO, M., GUDE, N., STRIBLING, J., POUTIEVSKI, L., ZHU, M.,
RAMANATHAN, R., IWATA, Y., INOUE, H., HAMA, T., AND SHENKER, S. Onix: a
distributed control platform for large-scale production networks. In Proceedings
of the 9th USENIX, conference on Operating systems design and implementation,
(2010).
Berkeley, CA. USENIX Association.
https://www.gartner.com/doc/2706021?ref=SiteSearch&sthkw=iot&fnl=search&srcId=
1-3478922254 acessado dia 23/10/2016 as 15:20
http://www.cio.com/article/3081973/internet-of-things/in-iots-early-days-challenges-
opportunities-revealed.html acessado dia 21/10/2016 as 16:30

Você também pode gostar