sexta-feira, 30 de janeiro de 2015

Sistema de arquivo de partições HD no Linux


Introdução

Todos os arquivos no linux estão dispostos hierarquicamente em forma de árvore, sendo a raiz o diretório “/” e todas as partições e dispositivos montados em nosso computador também fazem parte dessa árvore. Sabemos que cada partição tem um tipo e também um possível sistema de arquivos, que pode ser um dos mais diversos, como EXT3, EXT4, FAT32, etc. Esses dias precisei descobrir o sistema de arquivos de uma partição, e por algum motivo não lembrava um modo de fazer isso. Depois de alguns minutos, lembrei do comando mount e resolvi o problema. Porém, mesmo assim fiz uma pesquisa para descobrir outros modos.
Nesse post iremos aprender quatro maneiras de se obter o tipo de e o sistema de arquivos de uma partição.

Solução 1

O comando mount nos mostra o sistema de arquivos em cada partição, além de outras informações:
 
# mount
...
...
/dev/sdb1 on /media/XISTO type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=cp437,iocharset=ascii,shortname=mixed,showexec,utf8,errors=remount-ro,uhelper=udisks)
/dev/sda6 on /home/daemonio/usb type ext4 (rw,relatime,seclabel,data=ordered)

Solução 2

Em [1], vemos que o comando df com a opção -T também pode ser utilizado:
 
$ df -T
Filesystem     Type     1K-blocks     Used Available Use% Mounted on
...
...
/dev/sdb1      vfat        994832   694500    300332  70% /media/pendrive
/dev/sda6      ext4      38448276  2002272  34492904   6% /home/daemonio/usb
A coluna Type foi acrescentada pela opção -T.

Solução 3

Ainda em [1], temos também o comando file para solucionar essa tarefa:
 
[root@daemonio tmp]# file -s /dev/sda3
/dev/sda3: Linux rev 1.0 ext4 filesystem data, ...

Solução 4

Para desenferrujar nosso lado hacking, vamos encontrar o tipo de uma partição primária usando o padrão DOS de partição. O primeiro setor do disco contém a MBR, que nada mais é que um conjunto de informações que inclui a tabela de partições e o código inicial do gerenciador de boot do sistema operacional. Nos últimos 64 bytes da MBR, temos a tabela de partições:
 
# dd if=/dev/sda count=1 | xxd
 
0000000: eb63 908e d88e d0bc 007c 89e6 0657 8ec0  .c.......|...W..
0000010: fbfc bf00 06b9 0001 f3a5 ea1f 0600 0052  ...............R
0000020: 52b4 41bb aa55 31c9 30f6 f9cd 1372 1381  R.A..U1.0....r..
0000030: fb55 aa75 0dd1 e973 0966 c706 8d06 b442  .U.u...s.f.....B
...
...
00001b0: 0000 0000 0000 0000 7480 07c8 0000 0020  ........t...... 
00001c0: 2100 06fe ffff 0008 0000 0040 9002 00fe  !..........@....
00001d0: ffff 83fe ffff 0048 9002 0000 6a18 80fe  .......H....j...
00001e0: ffff 83fe ffff 0048 fa1a 0080 a903 00fe  .......H........
00001f0: ffff 05fe ffff 00c8 a31e b022 9f06 55aa  ..........."..U.
 
As últimas linhas da saída representam a tabela de partições. Como nesse modelo só podemos ter 4 partições primárias, o início de cada uma delas foi marcado por um negrito. Esse número em negrito é a flag indicando se a partição é de boot (valor 0x80) ou não (valor 0x00).
Por [2] e [3], vemos que o tipo da partição se encontra no quinto byte (em itálico) desde o início do negrito. Usando esse byte como índice na tabela de tipos [2], encontramos o tipo de cada partição no nosso disco:
 
+---------+--------------------+
| Número  |  Tipo da Partição  |
+---------+--------------------+
|  0x05   |      Estendida     |
+---------+--------------------+
|  0x06   |        FAT16       |
+---------+--------------------+
|  0x82   |     Linux Swap     |
+---------+--------------------+
|  0x83   |        Linux       |
+---------+--------------------+

No meu caso, eu tenho duas partições primárias no formato Linux, uma FAT16 e outra estendida. Aqui, não irei mostrar como obter o tipo das partições lógicas, ou seja, aquelas contidas na partição estendida. Para mais detalhes veja [2] e [3].
Bem, essa solução foi para mostrar que conhecendo detalhes internos das coisas, podemos obter informações muito interessantes. Esses pequenos hackings são muito úteis na área de forense digital, como podemos ver em [2].

 

