SlideShare uma empresa Scribd logo
1 de 49
Baixar para ler offline
FACULDADE DE JUAZEIRO DO NORTE
BACHARELADO EM SISTEMAS DE INFORMAÇÃO
JULIAN LENNON GONÇALVES DE SOUZA LEITE
PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA
PLATAFORMA UNIX
JUAZEIRO DO NORTE
2013
FACULDADE DE JUAZEIRO DO NORTE
BACHARELADO EM SISTEMAS DE INFORMAÇÃO
JULIAN LENNON GONÇALVES DE SOUZA LEITE
PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA
PLATAFORMA UNIX
Monografia apresentada ao curso de Sistema
de Informação para a obtenção do Grau de
Bacharel em Sistemas de Informação.
Orientado por: Prof. Msc. Isydório Alves
Donato
JUAZEIRO DO NORTE - CE
2013
FACULDADE DE JUAZEIRO DO NORTE
BACHARELADO EM SISTEMAS DE INFORMAÇÃO
JULIAN LENNON GONÇALVES DE SOUZA LEITE
PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA
PLATAFORMA UNIX
Esta Monografia foi julgada adeguada para a obtenção do Grau de Bacharel em Sistemas de
Informação, e aprovada na sua forma final pela Faculdade de Juazeiro do Norte
Data: ____/____/____
Nota: _____________
________________________________________________
Prof. Me. Isydório Alves Donato
Orientador – FJN
__________________________________________________
Prof. Me. Sidney de Lima Pinto
Avaliador
__________________________________________________
Prof. Esp. Jairo Menezes Ferraz
Avaliador
JUAZEIRO DO NORTE - CE
2013
AGRADECIMENTOS
Aos meus pais, que não mediram esforços em me guiar e apoiar até que eu chegasse até esta
etapa tão importante de minha vida.
A todos os meus familiares.
A todos os professores do curso, que foram tão importantes não só na minha vida acadêmica,
mas também para o meu crescimento como pessoa.
Ao coordenador do curso Sidney de Lima Pinto, pelas oportunidades, pelos ensinamentos, e
por acreditar em mim.
Ao professor Isydório Alves Donato, por sempre compartilhar seu conhecimento, pela
paciência na orientação, e incentivos que tornaram possível a conclusão desta monografia.
Aos amigos e colegas trabalho, pelo incentivo e pelo apoio constantes.
“Se o dinheiro for a sua esperança de independência,
você jamais a terá. A única segurança verdadeira consiste
numa reserva de sabedoria, de experiência e de
competência.” (Henry Ford)
RESUMO
Com o advento das tecnologias cada vez mais integradas, e consequentemente interconectadas
em rede, torna-se essencial a oferta de serviços tecnológicos capazes de controlar esta
demanda. O fornecimento de serviços de rede é oferecido por equipamentos conhecidos como
servidores, dispositivos estes capazes de disponibilizar e controlar grandes volumes de dados,
de modo que por esta capacidade de processamento ser cara, e possivelmente guardando
dados importantes, o mesmo torna-se um alvo em potencial para criminosos. Os objetivos de
invasões a servidores podem variar de roubo de informações financeiras, obtenção de
vantagens corporativas competitivas, informações privadas sobre usuários do servidor, até para
apenas realizar ações de vandalismo, como deletar arquivos e parar os serviços dos sistemas.
Como estes crimes podem causar um impacto financeiro ou moral a uma grande quantidade de
vítimas, deve-se preocupar em como elucidar tais crimes, e para isto existe a computação
forense. Sendo que este trabalho estuda especificamente os servidores baseados na plataforma
Unix, por ser uma plataforma de referência e possuir um gama de sistemas operacionais
baseados nos seus padrões. São estudados os fundamentos da perícia forense, agregados as
particularidades básicas dos padrões da plataforma Unix, mostrando uma explanação
superficial de determinados serviços de rede, e como realizar determinadas análises nos
mesmos.
Palavras-chave: Perícia, Forense, Servidor, Plataforma, Unix
ABSTRACT
With the advent of technologies growning integrated and interconnected in network, becomes
essential to offers of technological services sufficient to manage this demand. The provision of
network services is offered by equipment known as servers, these devices are sufficient to
offers and manage large volumes of data, so that this processing capacity is high cost, and
possibly storing important data, it becomes a potential target for criminals. The objectives of
the invasions servers may diversify robbery of financial information, obtain corporate
competitive advantages, private information about users of the server, or only perform actions
of vandalism, as deleting files and stop the services systems. As these crimes can cause a
financial impact or moral to a amount of victims, must worry about how to elucidate such
crimes, and for this there is a computer forensics. Since this work studies specifically based
servers Unix platform, as a reference platform and have a range of operating systems based on
their standards. Are studied the fundamentals of forensics, aggregates the particularities of
basic standards of the Unix platform, showing a superficial explanation of certain network
services, and how to perform certain analyses.
Keywords: Expertise, Forensic, Server, Platform, Unix
LISTA DE FIGURAS
Figura 1: Processos da computação forense
Figura 2: Processos do EDRM
Figura 3: Destaques da Fase 1
Figura 4: Destaques da Fase 2
Figura 5: Comando para capturar os dados da memória RAM
Figura 6: Comando para capturar os dados dos processos em execução
Figura 7: Comando para capturar os dados sobre as conexões de rede
Figura 8: Comando para capturar os dados sobre os usuários autenticados
Figura 9: Destaques da Fase 3
Figura 10: Comando para copiar um disco rígido
Figura 11: Processo de montagem de partição de um arquivo de cópia de um disco rígido
Figura 12: Exibição e filtragem do conteúdo obtido da memória RAM
Figura 13: Exemplo do conteúdo do arquivo com dados capturados dos processos
Figura 14: Exemplo do conteúdo do arquivo com dados capturados das conexões ativas
Figura 15: Exemplo do conteúdo do arquivo com dados capturados dos usuários ativos
Figura 17: Conteúdo do arquivo de configuração do SSH
Figura 18: Conteúdo do arquivo de LOG de autenticações no sistema Unix
Figura 19: Destaques da Fase 4
Figura 20: Listagem da pasta raiz do Linux
Figura 21: Comando para montagem e desmontagem de dispositivos no Unix
Figura 22: Comando para listar o conteúdo dos diretórios no Unix com um parâmetro para
maior detalhamento
LISTA DE ABREVIATURAS
IP: Internet Protocol
LOG: Log file
RAM: Random Access MemoryURL - Uniform Resource Locator
TCP: Transmission Control Protocol
UDP: User Datagram Protocol
URL: Uniform Resource Locator
LISTA DE TABELAS
Tabela 1 – Endereço IP versão 4
SUMÁRIO
INTRODUÇÃO..........................................................................................................12
1. SOBRE ENDEREÇOS DE REDES E PROTOCOLOS.........................................14
1.1. ENDEREÇO IP......................................................................................................... 14
1.2. PROTOCOLOS DE REDE TCP/UDP ...................................................................... 15
2. FUNDAMENTOS DA COMPUTAÇÃO FORENSE ...............................................16
2.1. MOTIVAÇÕES DOS CRIMES DE INFORMÁTICA E SUA FACILITAÇÃO......... 16
2.2. PROCESSOS DA COMPUTAÇÃO FORENSE........................................................ 17
2.2.1. VERIFICAÇÃO PRÉVIA DAS PROVAS A SEREM APREENDIDAS............. 20
2.2.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS ........................ 21
2.2.3. REALIZAR A ANÁLISE ................................................................................... 23
2.2.4. LAUDO PERICIAL ........................................................................................... 24
3. SERVIDORES EM PLATAFORMA UNIX .............................................................26
4. COMPUTAÇÃO FORENSE APLICADA EM SERVIDORES DA PLATAFORMA
UNIX..........................................................................................................................28
4.1. VERIFICAÇÃO DO SERVIDOR UNIX A SER APREENDIDO ............................. 28
4.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS DE UM SERVIDOR
UNIX............................................................................................................................... 29
4.2.1. APREENSÃO COM O SERVIDOR DESLIGADO............................................ 29
4.2.2. APREENSÃO COM O SERVIDOR LIGADO................................................... 30
4.3. PROCESSO DE ANÁLISE FORENSE EM UM SERVIDOR UNIX........................ 32
4.3.1 ANÁLISE DO SISTEMA OPERACIONAL DO SERVIDOR UNIX .................. 33
4.3.2 ANÁLISE DO SERVIÇO SQUID....................................................................... 39
4.3.3 ANÁLISE DO SERVIÇO OPENSSH ................................................................. 40
4.4. ELABORAR O LAUDO........................................................................................... 42
CONSIDERAÇÕES FINAIS ......................................................................................44
REFERÊNCIAS.........................................................................................................46
APÊNDICES..............................................................................................................47
APÊNDICE 1 - ESTRUTURA DE DIRETÓRIOS E COMANDOS DO UNIX .............. 47
12
INTRODUÇÃO
Este trabalho está envolto no âmbito da perícia forense computacional, ramo
profissional e científico com o objetivo de esclarecer crimes ligados à informática, sendo que o
foco do estudo é direcionado para a abordagem de servidores baseados em sistemas
operacionais da plataforma Unix, de modo que se possibilite a elucidação de crimes cometidos
direcionados aos dos seus serviços de rede, e de forma que se possa compreender quais
correções de segurança aplicar uma vez que determinadas falhas de segurança venham a ser
encontradas.
Os servidores Unix fornecem serviços de rede tanto para usuários na internet, como
para uma rede local, em consequência disto, possuem dados que podem ser utilizados por um
invasor para fins ilícitos, como roubos financeiros, venda de informações sigilosas, como
também para a obtenção de acesso a outros servidores ou dispositivos de usuários com a
finalidade de utilização como meios para outros ataques.
A problemática está em compreender como aplicar as práticas forenses em servidores
baseados na plataforma Unix, levando em consideração as características particulares dos seus
padrões, que definem sua estrutura de sistema de arquivos, interface com o usuário, e
ferramentas básicas do sistema.
Desta forma, este trabalho propõe-se possibilitar a compreensão de que após
determinadas vulnerabilidades exploradas em servidores Unix, a perícia forense deve ser
realizada de forma diferenciada, mostrando as características particulares dos seus contextos
que devem ser levadas em consideração agregadas as práticas da computação forense, de
modo que os procedimentos periciais possam ser aplicados de forma apropriada, para que se
evite a alteração sempre que possível dos dados que possibilitam a comprovação dos indícios.
Para que se possa chegar a esta compreensão geral, são estudados bibliograficamente
os fundamentos da computação forense com suas práticas e procedimentos, como também os
fundamentos da plataforma Unix e de determinados serviços de rede que podem ser utilizados
nesta plataforma, para em seguida, também permitir compreender como aplicar ações
corretivas de segurança, baseados nas conclusões durante os procedimentos periciais.
A plataforma em questão foi escolhida como umas das bases para o estudo por ser
referência de padrões para diversos outros sistemas operacionais, o que possibilita que a
aplicabilidade desde trabalho tenha uma abrangência maior e o desenvolvimento de novos
estudos em diversas ferramentas e sistemas operacionais.
13
No primeiro capítulo, são apresentados conceitos básicos sobre rede de
computadores, para que possibilite a compreensão do resto do trabalho que se utiliza de tais
fundamentos. No segundo capítulo são abordados os conceitos e as práticas da computação
forense, de forma que terá uma tendência especificamente para os servidores. No terceiro são
estudados os fundamentos da plataforma Unix, especificamente sobre os seus objetivos como
sistema operacional, compreender sua estrutura básica do sistema de arquivos, e os seus
serviços de rede. No quarto capítulo é realizado o desenvolvimento do trabalho, onde é
associado às práticas forenses aos servidores baseados nas características da plataforma Unix,
como também são estudadas práticas de segurança pós-perícia, de forma que seja possível
compreender quais correções de segurança podem ser aplicadas em determinadas
vulnerabilidade.
14
1. SOBRE ENDEREÇOS DE REDES E PROTOCOLOS
Neste capítulo são estudados os fundamentos básicos de redes de computadores, de
modo que se possibilite a compreensão do funcionamento do protocolo TCP/IP e seu uso
pelos serviços de rede.
Para este trabalho, o essencial é compreender que para que os dispositivos se
comuniquem entre si em uma rede, cada um deve ter um número único de forma que o
identifique distintamente, chamado de endereço IP1
, e para que as aplicações servidoras
presentes em determinado servidor se comuniquem com as aplicações clientes de outro
dispositivo pela rede, elas se utilizam de outros endereços via protocolos TCP2
ou UDP3
(MORIMOTO, 2008).
1.1. ENDEREÇO IP
O endereço IP, na sua versão quatro é um número de quatro octetos separados, de
forma que dependendo da classe deste endereço, determinados octetos no início servirão como
classificadores da rede, e os números finais identificarão o dispositivo dentro de determinada
classe de rede (KUROSE; ROSS, 2010).
Para a computação forense os endereços IP podem ajudar a elucidar a autoria de
ações ilícitas em informática. Já que cada dispositivo em uma rede possui sua própria
identificação, o endereço IP proporciona identificar o dispositivo utilizado para autoria do
crime, e por consequência, possibilita localizar o autor (COSTA, 2011).
A Tabela 1 mostra a faixa de endereços de rede possíveis para a versão quatro do
TCP/IP.
Tabela 1 – Endereço IP versão 4
Faixa de endereços possíveis
De Até
1 IP: Internet Protocol
2 TCP: Transmission Control Protocol
3 UDP: User Datagram Protocol
15
0.0.0.0 255.255.255.255
Fonte: Dados da pesquisa
A Tabela 1 permite perceber que para cada octeto do endereço IP, é possível utilizar
números entre 0 e 255, sendo que determinadas combinações entre os octetos não são
utilizáveis para endereços IP de dispositivos de rede (ELEUTÉRIO; MACHADO, 2010).
1.2. PROTOCOLOS DE REDE TCP/UDP
Nas comunicações de rede, o endereçamento IP atua apenas para identificar a origem
e destino do tráfego, de modo que deve atuar em conjunto com os protocolos de rede TCP ou
UDP, para que seja possível categorizar os serviços de rede por meio de utilização de portas
em um servidor, possibilitando o funcionamento de diferentes serviços no mesmo sistema
operacional. As numerações das portas de rede possuem padronizações quanto às suas
associações a determinados serviços de rede, sendo que também é possível a utilização de
qualquer porta por qualquer serviço, desde que não já esteja sendo utilizada (MORIMOTO,
2008).
A diferença básica entre os dois protocolos, está no fato de que para as conexões de
rede dos serviços que necessitam de garantia de entrega dos pacotes usa-se o TCP, pois possui
mecanismos para que o computador que está enviando dados receba respostas do destinatário
confirmando o recebimento dos dados de forma íntegra. O UDP por sua vez, é utilizado por
serviços que necessitam de rapidez no tráfego, e que não necessitam de confirmação de
recebimento de dados do destinatário, deste modo, o UDP é utilizado por serviços menos
críticos (KUROSE; ROSS, 2010).
16
2. FUNDAMENTOS DA COMPUTAÇÃO FORENSE
Neste capítulo são apresentados os conceitos necessários para que se possa
compreender a computação forense de uma forma geral, como também sobre a realização dos
processos periciais seguindo as boas práticas, nas quais buscam acima de tudo a integridade e
veracidade das provas.
Ao notarem-se atividades incomuns em sistemas operacionais que não foram
autorizadas, ou que fogem aos padrões históricos do sistema, pode ser o indício sobre uma
invasão bem sucedida, ou uma tentativa em andamento. Para se ter a certeza de que um fato
ilícito ocorreu no sistema devido a ações que não foram permitidas, existe a computação
forense, que exige procedimentos planejados, sequenciados e bem organizados para sua
realização, pois a quantidade de dados que podem ser encontrados é grande, e aqueles que
mostrem o que realmente um invasor fez, exige procedimentos específicos com o apoio de
conceitos e ferramentas para detectá-los (FARMER, 2007).
Para que o resultado do trabalho forense seja válido, aconselha-se que as práticas das
metodologias adotadas, tenham estudos comprovatórios de suas eficiências.
É possível se guiar pela afirmativa que diz que
[...] a Computação Forense tem como objetivo principal determinar a dinâmica, a
materialidade e autoria de ilícitos ligados à área de informática, tendo como
questão principal a identificação e o processamento de evidências digitais em
provas materiais de crime, por meio de métodos técnico-científicos, conferindo-lhes
validade probatória em juízo. (ELEUTÉRIO; MACHADO, 2010, pp. 16-17).
2.1. MOTIVAÇÕES DOS CRIMES DE INFORMÁTICA E SUA FACILITAÇÃO
Com as tecnologias das redes de computadores cada vez mais difundidas, e o
aumento de usuários das mesmas realizando transações financeiras, acabam por chamar a
atenção dos criminosos, de modo que eles buscam por vulnerabilidades ou erros de outrem que
propiciem chances por onde eles possam atacar e praticar ações ilegais, como roubar,
17
vandalizar, extorquir, desmoralizar, e outras práticas ilícitas afins por meio de recursos
tecnológicos (ROSA, 2006).
Geralmente os ataques aos sistemas se iniciam em alvos em potencial, que se
caracterizam por ser a parte mais deficiente da segurança do sistema, seja ela física ou não, em
que os usuários também não estão excluídos disto. Em um sistema seguro, o aspecto humano
deve ser trabalhado como um ativo, pois é por este lado onde muitos erros das políticas de
segurança são desconsiderados, e o agente criminoso ataca por ela de forma quase que
imperceptível (LYRA, 2008).
Descobrir antecipadamente as vulnerabilidades existentes no sistema e as motivações
do crime pode antecipar quais foram os caminhos seguidos pelo meliante, e quais foram seus
objetivos; o que pode permitir a aceleração dos procedimentos forenses, como também a
realização de um laudo mais claro e preciso.
2.2. PROCESSOS DA COMPUTAÇÃO FORENSE
Apesar de alguns autores mostrarem a existência de sub-rotinas adicionais, ou a
menos, as principais rotinas da perícia seguem uma sequencia lógica, sendo elas, a de
verificação das provas a serem apreendidas, apreensão e manutenção da integridade das
mesmas, realização da análise, e produção de um laudo resultante de todo o processo
(COSTA, 2011; ELEUTÉRIO e MACHADO, 2010).
Na Figura 1 é possível analisar as fases ou processos mais relevantes para os autores
pesquisados. É possível perceber que as fases possuem uma sequência tendenciosa para serem
finalizadas na fase de produção do laudo, sendo que também é possível haver a necessidade da
repetição de determinadas fases já realizadas para que todo o processo tenha mais efetividade
nos resultados a serem obtidos.
18
Figura 1: Processos da computação forense
Fonte: Dados da pesquisa
Existem no mercado padronizações referenciais que explanam os processos que
podem ser utilizados para o correto sequenciamento dos procedimentos de coleta de dados
digitais até sua utilização final.
Um dos referenciais que se adequa aos processos necessários para todo o trabalho de
computação forense se chama EDRM, que é uma abreviação para modelo de referência para a
descoberta eletrônica.
O EDRM é um modelo que estabelece os processos padrões relativos a trabalhos com
dados digitais que precisam de um ciclo de vida preestabelecido, que vai da determinação das
informações a serem coletadas, até a apresentação dos dados relevantes das mesmas, de modo
que todos os processos não necessitam serem cumpridos obrigatoriamente. A representação do
modelo pode ser vista na Figura 21 (EDRM LLC, 2013.)
19
Figura 2: Processos do EDRM
Fonte: Dados da pesquisa
Em uma análise da Figura 2, pode-se destacar:
 Processo 1: Fase em que se realiza uma predeterminação dos dados a serem coletados.
 Processo 2: Fase para se identificar no momento da coleta, quais dados são relevantes
