SlideShare ist ein Scribd-Unternehmen logo
1 von 29
FACULDADE DE INFORMÁTICA DE PRESIDENTE PRUDENTE
             TECNOLOGIA DE REDES DE COMPUTADORES




RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS




                       VINÍCIUS REGINALDO LIMA




              Presidente Prudente – SP
                       2011
FACULDADE DE INFORMÁTICA DE PRESIDENTE PRUDENTE
             TECNOLOGIA DE REDES DE COMPUTADORES




RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS




                       VINÍCIUS REGINALDO LIMA




                        Trabalho    de    Conclusão     de    Curso,
                        apresentado a Faculdade de Informática de
                        Presidente Prudente, Curso de Redes de
                        Computador,      Universidade    do       Oeste
                        Paulista, como parte dos requisitos para a
                        sua conclusão.


                        Orientador: Profº Cláudio Luís Sitolino




              Presidente Prudente – SP
                       2011
VINÍCIUS REGINALDO LIMA




         RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS




                                Trabalho     de   Conclusão      de   Curso,
                                apresentado à Faculdade de Informática de
                                Presidente Prudente, Curso de Tecnologia
                                em Redes de Computadores, Universidade
                                do   Oeste    Paulista,   como   parte   dos
                                requisitos para conclusão.




                                Presidente Prudente, 06 de Junho de 2011.




                       BANCA EXAMINADORA




__________________________________
Prof.º


__________________________________
Prof.º


__________________________________
Prof.º
DEDICATÓRIA




            Dedico este trabalho a meus pais Aparecida de Fátima e José
Reginaldo, que nunca mediram esforços e estiveram sempre presentes em todos os
momentos de sua realização.
A minha namorada Vanessa Costa, pelo carinho e confiança, e a minha irmã
Vanessa Gomes que é exemplo de esperança.
A minha família que, em todos os momentos de realização desta pesquisa, esteve
presente.
AGRADECIMENTOS




            Ao professor orientador, Cláudio Luís Sitolino de Tal que, na rigidez de
seus ensinamentos, fez aprimorar meus conhecimentos.
Ao professor, Kleber Manrique Trevisani, pela amizade e carisma.
Aos amigos de turma, pelo companheirismo e os muitos momentos de alegria
compartilhados.
“[...] nada é fixo para aquele que alternadamente pensa e sonha [...]”

                                                   Gaston Bachelard
RESUMO


                 Risco na Comunicação entre Máquinas Virtuais




A virtualização é uma tecnologia que permite abstrair recursos de hardware de uma
máquina física hospedeira para a partir dela criar uma ou mais máquinas virtuais
totalmente independentes e de forma isolada do sistema operacional hospedeiro.
Com a possibilidade de comunicação entre máquinas virtuais este trabalho propõe
há analisar e documentar de que forma é feita esta comunicação, com quais
características os virtualizadores simulam um ambiente de rede entre máquinas
virtuais, pois para uma comunicação eficiente, a maioria das plataformas
virtualizadas inclui a habilidade de criar software baseado em redes virtuais e
switches dentro do servidor físico para que as máquinas virtuais se comuniquem
diretamente. Esse tráfego não ficará visível para dispositivos de segurança externo.
Portanto, é necessário realizar testes para verificar se o tráfego de uma máquina
virtual sendo transmitido para outra através da rede virtual poderá ser capturado por
um software de analise de pacotes que estará sendo executado no mesmo
ambiente. Este projeto visa demonstrar como se comporta o trafego de dados entre
maquinas virtuais em relação a um ambiente de rede física, quais as diferenças,
vantagens ou desvantagens.

Palavras-chave: Segurança, Virtualização, Maquina Virtual.
ABSTRACT


                Risk in Communication between Virtual Machines


Virtualization is a technology that allows abstracting hardware resources of a
physical host machine to create it from one or more virtual machines totally
independent and isolated from the host operating system. With the possibility of
communication between virtual machines for this work proposes to analyze and
document how it is done this communication, which features the virtualizers simulate
a network environment between virtual machines, because for an efficient
communication, most of the virtualized platform includes ability to create software
based on virtual networks and switches within the physical server to virtual machines
to communicate directly. This traffic will not be visible to external security devices.
Therefore, it is necessary to conduct tests to verify that traffic from one virtual
machine being transmitted to another through the virtual network can be captured by
an analysis software package that will be running the same environment. This project
aims to demonstrate how it behaves the data traffic between virtual machines over a
network environment physics, what the differences, advantages and disadvantages.

Keywords: Security, Virtualization, Virtual Machine.
LISTA DE FIGURAS


Figura 1- Virtualizador Abstraindo Hardware............................................................. 13
Figura 2 – Ambiente Virtual ....................................................................................... 17
Figura 3 – Configuração host-only no VirtualBox ...................................................... 18
Figura 4 – Configuração host-only no Virtual PC ...................................................... 19
Figura 5 – Configuração host-only no VMware Player .............................................. 19
Figura 6 – Máquina 01 capturando trafego da rede no VMware Player .................... 21
Figura 7 - Máquina 01 capturando trafego da rede no VirtualBox ............................. 22
Figura 8 - Máquina 01 capturando trafego da rede no Virtual PC ............................. 23
Figura 9 – Ataque de MAC Flood no Virtual PC ........................................................ 24
Figura 10 - Máquina 01 interceptando trafego da rede no Virtual PC ....................... 25
LISTA DE TABELAS




Tabela 1 – Comparativo entre soluções para virtualização ....................................... 14
SUMÁRIO


                   Nenhuma entrada de sumário foi encontrada.
1 INTRODUÇÃO                                                    11

2 VIRTUALIZADORES                                               12
2.1 VMware®                                                     15
2.2 Oracle VirtualBox®                                          15
2.3 Microsoft Virtual PC®                                       16

3 AMBIENTE DE TESTES                                            17

4 TESTES REALIZADOS                                             20
4.1 VMware®                                                     20
4.2 Oracle Virtual Box®                                         21
4.3 Microsoft Virtual PC®                                       22

5 CONCLUSÃO                                                     26

REFERÊNCIAS                                                     27
11



1 INTRODUÇÃO



                  A virtualização não é algo recente, seu conceito sobre máquina virtual
surgiu nos anos 60 a partir do sistema operacional M44/44X da IBM®. O objetivo
dos sistemas que ofereciam virtualização na época era entregar a cada usuário um
ambiente monousuário, contendo seu próprio sistema operacional e aplicações
independentes, onde a tecnologia de virtualização rodava em computadores de
grande porte como mainframes1.                     Com o passar do tempo a necessidade da
virtualização para ambientes x862 fizeram com que empresas desenvolvedoras de
soluções de virtualização para mainframes passassem a desenvolver também
soluções para computadores de menor porte como servidores e desktops.
                  Hoje em dia o conceito sobre virtualização evoluiu, e ainda é muito
utilizado, pois as empresas que possuem servidores para locação de serviços
perceberam que com a virtualização é possível economizar, porque há algumas
vantagens como redução de consumo de energia, diminuição do espaço físico e
entrega de serviços sobre demanda, como é o caso do Cloud Computing3 que se
utiliza da virtualização para realizar este tipo de tarefa. Uma das evoluções da
virtualização é a possibilidade de comunicação através de uma rede, simulando um
ambiente físico. Muitos softwares pagos e gratuitos fazem esta simulação como
VMware Player®, Oracle VirtualBox®, Microsoft Virtual PC® entre outros.
                  O processo de virtualização visa à transformação de uma única
estrutura de hardware em várias estruturas compostas dentro do mesmo hardware,
e assim podendo compartilhar com os sistemas virtualizados CPU4, memoria, disco
rígido, unidades de CD/DVD, placa de rede, placa mãe, etc. Tudo isso trabalhando
simultaneamente e de forma isolada do sistema operacional da máquina hospedeira.
                  Em um ambiente formado por maquinas virtuais no que se diz respeito