Conclusão


Existem vários programas e métodos para se descobrir o tipo de uma partição e o sistema de arquivos dela. Hoje vimos como utilizar os comandos mount, df e file para resolver esse problema. Aprendemos também a ler diretamente a MBR para se obter o tipo de uma partição.

Referências


Retirado do Blog do Autor: -


[1] Linux how to determine the file system type by NIXCRAFT (Acessado em: Novembro/2012)
http://www.cyberciti.biz/faq/linux-how-to-determine-find-out-file-system-type/
[2] Partição by wikipedia (Acessado em: Novembro/2012)
http://pt.wikipedia.org/wiki/Parti%C3%A7%C3%A3o
[3] PC-Based Partitions by Priscilla Oppenheimer (Acessado em: Novembro/2012)
http://www.priscilla.com/Courses/ComputerForensics/pdfslides/01-PC_Partitions.pdf


quarta-feira, 10 de dezembro de 2014

Descubra quem e quando uma pessoa acessou seu computador



Se o computador que você usa é compartilhado com outras pessoas, as vezes, saber quem e quando uma pessoa acessou este PC, pode ajudar bastante. Se você sempre sonhou em saber essas informações mas nunca soube como, continue lendo esse post!
Em versões profissionais do Windows, você pode habilitar um monitoramento de login. Assim é fácil saber quem acessou determinada máquina e quando. Com essa ferramenta habilitada é possível ver os acessos tanto do login local como do login feito pela rede. Além de mostrar quando determinada pessoa acessou o computador, o evento também mostra quando ela se desconectou. Vamos aprender!

Habilitando a Política de Auditoria

A Política de Auditoria é o nome da função presente no Windows que possibilita sabermos quem e quando uma pessoa entrou num PC. Para habilitar pressione a tecla “Windows” no seu teclado. Depois digite “gpedit.msc“.
gpedit.msc
Agora você deverá clicar nele ou simplesmente apertar a tecla “Enter“. Vamos começar a navegação: Configuração do Computador > Configuração do Windows > Configurações de Segurança > Políticas Locais > Política de Auditoria.
politica-de-autoria
Agora volte a sua atenção para a janela da direita. Você deve clicar duas vezes na política com o nome: Auditoria de Eventos de Logon. Depois disso, irá abrir uma nova janela.
politica-de-autoria-2
Você terá duas opções: monitorar as pessoas que acessaram com êxito o computador e as que falharam. Depois de escolher as opções basta apertar o botão “OK“.

Visualizando os Acessos

Depois dessa configuração ativada, o Windows irá registrar todos os eventos de início de seção, ou seja, o nome de usuário e horário de acesso ao Windows. Para visualizar esse evento, basta abrir o visualizador de eventos. Novamente aperte a tecla “Windows” e digite “Visualizador de Eventos” e pressione “Enter” para abrir.
visualizador-de-eventos-windows8

Agora navegue: Logs do Windows > Segurança. Você verá diversos eventos da autoria. Procure na aba “Identificação do Evento” pelo número “4624“. Esse número representa os logins bem sucedidos. Para obter mais informações como nome de usuário e horários, basta clicar duas vezes sobre o evento.
visualizador-de-eventos-auditoria-acessos-1
Só lembrando que quando o log estiver cheio, você poderá filtrar as informações e procurar apenas os eventos com ID 4624. Agora você sempre saberá quem acessou o computador, qual horário e quanto tempo ficou conectado!
Abraço a todos!

Autor: Felipe Falcão. site : http://www.guiadopc.com.br/author/felipefalcao

quinta-feira, 27 de novembro de 2014

Usando o nmap


O Nmap


O Nmap é um escaneador de hosts que usa recursos avançados para verificar o estado do seu alvo. A ferramenta é gratuita e encontrada nas versões Linux, Windows(95,98,NT, Me, 2K e XP), Mac OS, Solaris, FreeBSD e OpenBSD. As versões para Windows e Linux contam com uma interface gráfica que facilitam a vida dos usuários.
Aqui analisaremos a versão para Linux, porém o funcionamento varia pouco em outros sistemas operacionais.

Obtendo e instalando
O download pode ser feito no site oficial, em http://www.insecure.org. A instalação pode ser feita a partir do pacote RPM disponivel no site. Como root(superusuário), instale com o seguinte comando:
rpm -vhi http://download.insecure.org/nmap/dist/nmap-3.30-1.i386.rpm
Assim o programa será baixado e instalado diretamente do site oficial do Nmap.
Caso você use uma distribuição que não suporte RPM, como Debian ou Slackware, baixe os fontes e compile. Para isso baixe o arquivo com o comando:
wget http://download.insecure.org/nmap/dist/nmap-3.30.tar.bz2
Agora descompacte com o comando:
bzip2 -cd nmap-3.30.tar.bz2 | tar xvf -
Entre no diretório criado com o comando:
cd nmap-3.30
Agora compile e instale:
./configure
make
make install