para serem obtidos.
 Processo 3.1: Ações que paralelas à coleta de dados no Processo 3.2, possuem a
responsabilidade de manter os dados íntegros quanto a sua originalidade.
 Processo 3.2: Coleta de dados propriamente dita.
 Processo 4.1: É relacionado ao processamento de dados coletados já na fase de análise
do Processo 4.3, em que na utilização de ferramentas adequadas, é determinada uma
filtragem com o objetivo de delimitar o resultado da busca de dados.
 Processo 4.3: É a análise propriamente dita, em que se averiguam os resultados obtidos
com o processamento do Processo 4.1, para se verificar se foram obtidos os dados
necessários.
 Processo 5: Este processo determina diretrizes para especificar como manter os
documentos de todos os processos do EDRM, para que no final as informações mais
importantes sejam reveladas.
Ao longo do trabalho é possível perceber que se podem agregar os conceitos dos
processos da computação forense aos processos do EDRM, onde determinados processos
recomendados por autores de livros citados de computação forense, englobam mais de um dos
20
processos descritos pelo EDRM. Será possível perceber, que o processo forense de verificação
prévia das provas a serem apreendidas, engloba o processo 1 (Information Management) e
processo 2 (Identification) do EDRM. Já o processo forense de apreender e manter a
integridade das provas, engloba o processo 3.1 (Preservation) e o processo 3.2 (Collection) do
EDRM. A realização da análise forense engloba o processo 4.1 (Processing) e o processo 4.3
(Analisys) do EDRM. E, finalmente, no processo forense de elaboração do laudo pericial,
engloba o processo 5 (Production) do EDRM, de modo que o processo 6 do EDRM pode ser
associado a apresentação do laudo perante ao requisitante, sendo que este não é estudado
neste trabalho.
2.2.1. VERIFICAÇÃO PRÉVIA DAS PROVAS A SEREM APREENDIDAS
Para que se evite perda de tempo à procura por indícios em meio à grande quantidade
de dados que podem ser encontrados, aconselha-se que o perito determine delimitações que
especifiquem ao máximo possível o que o solicitante do trabalho pericial requer. Desta forma,
será possível agilizar a seleção dos equipamentos a serem apreendidos, e também determinar
expressões regulares que poderão ser utilizadas nas ferramentas de análise (COSTA, 2011).
A determinação prévia dos requisitos para a realização dos processos de perícia pode
ser associada ao processo 1 (Information Management) do EDRM, representado na Figura 2,
já que se trata de um planejamento sobre dos dados a serem coletados.
Já no local da apreensão, é importante evitar que se realize qualquer ação direcionada
a qualquer equipamento a não ser que o perito autorize, a fim de se evitar a manipulação
inadequada das provas, pois poderia tanto modificá-las como inutilizá-las, pois podem ocorrer
ocasiões onde membros da equipe de busca e apreensão, ou mesmo alguém encontrado no
local, desligue, ligue, ou reinicie o equipamento. (COSTA, 2011).
Segundo Eleutério e Machado (2010, p. 26), “A primeira função do perito é realizar
um reconhecimento do local, identificando os equipamentos computacionais existentes,
incluindo computadores, notebooks, pontos de acesso e outros”.
O ato de identificar quais provas devem ser apreendidas pode ser relacionado ao
processo 2 (Identification) do EDRM representado na Figura 2.
Os servidores possuem a capacidade de oferecer diversos serviços para redes,
consequentemente atuam com diversas conexões com outros dispositivos que necessitem dos
21
seus recursos, desta forma, na apreensão de servidores que estejam ligados a captura das
conexões ativas torna-se crucial para a perícia, pois por ser um equipamento centralizado na
rede, e com diversos outros conectados a ele, consequentemente haverá um número grande de
conexões, com detalhes tecnicamente complexos, que podem conter informações para elucidar
questões sobre determinados casos.
Sistemas operacionais baseados no Unix oferecem algumas facilidades para obtenção
de dados, já que no próprio sistema existem diversas ferramentas nativas para se obter dados
da memória, de conexões ativas, e de clonagem de discos rígidos, ocasionalmente não sendo
necessária a instalação de ferramentas forenses para estas coletas, deixando estas para a fase de
análise (PALMER, 2008).
2.2.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS
Recomenda-se que os dados originais se mantenham intactos e intocáveis ao máximo,
e que a análise forense seja realizada em suas cópias íntegras, pois só a instalação de uma
ferramenta de análise forense, ou de algum dispositivo no sistema original em pleno
funcionamento, já resultaria na sobrescrita de dados originais a partir do momento que se
notou a necessidade de realizar uma perícia, o que comprometeria a veracidade do trabalho de
análise (FARMER, 2007).
A preservação da integridade das provas pode ser associada ao processo 3.1
(Preservation) do EDRM.
Outro cuidado que deve ser tomado é quanto à integridade física das provas, pois
equipamentos de informática geralmente são sensíveis, e devem ter o seu acondicionamento
apropriado antes de serem levados para o local de análise, pois avarias nos equipamentos
podem danificar os dados, e por consequência, as possíveis provas (FREITAS, 2006).
Deve-se verificar se o equipamento a ser apreendido está em funcionamento, pois
nesta situação, pode haver informações importantes nos dados carregados em memória e nas
aplicações em execução, e prover meios de capturar os seus estados é relevante (FREITAS,
2006).
O trabalho de coleta de dados e apreensão das provas em geral pode ser associado ao
processo 3.2 (Collection) do EDRM mostrado na Figura 2.
22
Para as análises forense, e até mesmo para monitoração e prevenção de tentativas de
invasão, existem arquivos específicos que devem ser averiguados de forma sistemática, sendo
conhecidos por arquivos de log4
. Nestes arquivos de log podem ser encontrados vários tipos
de registros relacionados às atividades que acontecem no sistema operacional, sejam elas
problemas ou não (PALMER, 2008).
O fato é que o desligamento do computador, além de apagar os vestígios de conexões
ativas e da memória volátil, irá gerar uma sequência de fechamentos de processos que acabará
por sobrescrever dados do disco e dos registros dos arquivos de log, que são de suma
importância para a análise (FARMER, 2007).
Existem determinados aplicativos apropriados para captura de dados em tempo real, e
se deve ter cuidado para que suas utilizações não alterem quaisquer dados da prova
(ELEUTÉRIO; MACHADO, 2010).
Deve-se verificar a real necessidade da captura de dados com o sistema ligado, pois
será necessário realizar tal procedimento da forma mais evasiva possível, e após a verificação
da memória, os mesmos cuidados valem para se obter os dados das conexões de rede ativas, e
verificação de processos e usuários (FARMER, 2007).
A partir desta premissa, algumas ações preventivas podem ser tomadas na obtenção
de dados de memória. Uma delas é de que a aplicação de coleta de dados consuma o mínimo
possível de memória com a máxima eficiência. Outro fator é de que para que esta coleta seja o
menos invasiva, deve-se salvar os dados em um dispositivo de armazenamento externo, e evitar
utilizar programas do próprio sistema operacional.
Nesta etapa, após a coleta dos dados mais voláteis, a clonagem integral dos discos
rígidos deve ser realizada, e além dos softwares que realizam esta tarefa, existem dispositivos
específicos que possuem tecnologias apropriadas que evitam a sobrescrita de dados das suas
fontes, pois é aconselhável que este procedimento seja realizado com o disco rígido no modo
somente leitura (ELEUTÉRIO; MACHADO, 2010).
Para posteriormente confirmar a veracidade dos dados copiados, existem ferramentas
apropriadas que realizam testes rigorosos para se garantir as suas originalidades
(ELEUTÉRIO; MACHADO, 2010).
Este passo é necessário, pois no momento da cópia podem acontecer problemas no
meio de comunicação, erros de memória, e outras situações, que podem alterar, ou deixar de
copiar, pequenos dados que podem nem gerar erros, mas que podem comprometer a
veracidade do trabalho pericial.
4 LOG: Log file
23
2.2.3. REALIZAR A ANÁLISE
Após as coletas dos dados, deve-se realizar o processo de análise, que consiste em
procurar e averiguar nas suas cópias os indícios que possam levar a comprovação dos fatos
criminais.
Segundo Eleutério e Machado (2010, p. 65) “é a fase que consiste no exame das
informações extraídas na fase anterior, a fim de identificar evidências digitais presentes no
material examinado, que tenham relação com o delito investigado.”
Neste processo é que muitas ferramentas forenses são realmente aplicadas, pois com
elas é que será possível procurar nos dados pelos vestígios do crime, e geralmente é neste
momento que se utiliza de filtros e parâmetros que delimitem o que se procura. Para isto, em
conjunto com estas ferramentas, são utilizados dados como palavras, frases, ou combinações
de textos específicos, que tenham alguma relação com as informações que se procura, a fim de
se conseguir resultados os mais objetivos possíveis (FARMER, 2007).
A utilização de ferramentas para a filtragem de dados para posterior averiguação pode
ser relacionada ao processo 4.1 (Processing) do EDRM apresentado na Figura 1, de modo que
a análise dos dados resultantes pode ser associada ao processo 4.3 (Analisys) do EDRM.
Para casos onde a análise será em algum aplicativo específico, e que qualquer registro
no sistema operacional não possua importância, aconselha-se o uso de virtualização a partir
das réplicas obtidas (ELEUTÉRIO; MACHADO, 2010).
Um cuidado deve ser levado em consideração quanto a executar aplicações
diretamente do sistema operacional da vítima, pois estas podem estar alteradas contendo
códigos maliciosos, e que podem ser armadilhas, devendo o perito buscar sempre que possível
executar aplicações, como também salvar suas saídas, a partir de locais alheios ao sistema
verificado (COSTA, 2011).
Mesmo que se execute o sistema operacional em uma máquina virtual, para servidores
pode ser problemático, pois tanto os arquivos de log, como os arquivos dos processos, e
alguns arquivos temporários, poderão ser alterados, criados, ou apagados quando o sistema
iniciar. Outro problema é que seus serviços de rede podem não encontrar um ambiente de
conexões similar ao que existia anteriormente, o que acarretará em geração de vários erros nos
arquivos de log.
Vários dos serviços de rede para plataformas baseadas no Unix são abertos e
documentados, para estes se torna recomendado apenas uma análise somente leitura do seu
24
sistema de arquivos devidamente clonado, pois seus arquivos e códigos estarão acessíveis para
verificações.
A análise do sistema por esta metodologia de virtualização torna-se uma alternativa
ao se encontrar aplicações de código fechado, pois neste cenário, instalar a aplicação em outro
computador seria mais complexo e trabalhoso, já que o fornecedor da aplicação certamente
não abriria o código para ser analisado.
Na análise, além das buscas pelos conteúdos dos arquivos, sejam log, imagens, textos
e binários, é interessante procurar pelas alterações dos mesmos no sistema de arquivos, como
deleção, renomeação, movimentação e cópias, trabalho este que geralmente necessita de
ferramentas mais específicas e complexas de serem manipuladas para tal, e que tenham a
capacidade de recuperar informações de baixo nível, como dados já excluídos do alto nível do
sistema de arquivos (FARMER, 2007).
Também é aconselhável que cada procedimento realizado e o seu resultado seja
devidamente documentado para futuramente ser anexado ao laudo pericial (COSTA, 2011).
2.2.4. LAUDO PERICIAL
O laudo pericial, segundo Eleutério e Machado (2010, p. 26) “É a fase final dos
exames forenses, que consiste na elaboração de laudo pelo perito, apontando o resultado e
apresentando as evidências digitais encontradas nos materiais examinados.”
Este é o processo final de todo o trabalho pericial, de modo que ele é como uma
interface para os requisitantes da perícia, pois nele devem constar todos os resultados dos
processos periciais realizados, e as respostas que estavam em aberto que dependiam da
investigação pericial para serem esclarecidas, sendo associável ao processo 5 do EDRM
apresentado na Figura 1.
Uma definição mais detalhada esclarece que
Esta é a etapa em que serão detalhadamente relatados todos os aspectos do
incidente, desde a sua caracterização, os impactos diretos e indiretos, a investigação
realizada, os resultados da perícia, a identificação da autoria, até as causas diretas e
indiretas, brechas e vulnerabilidades encontradas [...]. (COSTA, 2011, p. 29)
25
Desta forma, o laudo pericial deve ser o mais objetivo possível, de modo que se evite
a utilização de palavras, termos e definições que venham a possibilitar o entendimento
generalizado do resultado, ou a não compreensão pelos requisitantes da perícia.
Para se evitar o uso de termos técnicos avançados no laudo resultante, os
procedimentos periciais utilizados e os resultados obtidos nas fases mais técnicas, podem ser
utilizados como anexos do laudo, assim as informações mais importantes, resumidas, e em uma
linguagem mais compreensível para pessoas alheias à área tecnológica, podem ficar no
documento principal.
26
3. SERVIDORES EM PLATAFORMA UNIX
Este capítulo apresenta uma leve explanação sobre as particularidades características
dos sistemas operacionais baseados na plataforma Unix, para que se possibilite compreender os
seus objetivos.
O UNIX é um sistema operacional originalmente concebido para estudos, e com o
passar dos anos, sua robustez, rapidez, segurança e estabilidade, os tornaram atrativo entre os
sistemas para servidores, de modo que em seu desenvolvimento, teve um direcionamento mais
acentuado de melhorias voltadas ao seu gerenciamento de conexões e aplicações focadas em
redes. O fato é que suas características o tornaram referência para diversos outros sistemas
operacionais, principalmente no que diz respeito aos seus padrões, de modo que estão
documentados e regidos pelo POSIX. O POSIX já nasceu em decorrência da criação do Unix,
e determina um conjunto de regras que devem ser seguidas pelos sistemas operacionais que
desejam estar de acordo com os padrões do Unix, sendo mais um motivo que faz com que este
seja considerado uma plataforma de referência (PALMER, 2008).
Estudar as práticas da computação forense direcionadas a plataforma Unix, faz com
que consequentemente estas possam ser aplicadas aos sistemas operacionais originados dos
seus padrões, e o inverso se torna válido, como no Linux por exemplo, onde há vários
comandos e diretórios nos padrões do Unix.
Para possibilitar a compreensão, uma breve descrição sobre a estrutura dos diretórios
do Unix e de como funciona seus comandos pode ser vista do Anexo 1.
Pode acontecer de determinados comandos e arquivos de configuração de cada
sistema funcionar de forma diferente, de modo que a maioria seguem os padrões de estrutura
de diretórios, comandos, e funções base, sendo que os serviços de rede mantém o escopo de
suas configurações idênticas independentemente do sistema operacional(MORIMOTO, 2008).
O perito que for realizar a análise forense caberá a este conhecer o escopo destes
arquivos de configuração, e ficar atento nas linhas destes arquivos aos parâmetros que definem
a localização de onde os arquivos de registros dos eventos das atividades são salvos, sendo
estes mais importantes para o trabalho pericial. Também é interessante documentar os
parâmetros dos arquivos de configuração encontrados na fase de análise forense, pois eles
podem esclarecer pontos como a de que vulnerabilidades o serviço pode ter por estar mal
configurado.
27
Desta forma, no capítulo relativo ao processo de análise forense em um servidor Unix,
são tratadas informações básicas sobre determinados serviços de rede que podem estar
presentes em servidores Unix, incluindo sobre seus arquivos de configuração. Há a
possibilidade de haver diversos outros tipos de serviços de rede além dos que são estudados
neste trabalho, sendo interessante estudar sobre o escopo das configurações e arquivos de log
de cada um, pois são os principais arquivos a serem analisados caso haja a suspeita de
determinado serviço de rede tenha sido invadido, pois possuem informações importantes
quanto aos seus funcionamentos e que registro de eventos relativos aos seus usos
(MORIMOTO, 2008).
28
4. COMPUTAÇÃO FORENSE APLICADA EM SERVIDORES DA PLATAFORMA
UNIX
Neste capítulo se busca apresentar como aplicar os conceitos dos processos da
computação forense em servidores baseados na plataforma Unix, de modo que possibilite a
compreensão de como realizar determinados trabalhos forenses de forma que se altere o
mínimo de dados possível das provas no sistema operacional, a fim de se manter a veracidade e
integridade dos resultados.
4.1. VERIFICAÇÃO DO SERVIDOR UNIX A SER APREENDIDO
Verificar qual equipamento é um servidor é determinante para apreendê-lo
corretamente, principalmente em relação ao estado de funcionamento em que o mesmo será
encontrado, pois a apreensão do servidor desligado é bem mais simples do que o inverso.
Servidores por definição funcionam de forma contínua, e deve-se ter cuidado na sua
apreensão, do modo a se observar se está ligado. É possível que a vítima sem a devida
orientação o tenha desligado, e caso ainda não o tenha feito, não se deve permitir tal ação, pois
poderia eliminar possíveis provas em potencial.
Esta fase pode ser associada ao processo 2 (Identification) do EDRM representado
pela Figura 2, já que se trata do processo de identificação.
Já na Figura 3, é possível ter um visão mais exploratória da Fase 1 (Verificação das
provas a serem apreendidas) relativa a Figura 1, já que melhor se adequa ao processo de
verificação do servidor Unix a ser apreendido.
Figura 3: Destaques da Fase 1
29
Fonte: Dados da pesquisa
4.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS DE UM SERVIDOR
UNIX
Neste capítulo é estudado como realizar a apreensão de um servidor Unix
propriamente dito, de forma que se as práticas forenses sejam aplicadas da melhor forma
possível levando em consideração as características inerentes aos servidores Unix.
Este processo pode ser considerado a Fase 2 (Apreensão e manutenção da integridade
das provas) descrito na Figura 1, sendo que uma explanação dos pontos principais pode ser
visto na Figura 4.
Figura 4: Destaques da Fase 2
Fonte: Dados da pesquisa
4.2.1. APREENSÃO COM O SERVIDOR DESLIGADO
Caso o servidor já esteja desligado, não deverá ser ligado de forma alguma, já que
dados da memória RAM5
já foram apagados e as conexões de rede interrompidas. Em tal
situação o recomendável é verificar quais as conexões físicas de cabos existentes, e anotar suas
as características como, em qual porta do servidor está conectada, e em qual equipamento ele
está interligando o servidor.
Caso outros dispositivos estejam diretamente interconectados ao servidor também
devem ser apreendidos, como mídias removíveis de pendrive, cdrom, disco rígido externo,
servidores com outros serviços que estão integrados ao servidor a ser apreendido, roteadores,
30
e switches gerenciáveis, pois switches não gerenciáveis não salvam dados sobre as conexões
realizadas em suas portas de conexão.
4.2.2. APREENSÃO COM O SERVIDOR LIGADO
Ao se verificar que o servidor se encontra ligado, deve-se obter primeiro os dados
carregados em memória, para em seguida capturar informações sobre conexões de rede ativas,
e de serviços de rede ativos, além das contas de usuários conectadas ao servidor, desde que
não se execute os programas do próprio sistema do servidor, e sim a partir de um dispositivo
externo montado que possui os executáveis.
No Unix a captura de dados da memória pode ser realizada por aplicações nativas do
sistema.
A Figura 5 demonstra o comando para cópia da memória RAM. Pode-se observar que
o comando está sendo executado a partir de um diretório onde uma mídia externa foi montada,
ou seja, ele está sendo executado a partir de um local que também possui comandos e
programas do Unix, para evitar a execução de comandos nativos do sistema operacional da
vítima (PALMER, 2008).
Figura 5: Comando para capturar os dados da memória RAM
Fonte: Dados da pesquisa
É possível verificar também, que o acesso à memória é idêntico ao acesso de um
arquivo qualquer, como pode ser visto no argumento do parâmetro que especifica a origem da
cópia, e o arquivo de destino, está apontando para o diretório montado de uma mídia externa,
para que assim se evite a escrita de dados no disco rígido da vítima.
5 RAM: Random Access Memory
31
Também é aconselhável obter dados sobre os processos ativos, para que futuras
verificações de processos anormais ao sistema, ou de processos sendo controlados por
usuários que não deveriam existir.
Um dos comandos possíveis para capturar dados sobre os processos em execução no
Unix pode ser visto na Figura 6. Os parâmetros utilizados visam especificar que o resultado
contenha dados como, o usuário controlando o processo, a quantidade que o processo está
consumindo de memória e processador, e data em que o processo foi aberto. O sinal de maior
que é um recurso padrão existente no Unix que possibilita que, em vez do resultado do
comando aparecer na tela, o mesmo deve ser encaminhado como texto para dentro do arquivo
especificado, que no caso, é um arquivo salvo fora do sistema de arquivos local, e se o arquivo
não existir, ele será criado (MORIMOTO, 2008).
Figura 6: Comando para capturar os dados dos processos em execução
Fonte: Dados da pesquisa
Já para a captura sobre as conexões ativas, o comando representado na Figura 7 pode
ser utilizado, em que o parâmetro utilizado, especifica que o comando deve retornar todas as
conexões sem exceção (PALMER, 2008).
Figura 7: Comando para capturar os dados sobre as conexões de rede
Fonte: Dados da pesquisa
Também é recomentado capturar dados sobre os usuários autenticados no sistema, e
isto pode ser feito pelo comando representado na Figura 8 (COSTA, 2011).
32
Figura 8: Comando para capturar os dados sobre os usuários autenticados
Fonte: Dados da pesquisa
No processo de análise forense é que os resultados destes arquivos devem ser
averiguados, de modo que após estas coletas de dados, recomenda-se que o sistema seja
desligado de forma imediata, como desconectar o cabo de energia do servidor, para que se
evite a escrita de dados no disco rígido pelo processo de desligamento.
O processo de manter a integridade das provas já se inicia no processo de apreensão
do servidor, o que inclui os cuidados já citados, pois seu foco está em realizar todos os
processos de forma tal que não se modifiquem os seus dados originais, e se modificarem, que
seja o mínimo possível, de forma que nem mesmo sua integridade física pode ser afetada, já
que poderia desencadear o mesmo problema, como a danificação do disco rígido por exemplo.
Os vários cuidados tomados para se evitar a alterações de dados, podem ser
associados ao processo 3.1 (Preservation) do EDRM, que se trata da preservação de dados
representado na Figura 2.
4.3. PROCESSO DE ANÁLISE FORENSE EM UM SERVIDOR UNIX
Como neste processo devem-se procurar anomalias nos sistemas da vítima para se
chegar aos vestígios de crime, o primeiro passo é saber qual é o objetivo do servidor em
questão e quais serviços o mesmo fornece.
33
Figura 9: Destaques da Fase 3
Fonte: Dados da pesquisa
Como não é feito um estudo de caso, é estudada a realização de análises básicas no
sistema operacional, e em seguida em determinados serviços conhecidos do Unix já
mencionados, mostrando anomalias possíveis de serem encontradas, e especificando as
possíveis soluções de segurança.
A utilização de programas para classificar e mostrar dados nesta fase pode ser
comparada ao processo 4.1 (Processing) do EDRM representado na Figura 2, já que se trata
de um processamento de dados, e a averiguação dos dados obtidos é comparável ao processo
4.3 (Analisys) do EDRM, sendo esta a fase de análise.
4.3.1 ANÁLISE DO SISTEMA OPERACIONAL DO SERVIDOR UNIX
Com o servidor no local de análise, o primeiro passo é realizar uma cópia íntegra do
disco rígido original, para que a partir da cópia sejam realizadas as próximas averiguações
forenses mais profundas. No Unix e seus derivados, existe um comando padrão que realiza
este trabalho.
Já que o servidor não pode ser ligado, e supondo que há outra máquina para o
trabalho de análise com um sistema Unix instalado, e que o disco rígido do servidor da vítima
está conectado neste mesmo computador, poderá ser realizado a cópia íntegra do disco a ser
analisado para o disco do computador do perito em forma de um arquivo. A partir deste
momento, a cópia pode ser feita com o comando da Figura 10.
34
Figura 10: Comando para copiar um disco rígido
Fonte: Dados da pesquisa
É aconselhável que para executar o comando da Figura 10, o disco rígido da vítima
não tenha sido montado, pois assim, o comando em questão irá acessá-lo como somente
leitura, e nenhum processo do sistema operacional do perito irá alterar algum dado do disco da
vítima.
É possível observar na Figura 10 que o primeiro argumento indica para o primeiro
parâmetro o caminho do arquivo de dispositivo que faz a interface com disco rígido real, de
modo que o segundo argumento informa ao segundo parâmetro que o destino será um arquivo
(PALMER, 2008).
O arquivo resultante da cópia íntegra é que será analisado, e através de ferramentas
do próprio Unix, pode ser acessado também por um processo de montagem, para poder ser
analisado. Lembrando que mesmo sendo uma cópia, este não deve ser acessado no modo
escrita, pois os problemas de integridade que podem existir em um disco rígido real, também
podem afetar a cópia.
O processo de montagem de um arquivo originado de um disco rígido real pode ser
visto na Figura 11.
35
Figura 11: Processo de montagem de partição de um arquivo de cópia de um disco rígido
Fonte: Dados da pesquisa
Na Figura 11, o primeiro comando é o utilizado para particionamento de discos
rígidos, e o parâmetro utilizado especifica que é para apenas listar informações das partições
existentes em determinado disco, e o primeiro argumento é o arquivo que foi gerado da cópia
do disco rígido que pode ser obtido pelo comando descrito na Figura 10 (MILLER, 2013).
O segundo comando é que realmente monta a partição do arquivo em uma pasta para
poder acessá-la, pasta esta que está especificada no terceiro argumento. O segundo parâmetro
na verdade trata-se de vários parâmetros juntos, pois o comando permite isto, entre eles o
primeiro parâmetro especifica que a montagem é somente leitura, ou seja, não haverá
possibilidade de escrita no arquivo de disco original (MILLER, 2013).
Com a cópia montada como somente leitura, esta já estará pronta para ser analisada, e
antes de realizar esta tarefa, caso tenha sido feita as coletas de dados com o servidor ligado na
fase de apreensão, é neste momento que eles devem ser analisados, pois podem conter
informações que podem ajudar a guiar o caminho antes de realizar a análise da cópia do disco
rígido.
36
O ideal é iniciar pelos dados obtidos da memória RAM, e na Figura 12 é feita a
análise no arquivo que pode ser obtido na captura de dados da memória através do
procedimento representado pela Figura 5.
Figura 12: Exibição e filtragem do conteúdo obtido da memória RAM
Fonte: Dados da pesquisa
Lembrando que os dados coletados na fase de apreensão são salvos em mídia externa
de armazenamento, logo se pode observar na Figura 12, que o diretório corrente é na pasta
utilizada para montar tal dispositivo. No primeiro comando representado na figura, imprime
todo o conteúdo existente dentro do arquivo, sendo que o texto que realmente deve aparecer é
filtrado no segundo comando, que tem como argumento a expressão da palavra procurada, e
assim o resultado final é um resumo com as linhas de textos que possuem a expressão. O
símbolo entre os dois comandos é conhecido como canalização, e no Unix, é capaz de
redirecionar o texto resultante de um comando, para um segundo que pode agregar funções ao
primeiro (FARMER, 2007).
Os conteúdos de memórias possuem grandes quantidades de dados e são bastante
desorganizados, desta forma, vai depender de cada caso para saber o que procurar, podendo
ser senhas por exemplo.
Outro arquivo obtido na apreensão é o que capturou os processos que estavam ativos,
e para analisa-lo, basta imprimir seu conteúdo na tela com o comando representado pela Figura
13.
37
Figura 13: Exemplo do conteúdo do arquivo com dados capturados dos processos
Fonte: Dados da pesquisa
A Figura 13 mostra uma representação do conteúdo obtido relativos aos processos
que estavam rodando no servidor na apreensão. Deve-se ter atenção quanto à primeira coluna,
pois ela mostra que usuários estão executando determinados processos, de modo que na
listagem em questão, os usuários estão corretos, pois os usuários diferentes de root são
usuários criados pelos próprios serviços instalados. Deve-se desconfiar de nomes de usuários
comuns executando algum serviço como os circulados na figura, pois pode ser a evidência de
que um usuário que de alguma forma conseguiu conectar no servidor e ter permissão para
controlar algum serviço.
Já o arquivo que contém o resultado do comando da Figura 7, que contém a lista de
conexões de rede que estavam ativas na apreensão, pode ser visto na Figura 14.
38
Figura 14: Exemplo do conteúdo do arquivo com dados capturados das conexões ativas
Fonte: Dados da pesquisa
Duas observações imediatas podem ser feitas a partir da Figura 14. No primeiro
retângulo que está selecionando três colunas, a primeira coluna mostra a representação de um
serviço, ou pelo nome ou pela sua porta de rede, e a segunda coluna exibe para qual endereço
IP o mesmo pode receber conexões, de modo que o asterisco significa que funciona para
qualquer IP, e finalmente na última coluna mostra qual o estado do serviço, que no caso
significa que o serviço está pronto para aceitar conexões. Já o segundo retângulo mostra na
primeira coluna o nome do servidor e o respectivo serviço, e na segunda mostra um IP de um
computador da rede e a respectiva porta utilizada do lado cliente, e a terceira coluna mostra
que o estado entre os dois dispositivos é de uma conexão estabelecida.
Desta forma, esta listagem de conexões de rede, pode esclarecer qual a origem de
uma conexão de rede não desejada, como também para mostrar quais serviços de rede estão
ativos, que em algumas ocasiões nem deveriam estar ativos.
Uma averiguação para agregar na análise das conexões de rede, é a do arquivo
resultante dos usuários autenticados também obtido a partir da apreensão, que pode ser visto
na Figura 15.
Figura 15: Exemplo do conteúdo do arquivo com dados capturados dos usuários ativos
39
Fonte: Dados da pesquisa
A Figura 15 possibilita confirmar a análise anterior das conexões de rede, sendo as
três informações sublinhadas as mais relevantes, em que a primeira mostra o usuário utilizado,
já a segunda mostra o IP de origem da autenticação do usuário, e a terceira mostra que
processo o usuário está utilizando, sendo que o processo em questão, é por padrão designado
para oferecer uma linha de comando ao usuário autenticado, desta forma, com base na análise
anterior, pode-se presumir que o usuário está conectado remotamente através do serviço de
autenticação remota SSH a partir de outro computador.
Após a análise dos dados que haviam sido capturados na fase de apreensão, pode-se
iniciar à análise do arquivo da cópia do disco montado anteriormente na Figura 11, sendo
possível averiguar os dados existentes dentro da cópia como se fosse o disco rígido real da
vítima. Ao averiguar esta cópia, é que será possível analisar as configurações, os serviços de
rede instalados, os arquivos de log, e os diretórios e arquivos em geral.
4.3.2 ANÁLISE DO SERVIÇO SQUID
Um exemplo de serviço de rede que pode ser encontrado em um servidor Unix é o
Squid. O Squid é um Proxy que tem como principais funções a de compartilhar internet e de
possibilitar um cache. Este serviço possui uma gama de recursos, entre elas, controle de acesso
por autenticação, por horários, por endereços IP, e pode permitir ou não o acesso a conteúdos
dos sites, por expressões de texto, por URL6
e por extensões de arquivos (MORIMOTO,
2008).
O Squid possui um arquivo de log rico de informações para auditoria, em que todos os
dispositivos da rede que navegam na internet através dele terão seus acessos registrados neste
6 URL: Uniform Resource Locator
40
arquivo de log, salvando detalhes como data, hora, tempo gasto, URL acessada, tamanho do
arquivo e outros dados mais técnicos.
A análise pericial em um servidor Squid, é importante para elucidar casos em que se
torna necessário averiguar os sites acessados por determinado computador da rede. Assim, o
maior foco da análise pericial em um servidor Squid está em verificar seu arquivo de log, pois
este contém informações quanto ao uso da internet na rede local.
Em casos de pedofilia, por exemplo, mesmo que o usuário do computador final
apagasse o histórico das páginas acessadas no seu computador, este histórico pode continuar
existindo no servidor Squid. Na Figura 16 pode-se observar o conteúdo de exemplo de um
arquivo de log do Squid (MORIMOTO, 2008).
Figura 16: Conteúdo do arquivo de LOG do Squid
Fonte: Dados da pesquisa
No arquivo de log do Squid demonstrado na Figura 16 mostra três colunas destacadas
que são importantes, em que a primeira coluna mostra data e hora, sendo em um formato
próprio do Unix, em que há ferramentas próprias no Unix para conversão para o formato de
data e hora normal compreensível. Na segunda coluna é mostrado o endereço IP do
computador cliente do serviço Squid que acessou a internet através dele. E na terceira coluna,
é mostrado o endereço do site acessado. Útil para auditorias de rotinas e análises forenses.
4.3.3 ANÁLISE DO SERVIÇO OPENSSH
Outro serviço comumente encontrado em servidores Unix, é o serviço para conexões
remotas seguras em sistemas operacionais Unix, conhecido como OpenSSH. O OpenSSH
propicia meios para que se possa estabelecer uma conexão segura utilizando recursos de
41
criptografia. Este serviço pode controlar que usuários podem acessar, ou endereços IP, e até
determinar em que diretório padrão o usuário irá acessar sem possibilidade de navegar no resto
do sistema de arquivos (TERPSTRA, 2005).
O serviço OpenSSH possui diversas configurações quanto ao número de conexões
permitidas, que usuários permitir, e a porta utilizada. Na Figura 17 um trecho deste arquivo
pode ser visto.
Figura 17: Conteúdo do arquivo de configuração do SSH
Fonte: Dados da pesquisa
Um facilitador para as tentativas de invasão é o administrador do sistema manter a
porta padrão do serviço, sendo que é possível alterá-la na linha destacada na Figura 14
(MORIMOTO, 2008).
Os registros dos acessos ao serviço SSH são arquivados em um arquivo como o
impresso na Figura 18.
Figura 18: Conteúdo do arquivo de LOG de autenticações no sistema Unix
Fonte: Dados da pesquisa
Neste arquivo de log é armazenada a maioria das informações relativas ao uso de
autenticação no sistema, sejam erros de senha, erros de digitação do nome de usuário, e o
endereço IP de origem.
42
Na Figura 18, a parte retangular mostra um exemplo de uma tentativa de autenticação
sem sucesso, mostrando a data, hora, nome do servidor, o serviço acessado, e a mensagem de
erro respectivamente.
Quando existir uma lista neste arquivo de registros de tentativas de autenticação sem
sucesso, em curtos espaços de tempo, e com usuários que fogem aos padrões do sistema, pode
ser o indício de tentativas de invasão, e verificar este arquivo por completo é essencial, para
que se verifique se não houve sucesso em uma das tentativas.
4.4. ELABORAR O LAUDO
O laudo é um documento que inicialmente pode conter várias informações relativas a
todo o processo pericial, como dados sobre a entidade ou pessoa requisitante e do perito,
todas as datas e horas de cada procedimento realizado, dados sobre a vítima, e requisitos e
delimitações estabelecidas antes da perícia iniciar. Logo após, informações técnicas mais
relevantes devem ser destacadas, principalmente as que provam o fato ilícito cometido contra o
sistema da vítima (ELEUTÉRIO; MACHADO, 2010).
A inserção de dados técnicos pode ser procedida com a captura de tela que possui
uma informação relevante, e agregada ao laudo, em que arquivos de log e de configurações
grandes podem ter inseridos ao laudo apenas os seus trechos de texto mais importantes.
Lembrando que se deve argumentar sobre a informação técnica, descrevendo porque motivo
àquela informação é uma prova de um fato ilícito, e caso haja várias provas relacionadas entre
si, deve-se sequenciá-las de forma temporal, mostrando qual artefato teve sua vulnerabilidade
explorado primeiro, e se a partir dela é que se tornou possível a invasão de outras partes do
sistema (ELEUTÉRIO; MACHADO, 2010).
Esta fase é associável ao processo 5 (Production) do EDRM da Figura 1, que
representa o processo de elaboração do documento que resume as informações obtidas sobre
os dados inicialmente coletados.
A Figura 19 faz referência a Fase 4 (Produção de um laudo) demonstrado na Figura 1,
de modo que a presenta uma visão mais exploratória.
43
Figura 19: Destaques da Fase 4
Fonte: Dados da pesquisa
44
CONSIDERAÇÕES FINAIS
A partir dos estudos realizados, pode-se concluir que a análise forense em servidores
baseados na plataforma Unix é complexa, requerendo uma sequência de cuidados para que a
veracidade do trabalho pericial não seja atingida negativamente.
O modelo EDRM proporcionou uma visão global de todos os processos,
possibilitando uma compreensão facilitada, detalhada e organizada, sendo que foi possível
perceber que este modelo pode se tornar um referencial para todo o processo de computação
forense, abrindo a possibilidade de novos estudos tomando-o como base.
Também foi possível perceber, que várias ferramentas para o processo de coleta de
dados e de análise, já estão presentes nativamente no sistema operacional, consequentemente
reduzindo os custos da perícia, e evitando assim, a aquisição de sistemas proprietários.
Outra compreensão está no fato de que manter as configurações das instalações
padrões de sistemas servidores é inseguro, de modo que apesar da perícia não focar em propor
correções de falhas de segurança encontradas, as mesmas podem ser realizadas a fim de evitar
que a vítima tenha um novo incidente através das mesmas brechas de segurança.
O trabalho se limitou a uma análise forense inicial e superficial de sistemas Unix, de
modo que não houve um aprofundamento técnico nos exemplos abordados, nem se explanou
as diversas possibilidades possíveis de invasão em cada serviço de rede, ou no sistema
operacional em si.
Foi possível demonstrar apenas os conceitos necessários para a realização do laudo
pericial.
Este trabalho pode proporcionar o embasamento para estudos posteriores que podem
ser realizados a partir deste ponto, entre eles uma análise mais profunda das ferramentas
existentes no Unix; de como aplicar os conceitos estudados em plataformas diferentes, e de
como aplicá-los no trabalho dos administradores de rede, para que lhes possibilite meios de
realizar auditorias mais completas e seguras, para que suas tarefas de prevenção na segurança
sejam mais efetivas. Também é possível abranger um estudo mais aprofundado em relação aos
serviços de rede disponíveis no Unix, estudando como os procedimentos forenses podem ser
agregados às particularidades de cada um.
45
46
REFERÊNCIAS
COSTA, Marcelo Antonio Sampaio Sampaio Lemos. Computação Forense: A análise
forense no contexto da resposta a incidentes computacionais. 3° Ed. Campinas, SP:
Millennium Editora: 2011.
EDRM LLC. EDRM Stages. EM: <http://www.edrm.net/resources/edrm-stages-explained>.
Acesso em: 27 outubro 2013.
ELEUTÉRIO, Pedro Monteiro da Silva. MACHADO, Márcio Pereira. Desvendando a
Computação Forense. São Paulo: Novatec Editora, 2010.
FARMER, Dan. VENEMA, Wietse. Perícia Forense Computacional: Teoria e Prática
Aplicada. 2° Ed. São Paulo: Pearson Prentice Hall, 2007.
FREITAS, Andrey Rodrigues de. Perícia forense aplicada à informática. Rio de Janeiro:
Brasport, 2006.
HERTZOG, Raphaël. MAS, Roland. O Manual do Administrador Debian. 2012.
Disponível em: <http://debian-handbook.info/browse/pt-BR/stable/>. Acesso em: 06 out.
2013.
KUROSE, James F. ROSS, Keith W. Redes de Computadores e a Internet: uma
abordagem top-down. 5° Ed. São Paulo: Addison Wesley, 2010.
LYRA, Maurício Rocha. Segurança e Auditoria em Sistemas de Informação. Rio de
Janeiro: Ciência Moderna Ltda., 2008.
MILLER, Andre. Mounting a hard disk image including partitions using Linux.
Disponível em: <www.andremiller.net/content/mounting-hard-disk-image-including-partitions-
using-linux>. Acesso em: 07 out. 2013.
MORIMOTO, Carlos Eduardo. Servidores Linux, Guia Prático. Porto Alegre: Sul Editores,
2008.
PALMER, Michael. Guide to UNIX Using Linux. 4° Ed. Boston, Massachusetts: Cengage
Learning, 2008.
ROSA, Fabrízio. Crimes de Informática. 2° Ed. Campinas: Bookseller, 2005.
TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 3° Ed. São Paulo: Pearson
Prentice Hall, 2009.
TERPSTRA, John. Segurança para Linux. Rio de Janeiro: Elsevier, 2005.
47
APÊNDICES
APÊNDICE 1 - ESTRUTURA DE DIRETÓRIOS E COMANDOS DO UNIX
Os sistemas de arquivos dos sistemas operacionais inclusos nos padrões da plataforma
Unix, seguem uma organização hierárquica, de forma que se inicia por um diretório pai
representado por uma barra para a direita, como pode ser visto abaixo na Figura 20, na
representação da primeira linha, sendo que abaixo do diretório principal, encontra-se diversos
subdiretórios definidos pelo POSIX, e outros mantidos e organizados pelo sistema
operacional, em que dentro de cada um existem diversos outros subdiretórios e arquivos
(FARMER, 2007).
Figura 20: Listagem da pasta raiz do Linux
Fonte: Dados da pesquisa
Os arquivos de dispositivos geralmente se encontram no diretório representado pela
quarta linha da Figura 20 acima, e dentro dele existem arquivos que são interfaces controladas
pelo núcleo do sistema operacional, para possibilitar acesso ao hardware como monitor,
teclado, som, rede e dispositivos em geral, sendo que este diretório pode ser utilizado como
48
meio para acessar dispositivos armazenamento e realizar ações para trabalhos forenses, como
clonagem de discos rígidos por exemplo. Em seguida na quinta linha, pode-se encontrar o
diretório responsável por manter a maioria dos arquivos de configuração, seja relativo à rede,
inicialização de processos, drivers, e serviços de compartilhamento de recursos, de modo que
deve ser analisado em casos em que algum serviço de rede foi violado. A sexta linha mostra o
diretório em que os documentos dos usuários são comumente guardados, além de alguns
registros de suas ações realizadas no sistema operacional. Um dos diretórios de importante
relevância para auditorias no sistema, e que pode ajudar em esclarecimentos periciais, é o que
está representado na vigésima primeira linha, pois nele encontram-se diversos subdiretórios
onde são armazenados diversos registros do que ocorre no sistema operacional e seus serviços.
(PALMER, 2008)
Já em relação ao acesso a outros sistemas de arquivos de outros discos rígidos,
partições de disco, ou via rede a partir de um Unix, deve ser realizada por um processo
chamado de montagem com um programa apropriado, de modo que o diretório remoto é
montado em um diretório no disco local, e este estando vazio ou não, passará a representar o
diretório externo no disco local, e os arquivos originais do diretório local não ficarão acessíveis
enquanto um processo inverso chamado desmontagem não for realizado, de modo que não
acontece nada com estes arquivos, pois somente ficam ocultos pela montagem. O problema é
que este tipo de acesso a arquivos remotos via rede para realizar trabalhos forenses não é
recomendado, pois além de não se ter todos os recursos do sistema de arquivos do disco
original, não será possível realizar uma análise em um nível mais profundo, sem esquecer que
se deve evitar trabalhos forenses nos dispositivos originais (FARMER, 2007).
A Figura 21 representa um exemplo de montagem de um dispositivo de
armazenamento no Unix, onde dentro do retângulo está uma representação de uma tela de uma
linha de comando Unix típica, em que na primeira linha, se observa um comando realizando
uma montagem de um dispositivo de uma mídia de armazenamento externa, onde no primeiro
argumento observa-se o caminho do arquivo que representa o dispositivo de hardware a ser
montado, e no segundo argumento, o caminho destino do diretório onde este dispositivo será
montado, pois é partir desta pasta onde será possível acessar os arquivos da mídia. A segunda
linha na verdade é o resultado de saída do comando realizado na linha anterior, avisando que o
dispositivo é protegido de gravação e que será montado como somente leitura. Neste momento
já seria possível verificar que arquivos existem no dispositivo, e até copiá-los para outro local.
Na terceira linha é mostrado o comando de desmontagem do dispositivo. A quarta linha
mostra a linha de comandos no modo de aguardar novos comandos, de modo que após a
49
desmontagem não mostrou nenhuma mensagem, significando que o comando foi executado
com sucesso (MORIMOTO, 2008).
Figura 21: Comando para montagem e desmontagem de dispositivos no Unix
Fonte: Dados da pesquisa
Na Figura 21, pode-se perceber ainda nos três primeiros itens destacados pelas setas,
informações do usuário atual autenticado na linha de comandos, o nome do computador, e o
diretório corrente em que o usuário se encontra respectivamente.
Para verificar quais os arquivos presentes em um diretório, podemos utilizar um
comando específico para tal, como pode ser visto na Figura 22. Como pode ser visto, é que
após a execução do comando indicado, a saída resultante é uma lista de arquivos e diretórios
que estão presentes no diretório. Tanto este comando e outros existentes no Unix, possuem a
capacidade de receberem parâmetros para determinar que ação específica do comando será
realizada, como também a de receber argumentos, que geralmente são palavras comuns
utilizadas pelo usuário com a finalidade de filtrar os resultados a serem obtidos, como também
para determinar um arquivo ou diretório a sofrer uma ação do comando, de modo que a
formatação correta do comando utilizando estes parâmetros e argumentos pode ser obtida a
partir de leituras nos manuais do próprio sistema operacional via linha de comando (PALMER,
2008).
Figura 22: Comando para listar o conteúdo dos diretórios no Unix com um parâmetro para maior detalhamento
Fonte: Dados da pesquisa