à segurança tem-se as características de independência do hardware, isolamento e
encapsulamento, porem alguns softwares de virtualização não deixam muito claro
como é feita a comunicação entre as maquinas virtuais, que tentam simular um
ambiente de rede semelhante ao ambiente real.

1
  Computador de grande porte, dedicado normalmente ao processamento de um volume grande de informações.
2
  Nome genérico dada à família (arquitetura) de processadores baseados no Intel 8086 .
3
  Refere-se à utilização de recursos de hardware de computadores compartilhados por meio da Internet.
4
  Unidade Central de Processamento.
12



2 VIRTUALIZADORES




               Virtualizadores são programas responsáveis por emular máquinas
virtuais abstraindo recursos de hardware da máquina física hospedeira e criar uma
ou mais máquinas virtuais de forma isolada do sistema operacional hospedeiro, mas
compartilhando hardware físico do mesmo. No mercado existe uma infinidade de
soluções para virtualização, tanto de código aberto como proprietárias.
               Para que o virtualizador funcione, ele se baseia em algumas
características padrões que são isolamento, encapsulamento e independência do
hardware:
               De acordo com Denis Augusto A. de Souza (2009, p. 363, 364),
pondera que:
                      O isolamento deve-se a completa separação de recursos de cada máquina
                      virtual, mesmo quando elas compartilham o mesmo recurso de hardware.
                      As áreas de memória destinadas a cada ambiente virtual são
                      completamente diferentes e sem qualquer influência de um ambiente com o
                      outro. Isso permite que um crash ou parada de um ambiente virtual (guest)
                      não atrapalhe outros ambientes virtuais ou o próprio ambiente host.
                      A função do encapsulamento é prover os recursos necessários para a
                      existência do hardware virtual, do sistema operacional e de todas as
                      aplicações que existirão no ambiente Guest. Cabe ao encapsulamento
                      tornar a máquina virtual mais portável e de fácil gerenciamento. Dessa
                      forma, tarefas como transporte, backup, verificação e gerenciamento de
                      recursos serão mais simples.
                      A independência de hardware permite termos ambientes guests
                      completamente desvinculados de qualquer dependência física dos
                      equipamentos, dispositivos ou periféricos como placas de rede,
                      controladoras, placas mãe, CPUs, placas de vídeo ou impressoras. Assim,
                      diversos sistemas operacionais ou aplicações diferentes podem usar o
                      mesmo hardware sem a possibilidade de incompatibilidades. Isso se deve
                      aos softwares que virtualizam os hardwares deixando-os prontos para uso
                      nos ambientes guest.


               A abstração do hardware na máquina hospedeira acaba criando uma
camada de hardware independente para cada máquina virtual onde apesar de
estarem compartilhando o mesmo recurso físico, estão isoladas logicamente, a
figura 1 ilustra como é feita a abstração do hardware pelo virtualizador.
13




                                  Figura 1- Virtualizador Abstraindo Hardware
                     Cada solução de software de virtualização trás suas tecnologias e
maneiras de se fazer a abstração do hardware, com suas características e
funcionalidades. Há diferentes técnicas de virtualização, entre elas virtualização total
e para-virtualização.


                       Virtualização Total – Com esta técnica o hardware hospedeiro é
totalmente abstraído e todas as características de um equipamento virtual são
emuladas, ou seja, todas as instruções solicitadas pelo sistema convidado são
interpretadas no MMV5. O sistema hospedado ignora a existência da máquina virtual
e opera como se funcionasse diretamente sobre o sistema operacional para o qual
foi projetado para funcionar.
                     A virtualização completa é mais flexível em termos de SO6 convidados,
uma vez que este não precisa ser modificado para implementação dessa técnica.
Todas as instruções são interpretadas pelo monitor de máquina virtual. Em
compensação, essa interpretação de cada instrução provoca perda de desempenho

5
    Monitor de Máquina Virtual.
6
    Sistema Operacional.
14



de processamento, uma vez que o monitor de máquina virtual se utiliza de
dispositivos de virtualização que atendem a uma gama de aplicativos e, por isso,
possuem uma baixa especialização. Assim, não é possível ter o máximo
desempenho desse aplicativo.


             Para-virtualização – Nessa técnica, a máquina virtual não é idêntica
ao equipamento físico original, para que o sistema hospedado possa enviar as
instruções mais simples diretamente para o hardware, restando apenas as
instruções de nível mais alto para serem interpretadas pelo MMV. Entretanto, esse
procedimento requer que o sistema operacional convidado seja modificado para
interagir com o MMV e selecionar quais instruções devem ser interpretadas nele ou
diretamente no hardware hospedeiro. O fato de o sistema operacional convidado
saber que opera sobre uma máquina virtual e, com isso, mandar as instruções mais
simples diretamente para o hardware diminui a sobrecarga no MMV e permite um
maior desempenho em comparação à virtualização completa.
             Alguns virtualizadores têm finalidades especificas e são feitos para
rodarem em um determinado sistema operacional, a tabela 1 faz um breve
comparativo entre as soluções que serão abordadas neste trabalho.




Tabela 1 – Comparativo entre soluções para virtualização

Solução      Fornecedor Tecnologia       Finalidade        Guests    Hosts
Virtual PC   Microsoft    Emulação       Virtualização     Windows, Windows
                          Total          em                Linux,
                                         ambientes         BSD
                                         desktops
VMware       VMware Inc. Emulação        Virtualização     Linux,    Windows,
Player                    Total          de    desktops BSD,         Linux
                                         e    ambientes Windows,
                                         de testes         Novell,
                                                           Solaris
VirtualBox   Oracle       Emulação       Virtualização     Linux,    Linux,
                          Total          de desktops       Windows, Windows,
15



                                                                BSD,       Mac OS,
                                                                Solaris,   Solaris
                                                                DOS,
                                                                OS/2
Fonte: FreeBSD – O Poder dos Servidores em Suas Mãos, (2009. p.362)
Nota: Dados trabalhados pelo autor.




                     Notasse que todos os virtualizadores comparados na tabela 1 utilizam
virtualização total.


2.1 VMware Player®



                     É um software de virtualização do tipo total, desenvolvido pela ECM
empresa subsidiada pela VMware Inc. uma das pioneiras no mercado de
virtualizadores comerciais, fundada em 1998 por Diane Greene, a versão VMware
Player é uma das soluções gratuitas da empresa que conta com outras soluções
proprietárias de sucesso como o VMware Workstation entre outros. Uma das
características marcantes nos produtos da VMware é a utilização da tecnologia
avançada de monitor de máquina virtual intitulada Hypervisor7 que é responsável
pelo gerenciamento dos recursos de hardware de forma autônoma que implica em
um melhor desempenho e também facilidade de se configurar máquinas virtuais, por
se tratar de uma ferramenta intuitiva.


2.2 Oracle VirtualBox®



                     É um software de virtualização que inicialmente foi criada pela
Innoteck, empresa que foi comprada pela Sun Microsystems em 2008 e em 2009 à
mesma foi adquirida pela Oracle atual proprietária do software VirtualBox. Como já
mencionado na tabela 1 existem versões para Windows, Linux, Mac OS e Solaris, é
o software entre os comparados neste trabalho que mais possui versões para

7
    Gerenciador de Máquinas Virtuais.
16



diferentes sistemas operacionais host, talvez pelo fato de haver uma versão OSE
(Open Source Edition) distribuído como software livre sobre a licença GNU8. O
VirtualBox também possui facilidade na instalação, configuração, criação e
exportação de máquinas virtuais, pois as VMs9 exportadas são gravadas no formato
XML10 maximizando sua compatibilidade com outros softwares.


2.3 Microsoft Virtual PC®




                   Software de virtualização proprietário da Microsoft®, voltado para
usuários de desktop11 do sistema operacional Windows®, porem tem-se a
possibilidade de emular12 outros sistemas operacionais de outros fabricantes no
ambiente convidado. Virtual PC é de fácil instalação e configuração, pois possui
interface13 intuitiva. Uma de suas vantagens é a possibilidade de enviar arquivos de
maneira muito simples entre o sistema operacional do hospedeiro e o sistema
convidado da máquina virtual, bastando somente clicar e arrastar os arquivos que
deseja copiar.