Utilização
Apesar de existirem os front-ends gráficos disponíveis, os comando passados em modo texto permitem uma enorme flexibilidade e, ao contrário do que possa parecer, o uso não é difícil. A sintaxe do comando sempre será:
nmap -p
Onde o alvo é o endereço IP do host ou rede que se deseja escanear. Caso exista uma forma de resolver nomes, como um DNS configurado, você pode usar o nome do host ao invés do IP. Com a opção -p podemos especificar portas ou faixas de portas para análise. Os parâmetros são ajustados de acordo com o que se deseja obter, os principais são:
-sT - Com esse parâmetro é feito um escaneamento através de tentativas de conexão TCP. Essa forma é muito fácil de ser identificada por firewalls e IDS;
-sS – Assim, a tentativa será com pacotes TCP com a flag SYN ligada, ou seja, como apenas uma requisição de conexão. Essa técnica dificulta um pouco a detecção;
-sP - Com essa opção o escaneamento será feito através de pacotes ICMP echo request. Verifica apenas se o host está ativo;
-sU - Envia pacotes UDP com 0 byte para determinar o estado dessas portas;
-sO - É usado para tentar determinar os protocolos suportados pelo host;
-O - Com esse parâmetro é feito uma tentativa de determinar o sistema operacional através de uma técnica conhecida como Active FingerPrint.
Bom, esses são os principais parâmetros, com eles podemos realizar os mais variados testes. Vamos partir para a prática. Primeiro testo com pacotes SYN, nas portas de 1 a 100, meu próprio roteador:

nmap -sS 192.168.0.1 -p 1-100

Recebi uma resposta assim:



O que me mostra que tenho um serviço SSH(usado para acesso remoto) aberto na porta 22.

Você pode escanear um endereço de rede para determinar serviços ativos em mais de um host, basta para isso informar o endereço da rede, como no

exemplo:
nmap -sS 192.168.0.0/24 -p 1-150  # para TCP
ou 
nmap -sU 192.168.0.0/24 -p 1-150 # para UDP


Os resultados são mostrados para todos os hosts da rede separadamente. Essa técnica é interessante pra identificar falhas de segurança em toda sua rede interna.

Agora tentaremos um alvo fora da minha rede interna. Tentaremos o IP 168.143.xx.48, omitiremos obviamente parte do endereço analisado.

nmap -sT 168.143.xx.48



Note que não especificamos um intervalo de portas, assim todas as portas serão escaneadas e nosso teste poderá demorar bastante dependendo do nosso link. Aqui tentamos uma análise por tentativas de conexão TCP(opção -sT) ao invés de apenas envio de solicitações de conexão(opção -sS). É fácil observar que existem muitos serviços ativos e suas respectivas portas.
Por último tentaremos identificar o sistema operacional de um alvo em nossa rede local, para isso usaremos o parâmetro -O, assim:

nmap -O 192.168.0.66



Em nosso teste o sistema operacional foi identificado perfeitamente, como pode ser visto na figura acima.
Como se defender

Utilitários como o Nmap estão em constante atualização, cada vez mais sutis eles passam muitas vezes desapercebidos no firewalls e IDSs. O que pode diminuir os riscos é a configuração de firewalls com regras bem definidas, diminuição dos serviços ativos no gateway deixando apenas aqueles indispensáveis ao seu funcionamento e análise constante de seus arquivos de log. Um bom sistema de detecção de intrusos, como o SNORT, é indicado também.

O Nmap pode e deve ser usado para averiguação do estado do seu host, principalmente se tratar de um servidor. Use constantemente para monitorar o estado das portas e se elas pertencem a algum serviço legitimo ou não.
Portas abertas podem significar trojans instalados, por isso use também o programa chkrootkit para identificar mais facilmente essa tentativa de ataque.

O chkrootkit pode ser encontrado no endereço http://www.chkrootkit.org.
Conclusão

O Nmap pode ser considerado uma ferramenta Hacker ou um excelente utilitário para consultores de segurança e administradores de rede, o fato é que ele realiza de forma extremamente eficiente o que se propõe.


Autor: André Luis
Site: http://www.invasao.com.br/coluna-andre-07.htm