Mais conteúdo relacionado

Semelhante a PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX

Artigo Analise De Redes Pelo Wireshark Igor
Artigo   Analise De Redes Pelo Wireshark   IgorArtigo   Analise De Redes Pelo Wireshark   Igor
Artigo Analise De Redes Pelo Wireshark IgorIgor Bruno
 
Servidores Virtuais
Servidores VirtuaisServidores Virtuais
Servidores VirtuaisDiego Zilli
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensicsederruschel
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensicsederruschel
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensicsederruschel
 
Microsoft redes introdução
Microsoft redes   introduçãoMicrosoft redes   introdução
Microsoft redes introduçãoJoão Dias
 
Mecanismos de segurança linux
Mecanismos de segurança linuxMecanismos de segurança linux
Mecanismos de segurança linuxAllan Reis
 
Analisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoAnalisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoJerônimo Medina Madruga
 
Artigo sistemas embarcados 2011
Artigo sistemas embarcados 2011Artigo sistemas embarcados 2011
Artigo sistemas embarcados 2011afranio47
 
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
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaAdriano Teixeira de Souza
 
Gerência de Redes SNMP
Gerência de Redes SNMPGerência de Redes SNMP
Gerência de Redes SNMPIsraelCunha
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Adriano Balani
 
Apostila redes computadores_lages
Apostila redes computadores_lagesApostila redes computadores_lages
Apostila redes computadores_lagesredesinforma
 