8
  Licença Pública Geral, também conhecida como GPL.
9
  Máquina Virtual.
10
   Formato Universal para Intercâmbio de Dados.
11
   Computador de uso doméstico.
12
   Reproduz as funções de um determinado ambiente, a fim de permitir a execução de outros softwares sobre ele.
13
   Conjunto de meios planejadamente dispostos sejam eles físicos ou lógicos com vista a fazer a adaptação entre dois
sistemas.
17



3 AMBIENTE DE TESTES




                   Para o ambiente de testes será utilizado como máquina hospedeira um
PC padrão x86, com sistema operacional Windows 7 Professional, rodando três
maquinas virtuais com Windows XP como mostra a figura 2, a máquina 01 será
usada para capturar pacotes entre a comunicação das máquinas 02 que estará
servindo o serviço de telnet14 e a máquina 03 que será cliente da máquina 02.
                   O software utilizado para captura de pacotes é o Wireshark, um
software livre para analise de trafego de rede, que verifica os pacotes transmitidos
pelo dispositivo de comunicação do computador e quando executado configura o
dispositivo de rede em modo promiscuo15 e assim possibilitando que se intercepte
todo o trafego de dados, se a rede assim permitir, organizando os dados capturados
em protocolos e mostrando o remetente e destino de cada comunicação.




                                          Figura 2 – Ambiente Virtual


                   Os softwares de virtualização serão configurados em host-only16 em
suas placas de rede, ou seja, somente rede interna para as máquinas virtuais. Para

14
   É um protocolo cliente-servidor usado para permitir a comunicação entre computadores ligados numa rede, permitindo obter
acesso remoto a um computador.
15
   Configuração de recepção na qual todos os pacotes que trafegam pelo segmento de rede ao qual o receptor está conectado
são recebidos pelo mesmo, não recebendo apenas os pacotes endereçados ao próprio.
16
   Configuração no dispositivo de rede que permite somente comunicação entre as máquinas virtuais.
18



fazer esta configuração nos aplicativos de virtualização foram executados os
seguintes passos:


             No VirtualBox basta ir em “Configurações” da máquina virtual, na
sessão “Rede” habilite a placa de rede e selecione “Placa de rede exclusiva do
hospedeiro – (host-only)” como mostra a figura 3.




                    Figura 3 – Configuração host-only no VirtualBox


             No Virtual PC esta configuração pode ser feita acessando “Settings” da
máquina virtual “Networking” e no adaptador selecione “Local-only” como mostra na
figura 4.
19




                  Figura 4 – Configuração host-only no Virtual PC


            No VMware Player esta configuração pode ser feita clicando com o
botão contrario do mouse em cima da máquina virtual e selecione “Virtual Machine
Settings...” e em “Network Adapter” marque “Host-only” como mostra na figura 5.




               Figura 5 – Configuração host-only no VMware Player
20



4 TESTES REALIZADOS




             Dentro do ambiente descrito foram realizados testes de comunicação
entre as três máquinas virtuais emuladas pelo mesmo virtualizador. Em todos os
testes a máquina 02 estará servindo o serviço de telnet e a máquina 03 estará se
conectando na máquina 02 através do serviço telnet, e por sua vez a máquina 01
analisará a rede para tentar interceptar os dados trocados entre as máquinas 02 e
03.   Diferentes resultados foram obtidos entre os softwares de virtualização,
havendo até mesmo diferentes resultados para diferentes versões do mesmo
software de virtualização.


4.1 VMware Player®




             A versão utilizada foi a VMware Player 3.1.4 build-385536 para sistema
operacional Windows 32 bits. Nos testes este virtualizador propagou todo o trafego
de rede por difusão, ou seja, todo o trafego de dados entre as máquinas
virtualizadas em um único domínio de colisão, como mostra a figura 6 em que a
máquina virtual 01 consegue interceptar a comunicação entre as máquinas virtuais
02 e 03.
21




       Figura 6 – Máquina 01 capturando trafego da rede no VMware Player




4.2 Oracle VirtualBox®




            Foi testado o software VirtualBox versão 4.0.4 r70112 para sistema
operacional Windows 32 bits. Durante os testes este virtualizador se comportou
como um difusor de trafego de rede, replicando todo o trafego entre a comunicação
das máquinas 02 e 03 na rede e possibilitando que a máquina virtual 01 conseguisse
capturar todo trafego de dados da rede como mostra a figura 7.
22




          Figura 7 - Máquina 01 capturando trafego da rede no VirtualBox




4.3 Microsoft Virtual PC®




             A versão utilizada nos teste foi a Virtual PC 6.0.192.0 para Windows 32
bits, está versão foi a única dos softwares de virtualização testados neste trabalho
que durante a analise da comunicação entre as máquinas virtuais 02 e 03 não
propagou todo o trafego por difusão na rede, mas sim endereçando os pacotes
somente para o destino, como faria um switch em uma rede física. A figura 8 mostra
o comportamento do analisador de trafego da rede durante a comunicação entre as
23



máquinas virtuais, percebesse que somente o broadcast17 foi percebido pelo
software de analise que estava em execução na máquina 01, algo normal que
ocorreria em uma rede física com swith.




               Figura 8 - Máquina 01 capturando trafego da rede no Virtual PC


                   Devido ao comportamento do Virtual PC perante o teste de analise de
trafego foi decidido realizar outros testes como o de MAC flood que consiste em
inundar a tabela ARP18 do dispositivo de rede com endereços MACs19 falsos, para
que o mesmo não consiga mais gerenciar o endereçamento de pacotes e comece
há trabalhar por difusão, replicando toda a comunicação na rede. Para isso foi
utilizado o sistema operacional Unix FreeBSD com a ferramenta de MAC flood

17
   É o processo pelo qual se transmite ou difunde determinada informação, tendo como principal característica que a mesma
informação está sendo enviada para muitos receptores ao mesmo tempo.
18
   É um protocolo usado para encontrar um endereço da camada de enlace (Ethernet, por exemplo) a partir do endereço da
camada de rede (como um endereço IP).
19
   É o endereço físico de 48 bits da estação, ou, mais especificamente, da interface de rede.
24



devidamente instalada e configurada na mesma classe de IP das máquinas virtuais
com Windows XP. Porem como mostra a figura 9 o Virtual PC se demonstrou imune
a esta técnica, somente capturando o broadcast da rede novamente.




                  Figura 9 – Ataque de MAC Flood no Virtual PC


            Por se demonstrar imune ao ataque de MAC Flood, foi decidido testar
uma versão anterior do Virtual PC, versão 6.0.156.0, para observar se o seu
comportamento em relação à comunicação entre as máquinas virtuais continuaria da
mesma forma, o resultado obtido foi totalmente diferente da versão mais atual
testada anteriormente, como mostra a figura 10 em que a máquina 01 desta vez
consegue interceptar o trafego de dados trocados entre as máquinas 02 (IP
192.168.1.2) e máquina 03 (IP 192.168.1.3).
25




Figura 10 - Máquina 01 interceptando trafego da rede no Virtual PC
26



5 CONCLUSÃO



             Como visto neste trabalho a utilização de máquinas virtuais tem sido
cada vez mais frequente por criar a possibilidade de utilizar sistemas operacionais
distintos sobre o mesmo hardware com isolamento, propiciar a redução de custos
com economia de energia, pois necessita de quantidade menor de CPU facilitando
seu gerenciamento e consequentemente um melhor aproveitamento do espaço
físico, além da facilidade de exportação de máquinas virtuais evitando os processos
de reinstalação e reconfiguração dos ambientes. Porem como visto também deve-se
analisar bem o software de virtualização a ser utilizado, pois das três soluções
testadas neste trabalho apenas uma, o Microsoft Virtual PC versão 6.0.192.0 efetuou
a comunicação entre as máquinas virtuais, não propagando todo o trafego gerado
entre as máquinas sobre a rede virtual, já os softwares VMware Player versão 3.1.4
build-385536 e Oracle VirtualBox 4.0.4 r70112 não demonstraram uma comunicação
segura entre as máquinas virtuais, propagando todo o trafego de dados entre as
máquinas na rede e assim possibilitando que qualquer outra máquina que esteja na
mesma rede possa interceptar os pacotes de dados. Um individuo mal intencionado
pode interceptar dados da rede como senhas e nome de usuários.
             Como trabalho futuro sugere-se que os testes realizados neste trabalho
sejam feitos em outros softwares de virtualização mais utilizados em servidores, pois
os softwares testados neste trabalho é de utilização doméstica para desktops.
27



                                 REFERÊNCIAS


MAGALHÃES, MARA LÚCIA; ORTEGA, JAKELINE QUEIROZ. // Normas e Padrões
para Apresentação de Trabalhos Acadêmicos e Científicos da Unoeste. // 1ª Edição
Eletrônica .// Presidente Prudente, 2006.


VIANA, ELISEU RIBEIRO CHERENE. // Virtualização de Servidores Linux para
Redes Corporativas - Guia Prático. // Edição 1. // São Paulo: / Ciência Moderna,
2008.


SOUZA, DENIS AUGUSTO A. DE. // FreeBSD: O Poder dos Servidores em Suas
Mãos. // Edição 1. // São Paulo: / Novatec editora, 2009.


SIQUEIRA, LUCIANO; BRENDEL, JENS-CHRISTOPH. // Virtualização. // Edição 4.
// São Paulo: / Linux New Media, 2007.


LAUREANO, MARCOS A. P.; MAZIERO, CARLOS A. "Virtualização: Conceitos e
Aplicações em Segurança". Minicursos em VIII Simpósio Brasileiro em Segurança da
Informação e de Sistemas Computacionais. Disponível em:
< http://www.mlaureano.org/vms/sbseg2008_texto.pdf >. Acesso em 20 de fev. 2011.


Conceitos sobre Virtualização. Disponível em:<
http://www.scribd.com/doc/8952213/Virtualizacao >. Acesso em 20 de fev. 2011.


Artigo sobre Virtualização de Datacenter. Disponível em:
<
http://www.ccuec.unicamp.br:9000/CCUEC/database/images/Artigo_Virtualizacao_D
atacenter.pdf >. Acesso em 20 de fev. 2011.


Virtualização: da teoria a soluções. Disponível em:
< http://www.gta.ufrj.br/ensino/CPE758/artigos-basicos/cap4-v2.pdf >. Acesso em 21
de fev. 2011.
28



O IMPACTO DA VIRTUALIZAÇÃO NAS EMPRESAS. Disponível em:
<
http://www.excelenciaemgestao.org/Portals/2/documents/cneg4/anais/T7_0014_010
2.pdf >. Acesso em 22 de fev. 2011.


Virtualização - VMWare e Xen. Disponível em <
http://www.gta.ufrj.br/grad/09_1/versao-final/virtualizacao/ > Acesso em 04 de mai.
2011.

Weitere ähnliche Inhalte

Was ist angesagt?

Redes de computadores e suas tendências
Redes de computadores e suas tendênciasRedes de computadores e suas tendências
Redes de computadores e suas tendênciasAlexandre Santana
 
Artigo - Redes de Computadores
Artigo - Redes de ComputadoresArtigo - Redes de Computadores
Artigo - Redes de ComputadoresUilber Castagna
 
Tecnologias De Redes De Computadores
Tecnologias De Redes De ComputadoresTecnologias De Redes De Computadores
Tecnologias De Redes De ComputadoresMatheus
 
Redes - Introdução
Redes - IntroduçãoRedes - Introdução
Redes - IntroduçãoLuiz Arthur
 
Gerência de Redes SNMP
Gerência de Redes SNMPGerência de Redes SNMP
Gerência de Redes SNMPIsraelCunha
 
1ª Unidade Conceito e Estrutura de Redes.
1ª Unidade Conceito e Estrutura de Redes.1ª Unidade Conceito e Estrutura de Redes.
1ª Unidade Conceito e Estrutura de Redes.Cleiton Cunha
 
Introdução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosIntrodução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosFrederico Madeira
 
Informática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresInformática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresAnderson Pontes
 
Projeto de infraestrutura da empresa RME
Projeto de infraestrutura da empresa RMEProjeto de infraestrutura da empresa RME
Projeto de infraestrutura da empresa RMEElton Simões
 
Apostila de infraestrutura de redes
Apostila de infraestrutura de redesApostila de infraestrutura de redes
Apostila de infraestrutura de redesJosefran Ranniery
 
O técnico em redes no mercado de trabalho
O técnico em redes no mercado de trabalhoO técnico em redes no mercado de trabalho
O técnico em redes no mercado de trabalhoLucas Gregório
 
86242325 pre-projeto-de-pesquisa
86242325 pre-projeto-de-pesquisa86242325 pre-projeto-de-pesquisa
86242325 pre-projeto-de-pesquisaMarcos Faria
 
Projeto de pesquisa exemplo
Projeto de pesquisa   exemploProjeto de pesquisa   exemplo
Projeto de pesquisa exemploFelipe Pereira
 

Was ist angesagt? (20)

Redes de computadores e suas tendências
Redes de computadores e suas tendênciasRedes de computadores e suas tendências
Redes de computadores e suas tendências
 
Artigo - Redes de Computadores
Artigo - Redes de ComputadoresArtigo - Redes de Computadores
Artigo - Redes de Computadores
 
Tecnologias De Redes De Computadores
Tecnologias De Redes De ComputadoresTecnologias De Redes De Computadores
Tecnologias De Redes De Computadores
 
Ficha de trabalho_6
Ficha de trabalho_6Ficha de trabalho_6
Ficha de trabalho_6
 
Redes - Introdução
Redes - IntroduçãoRedes - Introdução
Redes - Introdução
 
Ficha de trabalho_6
Ficha de trabalho_6Ficha de trabalho_6
Ficha de trabalho_6
 
Gerência de Redes SNMP
Gerência de Redes SNMPGerência de Redes SNMP
Gerência de Redes SNMP
 
1ª Unidade Conceito e Estrutura de Redes.
1ª Unidade Conceito e Estrutura de Redes.1ª Unidade Conceito e Estrutura de Redes.
1ª Unidade Conceito e Estrutura de Redes.
 
Introdução aos Sistemas Distribuídos
Introdução aos Sistemas DistribuídosIntrodução aos Sistemas Distribuídos
Introdução aos Sistemas Distribuídos
 
Informática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadoresInformática Aplicada - Rede de computadores
Informática Aplicada - Rede de computadores
 
Projeto de infraestrutura da empresa RME
Projeto de infraestrutura da empresa RMEProjeto de infraestrutura da empresa RME
Projeto de infraestrutura da empresa RME
 
Apostila de infraestrutura de redes
Apostila de infraestrutura de redesApostila de infraestrutura de redes
Apostila de infraestrutura de redes
 
Projeto de Rede Local (LAN)
Projeto de Rede Local (LAN)Projeto de Rede Local (LAN)
Projeto de Rede Local (LAN)
 
O técnico em redes no mercado de trabalho
O técnico em redes no mercado de trabalhoO técnico em redes no mercado de trabalho
O técnico em redes no mercado de trabalho
 
TRABALHO DE TI
TRABALHO DE TITRABALHO DE TI
TRABALHO DE TI
 
86242325 pre-projeto-de-pesquisa
86242325 pre-projeto-de-pesquisa86242325 pre-projeto-de-pesquisa
86242325 pre-projeto-de-pesquisa
 
Infraestrutura de Redes
Infraestrutura de RedesInfraestrutura de Redes
Infraestrutura de Redes
 