Semelhante a PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX (20)

Artigo Analise De Redes Pelo Wireshark Igor
Artigo   Analise De Redes Pelo Wireshark   IgorArtigo   Analise De Redes Pelo Wireshark   Igor
Artigo Analise De Redes Pelo Wireshark Igor
 
Servidores Virtuais
Servidores VirtuaisServidores Virtuais
Servidores Virtuais
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensics
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensics
 
TCC Seguranca -1.0
TCC Seguranca -1.0TCC Seguranca -1.0
TCC Seguranca -1.0
 
Sociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud ForensicsSociedade da Informação e Cloud Forensics
Sociedade da Informação e Cloud Forensics
 
Computação em Nuvem
Computação em NuvemComputação em Nuvem
Computação em Nuvem
 
Microsoft redes introdução
Microsoft redes   introduçãoMicrosoft redes   introdução
Microsoft redes introdução
 
341 redes
341 redes341 redes
341 redes
 
3414 redes
3414 redes3414 redes
3414 redes
 
Entendendo a computação em nuvem
Entendendo a computação em nuvemEntendendo a computação em nuvem
Entendendo a computação em nuvem
 
Mecanismos de segurança linux
Mecanismos de segurança linuxMecanismos de segurança linux
Mecanismos de segurança linux
 
Analisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e usoAnalisadores de protocolo: comparação e uso
Analisadores de protocolo: comparação e uso
 
Artigo sistemas embarcados 2011
Artigo sistemas embarcados 2011Artigo sistemas embarcados 2011
Artigo sistemas embarcados 2011
 
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...
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
 
Gerência de Redes SNMP
Gerência de Redes SNMPGerência de Redes SNMP
Gerência de Redes SNMP
 
Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03Artigo cientifico jonildo eric galdino ver.03
Artigo cientifico jonildo eric galdino ver.03
 
Carlos daniel
Carlos danielCarlos daniel
Carlos daniel
 
Apostila redes computadores_lages
Apostila redes computadores_lagesApostila redes computadores_lages
Apostila redes computadores_lages
 

PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX

  • 1. FACULDADE DE JUAZEIRO DO NORTE BACHARELADO EM SISTEMAS DE INFORMAÇÃO JULIAN LENNON GONÇALVES DE SOUZA LEITE PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX JUAZEIRO DO NORTE 2013
  • 2. FACULDADE DE JUAZEIRO DO NORTE BACHARELADO EM SISTEMAS DE INFORMAÇÃO JULIAN LENNON GONÇALVES DE SOUZA LEITE PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX Monografia apresentada ao curso de Sistema de Informação para a obtenção do Grau de Bacharel em Sistemas de Informação. Orientado por: Prof. Msc. Isydório Alves Donato JUAZEIRO DO NORTE - CE 2013 FACULDADE DE JUAZEIRO DO NORTE
  • 3. BACHARELADO EM SISTEMAS DE INFORMAÇÃO JULIAN LENNON GONÇALVES DE SOUZA LEITE PERÍCIA FORENSE APLICADA EM SERVIDORES NOS PADRÕES DA PLATAFORMA UNIX Esta Monografia foi julgada adeguada para a obtenção do Grau de Bacharel em Sistemas de Informação, e aprovada na sua forma final pela Faculdade de Juazeiro do Norte Data: ____/____/____ Nota: _____________ ________________________________________________ Prof. Me. Isydório Alves Donato Orientador – FJN __________________________________________________ Prof. Me. Sidney de Lima Pinto Avaliador __________________________________________________ Prof. Esp. Jairo Menezes Ferraz Avaliador JUAZEIRO DO NORTE - CE 2013
  • 4. AGRADECIMENTOS Aos meus pais, que não mediram esforços em me guiar e apoiar até que eu chegasse até esta etapa tão importante de minha vida. A todos os meus familiares. A todos os professores do curso, que foram tão importantes não só na minha vida acadêmica, mas também para o meu crescimento como pessoa. Ao coordenador do curso Sidney de Lima Pinto, pelas oportunidades, pelos ensinamentos, e por acreditar em mim. Ao professor Isydório Alves Donato, por sempre compartilhar seu conhecimento, pela paciência na orientação, e incentivos que tornaram possível a conclusão desta monografia. Aos amigos e colegas trabalho, pelo incentivo e pelo apoio constantes.
  • 5. “Se o dinheiro for a sua esperança de independência, você jamais a terá. A única segurança verdadeira consiste numa reserva de sabedoria, de experiência e de competência.” (Henry Ford)
  • 6. RESUMO Com o advento das tecnologias cada vez mais integradas, e consequentemente interconectadas em rede, torna-se essencial a oferta de serviços tecnológicos capazes de controlar esta demanda. O fornecimento de serviços de rede é oferecido por equipamentos conhecidos como servidores, dispositivos estes capazes de disponibilizar e controlar grandes volumes de dados, de modo que por esta capacidade de processamento ser cara, e possivelmente guardando dados importantes, o mesmo torna-se um alvo em potencial para criminosos. Os objetivos de invasões a servidores podem variar de roubo de informações financeiras, obtenção de vantagens corporativas competitivas, informações privadas sobre usuários do servidor, até para apenas realizar ações de vandalismo, como deletar arquivos e parar os serviços dos sistemas. Como estes crimes podem causar um impacto financeiro ou moral a uma grande quantidade de vítimas, deve-se preocupar em como elucidar tais crimes, e para isto existe a computação forense. Sendo que este trabalho estuda especificamente os servidores baseados na plataforma Unix, por ser uma plataforma de referência e possuir um gama de sistemas operacionais baseados nos seus padrões. São estudados os fundamentos da perícia forense, agregados as particularidades básicas dos padrões da plataforma Unix, mostrando uma explanação superficial de determinados serviços de rede, e como realizar determinadas análises nos mesmos. Palavras-chave: Perícia, Forense, Servidor, Plataforma, Unix
  • 7. ABSTRACT With the advent of technologies growning integrated and interconnected in network, becomes essential to offers of technological services sufficient to manage this demand. The provision of network services is offered by equipment known as servers, these devices are sufficient to offers and manage large volumes of data, so that this processing capacity is high cost, and possibly storing important data, it becomes a potential target for criminals. The objectives of the invasions servers may diversify robbery of financial information, obtain corporate competitive advantages, private information about users of the server, or only perform actions of vandalism, as deleting files and stop the services systems. As these crimes can cause a financial impact or moral to a amount of victims, must worry about how to elucidate such crimes, and for this there is a computer forensics. Since this work studies specifically based servers Unix platform, as a reference platform and have a range of operating systems based on their standards. Are studied the fundamentals of forensics, aggregates the particularities of basic standards of the Unix platform, showing a superficial explanation of certain network services, and how to perform certain analyses. Keywords: Expertise, Forensic, Server, Platform, Unix
  • 8. LISTA DE FIGURAS Figura 1: Processos da computação forense Figura 2: Processos do EDRM Figura 3: Destaques da Fase 1 Figura 4: Destaques da Fase 2 Figura 5: Comando para capturar os dados da memória RAM Figura 6: Comando para capturar os dados dos processos em execução Figura 7: Comando para capturar os dados sobre as conexões de rede Figura 8: Comando para capturar os dados sobre os usuários autenticados Figura 9: Destaques da Fase 3 Figura 10: Comando para copiar um disco rígido Figura 11: Processo de montagem de partição de um arquivo de cópia de um disco rígido Figura 12: Exibição e filtragem do conteúdo obtido da memória RAM Figura 13: Exemplo do conteúdo do arquivo com dados capturados dos processos Figura 14: Exemplo do conteúdo do arquivo com dados capturados das conexões ativas Figura 15: Exemplo do conteúdo do arquivo com dados capturados dos usuários ativos Figura 17: Conteúdo do arquivo de configuração do SSH Figura 18: Conteúdo do arquivo de LOG de autenticações no sistema Unix Figura 19: Destaques da Fase 4 Figura 20: Listagem da pasta raiz do Linux Figura 21: Comando para montagem e desmontagem de dispositivos no Unix Figura 22: Comando para listar o conteúdo dos diretórios no Unix com um parâmetro para maior detalhamento LISTA DE ABREVIATURAS
  • 9. IP: Internet Protocol LOG: Log file RAM: Random Access MemoryURL - Uniform Resource Locator TCP: Transmission Control Protocol UDP: User Datagram Protocol URL: Uniform Resource Locator
  • 10. LISTA DE TABELAS Tabela 1 – Endereço IP versão 4
  • 11. SUMÁRIO INTRODUÇÃO..........................................................................................................12 1. SOBRE ENDEREÇOS DE REDES E PROTOCOLOS.........................................14 1.1. ENDEREÇO IP......................................................................................................... 14 1.2. PROTOCOLOS DE REDE TCP/UDP ...................................................................... 15 2. FUNDAMENTOS DA COMPUTAÇÃO FORENSE ...............................................16 2.1. MOTIVAÇÕES DOS CRIMES DE INFORMÁTICA E SUA FACILITAÇÃO......... 16 2.2. PROCESSOS DA COMPUTAÇÃO FORENSE........................................................ 17 2.2.1. VERIFICAÇÃO PRÉVIA DAS PROVAS A SEREM APREENDIDAS............. 20 2.2.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS ........................ 21 2.2.3. REALIZAR A ANÁLISE ................................................................................... 23 2.2.4. LAUDO PERICIAL ........................................................................................... 24 3. SERVIDORES EM PLATAFORMA UNIX .............................................................26 4. COMPUTAÇÃO FORENSE APLICADA EM SERVIDORES DA PLATAFORMA UNIX..........................................................................................................................28 4.1. VERIFICAÇÃO DO SERVIDOR UNIX A SER APREENDIDO ............................. 28 4.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS DE UM SERVIDOR UNIX............................................................................................................................... 29 4.2.1. APREENSÃO COM O SERVIDOR DESLIGADO............................................ 29 4.2.2. APREENSÃO COM O SERVIDOR LIGADO................................................... 30 4.3. PROCESSO DE ANÁLISE FORENSE EM UM SERVIDOR UNIX........................ 32 4.3.1 ANÁLISE DO SISTEMA OPERACIONAL DO SERVIDOR UNIX .................. 33 4.3.2 ANÁLISE DO SERVIÇO SQUID....................................................................... 39 4.3.3 ANÁLISE DO SERVIÇO OPENSSH ................................................................. 40 4.4. ELABORAR O LAUDO........................................................................................... 42 CONSIDERAÇÕES FINAIS ......................................................................................44 REFERÊNCIAS.........................................................................................................46 APÊNDICES..............................................................................................................47 APÊNDICE 1 - ESTRUTURA DE DIRETÓRIOS E COMANDOS DO UNIX .............. 47
  • 12. 12 INTRODUÇÃO Este trabalho está envolto no âmbito da perícia forense computacional, ramo profissional e científico com o objetivo de esclarecer crimes ligados à informática, sendo que o foco do estudo é direcionado para a abordagem de servidores baseados em sistemas operacionais da plataforma Unix, de modo que se possibilite a elucidação de crimes cometidos direcionados aos dos seus serviços de rede, e de forma que se possa compreender quais correções de segurança aplicar uma vez que determinadas falhas de segurança venham a ser encontradas. Os servidores Unix fornecem serviços de rede tanto para usuários na internet, como para uma rede local, em consequência disto, possuem dados que podem ser utilizados por um invasor para fins ilícitos, como roubos financeiros, venda de informações sigilosas, como também para a obtenção de acesso a outros servidores ou dispositivos de usuários com a finalidade de utilização como meios para outros ataques. A problemática está em compreender como aplicar as práticas forenses em servidores baseados na plataforma Unix, levando em consideração as características particulares dos seus padrões, que definem sua estrutura de sistema de arquivos, interface com o usuário, e ferramentas básicas do sistema. Desta forma, este trabalho propõe-se possibilitar a compreensão de que após determinadas vulnerabilidades exploradas em servidores Unix, a perícia forense deve ser realizada de forma diferenciada, mostrando as características particulares dos seus contextos que devem ser levadas em consideração agregadas as práticas da computação forense, de modo que os procedimentos periciais possam ser aplicados de forma apropriada, para que se evite a alteração sempre que possível dos dados que possibilitam a comprovação dos indícios. Para que se possa chegar a esta compreensão geral, são estudados bibliograficamente os fundamentos da computação forense com suas práticas e procedimentos, como também os fundamentos da plataforma Unix e de determinados serviços de rede que podem ser utilizados nesta plataforma, para em seguida, também permitir compreender como aplicar ações corretivas de segurança, baseados nas conclusões durante os procedimentos periciais. A plataforma em questão foi escolhida como umas das bases para o estudo por ser referência de padrões para diversos outros sistemas operacionais, o que possibilita que a aplicabilidade desde trabalho tenha uma abrangência maior e o desenvolvimento de novos estudos em diversas ferramentas e sistemas operacionais.
  • 13. 13 No primeiro capítulo, são apresentados conceitos básicos sobre rede de computadores, para que possibilite a compreensão do resto do trabalho que se utiliza de tais fundamentos. No segundo capítulo são abordados os conceitos e as práticas da computação forense, de forma que terá uma tendência especificamente para os servidores. No terceiro são estudados os fundamentos da plataforma Unix, especificamente sobre os seus objetivos como sistema operacional, compreender sua estrutura básica do sistema de arquivos, e os seus serviços de rede. No quarto capítulo é realizado o desenvolvimento do trabalho, onde é associado às práticas forenses aos servidores baseados nas características da plataforma Unix, como também são estudadas práticas de segurança pós-perícia, de forma que seja possível compreender quais correções de segurança podem ser aplicadas em determinadas vulnerabilidade.
  • 14. 14 1. SOBRE ENDEREÇOS DE REDES E PROTOCOLOS Neste capítulo são estudados os fundamentos básicos de redes de computadores, de modo que se possibilite a compreensão do funcionamento do protocolo TCP/IP e seu uso pelos serviços de rede. Para este trabalho, o essencial é compreender que para que os dispositivos se comuniquem entre si em uma rede, cada um deve ter um número único de forma que o identifique distintamente, chamado de endereço IP1 , e para que as aplicações servidoras presentes em determinado servidor se comuniquem com as aplicações clientes de outro dispositivo pela rede, elas se utilizam de outros endereços via protocolos TCP2 ou UDP3 (MORIMOTO, 2008). 1.1. ENDEREÇO IP O endereço IP, na sua versão quatro é um número de quatro octetos separados, de forma que dependendo da classe deste endereço, determinados octetos no início servirão como classificadores da rede, e os números finais identificarão o dispositivo dentro de determinada classe de rede (KUROSE; ROSS, 2010). Para a computação forense os endereços IP podem ajudar a elucidar a autoria de ações ilícitas em informática. Já que cada dispositivo em uma rede possui sua própria identificação, o endereço IP proporciona identificar o dispositivo utilizado para autoria do crime, e por consequência, possibilita localizar o autor (COSTA, 2011). A Tabela 1 mostra a faixa de endereços de rede possíveis para a versão quatro do TCP/IP. Tabela 1 – Endereço IP versão 4 Faixa de endereços possíveis De Até 1 IP: Internet Protocol 2 TCP: Transmission Control Protocol 3 UDP: User Datagram Protocol
  • 15. 15 0.0.0.0 255.255.255.255 Fonte: Dados da pesquisa A Tabela 1 permite perceber que para cada octeto do endereço IP, é possível utilizar números entre 0 e 255, sendo que determinadas combinações entre os octetos não são utilizáveis para endereços IP de dispositivos de rede (ELEUTÉRIO; MACHADO, 2010). 1.2. PROTOCOLOS DE REDE TCP/UDP Nas comunicações de rede, o endereçamento IP atua apenas para identificar a origem e destino do tráfego, de modo que deve atuar em conjunto com os protocolos de rede TCP ou UDP, para que seja possível categorizar os serviços de rede por meio de utilização de portas em um servidor, possibilitando o funcionamento de diferentes serviços no mesmo sistema operacional. As numerações das portas de rede possuem padronizações quanto às suas associações a determinados serviços de rede, sendo que também é possível a utilização de qualquer porta por qualquer serviço, desde que não já esteja sendo utilizada (MORIMOTO, 2008). A diferença básica entre os dois protocolos, está no fato de que para as conexões de rede dos serviços que necessitam de garantia de entrega dos pacotes usa-se o TCP, pois possui mecanismos para que o computador que está enviando dados receba respostas do destinatário confirmando o recebimento dos dados de forma íntegra. O UDP por sua vez, é utilizado por serviços que necessitam de rapidez no tráfego, e que não necessitam de confirmação de recebimento de dados do destinatário, deste modo, o UDP é utilizado por serviços menos críticos (KUROSE; ROSS, 2010).
  • 16. 16 2. FUNDAMENTOS DA COMPUTAÇÃO FORENSE Neste capítulo são apresentados os conceitos necessários para que se possa compreender a computação forense de uma forma geral, como também sobre a realização dos processos periciais seguindo as boas práticas, nas quais buscam acima de tudo a integridade e veracidade das provas. Ao notarem-se atividades incomuns em sistemas operacionais que não foram autorizadas, ou que fogem aos padrões históricos do sistema, pode ser o indício sobre uma invasão bem sucedida, ou uma tentativa em andamento. Para se ter a certeza de que um fato ilícito ocorreu no sistema devido a ações que não foram permitidas, existe a computação forense, que exige procedimentos planejados, sequenciados e bem organizados para sua realização, pois a quantidade de dados que podem ser encontrados é grande, e aqueles que mostrem o que realmente um invasor fez, exige procedimentos específicos com o apoio de conceitos e ferramentas para detectá-los (FARMER, 2007). Para que o resultado do trabalho forense seja válido, aconselha-se que as práticas das metodologias adotadas, tenham estudos comprovatórios de suas eficiências. É possível se guiar pela afirmativa que diz que [...] a Computação Forense tem como objetivo principal determinar a dinâmica, a materialidade e autoria de ilícitos ligados à área de informática, tendo como questão principal a identificação e o processamento de evidências digitais em provas materiais de crime, por meio de métodos técnico-científicos, conferindo-lhes validade probatória em juízo. (ELEUTÉRIO; MACHADO, 2010, pp. 16-17). 2.1. MOTIVAÇÕES DOS CRIMES DE INFORMÁTICA E SUA FACILITAÇÃO Com as tecnologias das redes de computadores cada vez mais difundidas, e o aumento de usuários das mesmas realizando transações financeiras, acabam por chamar a atenção dos criminosos, de modo que eles buscam por vulnerabilidades ou erros de outrem que propiciem chances por onde eles possam atacar e praticar ações ilegais, como roubar,
  • 17. 17 vandalizar, extorquir, desmoralizar, e outras práticas ilícitas afins por meio de recursos tecnológicos (ROSA, 2006). Geralmente os ataques aos sistemas se iniciam em alvos em potencial, que se caracterizam por ser a parte mais deficiente da segurança do sistema, seja ela física ou não, em que os usuários também não estão excluídos disto. Em um sistema seguro, o aspecto humano deve ser trabalhado como um ativo, pois é por este lado onde muitos erros das políticas de segurança são desconsiderados, e o agente criminoso ataca por ela de forma quase que imperceptível (LYRA, 2008). Descobrir antecipadamente as vulnerabilidades existentes no sistema e as motivações do crime pode antecipar quais foram os caminhos seguidos pelo meliante, e quais foram seus objetivos; o que pode permitir a aceleração dos procedimentos forenses, como também a realização de um laudo mais claro e preciso. 2.2. PROCESSOS DA COMPUTAÇÃO FORENSE Apesar de alguns autores mostrarem a existência de sub-rotinas adicionais, ou a menos, as principais rotinas da perícia seguem uma sequencia lógica, sendo elas, a de verificação das provas a serem apreendidas, apreensão e manutenção da integridade das mesmas, realização da análise, e produção de um laudo resultante de todo o processo (COSTA, 2011; ELEUTÉRIO e MACHADO, 2010). Na Figura 1 é possível analisar as fases ou processos mais relevantes para os autores pesquisados. É possível perceber que as fases possuem uma sequência tendenciosa para serem finalizadas na fase de produção do laudo, sendo que também é possível haver a necessidade da repetição de determinadas fases já realizadas para que todo o processo tenha mais efetividade nos resultados a serem obtidos.
  • 18. 18 Figura 1: Processos da computação forense Fonte: Dados da pesquisa Existem no mercado padronizações referenciais que explanam os processos que podem ser utilizados para o correto sequenciamento dos procedimentos de coleta de dados digitais até sua utilização final. Um dos referenciais que se adequa aos processos necessários para todo o trabalho de computação forense se chama EDRM, que é uma abreviação para modelo de referência para a descoberta eletrônica. O EDRM é um modelo que estabelece os processos padrões relativos a trabalhos com dados digitais que precisam de um ciclo de vida preestabelecido, que vai da determinação das informações a serem coletadas, até a apresentação dos dados relevantes das mesmas, de modo que todos os processos não necessitam serem cumpridos obrigatoriamente. A representação do modelo pode ser vista na Figura 21 (EDRM LLC, 2013.)
  • 19. 19 Figura 2: Processos do EDRM Fonte: Dados da pesquisa Em uma análise da Figura 2, pode-se destacar:  Processo 1: Fase em que se realiza uma predeterminação dos dados a serem coletados.  Processo 2: Fase para se identificar no momento da coleta, quais dados são relevantes para serem obtidos.  Processo 3.1: Ações que paralelas à coleta de dados no Processo 3.2, possuem a responsabilidade de manter os dados íntegros quanto a sua originalidade.  Processo 3.2: Coleta de dados propriamente dita.  Processo 4.1: É relacionado ao processamento de dados coletados já na fase de análise do Processo 4.3, em que na utilização de ferramentas adequadas, é determinada uma filtragem com o objetivo de delimitar o resultado da busca de dados.  Processo 4.3: É a análise propriamente dita, em que se averiguam os resultados obtidos com o processamento do Processo 4.1, para se verificar se foram obtidos os dados necessários.  Processo 5: Este processo determina diretrizes para especificar como manter os documentos de todos os processos do EDRM, para que no final as informações mais importantes sejam reveladas. Ao longo do trabalho é possível perceber que se podem agregar os conceitos dos processos da computação forense aos processos do EDRM, onde determinados processos recomendados por autores de livros citados de computação forense, englobam mais de um dos
  • 20. 20 processos descritos pelo EDRM. Será possível perceber, que o processo forense de verificação prévia das provas a serem apreendidas, engloba o processo 1 (Information Management) e processo 2 (Identification) do EDRM. Já o processo forense de apreender e manter a integridade das provas, engloba o processo 3.1 (Preservation) e o processo 3.2 (Collection) do EDRM. A realização da análise forense engloba o processo 4.1 (Processing) e o processo 4.3 (Analisys) do EDRM. E, finalmente, no processo forense de elaboração do laudo pericial, engloba o processo 5 (Production) do EDRM, de modo que o processo 6 do EDRM pode ser associado a apresentação do laudo perante ao requisitante, sendo que este não é estudado neste trabalho. 2.2.1. VERIFICAÇÃO PRÉVIA DAS PROVAS A SEREM APREENDIDAS Para que se evite perda de tempo à procura por indícios em meio à grande quantidade de dados que podem ser encontrados, aconselha-se que o perito determine delimitações que especifiquem ao máximo possível o que o solicitante do trabalho pericial requer. Desta forma, será possível agilizar a seleção dos equipamentos a serem apreendidos, e também determinar expressões regulares que poderão ser utilizadas nas ferramentas de análise (COSTA, 2011). A determinação prévia dos requisitos para a realização dos processos de perícia pode ser associada ao processo 1 (Information Management) do EDRM, representado na Figura 2, já que se trata de um planejamento sobre dos dados a serem coletados. Já no local da apreensão, é importante evitar que se realize qualquer ação direcionada a qualquer equipamento a não ser que o perito autorize, a fim de se evitar a manipulação inadequada das provas, pois poderia tanto modificá-las como inutilizá-las, pois podem ocorrer ocasiões onde membros da equipe de busca e apreensão, ou mesmo alguém encontrado no local, desligue, ligue, ou reinicie o equipamento. (COSTA, 2011). Segundo Eleutério e Machado (2010, p. 26), “A primeira função do perito é realizar um reconhecimento do local, identificando os equipamentos computacionais existentes, incluindo computadores, notebooks, pontos de acesso e outros”. O ato de identificar quais provas devem ser apreendidas pode ser relacionado ao processo 2 (Identification) do EDRM representado na Figura 2. Os servidores possuem a capacidade de oferecer diversos serviços para redes, consequentemente atuam com diversas conexões com outros dispositivos que necessitem dos
  • 21. 21 seus recursos, desta forma, na apreensão de servidores que estejam ligados a captura das conexões ativas torna-se crucial para a perícia, pois por ser um equipamento centralizado na rede, e com diversos outros conectados a ele, consequentemente haverá um número grande de conexões, com detalhes tecnicamente complexos, que podem conter informações para elucidar questões sobre determinados casos. Sistemas operacionais baseados no Unix oferecem algumas facilidades para obtenção de dados, já que no próprio sistema existem diversas ferramentas nativas para se obter dados da memória, de conexões ativas, e de clonagem de discos rígidos, ocasionalmente não sendo necessária a instalação de ferramentas forenses para estas coletas, deixando estas para a fase de análise (PALMER, 2008). 2.2.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS Recomenda-se que os dados originais se mantenham intactos e intocáveis ao máximo, e que a análise forense seja realizada em suas cópias íntegras, pois só a instalação de uma ferramenta de análise forense, ou de algum dispositivo no sistema original em pleno funcionamento, já resultaria na sobrescrita de dados originais a partir do momento que se notou a necessidade de realizar uma perícia, o que comprometeria a veracidade do trabalho de análise (FARMER, 2007). A preservação da integridade das provas pode ser associada ao processo 3.1 (Preservation) do EDRM. Outro cuidado que deve ser tomado é quanto à integridade física das provas, pois equipamentos de informática geralmente são sensíveis, e devem ter o seu acondicionamento apropriado antes de serem levados para o local de análise, pois avarias nos equipamentos podem danificar os dados, e por consequência, as possíveis provas (FREITAS, 2006). Deve-se verificar se o equipamento a ser apreendido está em funcionamento, pois nesta situação, pode haver informações importantes nos dados carregados em memória e nas aplicações em execução, e prover meios de capturar os seus estados é relevante (FREITAS, 2006). O trabalho de coleta de dados e apreensão das provas em geral pode ser associado ao processo 3.2 (Collection) do EDRM mostrado na Figura 2.
  • 22. 22 Para as análises forense, e até mesmo para monitoração e prevenção de tentativas de invasão, existem arquivos específicos que devem ser averiguados de forma sistemática, sendo conhecidos por arquivos de log4 . Nestes arquivos de log podem ser encontrados vários tipos de registros relacionados às atividades que acontecem no sistema operacional, sejam elas problemas ou não (PALMER, 2008). O fato é que o desligamento do computador, além de apagar os vestígios de conexões ativas e da memória volátil, irá gerar uma sequência de fechamentos de processos que acabará por sobrescrever dados do disco e dos registros dos arquivos de log, que são de suma importância para a análise (FARMER, 2007). Existem determinados aplicativos apropriados para captura de dados em tempo real, e se deve ter cuidado para que suas utilizações não alterem quaisquer dados da prova (ELEUTÉRIO; MACHADO, 2010). Deve-se verificar a real necessidade da captura de dados com o sistema ligado, pois será necessário realizar tal procedimento da forma mais evasiva possível, e após a verificação da memória, os mesmos cuidados valem para se obter os dados das conexões de rede ativas, e verificação de processos e usuários (FARMER, 2007). A partir desta premissa, algumas ações preventivas podem ser tomadas na obtenção de dados de memória. Uma delas é de que a aplicação de coleta de dados consuma o mínimo possível de memória com a máxima eficiência. Outro fator é de que para que esta coleta seja o menos invasiva, deve-se salvar os dados em um dispositivo de armazenamento externo, e evitar utilizar programas do próprio sistema operacional. Nesta etapa, após a coleta dos dados mais voláteis, a clonagem integral dos discos rígidos deve ser realizada, e além dos softwares que realizam esta tarefa, existem dispositivos específicos que possuem tecnologias apropriadas que evitam a sobrescrita de dados das suas fontes, pois é aconselhável que este procedimento seja realizado com o disco rígido no modo somente leitura (ELEUTÉRIO; MACHADO, 2010). Para posteriormente confirmar a veracidade dos dados copiados, existem ferramentas apropriadas que realizam testes rigorosos para se garantir as suas originalidades (ELEUTÉRIO; MACHADO, 2010). Este passo é necessário, pois no momento da cópia podem acontecer problemas no meio de comunicação, erros de memória, e outras situações, que podem alterar, ou deixar de copiar, pequenos dados que podem nem gerar erros, mas que podem comprometer a veracidade do trabalho pericial. 4 LOG: Log file
  • 23. 23 2.2.3. REALIZAR A ANÁLISE Após as coletas dos dados, deve-se realizar o processo de análise, que consiste em procurar e averiguar nas suas cópias os indícios que possam levar a comprovação dos fatos criminais. Segundo Eleutério e Machado (2010, p. 65) “é a fase que consiste no exame das informações extraídas na fase anterior, a fim de identificar evidências digitais presentes no material examinado, que tenham relação com o delito investigado.” Neste processo é que muitas ferramentas forenses são realmente aplicadas, pois com elas é que será possível procurar nos dados pelos vestígios do crime, e geralmente é neste momento que se utiliza de filtros e parâmetros que delimitem o que se procura. Para isto, em conjunto com estas ferramentas, são utilizados dados como palavras, frases, ou combinações de textos específicos, que tenham alguma relação com as informações que se procura, a fim de se conseguir resultados os mais objetivos possíveis (FARMER, 2007). A utilização de ferramentas para a filtragem de dados para posterior averiguação pode ser relacionada ao processo 4.1 (Processing) do EDRM apresentado na Figura 1, de modo que a análise dos dados resultantes pode ser associada ao processo 4.3 (Analisys) do EDRM. Para casos onde a análise será em algum aplicativo específico, e que qualquer registro no sistema operacional não possua importância, aconselha-se o uso de virtualização a partir das réplicas obtidas (ELEUTÉRIO; MACHADO, 2010). Um cuidado deve ser levado em consideração quanto a executar aplicações diretamente do sistema operacional da vítima, pois estas podem estar alteradas contendo códigos maliciosos, e que podem ser armadilhas, devendo o perito buscar sempre que possível executar aplicações, como também salvar suas saídas, a partir de locais alheios ao sistema verificado (COSTA, 2011). Mesmo que se execute o sistema operacional em uma máquina virtual, para servidores pode ser problemático, pois tanto os arquivos de log, como os arquivos dos processos, e alguns arquivos temporários, poderão ser alterados, criados, ou apagados quando o sistema iniciar. Outro problema é que seus serviços de rede podem não encontrar um ambiente de conexões similar ao que existia anteriormente, o que acarretará em geração de vários erros nos arquivos de log. Vários dos serviços de rede para plataformas baseadas no Unix são abertos e documentados, para estes se torna recomendado apenas uma análise somente leitura do seu
  • 24. 24 sistema de arquivos devidamente clonado, pois seus arquivos e códigos estarão acessíveis para verificações. A análise do sistema por esta metodologia de virtualização torna-se uma alternativa ao se encontrar aplicações de código fechado, pois neste cenário, instalar a aplicação em outro computador seria mais complexo e trabalhoso, já que o fornecedor da aplicação certamente não abriria o código para ser analisado. Na análise, além das buscas pelos conteúdos dos arquivos, sejam log, imagens, textos e binários, é interessante procurar pelas alterações dos mesmos no sistema de arquivos, como deleção, renomeação, movimentação e cópias, trabalho este que geralmente necessita de ferramentas mais específicas e complexas de serem manipuladas para tal, e que tenham a capacidade de recuperar informações de baixo nível, como dados já excluídos do alto nível do sistema de arquivos (FARMER, 2007). Também é aconselhável que cada procedimento realizado e o seu resultado seja devidamente documentado para futuramente ser anexado ao laudo pericial (COSTA, 2011). 2.2.4. LAUDO PERICIAL O laudo pericial, segundo Eleutério e Machado (2010, p. 26) “É a fase final dos exames forenses, que consiste na elaboração de laudo pelo perito, apontando o resultado e apresentando as evidências digitais encontradas nos materiais examinados.” Este é o processo final de todo o trabalho pericial, de modo que ele é como uma interface para os requisitantes da perícia, pois nele devem constar todos os resultados dos processos periciais realizados, e as respostas que estavam em aberto que dependiam da investigação pericial para serem esclarecidas, sendo associável ao processo 5 do EDRM apresentado na Figura 1. Uma definição mais detalhada esclarece que Esta é a etapa em que serão detalhadamente relatados todos os aspectos do incidente, desde a sua caracterização, os impactos diretos e indiretos, a investigação realizada, os resultados da perícia, a identificação da autoria, até as causas diretas e indiretas, brechas e vulnerabilidades encontradas [...]. (COSTA, 2011, p. 29)
  • 25. 25 Desta forma, o laudo pericial deve ser o mais objetivo possível, de modo que se evite a utilização de palavras, termos e definições que venham a possibilitar o entendimento generalizado do resultado, ou a não compreensão pelos requisitantes da perícia. Para se evitar o uso de termos técnicos avançados no laudo resultante, os procedimentos periciais utilizados e os resultados obtidos nas fases mais técnicas, podem ser utilizados como anexos do laudo, assim as informações mais importantes, resumidas, e em uma linguagem mais compreensível para pessoas alheias à área tecnológica, podem ficar no documento principal.
  • 26. 26 3. SERVIDORES EM PLATAFORMA UNIX Este capítulo apresenta uma leve explanação sobre as particularidades características dos sistemas operacionais baseados na plataforma Unix, para que se possibilite compreender os seus objetivos. O UNIX é um sistema operacional originalmente concebido para estudos, e com o passar dos anos, sua robustez, rapidez, segurança e estabilidade, os tornaram atrativo entre os sistemas para servidores, de modo que em seu desenvolvimento, teve um direcionamento mais acentuado de melhorias voltadas ao seu gerenciamento de conexões e aplicações focadas em redes. O fato é que suas características o tornaram referência para diversos outros sistemas operacionais, principalmente no que diz respeito aos seus padrões, de modo que estão documentados e regidos pelo POSIX. O POSIX já nasceu em decorrência da criação do Unix, e determina um conjunto de regras que devem ser seguidas pelos sistemas operacionais que desejam estar de acordo com os padrões do Unix, sendo mais um motivo que faz com que este seja considerado uma plataforma de referência (PALMER, 2008). Estudar as práticas da computação forense direcionadas a plataforma Unix, faz com que consequentemente estas possam ser aplicadas aos sistemas operacionais originados dos seus padrões, e o inverso se torna válido, como no Linux por exemplo, onde há vários comandos e diretórios nos padrões do Unix. Para possibilitar a compreensão, uma breve descrição sobre a estrutura dos diretórios do Unix e de como funciona seus comandos pode ser vista do Anexo 1. Pode acontecer de determinados comandos e arquivos de configuração de cada sistema funcionar de forma diferente, de modo que a maioria seguem os padrões de estrutura de diretórios, comandos, e funções base, sendo que os serviços de rede mantém o escopo de suas configurações idênticas independentemente do sistema operacional(MORIMOTO, 2008). O perito que for realizar a análise forense caberá a este conhecer o escopo destes arquivos de configuração, e ficar atento nas linhas destes arquivos aos parâmetros que definem a localização de onde os arquivos de registros dos eventos das atividades são salvos, sendo estes mais importantes para o trabalho pericial. Também é interessante documentar os parâmetros dos arquivos de configuração encontrados na fase de análise forense, pois eles podem esclarecer pontos como a de que vulnerabilidades o serviço pode ter por estar mal configurado.
  • 27. 27 Desta forma, no capítulo relativo ao processo de análise forense em um servidor Unix, são tratadas informações básicas sobre determinados serviços de rede que podem estar presentes em servidores Unix, incluindo sobre seus arquivos de configuração. Há a possibilidade de haver diversos outros tipos de serviços de rede além dos que são estudados neste trabalho, sendo interessante estudar sobre o escopo das configurações e arquivos de log de cada um, pois são os principais arquivos a serem analisados caso haja a suspeita de determinado serviço de rede tenha sido invadido, pois possuem informações importantes quanto aos seus funcionamentos e que registro de eventos relativos aos seus usos (MORIMOTO, 2008).
  • 28. 28 4. COMPUTAÇÃO FORENSE APLICADA EM SERVIDORES DA PLATAFORMA UNIX Neste capítulo se busca apresentar como aplicar os conceitos dos processos da computação forense em servidores baseados na plataforma Unix, de modo que possibilite a compreensão de como realizar determinados trabalhos forenses de forma que se altere o mínimo de dados possível das provas no sistema operacional, a fim de se manter a veracidade e integridade dos resultados. 4.1. VERIFICAÇÃO DO SERVIDOR UNIX A SER APREENDIDO Verificar qual equipamento é um servidor é determinante para apreendê-lo corretamente, principalmente em relação ao estado de funcionamento em que o mesmo será encontrado, pois a apreensão do servidor desligado é bem mais simples do que o inverso. Servidores por definição funcionam de forma contínua, e deve-se ter cuidado na sua apreensão, do modo a se observar se está ligado. É possível que a vítima sem a devida orientação o tenha desligado, e caso ainda não o tenha feito, não se deve permitir tal ação, pois poderia eliminar possíveis provas em potencial. Esta fase pode ser associada ao processo 2 (Identification) do EDRM representado pela Figura 2, já que se trata do processo de identificação. Já na Figura 3, é possível ter um visão mais exploratória da Fase 1 (Verificação das provas a serem apreendidas) relativa a Figura 1, já que melhor se adequa ao processo de verificação do servidor Unix a ser apreendido. Figura 3: Destaques da Fase 1
  • 29. 29 Fonte: Dados da pesquisa 4.2. APREENDER E MANTER A INTEGRIDADE DAS PROVAS DE UM SERVIDOR UNIX Neste capítulo é estudado como realizar a apreensão de um servidor Unix propriamente dito, de forma que se as práticas forenses sejam aplicadas da melhor forma possível levando em consideração as características inerentes aos servidores Unix. Este processo pode ser considerado a Fase 2 (Apreensão e manutenção da integridade das provas) descrito na Figura 1, sendo que uma explanação dos pontos principais pode ser visto na Figura 4. Figura 4: Destaques da Fase 2 Fonte: Dados da pesquisa 4.2.1. APREENSÃO COM O SERVIDOR DESLIGADO Caso o servidor já esteja desligado, não deverá ser ligado de forma alguma, já que dados da memória RAM5 já foram apagados e as conexões de rede interrompidas. Em tal situação o recomendável é verificar quais as conexões físicas de cabos existentes, e anotar suas as características como, em qual porta do servidor está conectada, e em qual equipamento ele está interligando o servidor. Caso outros dispositivos estejam diretamente interconectados ao servidor também devem ser apreendidos, como mídias removíveis de pendrive, cdrom, disco rígido externo, servidores com outros serviços que estão integrados ao servidor a ser apreendido, roteadores,
  • 30. 30 e switches gerenciáveis, pois switches não gerenciáveis não salvam dados sobre as conexões realizadas em suas portas de conexão. 4.2.2. APREENSÃO COM O SERVIDOR LIGADO Ao se verificar que o servidor se encontra ligado, deve-se obter primeiro os dados carregados em memória, para em seguida capturar informações sobre conexões de rede ativas, e de serviços de rede ativos, além das contas de usuários conectadas ao servidor, desde que não se execute os programas do próprio sistema do servidor, e sim a partir de um dispositivo externo montado que possui os executáveis. No Unix a captura de dados da memória pode ser realizada por aplicações nativas do sistema. A Figura 5 demonstra o comando para cópia da memória RAM. Pode-se observar que o comando está sendo executado a partir de um diretório onde uma mídia externa foi montada, ou seja, ele está sendo executado a partir de um local que também possui comandos e programas do Unix, para evitar a execução de comandos nativos do sistema operacional da vítima (PALMER, 2008). Figura 5: Comando para capturar os dados da memória RAM Fonte: Dados da pesquisa É possível verificar também, que o acesso à memória é idêntico ao acesso de um arquivo qualquer, como pode ser visto no argumento do parâmetro que especifica a origem da cópia, e o arquivo de destino, está apontando para o diretório montado de uma mídia externa, para que assim se evite a escrita de dados no disco rígido da vítima. 5 RAM: Random Access Memory
  • 31. 31 Também é aconselhável obter dados sobre os processos ativos, para que futuras verificações de processos anormais ao sistema, ou de processos sendo controlados por usuários que não deveriam existir. Um dos comandos possíveis para capturar dados sobre os processos em execução no Unix pode ser visto na Figura 6. Os parâmetros utilizados visam especificar que o resultado contenha dados como, o usuário controlando o processo, a quantidade que o processo está consumindo de memória e processador, e data em que o processo foi aberto. O sinal de maior que é um recurso padrão existente no Unix que possibilita que, em vez do resultado do comando aparecer na tela, o mesmo deve ser encaminhado como texto para dentro do arquivo especificado, que no caso, é um arquivo salvo fora do sistema de arquivos local, e se o arquivo não existir, ele será criado (MORIMOTO, 2008). Figura 6: Comando para capturar os dados dos processos em execução Fonte: Dados da pesquisa Já para a captura sobre as conexões ativas, o comando representado na Figura 7 pode ser utilizado, em que o parâmetro utilizado, especifica que o comando deve retornar todas as conexões sem exceção (PALMER, 2008). Figura 7: Comando para capturar os dados sobre as conexões de rede Fonte: Dados da pesquisa Também é recomentado capturar dados sobre os usuários autenticados no sistema, e isto pode ser feito pelo comando representado na Figura 8 (COSTA, 2011).
  • 32. 32 Figura 8: Comando para capturar os dados sobre os usuários autenticados Fonte: Dados da pesquisa No processo de análise forense é que os resultados destes arquivos devem ser averiguados, de modo que após estas coletas de dados, recomenda-se que o sistema seja desligado de forma imediata, como desconectar o cabo de energia do servidor, para que se evite a escrita de dados no disco rígido pelo processo de desligamento. O processo de manter a integridade das provas já se inicia no processo de apreensão do servidor, o que inclui os cuidados já citados, pois seu foco está em realizar todos os processos de forma tal que não se modifiquem os seus dados originais, e se modificarem, que seja o mínimo possível, de forma que nem mesmo sua integridade física pode ser afetada, já que poderia desencadear o mesmo problema, como a danificação do disco rígido por exemplo. Os vários cuidados tomados para se evitar a alterações de dados, podem ser associados ao processo 3.1 (Preservation) do EDRM, que se trata da preservação de dados representado na Figura 2. 4.3. PROCESSO DE ANÁLISE FORENSE EM UM SERVIDOR UNIX Como neste processo devem-se procurar anomalias nos sistemas da vítima para se chegar aos vestígios de crime, o primeiro passo é saber qual é o objetivo do servidor em questão e quais serviços o mesmo fornece.
  • 33. 33 Figura 9: Destaques da Fase 3 Fonte: Dados da pesquisa Como não é feito um estudo de caso, é estudada a realização de análises básicas no sistema operacional, e em seguida em determinados serviços conhecidos do Unix já mencionados, mostrando anomalias possíveis de serem encontradas, e especificando as possíveis soluções de segurança. A utilização de programas para classificar e mostrar dados nesta fase pode ser comparada ao processo 4.1 (Processing) do EDRM representado na Figura 2, já que se trata de um processamento de dados, e a averiguação dos dados obtidos é comparável ao processo 4.3 (Analisys) do EDRM, sendo esta a fase de análise. 4.3.1 ANÁLISE DO SISTEMA OPERACIONAL DO SERVIDOR UNIX Com o servidor no local de análise, o primeiro passo é realizar uma cópia íntegra do disco rígido original, para que a partir da cópia sejam realizadas as próximas averiguações forenses mais profundas. No Unix e seus derivados, existe um comando padrão que realiza este trabalho. Já que o servidor não pode ser ligado, e supondo que há outra máquina para o trabalho de análise com um sistema Unix instalado, e que o disco rígido do servidor da vítima está conectado neste mesmo computador, poderá ser realizado a cópia íntegra do disco a ser analisado para o disco do computador do perito em forma de um arquivo. A partir deste momento, a cópia pode ser feita com o comando da Figura 10.
  • 34. 34 Figura 10: Comando para copiar um disco rígido Fonte: Dados da pesquisa É aconselhável que para executar o comando da Figura 10, o disco rígido da vítima não tenha sido montado, pois assim, o comando em questão irá acessá-lo como somente leitura, e nenhum processo do sistema operacional do perito irá alterar algum dado do disco da vítima. É possível observar na Figura 10 que o primeiro argumento indica para o primeiro parâmetro o caminho do arquivo de dispositivo que faz a interface com disco rígido real, de modo que o segundo argumento informa ao segundo parâmetro que o destino será um arquivo (PALMER, 2008). O arquivo resultante da cópia íntegra é que será analisado, e através de ferramentas do próprio Unix, pode ser acessado também por um processo de montagem, para poder ser analisado. Lembrando que mesmo sendo uma cópia, este não deve ser acessado no modo escrita, pois os problemas de integridade que podem existir em um disco rígido real, também podem afetar a cópia. O processo de montagem de um arquivo originado de um disco rígido real pode ser visto na Figura 11.
  • 35. 35 Figura 11: Processo de montagem de partição de um arquivo de cópia de um disco rígido Fonte: Dados da pesquisa Na Figura 11, o primeiro comando é o utilizado para particionamento de discos rígidos, e o parâmetro utilizado especifica que é para apenas listar informações das partições existentes em determinado disco, e o primeiro argumento é o arquivo que foi gerado da cópia do disco rígido que pode ser obtido pelo comando descrito na Figura 10 (MILLER, 2013). O segundo comando é que realmente monta a partição do arquivo em uma pasta para poder acessá-la, pasta esta que está especificada no terceiro argumento. O segundo parâmetro na verdade trata-se de vários parâmetros juntos, pois o comando permite isto, entre eles o primeiro parâmetro especifica que a montagem é somente leitura, ou seja, não haverá possibilidade de escrita no arquivo de disco original (MILLER, 2013). Com a cópia montada como somente leitura, esta já estará pronta para ser analisada, e antes de realizar esta tarefa, caso tenha sido feita as coletas de dados com o servidor ligado na fase de apreensão, é neste momento que eles devem ser analisados, pois podem conter informações que podem ajudar a guiar o caminho antes de realizar a análise da cópia do disco rígido.
  • 36. 36 O ideal é iniciar pelos dados obtidos da memória RAM, e na Figura 12 é feita a análise no arquivo que pode ser obtido na captura de dados da memória através do procedimento representado pela Figura 5. Figura 12: Exibição e filtragem do conteúdo obtido da memória RAM Fonte: Dados da pesquisa Lembrando que os dados coletados na fase de apreensão são salvos em mídia externa de armazenamento, logo se pode observar na Figura 12, que o diretório corrente é na pasta utilizada para montar tal dispositivo. No primeiro comando representado na figura, imprime todo o conteúdo existente dentro do arquivo, sendo que o texto que realmente deve aparecer é filtrado no segundo comando, que tem como argumento a expressão da palavra procurada, e assim o resultado final é um resumo com as linhas de textos que possuem a expressão. O símbolo entre os dois comandos é conhecido como canalização, e no Unix, é capaz de redirecionar o texto resultante de um comando, para um segundo que pode agregar funções ao primeiro (FARMER, 2007). Os conteúdos de memórias possuem grandes quantidades de dados e são bastante desorganizados, desta forma, vai depender de cada caso para saber o que procurar, podendo ser senhas por exemplo. Outro arquivo obtido na apreensão é o que capturou os processos que estavam ativos, e para analisa-lo, basta imprimir seu conteúdo na tela com o comando representado pela Figura 13.
  • 37. 37 Figura 13: Exemplo do conteúdo do arquivo com dados capturados dos processos Fonte: Dados da pesquisa A Figura 13 mostra uma representação do conteúdo obtido relativos aos processos que estavam rodando no servidor na apreensão. Deve-se ter atenção quanto à primeira coluna, pois ela mostra que usuários estão executando determinados processos, de modo que na listagem em questão, os usuários estão corretos, pois os usuários diferentes de root são usuários criados pelos próprios serviços instalados. Deve-se desconfiar de nomes de usuários comuns executando algum serviço como os circulados na figura, pois pode ser a evidência de que um usuário que de alguma forma conseguiu conectar no servidor e ter permissão para controlar algum serviço. Já o arquivo que contém o resultado do comando da Figura 7, que contém a lista de conexões de rede que estavam ativas na apreensão, pode ser visto na Figura 14.
  • 38. 38 Figura 14: Exemplo do conteúdo do arquivo com dados capturados das conexões ativas Fonte: Dados da pesquisa Duas observações imediatas podem ser feitas a partir da Figura 14. No primeiro retângulo que está selecionando três colunas, a primeira coluna mostra a representação de um serviço, ou pelo nome ou pela sua porta de rede, e a segunda coluna exibe para qual endereço IP o mesmo pode receber conexões, de modo que o asterisco significa que funciona para qualquer IP, e finalmente na última coluna mostra qual o estado do serviço, que no caso significa que o serviço está pronto para aceitar conexões. Já o segundo retângulo mostra na primeira coluna o nome do servidor e o respectivo serviço, e na segunda mostra um IP de um computador da rede e a respectiva porta utilizada do lado cliente, e a terceira coluna mostra que o estado entre os dois dispositivos é de uma conexão estabelecida. Desta forma, esta listagem de conexões de rede, pode esclarecer qual a origem de uma conexão de rede não desejada, como também para mostrar quais serviços de rede estão ativos, que em algumas ocasiões nem deveriam estar ativos. Uma averiguação para agregar na análise das conexões de rede, é a do arquivo resultante dos usuários autenticados também obtido a partir da apreensão, que pode ser visto na Figura 15. Figura 15: Exemplo do conteúdo do arquivo com dados capturados dos usuários ativos
  • 39. 39 Fonte: Dados da pesquisa A Figura 15 possibilita confirmar a análise anterior das conexões de rede, sendo as três informações sublinhadas as mais relevantes, em que a primeira mostra o usuário utilizado, já a segunda mostra o IP de origem da autenticação do usuário, e a terceira mostra que processo o usuário está utilizando, sendo que o processo em questão, é por padrão designado para oferecer uma linha de comando ao usuário autenticado, desta forma, com base na análise anterior, pode-se presumir que o usuário está conectado remotamente através do serviço de autenticação remota SSH a partir de outro computador. Após a análise dos dados que haviam sido capturados na fase de apreensão, pode-se iniciar à análise do arquivo da cópia do disco montado anteriormente na Figura 11, sendo possível averiguar os dados existentes dentro da cópia como se fosse o disco rígido real da vítima. Ao averiguar esta cópia, é que será possível analisar as configurações, os serviços de rede instalados, os arquivos de log, e os diretórios e arquivos em geral. 4.3.2 ANÁLISE DO SERVIÇO SQUID Um exemplo de serviço de rede que pode ser encontrado em um servidor Unix é o Squid. O Squid é um Proxy que tem como principais funções a de compartilhar internet e de possibilitar um cache. Este serviço possui uma gama de recursos, entre elas, controle de acesso por autenticação, por horários, por endereços IP, e pode permitir ou não o acesso a conteúdos dos sites, por expressões de texto, por URL6 e por extensões de arquivos (MORIMOTO, 2008). O Squid possui um arquivo de log rico de informações para auditoria, em que todos os dispositivos da rede que navegam na internet através dele terão seus acessos registrados neste 6 URL: Uniform Resource Locator
  • 40. 40 arquivo de log, salvando detalhes como data, hora, tempo gasto, URL acessada, tamanho do arquivo e outros dados mais técnicos. A análise pericial em um servidor Squid, é importante para elucidar casos em que se torna necessário averiguar os sites acessados por determinado computador da rede. Assim, o maior foco da análise pericial em um servidor Squid está em verificar seu arquivo de log, pois este contém informações quanto ao uso da internet na rede local. Em casos de pedofilia, por exemplo, mesmo que o usuário do computador final apagasse o histórico das páginas acessadas no seu computador, este histórico pode continuar existindo no servidor Squid. Na Figura 16 pode-se observar o conteúdo de exemplo de um arquivo de log do Squid (MORIMOTO, 2008). Figura 16: Conteúdo do arquivo de LOG do Squid Fonte: Dados da pesquisa No arquivo de log do Squid demonstrado na Figura 16 mostra três colunas destacadas que são importantes, em que a primeira coluna mostra data e hora, sendo em um formato próprio do Unix, em que há ferramentas próprias no Unix para conversão para o formato de data e hora normal compreensível. Na segunda coluna é mostrado o endereço IP do computador cliente do serviço Squid que acessou a internet através dele. E na terceira coluna, é mostrado o endereço do site acessado. Útil para auditorias de rotinas e análises forenses. 4.3.3 ANÁLISE DO SERVIÇO OPENSSH Outro serviço comumente encontrado em servidores Unix, é o serviço para conexões remotas seguras em sistemas operacionais Unix, conhecido como OpenSSH. O OpenSSH propicia meios para que se possa estabelecer uma conexão segura utilizando recursos de
  • 41. 41 criptografia. Este serviço pode controlar que usuários podem acessar, ou endereços IP, e até determinar em que diretório padrão o usuário irá acessar sem possibilidade de navegar no resto do sistema de arquivos (TERPSTRA, 2005). O serviço OpenSSH possui diversas configurações quanto ao número de conexões permitidas, que usuários permitir, e a porta utilizada. Na Figura 17 um trecho deste arquivo pode ser visto. Figura 17: Conteúdo do arquivo de configuração do SSH Fonte: Dados da pesquisa Um facilitador para as tentativas de invasão é o administrador do sistema manter a porta padrão do serviço, sendo que é possível alterá-la na linha destacada na Figura 14 (MORIMOTO, 2008). Os registros dos acessos ao serviço SSH são arquivados em um arquivo como o impresso na Figura 18. Figura 18: Conteúdo do arquivo de LOG de autenticações no sistema Unix Fonte: Dados da pesquisa Neste arquivo de log é armazenada a maioria das informações relativas ao uso de autenticação no sistema, sejam erros de senha, erros de digitação do nome de usuário, e o endereço IP de origem.
  • 42. 42 Na Figura 18, a parte retangular mostra um exemplo de uma tentativa de autenticação sem sucesso, mostrando a data, hora, nome do servidor, o serviço acessado, e a mensagem de erro respectivamente. Quando existir uma lista neste arquivo de registros de tentativas de autenticação sem sucesso, em curtos espaços de tempo, e com usuários que fogem aos padrões do sistema, pode ser o indício de tentativas de invasão, e verificar este arquivo por completo é essencial, para que se verifique se não houve sucesso em uma das tentativas. 4.4. ELABORAR O LAUDO O laudo é um documento que inicialmente pode conter várias informações relativas a todo o processo pericial, como dados sobre a entidade ou pessoa requisitante e do perito, todas as datas e horas de cada procedimento realizado, dados sobre a vítima, e requisitos e delimitações estabelecidas antes da perícia iniciar. Logo após, informações técnicas mais relevantes devem ser destacadas, principalmente as que provam o fato ilícito cometido contra o sistema da vítima (ELEUTÉRIO; MACHADO, 2010). A inserção de dados técnicos pode ser procedida com a captura de tela que possui uma informação relevante, e agregada ao laudo, em que arquivos de log e de configurações grandes podem ter inseridos ao laudo apenas os seus trechos de texto mais importantes. Lembrando que se deve argumentar sobre a informação técnica, descrevendo porque motivo àquela informação é uma prova de um fato ilícito, e caso haja várias provas relacionadas entre si, deve-se sequenciá-las de forma temporal, mostrando qual artefato teve sua vulnerabilidade explorado primeiro, e se a partir dela é que se tornou possível a invasão de outras partes do sistema (ELEUTÉRIO; MACHADO, 2010). Esta fase é associável ao processo 5 (Production) do EDRM da Figura 1, que representa o processo de elaboração do documento que resume as informações obtidas sobre os dados inicialmente coletados. A Figura 19 faz referência a Fase 4 (Produção de um laudo) demonstrado na Figura 1, de modo que a presenta uma visão mais exploratória.
  • 43. 43 Figura 19: Destaques da Fase 4 Fonte: Dados da pesquisa
  • 44. 44 CONSIDERAÇÕES FINAIS A partir dos estudos realizados, pode-se concluir que a análise forense em servidores baseados na plataforma Unix é complexa, requerendo uma sequência de cuidados para que a veracidade do trabalho pericial não seja atingida negativamente. O modelo EDRM proporcionou uma visão global de todos os processos, possibilitando uma compreensão facilitada, detalhada e organizada, sendo que foi possível perceber que este modelo pode se tornar um referencial para todo o processo de computação forense, abrindo a possibilidade de novos estudos tomando-o como base. Também foi possível perceber, que várias ferramentas para o processo de coleta de dados e de análise, já estão presentes nativamente no sistema operacional, consequentemente reduzindo os custos da perícia, e evitando assim, a aquisição de sistemas proprietários. Outra compreensão está no fato de que manter as configurações das instalações padrões de sistemas servidores é inseguro, de modo que apesar da perícia não focar em propor correções de falhas de segurança encontradas, as mesmas podem ser realizadas a fim de evitar que a vítima tenha um novo incidente através das mesmas brechas de segurança. O trabalho se limitou a uma análise forense inicial e superficial de sistemas Unix, de modo que não houve um aprofundamento técnico nos exemplos abordados, nem se explanou as diversas possibilidades possíveis de invasão em cada serviço de rede, ou no sistema operacional em si. Foi possível demonstrar apenas os conceitos necessários para a realização do laudo pericial. Este trabalho pode proporcionar o embasamento para estudos posteriores que podem ser realizados a partir deste ponto, entre eles uma análise mais profunda das ferramentas existentes no Unix; de como aplicar os conceitos estudados em plataformas diferentes, e de como aplicá-los no trabalho dos administradores de rede, para que lhes possibilite meios de realizar auditorias mais completas e seguras, para que suas tarefas de prevenção na segurança sejam mais efetivas. Também é possível abranger um estudo mais aprofundado em relação aos serviços de rede disponíveis no Unix, estudando como os procedimentos forenses podem ser agregados às particularidades de cada um.
  • 45. 45
  • 46. 46 REFERÊNCIAS COSTA, Marcelo Antonio Sampaio Sampaio Lemos. Computação Forense: A análise forense no contexto da resposta a incidentes computacionais. 3° Ed. Campinas, SP: Millennium Editora: 2011. EDRM LLC. EDRM Stages. EM: <http://www.edrm.net/resources/edrm-stages-explained>. Acesso em: 27 outubro 2013. ELEUTÉRIO, Pedro Monteiro da Silva. MACHADO, Márcio Pereira. Desvendando a Computação Forense. São Paulo: Novatec Editora, 2010. FARMER, Dan. VENEMA, Wietse. Perícia Forense Computacional: Teoria e Prática Aplicada. 2° Ed. São Paulo: Pearson Prentice Hall, 2007. FREITAS, Andrey Rodrigues de. Perícia forense aplicada à informática. Rio de Janeiro: Brasport, 2006. HERTZOG, Raphaël. MAS, Roland. O Manual do Administrador Debian. 2012. Disponível em: <http://debian-handbook.info/browse/pt-BR/stable/>. Acesso em: 06 out. 2013. KUROSE, James F. ROSS, Keith W. Redes de Computadores e a Internet: uma abordagem top-down. 5° Ed. São Paulo: Addison Wesley, 2010. LYRA, Maurício Rocha. Segurança e Auditoria em Sistemas de Informação. Rio de Janeiro: Ciência Moderna Ltda., 2008. MILLER, Andre. Mounting a hard disk image including partitions using Linux. Disponível em: <www.andremiller.net/content/mounting-hard-disk-image-including-partitions- using-linux>. Acesso em: 07 out. 2013. MORIMOTO, Carlos Eduardo. Servidores Linux, Guia Prático. Porto Alegre: Sul Editores, 2008. PALMER, Michael. Guide to UNIX Using Linux. 4° Ed. Boston, Massachusetts: Cengage Learning, 2008. ROSA, Fabrízio. Crimes de Informática. 2° Ed. Campinas: Bookseller, 2005. TANENBAUM, Andrew S. Sistemas Operacionais Modernos. 3° Ed. São Paulo: Pearson Prentice Hall, 2009. TERPSTRA, John. Segurança para Linux. Rio de Janeiro: Elsevier, 2005.
  • 47. 47 APÊNDICES APÊNDICE 1 - ESTRUTURA DE DIRETÓRIOS E COMANDOS DO UNIX Os sistemas de arquivos dos sistemas operacionais inclusos nos padrões da plataforma Unix, seguem uma organização hierárquica, de forma que se inicia por um diretório pai representado por uma barra para a direita, como pode ser visto abaixo na Figura 20, na representação da primeira linha, sendo que abaixo do diretório principal, encontra-se diversos subdiretórios definidos pelo POSIX, e outros mantidos e organizados pelo sistema operacional, em que dentro de cada um existem diversos outros subdiretórios e arquivos (FARMER, 2007). Figura 20: Listagem da pasta raiz do Linux Fonte: Dados da pesquisa Os arquivos de dispositivos geralmente se encontram no diretório representado pela quarta linha da Figura 20 acima, e dentro dele existem arquivos que são interfaces controladas pelo núcleo do sistema operacional, para possibilitar acesso ao hardware como monitor, teclado, som, rede e dispositivos em geral, sendo que este diretório pode ser utilizado como
  • 48. 48 meio para acessar dispositivos armazenamento e realizar ações para trabalhos forenses, como clonagem de discos rígidos por exemplo. Em seguida na quinta linha, pode-se encontrar o diretório responsável por manter a maioria dos arquivos de configuração, seja relativo à rede, inicialização de processos, drivers, e serviços de compartilhamento de recursos, de modo que deve ser analisado em casos em que algum serviço de rede foi violado. A sexta linha mostra o diretório em que os documentos dos usuários são comumente guardados, além de alguns registros de suas ações realizadas no sistema operacional. Um dos diretórios de importante relevância para auditorias no sistema, e que pode ajudar em esclarecimentos periciais, é o que está representado na vigésima primeira linha, pois nele encontram-se diversos subdiretórios onde são armazenados diversos registros do que ocorre no sistema operacional e seus serviços. (PALMER, 2008) Já em relação ao acesso a outros sistemas de arquivos de outros discos rígidos, partições de disco, ou via rede a partir de um Unix, deve ser realizada por um processo chamado de montagem com um programa apropriado, de modo que o diretório remoto é montado em um diretório no disco local, e este estando vazio ou não, passará a representar o diretório externo no disco local, e os arquivos originais do diretório local não ficarão acessíveis enquanto um processo inverso chamado desmontagem não for realizado, de modo que não acontece nada com estes arquivos, pois somente ficam ocultos pela montagem. O problema é que este tipo de acesso a arquivos remotos via rede para realizar trabalhos forenses não é recomendado, pois além de não se ter todos os recursos do sistema de arquivos do disco original, não será possível realizar uma análise em um nível mais profundo, sem esquecer que se deve evitar trabalhos forenses nos dispositivos originais (FARMER, 2007). A Figura 21 representa um exemplo de montagem de um dispositivo de armazenamento no Unix, onde dentro do retângulo está uma representação de uma tela de uma linha de comando Unix típica, em que na primeira linha, se observa um comando realizando uma montagem de um dispositivo de uma mídia de armazenamento externa, onde no primeiro argumento observa-se o caminho do arquivo que representa o dispositivo de hardware a ser montado, e no segundo argumento, o caminho destino do diretório onde este dispositivo será montado, pois é partir desta pasta onde será possível acessar os arquivos da mídia. A segunda linha na verdade é o resultado de saída do comando realizado na linha anterior, avisando que o dispositivo é protegido de gravação e que será montado como somente leitura. Neste momento já seria possível verificar que arquivos existem no dispositivo, e até copiá-los para outro local. Na terceira linha é mostrado o comando de desmontagem do dispositivo. A quarta linha mostra a linha de comandos no modo de aguardar novos comandos, de modo que após a
  • 49. 49 desmontagem não mostrou nenhuma mensagem, significando que o comando foi executado com sucesso (MORIMOTO, 2008). Figura 21: Comando para montagem e desmontagem de dispositivos no Unix Fonte: Dados da pesquisa Na Figura 21, pode-se perceber ainda nos três primeiros itens destacados pelas setas, informações do usuário atual autenticado na linha de comandos, o nome do computador, e o diretório corrente em que o usuário se encontra respectivamente. Para verificar quais os arquivos presentes em um diretório, podemos utilizar um comando específico para tal, como pode ser visto na Figura 22. Como pode ser visto, é que após a execução do comando indicado, a saída resultante é uma lista de arquivos e diretórios que estão presentes no diretório. Tanto este comando e outros existentes no Unix, possuem a capacidade de receberem parâmetros para determinar que ação específica do comando será realizada, como também a de receber argumentos, que geralmente são palavras comuns utilizadas pelo usuário com a finalidade de filtrar os resultados a serem obtidos, como também para determinar um arquivo ou diretório a sofrer uma ação do comando, de modo que a formatação correta do comando utilizando estes parâmetros e argumentos pode ser obtida a partir de leituras nos manuais do próprio sistema operacional via linha de comando (PALMER, 2008). Figura 22: Comando para listar o conteúdo dos diretórios no Unix com um parâmetro para maior detalhamento Fonte: Dados da pesquisa