projecto de rede computadores
projecto de rede computadoresprojecto de rede computadores
projecto de rede computadores
 
Projeto de pesquisa exemplo
Projeto de pesquisa   exemploProjeto de pesquisa   exemplo
Projeto de pesquisa exemplo
 
Instalação de rede
Instalação de redeInstalação de rede
Instalação de rede
 

Ähnlich wie TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima

Virtualizacao e o uso de Software Livre
Virtualizacao e o uso de Software LivreVirtualizacao e o uso de Software Livre
Virtualizacao e o uso de Software LivreJUAREZ DE OLIVEIRA
 
Monografia- ThingProvider
Monografia- ThingProviderMonografia- ThingProvider
Monografia- ThingProviderKevin Martins
 
Virtualização de servidores cleiton leive de lima xavier
Virtualização de servidores   cleiton leive de lima xavierVirtualização de servidores   cleiton leive de lima xavier
Virtualização de servidores cleiton leive de lima xaviercleitonleive
 
Fabio virtualizacao (1)
Fabio   virtualizacao (1)Fabio   virtualizacao (1)
Fabio virtualizacao (1)gsabatke
 
Monografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoMonografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoApolonio Santiago
 
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...Arley Rodrigues
 
Modelagem de Ambientes de Computação Ubíqua Utilizando Simulação
Modelagem de Ambientes de Computação Ubíqua Utilizando SimulaçãoModelagem de Ambientes de Computação Ubíqua Utilizando Simulação
Modelagem de Ambientes de Computação Ubíqua Utilizando SimulaçãoJurmir Canal Neto
 
Desempenho de um Servidor Web em Ambientes de Computação Isolados
Desempenho de um Servidor Web em Ambientes de Computação IsoladosDesempenho de um Servidor Web em Ambientes de Computação Isolados
Desempenho de um Servidor Web em Ambientes de Computação IsoladosAndre Danelon
 
Virtualizacao
VirtualizacaoVirtualizacao
Virtualizacaohome
 
Microsoft redes introdução
Microsoft redes   introduçãoMicrosoft redes   introdução
Microsoft redes introduçãoJoão Dias
 
Investigação de Predição de Fluxos em Redes de Computadores
Investigação de Predição de Fluxos em Redes de ComputadoresInvestigação de Predição de Fluxos em Redes de Computadores
Investigação de Predição de Fluxos em Redes de ComputadoresOrlando Junior
 
Virtualizacao de Servidores: Um comparativo entre VMware e Xen
Virtualizacao de Servidores: Um comparativo entre VMware e XenVirtualizacao de Servidores: Um comparativo entre VMware e Xen
Virtualizacao de Servidores: Um comparativo entre VMware e XenAlan Brumate
 
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004Vando Batista
 

Ähnlich wie TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima (20)

Virtualizacao e o uso de Software Livre
Virtualizacao e o uso de Software LivreVirtualizacao e o uso de Software Livre
Virtualizacao e o uso de Software Livre
 
Monografia- ThingProvider
Monografia- ThingProviderMonografia- ThingProvider
Monografia- ThingProvider
 
Cap4 v2
Cap4 v2Cap4 v2
Cap4 v2
 
Monografia ifes-everton-bada
Monografia ifes-everton-badaMonografia ifes-everton-bada
Monografia ifes-everton-bada
 
Vpn alan-rafael
Vpn alan-rafaelVpn alan-rafael
Vpn alan-rafael
 
Virtualização de servidores cleiton leive de lima xavier
Virtualização de servidores   cleiton leive de lima xavierVirtualização de servidores   cleiton leive de lima xavier
Virtualização de servidores cleiton leive de lima xavier
 
Fabio virtualizacao (1)
Fabio   virtualizacao (1)Fabio   virtualizacao (1)
Fabio virtualizacao (1)
 
Monografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_InvasaoMonografia_Apolonio_UnB_Invasao
Monografia_Apolonio_UnB_Invasao
 
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...
Virtualização e Administração de Servidores com Xen: Um estudo no Instituto F...
 
Tcc plataforma telemedicina de baixo custo
Tcc plataforma telemedicina de baixo custoTcc plataforma telemedicina de baixo custo
Tcc plataforma telemedicina de baixo custo
 
Modelagem de Ambientes de Computação Ubíqua Utilizando Simulação
Modelagem de Ambientes de Computação Ubíqua Utilizando SimulaçãoModelagem de Ambientes de Computação Ubíqua Utilizando Simulação
Modelagem de Ambientes de Computação Ubíqua Utilizando Simulação
 
Unidade 1.2 Virtualização
Unidade 1.2 VirtualizaçãoUnidade 1.2 Virtualização
Unidade 1.2 Virtualização
 
Desempenho de um Servidor Web em Ambientes de Computação Isolados
Desempenho de um Servidor Web em Ambientes de Computação IsoladosDesempenho de um Servidor Web em Ambientes de Computação Isolados
Desempenho de um Servidor Web em Ambientes de Computação Isolados
 
Aula01
Aula01Aula01
Aula01
 
Virtualizacao
VirtualizacaoVirtualizacao
Virtualizacao
 
Microsoft redes introdução
Microsoft redes   introduçãoMicrosoft redes   introdução
Microsoft redes introdução
 
Investigação de Predição de Fluxos em Redes de Computadores
Investigação de Predição de Fluxos em Redes de ComputadoresInvestigação de Predição de Fluxos em Redes de Computadores
Investigação de Predição de Fluxos em Redes de Computadores
 
Virtualizacao de Servidores: Um comparativo entre VMware e Xen
Virtualizacao de Servidores: Um comparativo entre VMware e XenVirtualizacao de Servidores: Um comparativo entre VMware e Xen
Virtualizacao de Servidores: Um comparativo entre VMware e Xen
 
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004
"Descobrindo a Computação Ubíqua" UNIFOR Abril 2004
 
Apostila redes e internet
Apostila redes e internetApostila redes e internet
Apostila redes e internet
 

TCC Risco na comunicação entre máquinas virtuais - Vinícius Lima

  • 1. FACULDADE DE INFORMÁTICA DE PRESIDENTE PRUDENTE TECNOLOGIA DE REDES DE COMPUTADORES RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS VINÍCIUS REGINALDO LIMA Presidente Prudente – SP 2011
  • 2. FACULDADE DE INFORMÁTICA DE PRESIDENTE PRUDENTE TECNOLOGIA DE REDES DE COMPUTADORES RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS VINÍCIUS REGINALDO LIMA Trabalho de Conclusão de Curso, apresentado a Faculdade de Informática de Presidente Prudente, Curso de Redes de Computador, Universidade do Oeste Paulista, como parte dos requisitos para a sua conclusão. Orientador: Profº Cláudio Luís Sitolino Presidente Prudente – SP 2011
  • 3. VINÍCIUS REGINALDO LIMA RISCO NA COMUNICAÇÃO ENTRE MÁQUINAS VIRTUAIS Trabalho de Conclusão de Curso, apresentado à Faculdade de Informática de Presidente Prudente, Curso de Tecnologia em Redes de Computadores, Universidade do Oeste Paulista, como parte dos requisitos para conclusão. Presidente Prudente, 06 de Junho de 2011. BANCA EXAMINADORA __________________________________ Prof.º __________________________________ Prof.º __________________________________ Prof.º
  • 4. DEDICATÓRIA Dedico este trabalho a meus pais Aparecida de Fátima e José Reginaldo, que nunca mediram esforços e estiveram sempre presentes em todos os momentos de sua realização. A minha namorada Vanessa Costa, pelo carinho e confiança, e a minha irmã Vanessa Gomes que é exemplo de esperança. A minha família que, em todos os momentos de realização desta pesquisa, esteve presente.
  • 5. AGRADECIMENTOS Ao professor orientador, Cláudio Luís Sitolino de Tal que, na rigidez de seus ensinamentos, fez aprimorar meus conhecimentos. Ao professor, Kleber Manrique Trevisani, pela amizade e carisma. Aos amigos de turma, pelo companheirismo e os muitos momentos de alegria compartilhados.
  • 6. “[...] nada é fixo para aquele que alternadamente pensa e sonha [...]” Gaston Bachelard
  • 7. RESUMO Risco na Comunicação entre Máquinas Virtuais A virtualização é uma tecnologia que permite abstrair recursos de hardware de uma máquina física hospedeira para a partir dela criar uma ou mais máquinas virtuais totalmente independentes e de forma isolada do sistema operacional hospedeiro. Com a possibilidade de comunicação entre máquinas virtuais este trabalho propõe há analisar e documentar de que forma é feita esta comunicação, com quais características os virtualizadores simulam um ambiente de rede entre máquinas virtuais, pois para uma comunicação eficiente, a maioria das plataformas virtualizadas inclui a habilidade de criar software baseado em redes virtuais e switches dentro do servidor físico para que as máquinas virtuais se comuniquem diretamente. Esse tráfego não ficará visível para dispositivos de segurança externo. Portanto, é necessário realizar testes para verificar se o tráfego de uma máquina virtual sendo transmitido para outra através da rede virtual poderá ser capturado por um software de analise de pacotes que estará sendo executado no mesmo ambiente. Este projeto visa demonstrar como se comporta o trafego de dados entre maquinas virtuais em relação a um ambiente de rede física, quais as diferenças, vantagens ou desvantagens. Palavras-chave: Segurança, Virtualização, Maquina Virtual.
  • 8. ABSTRACT Risk in Communication between Virtual Machines Virtualization is a technology that allows abstracting hardware resources of a physical host machine to create it from one or more virtual machines totally independent and isolated from the host operating system. With the possibility of communication between virtual machines for this work proposes to analyze and document how it is done this communication, which features the virtualizers simulate a network environment between virtual machines, because for an efficient communication, most of the virtualized platform includes ability to create software based on virtual networks and switches within the physical server to virtual machines to communicate directly. This traffic will not be visible to external security devices. Therefore, it is necessary to conduct tests to verify that traffic from one virtual machine being transmitted to another through the virtual network can be captured by an analysis software package that will be running the same environment. This project aims to demonstrate how it behaves the data traffic between virtual machines over a network environment physics, what the differences, advantages and disadvantages. Keywords: Security, Virtualization, Virtual Machine.
  • 9. LISTA DE FIGURAS Figura 1- Virtualizador Abstraindo Hardware............................................................. 13 Figura 2 – Ambiente Virtual ....................................................................................... 17 Figura 3 – Configuração host-only no VirtualBox ...................................................... 18 Figura 4 – Configuração host-only no Virtual PC ...................................................... 19 Figura 5 – Configuração host-only no VMware Player .............................................. 19 Figura 6 – Máquina 01 capturando trafego da rede no VMware Player .................... 21 Figura 7 - Máquina 01 capturando trafego da rede no VirtualBox ............................. 22 Figura 8 - Máquina 01 capturando trafego da rede no Virtual PC ............................. 23 Figura 9 – Ataque de MAC Flood no Virtual PC ........................................................ 24 Figura 10 - Máquina 01 interceptando trafego da rede no Virtual PC ....................... 25
  • 10. LISTA DE TABELAS Tabela 1 – Comparativo entre soluções para virtualização ....................................... 14
  • 11. SUMÁRIO Nenhuma entrada de sumário foi encontrada. 1 INTRODUÇÃO 11 2 VIRTUALIZADORES 12 2.1 VMware® 15 2.2 Oracle VirtualBox® 15 2.3 Microsoft Virtual PC® 16 3 AMBIENTE DE TESTES 17 4 TESTES REALIZADOS 20 4.1 VMware® 20 4.2 Oracle Virtual Box® 21 4.3 Microsoft Virtual PC® 22 5 CONCLUSÃO 26 REFERÊNCIAS 27
  • 12. 11 1 INTRODUÇÃO A virtualização não é algo recente, seu conceito sobre máquina virtual surgiu nos anos 60 a partir do sistema operacional M44/44X da IBM®. O objetivo dos sistemas que ofereciam virtualização na época era entregar a cada usuário um ambiente monousuário, contendo seu próprio sistema operacional e aplicações independentes, onde a tecnologia de virtualização rodava em computadores de grande porte como mainframes1. Com o passar do tempo a necessidade da virtualização para ambientes x862 fizeram com que empresas desenvolvedoras de soluções de virtualização para mainframes passassem a desenvolver também soluções para computadores de menor porte como servidores e desktops. Hoje em dia o conceito sobre virtualização evoluiu, e ainda é muito utilizado, pois as empresas que possuem servidores para locação de serviços perceberam que com a virtualização é possível economizar, porque há algumas vantagens como redução de consumo de energia, diminuição do espaço físico e entrega de serviços sobre demanda, como é o caso do Cloud Computing3 que se utiliza da virtualização para realizar este tipo de tarefa. Uma das evoluções da virtualização é a possibilidade de comunicação através de uma rede, simulando um ambiente físico. Muitos softwares pagos e gratuitos fazem esta simulação como VMware Player®, Oracle VirtualBox®, Microsoft Virtual PC® entre outros. O processo de virtualização visa à transformação de uma única estrutura de hardware em várias estruturas compostas dentro do mesmo hardware, e assim podendo compartilhar com os sistemas virtualizados CPU4, memoria, disco rígido, unidades de CD/DVD, placa de rede, placa mãe, etc. Tudo isso trabalhando simultaneamente e de forma isolada do sistema operacional da máquina hospedeira. Em um ambiente formado por maquinas virtuais no que se diz respeito à segurança tem-se as características de independência do hardware, isolamento e encapsulamento, porem alguns softwares de virtualização não deixam muito claro como é feita a comunicação entre as maquinas virtuais, que tentam simular um ambiente de rede semelhante ao ambiente real. 1 Computador de grande porte, dedicado normalmente ao processamento de um volume grande de informações. 2 Nome genérico dada à família (arquitetura) de processadores baseados no Intel 8086 . 3 Refere-se à utilização de recursos de hardware de computadores compartilhados por meio da Internet. 4 Unidade Central de Processamento.
  • 13. 12 2 VIRTUALIZADORES Virtualizadores são programas responsáveis por emular máquinas virtuais abstraindo recursos de hardware da máquina física hospedeira e criar uma ou mais máquinas virtuais de forma isolada do sistema operacional hospedeiro, mas compartilhando hardware físico do mesmo. No mercado existe uma infinidade de soluções para virtualização, tanto de código aberto como proprietárias. Para que o virtualizador funcione, ele se baseia em algumas características padrões que são isolamento, encapsulamento e independência do hardware: De acordo com Denis Augusto A. de Souza (2009, p. 363, 364), pondera que: O isolamento deve-se a completa separação de recursos de cada máquina virtual, mesmo quando elas compartilham o mesmo recurso de hardware. As áreas de memória destinadas a cada ambiente virtual são completamente diferentes e sem qualquer influência de um ambiente com o outro. Isso permite que um crash ou parada de um ambiente virtual (guest) não atrapalhe outros ambientes virtuais ou o próprio ambiente host. A função do encapsulamento é prover os recursos necessários para a existência do hardware virtual, do sistema operacional e de todas as aplicações que existirão no ambiente Guest. Cabe ao encapsulamento tornar a máquina virtual mais portável e de fácil gerenciamento. Dessa forma, tarefas como transporte, backup, verificação e gerenciamento de recursos serão mais simples. A independência de hardware permite termos ambientes guests completamente desvinculados de qualquer dependência física dos equipamentos, dispositivos ou periféricos como placas de rede, controladoras, placas mãe, CPUs, placas de vídeo ou impressoras. Assim, diversos sistemas operacionais ou aplicações diferentes podem usar o mesmo hardware sem a possibilidade de incompatibilidades. Isso se deve aos softwares que virtualizam os hardwares deixando-os prontos para uso nos ambientes guest. A abstração do hardware na máquina hospedeira acaba criando uma camada de hardware independente para cada máquina virtual onde apesar de estarem compartilhando o mesmo recurso físico, estão isoladas logicamente, a figura 1 ilustra como é feita a abstração do hardware pelo virtualizador.
  • 14. 13 Figura 1- Virtualizador Abstraindo Hardware Cada solução de software de virtualização trás suas tecnologias e maneiras de se fazer a abstração do hardware, com suas características e funcionalidades. Há diferentes técnicas de virtualização, entre elas virtualização total e para-virtualização. Virtualização Total – Com esta técnica o hardware hospedeiro é totalmente abstraído e todas as características de um equipamento virtual são emuladas, ou seja, todas as instruções solicitadas pelo sistema convidado são interpretadas no MMV5. O sistema hospedado ignora a existência da máquina virtual e opera como se funcionasse diretamente sobre o sistema operacional para o qual foi projetado para funcionar. A virtualização completa é mais flexível em termos de SO6 convidados, uma vez que este não precisa ser modificado para implementação dessa técnica. Todas as instruções são interpretadas pelo monitor de máquina virtual. Em compensação, essa interpretação de cada instrução provoca perda de desempenho 5 Monitor de Máquina Virtual. 6 Sistema Operacional.
  • 15. 14 de processamento, uma vez que o monitor de máquina virtual se utiliza de dispositivos de virtualização que atendem a uma gama de aplicativos e, por isso, possuem uma baixa especialização. Assim, não é possível ter o máximo desempenho desse aplicativo. Para-virtualização – Nessa técnica, a máquina virtual não é idêntica ao equipamento físico original, para que o sistema hospedado possa enviar as instruções mais simples diretamente para o hardware, restando apenas as instruções de nível mais alto para serem interpretadas pelo MMV. Entretanto, esse procedimento requer que o sistema operacional convidado seja modificado para interagir com o MMV e selecionar quais instruções devem ser interpretadas nele ou diretamente no hardware hospedeiro. O fato de o sistema operacional convidado saber que opera sobre uma máquina virtual e, com isso, mandar as instruções mais simples diretamente para o hardware diminui a sobrecarga no MMV e permite um maior desempenho em comparação à virtualização completa. Alguns virtualizadores têm finalidades especificas e são feitos para rodarem em um determinado sistema operacional, a tabela 1 faz um breve comparativo entre as soluções que serão abordadas neste trabalho. Tabela 1 – Comparativo entre soluções para virtualização Solução Fornecedor Tecnologia Finalidade Guests Hosts Virtual PC Microsoft Emulação Virtualização Windows, Windows Total em Linux, ambientes BSD desktops VMware VMware Inc. Emulação Virtualização Linux, Windows, Player Total de desktops BSD, Linux e ambientes Windows, de testes Novell, Solaris VirtualBox Oracle Emulação Virtualização Linux, Linux, Total de desktops Windows, Windows,
  • 16. 15 BSD, Mac OS, Solaris, Solaris DOS, OS/2 Fonte: FreeBSD – O Poder dos Servidores em Suas Mãos, (2009. p.362) Nota: Dados trabalhados pelo autor. Notasse que todos os virtualizadores comparados na tabela 1 utilizam virtualização total. 2.1 VMware Player® É um software de virtualização do tipo total, desenvolvido pela ECM empresa subsidiada pela VMware Inc. uma das pioneiras no mercado de virtualizadores comerciais, fundada em 1998 por Diane Greene, a versão VMware Player é uma das soluções gratuitas da empresa que conta com outras soluções proprietárias de sucesso como o VMware Workstation entre outros. Uma das características marcantes nos produtos da VMware é a utilização da tecnologia avançada de monitor de máquina virtual intitulada Hypervisor7 que é responsável pelo gerenciamento dos recursos de hardware de forma autônoma que implica em um melhor desempenho e também facilidade de se configurar máquinas virtuais, por se tratar de uma ferramenta intuitiva. 2.2 Oracle VirtualBox® É um software de virtualização que inicialmente foi criada pela Innoteck, empresa que foi comprada pela Sun Microsystems em 2008 e em 2009 à mesma foi adquirida pela Oracle atual proprietária do software VirtualBox. Como já mencionado na tabela 1 existem versões para Windows, Linux, Mac OS e Solaris, é o software entre os comparados neste trabalho que mais possui versões para 7 Gerenciador de Máquinas Virtuais.
  • 17. 16 diferentes sistemas operacionais host, talvez pelo fato de haver uma versão OSE (Open Source Edition) distribuído como software livre sobre a licença GNU8. O VirtualBox também possui facilidade na instalação, configuração, criação e exportação de máquinas virtuais, pois as VMs9 exportadas são gravadas no formato XML10 maximizando sua compatibilidade com outros softwares. 2.3 Microsoft Virtual PC® Software de virtualização proprietário da Microsoft®, voltado para usuários de desktop11 do sistema operacional Windows®, porem tem-se a possibilidade de emular12 outros sistemas operacionais de outros fabricantes no ambiente convidado. Virtual PC é de fácil instalação e configuração, pois possui interface13 intuitiva. Uma de suas vantagens é a possibilidade de enviar arquivos de maneira muito simples entre o sistema operacional do hospedeiro e o sistema convidado da máquina virtual, bastando somente clicar e arrastar os arquivos que deseja copiar. 8 Licença Pública Geral, também conhecida como GPL. 9 Máquina Virtual. 10 Formato Universal para Intercâmbio de Dados. 11 Computador de uso doméstico. 12 Reproduz as funções de um determinado ambiente, a fim de permitir a execução de outros softwares sobre ele. 13 Conjunto de meios planejadamente dispostos sejam eles físicos ou lógicos com vista a fazer a adaptação entre dois sistemas.
  • 18. 17 3 AMBIENTE DE TESTES Para o ambiente de testes será utilizado como máquina hospedeira um PC padrão x86, com sistema operacional Windows 7 Professional, rodando três maquinas virtuais com Windows XP como mostra a figura 2, a máquina 01 será usada para capturar pacotes entre a comunicação das máquinas 02 que estará servindo o serviço de telnet14 e a máquina 03 que será cliente da máquina 02. O software utilizado para captura de pacotes é o Wireshark, um software livre para analise de trafego de rede, que verifica os pacotes transmitidos pelo dispositivo de comunicação do computador e quando executado configura o dispositivo de rede em modo promiscuo15 e assim possibilitando que se intercepte todo o trafego de dados, se a rede assim permitir, organizando os dados capturados em protocolos e mostrando o remetente e destino de cada comunicação. Figura 2 – Ambiente Virtual Os softwares de virtualização serão configurados em host-only16 em suas placas de rede, ou seja, somente rede interna para as máquinas virtuais. Para 14 É um protocolo cliente-servidor usado para permitir a comunicação entre computadores ligados numa rede, permitindo obter acesso remoto a um computador. 15 Configuração de recepção na qual todos os pacotes que trafegam pelo segmento de rede ao qual o receptor está conectado são recebidos pelo mesmo, não recebendo apenas os pacotes endereçados ao próprio. 16 Configuração no dispositivo de rede que permite somente comunicação entre as máquinas virtuais.
  • 19. 18 fazer esta configuração nos aplicativos de virtualização foram executados os seguintes passos: No VirtualBox basta ir em “Configurações” da máquina virtual, na sessão “Rede” habilite a placa de rede e selecione “Placa de rede exclusiva do hospedeiro – (host-only)” como mostra a figura 3. Figura 3 – Configuração host-only no VirtualBox No Virtual PC esta configuração pode ser feita acessando “Settings” da máquina virtual “Networking” e no adaptador selecione “Local-only” como mostra na figura 4.
  • 20. 19 Figura 4 – Configuração host-only no Virtual PC No VMware Player esta configuração pode ser feita clicando com o botão contrario do mouse em cima da máquina virtual e selecione “Virtual Machine Settings...” e em “Network Adapter” marque “Host-only” como mostra na figura 5. Figura 5 – Configuração host-only no VMware Player
  • 21. 20 4 TESTES REALIZADOS Dentro do ambiente descrito foram realizados testes de comunicação entre as três máquinas virtuais emuladas pelo mesmo virtualizador. Em todos os testes a máquina 02 estará servindo o serviço de telnet e a máquina 03 estará se conectando na máquina 02 através do serviço telnet, e por sua vez a máquina 01 analisará a rede para tentar interceptar os dados trocados entre as máquinas 02 e 03. Diferentes resultados foram obtidos entre os softwares de virtualização, havendo até mesmo diferentes resultados para diferentes versões do mesmo software de virtualização. 4.1 VMware Player® A versão utilizada foi a VMware Player 3.1.4 build-385536 para sistema operacional Windows 32 bits. Nos testes este virtualizador propagou todo o trafego de rede por difusão, ou seja, todo o trafego de dados entre as máquinas virtualizadas em um único domínio de colisão, como mostra a figura 6 em que a máquina virtual 01 consegue interceptar a comunicação entre as máquinas virtuais 02 e 03.
  • 22. 21 Figura 6 – Máquina 01 capturando trafego da rede no VMware Player 4.2 Oracle VirtualBox® Foi testado o software VirtualBox versão 4.0.4 r70112 para sistema operacional Windows 32 bits. Durante os testes este virtualizador se comportou como um difusor de trafego de rede, replicando todo o trafego entre a comunicação das máquinas 02 e 03 na rede e possibilitando que a máquina virtual 01 conseguisse capturar todo trafego de dados da rede como mostra a figura 7.
  • 23. 22 Figura 7 - Máquina 01 capturando trafego da rede no VirtualBox 4.3 Microsoft Virtual PC® A versão utilizada nos teste foi a Virtual PC 6.0.192.0 para Windows 32 bits, está versão foi a única dos softwares de virtualização testados neste trabalho que durante a analise da comunicação entre as máquinas virtuais 02 e 03 não propagou todo o trafego por difusão na rede, mas sim endereçando os pacotes somente para o destino, como faria um switch em uma rede física. A figura 8 mostra o comportamento do analisador de trafego da rede durante a comunicação entre as
  • 24. 23 máquinas virtuais, percebesse que somente o broadcast17 foi percebido pelo software de analise que estava em execução na máquina 01, algo normal que ocorreria em uma rede física com swith. Figura 8 - Máquina 01 capturando trafego da rede no Virtual PC Devido ao comportamento do Virtual PC perante o teste de analise de trafego foi decidido realizar outros testes como o de MAC flood que consiste em inundar a tabela ARP18 do dispositivo de rede com endereços MACs19 falsos, para que o mesmo não consiga mais gerenciar o endereçamento de pacotes e comece há trabalhar por difusão, replicando toda a comunicação na rede. Para isso foi utilizado o sistema operacional Unix FreeBSD com a ferramenta de MAC flood 17 É o processo pelo qual se transmite ou difunde determinada informação, tendo como principal característica que a mesma informação está sendo enviada para muitos receptores ao mesmo tempo. 18 É um protocolo usado para encontrar um endereço da camada de enlace (Ethernet, por exemplo) a partir do endereço da camada de rede (como um endereço IP). 19 É o endereço físico de 48 bits da estação, ou, mais especificamente, da interface de rede.
  • 25. 24 devidamente instalada e configurada na mesma classe de IP das máquinas virtuais com Windows XP. Porem como mostra a figura 9 o Virtual PC se demonstrou imune a esta técnica, somente capturando o broadcast da rede novamente. Figura 9 – Ataque de MAC Flood no Virtual PC Por se demonstrar imune ao ataque de MAC Flood, foi decidido testar uma versão anterior do Virtual PC, versão 6.0.156.0, para observar se o seu comportamento em relação à comunicação entre as máquinas virtuais continuaria da mesma forma, o resultado obtido foi totalmente diferente da versão mais atual testada anteriormente, como mostra a figura 10 em que a máquina 01 desta vez consegue interceptar o trafego de dados trocados entre as máquinas 02 (IP 192.168.1.2) e máquina 03 (IP 192.168.1.3).
  • 26. 25 Figura 10 - Máquina 01 interceptando trafego da rede no Virtual PC
  • 27. 26 5 CONCLUSÃO Como visto neste trabalho a utilização de máquinas virtuais tem sido cada vez mais frequente por criar a possibilidade de utilizar sistemas operacionais distintos sobre o mesmo hardware com isolamento, propiciar a redução de custos com economia de energia, pois necessita de quantidade menor de CPU facilitando seu gerenciamento e consequentemente um melhor aproveitamento do espaço físico, além da facilidade de exportação de máquinas virtuais evitando os processos de reinstalação e reconfiguração dos ambientes. Porem como visto também deve-se analisar bem o software de virtualização a ser utilizado, pois das três soluções testadas neste trabalho apenas uma, o Microsoft Virtual PC versão 6.0.192.0 efetuou a comunicação entre as máquinas virtuais, não propagando todo o trafego gerado entre as máquinas sobre a rede virtual, já os softwares VMware Player versão 3.1.4 build-385536 e Oracle VirtualBox 4.0.4 r70112 não demonstraram uma comunicação segura entre as máquinas virtuais, propagando todo o trafego de dados entre as máquinas na rede e assim possibilitando que qualquer outra máquina que esteja na mesma rede possa interceptar os pacotes de dados. Um individuo mal intencionado pode interceptar dados da rede como senhas e nome de usuários. Como trabalho futuro sugere-se que os testes realizados neste trabalho sejam feitos em outros softwares de virtualização mais utilizados em servidores, pois os softwares testados neste trabalho é de utilização doméstica para desktops.
  • 28. 27 REFERÊNCIAS MAGALHÃES, MARA LÚCIA; ORTEGA, JAKELINE QUEIROZ. // Normas e Padrões para Apresentação de Trabalhos Acadêmicos e Científicos da Unoeste. // 1ª Edição Eletrônica .// Presidente Prudente, 2006. VIANA, ELISEU RIBEIRO CHERENE. // Virtualização de Servidores Linux para Redes Corporativas - Guia Prático. // Edição 1. // São Paulo: / Ciência Moderna, 2008. SOUZA, DENIS AUGUSTO A. DE. // FreeBSD: O Poder dos Servidores em Suas Mãos. // Edição 1. // São Paulo: / Novatec editora, 2009. SIQUEIRA, LUCIANO; BRENDEL, JENS-CHRISTOPH. // Virtualização. // Edição 4. // São Paulo: / Linux New Media, 2007. LAUREANO, MARCOS A. P.; MAZIERO, CARLOS A. "Virtualização: Conceitos e Aplicações em Segurança". Minicursos em VIII Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais. Disponível em: < http://www.mlaureano.org/vms/sbseg2008_texto.pdf >. Acesso em 20 de fev. 2011. Conceitos sobre Virtualização. Disponível em:< http://www.scribd.com/doc/8952213/Virtualizacao >. Acesso em 20 de fev. 2011. Artigo sobre Virtualização de Datacenter. Disponível em: < http://www.ccuec.unicamp.br:9000/CCUEC/database/images/Artigo_Virtualizacao_D atacenter.pdf >. Acesso em 20 de fev. 2011. Virtualização: da teoria a soluções. Disponível em: < http://www.gta.ufrj.br/ensino/CPE758/artigos-basicos/cap4-v2.pdf >. Acesso em 21 de fev. 2011.
  • 29. 28 O IMPACTO DA VIRTUALIZAÇÃO NAS EMPRESAS. Disponível em: < http://www.excelenciaemgestao.org/Portals/2/documents/cneg4/anais/T7_0014_010 2.pdf >. Acesso em 22 de fev. 2011. Virtualização - VMWare e Xen. Disponível em < http://www.gta.ufrj.br/grad/09_1/versao-final/virtualizacao/ > Acesso em 04 de mai. 2011.