O objetivo desse artigo
é trazer uma visão genérica de alguns recursos
que podem ser usados para defesa do seu servidor Windows 2003, para
isso, usamos como exemplo de ameaça a segurança uma
técnica chamada Finger Print. Não iremos explicar a
fundo, o que é e como utilizar essa técnica.
Finger Print
Finger Print ao pé
da letra, significa, impressão digital. Essa técnica de
obtenção de informação visa saber qual o
sistema operacional está sendo usado em uma maquina
especifica. Isso ocorre porque cada sistema operacional implementa a
pilha tcp/ip de uma forma.
Existem inúmeras
requisições que podem ser usadas para verificar
particularidades de cada sistema operacional. Um inocente PING por
exemplo, pode dar uma boa dica de qual sistema operacional está
em uso, caso não sejam tomadas as devidas precauções.
O comando ping retorna entre outras coisas o TTL(Time To Live), que
difere de um sistema operacional a outro. Segue abaixo uma pequena
lista com o valor do TTL e o sistema operacional correspondente:
Valor de
retorno Sistema Operacional
30 Switches 3COM
32 Windows 95
(primeira versão)
60 Impressoras HP
(JetDirect/Laser Jet)
64 *Unix, *Linux
128 Windows
(95,98,ME,NT,2000,2003,XP) e Novell Netware (3.12 , 5.0 , 5.1)
255 FreeBSD(3.4 e
4.0), OpenBSD, NetBSD, Solaris (2.5.1 a 2.8), HP-UX e IRIX
Exemplo disso é
que muitos firewalls são configurados para não
responder requisições ICMP, a não ser as
liberadas pelo administrador, lembrando que o ping é um tipo
de requisição ICMP.
Essa é uma
técnica extremamente simples de FingerPrint, porém
existem inúmeras outras. É possível a
manipulação de datagramas TCP e UDP, sendo a pilha
TCP/IP melhor para essa finalidade, devido as diversas formas de
implementação nos diversos sistemas operacionais.
Outra técnica
simples que pode revelar informações valiosas caso o
administrador não esteja atento e não fizer os devidos
ajustes é uma requisição telnet na porta 80.
Pode revelar com facilidade o sistema operacional e o servidor web
utilizado, bem como sua versão.
Ex:
No prompt de comando,
digite:
telnet XXX.XXX.XXX 80
qualquercoisa ou GET
Onde a seqüência
de X, significa o endereço ip do servidor.
A técnica de
FingerPrint é de fundamental importância para o
atacante, pois através dela, sabendo o sistema operacional e a
respectiva versão do servidor web em atividade por exemplo,
pode ser usado um exploit especifico para finalidade do atacante.
Ocultar essas informações então, seria um grande
passo na defesa de suas informações.
Depois de uma visão
bem superficial sobre Finger Print, vamos aprender o que podemos
modificar para prover maior segurança ao nosso servidor.
No Windows 2003 Server,
vá até o regedit.
Depois navegue pela
arvore
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
Nessa pasta você
irá encontrar várias configurações que
podem ajuda-lo a proteger-se um pouco mais, não só com
relação ao finger print.
Alguns registros são
visíveis por padrão, outros você tem que criar se
quiser modificar o valor padrão.
O registro
AllowUserRawAccess por exemplo, não é visível
por padrão. Esse registro controla o acesso a RAW sockets por
usuários não administrativos. Os valores possíveis
são 0 (False) e 1 (True), o valor padrão é 0.
Mas caso o valor seja modificado para 1 permite usuários não
administrativos controlar RAW sockets.
Dependendo de suas
intenções com relação a um sistema
remoto, talvez seja interessante ter, por algum meio, esse registro
setado como True. Mas por questões de segurança, siga o
padrão.
O registro DefaultTTL
mostra o padrão do TTL, como citado na tabela acima, o padrão
para Windows é 128, que pode ser alterado para 64 por exemplo,
fazendo se passar por um Linux, por exemplo, a um atacante desatento
que tente somente através do TTL determinar o SO.
DisableIPSourceRouting é o registro responsável por permitir que quem envia um pacote pela rede, possa determinar a rota IP do mesmo. O comando PING e o TRACERT podem ser usados com essas finalidade pois tem opções para especificar a rota. O registro pode ter 3 valores:
0 -
forward all packets
1 - do not forward Source Routed packets
2 - drop all incoming Source Routed packets
No
Windows 2003 Server sem nenhum Service Pack o padrão é
1, já nas versões com qualquer Service Pack o padrão
é 2. Para impedir todos os pacotes que cheguem com rota pré
definida.
Você
pode usar o registro ReservedPorts
para reservar portas fora do range naturalmente reservado. O range
aberto normalmente para aplicações do usuário
vai de 1024 a 5000. Esse range pode ser alterado pelo registro
MaxUserPort.
Pelo registro ReservedPorts, você pode incluir nesse range
aberto de 1024 a 5000, portas reservadas que não poderão
ser usadas pelo usuário.
O registro TcpNumConnections diz quantas conexões TCP poderão existir simultaneamente.
Existem
inúmeros outros registros de configuração nessa
arvore, inclusive alguns que podem ser configurados pela interface de
usuário do Windows 2003, como opção pra usar
DHCP e etc.
Para não
estender muito esse artigo, que já está muito grande,
ficarei por aqui com as descrições.
A
descrição de todos os registros dessa arvore pode ser
encontrada no link abaixo, que serviu de guia para criação
desse artigo.
http://technet2.microsoft.com/windowsserver/en/library/db56b4d4-a351-40d5-b6b1-998e9f6f41c91033.mspx?mfr=true
Também
seria interessante a visita ao link:
http://support.microsoft.com/?scid=kb%3Ben-us%3B317741&x=17&y=5
que
mostra como mascarar informações do IIS obtidas através
do TELNET ou TRACE.
Esse foi
meu primeiro artigo com enfoque técnico. Espero que tenham
gostado e não considerem muito os erros de português.
No
próximo prometo screenshots para melhor entendimento das
questões.
Abraços,
João
Bosco
Todo novo produto tem uma curva de falhas alta, com o iPhone não poderia ser diferente.
Foi descoberto recentemente pelo Dr. Charlie Miller, membro do grupo de pesquisadores Independent Security Evaluators, que também atua prestando consultoria na area de segurança da informação, uma falha que expõe os usuários de iPhone.
Até o momento só foi divulgado um resumo do estudo.
O estudo completo será divulgado na convenção Black Hat , dia 2 de agosto.
O ataque é possivel de diferentes formas.
Os exemplos apresentados na prova de conceito são:
1. Um atacante controla um Access Point
2. O usuário abre uma pagina web com código malicioso
3. O usuário abre uma URL diretamente do e-mail ou de uma mensagem SMS
Quando a versão do Safari no iPhone abre uma pagina arbitraria com o código malicioso, o exploit irá rodar e conceder privilégios administrativos ao atacante. Na prova de conceito aplicada pela equipe do Dr. Charlie Miller foi possível ler o log das mensagens SMS, agenda de contatos, histórico de chamadas e ouvir as gravações do correio de voz. Tudo isso foi transmitido ao atacante.
Segundo a equipe, o código pode ser substituído para fazer qualquer coisa que seja possível dentro do iPhone. Qualquer dado dentro do iPhone pode ser obtido pelo atacante.
A Apple já foi comunicada e está estudando o exploit para publicar em breve um patch para correção do erro.
Estamos numa era de convergência muito grande entre telefonia e computação. Todos os cuidados que você aplica a seu computador ou laptop, deve ser aplicado a aparelhos celulares.
Cuidados que podem diminuir os riscos são:
- Visite apenas sites de sua confiança
- Use apenas redes WiFi em que você conheça e confie
- Não abra links diretamente de e-mails
Esses cuidados são formas de prevenção contra ataques que são válidos para quase todos os aparelhos que podem se conectar a internet.
O primeiro post no Blog obviamente tem que ser uma apresentação da
equipe. Não vou escrever muito pra não encher o saco dos leitores.
Então vamos lá.
Quem somos?
Somos uma
celula academica formada nas Faculdades Jorge Amado. Na época em que
nos unimos para dar inicio a este projeto, eramos 4º semestre e buscávamos um meio para interagir mais com o cenário de TI regional. Essa foi a forma que encontramos para conciliar esse desejo de interação com trabalho e vida pessoal de todos os integrantes, foi então que demos inicio a Célula.
Vamos aos nomes dos integrantes que deram inicio a este grupo:
João Bosco
Moacir Filho
Ivan Clay
Ivanildo Frenzel
Murilo Cardoso
O que fazemos?
Como já foi dito, todos são
estudantes, mas acima de tudo somos apaixonados por tecnologia. Todos
os integrantes já tem experiência de trabalho na area, com programação
ou infra-estrutura.
Qual o nosso objetivo?
O nosso objetivo é
desenvolver soluções que facilitem a vida dos usuários e/ou empresas.
Sempre buscando uma maneira de inovar e se destacar no mercado.
Produzir
conhecimento acadêmico também é um foco do grupo. Desenvolver
estudos/pesquisas na area de tecnologia foi um dos principais motivos
da junção do grupo. Acreditamos que produzindo conhecimento, teremos
nossas capacidades reconhecidas e teremos mais oportunidades.
Agradecimentos
Nessa muito breve apresentação, gostaria também de deixar alguns agradecimentos em nome do grupo.
Agradecemos
primeiramente a Diego Alvarez que nos guiou para a formação da célula
acadêmica e nos orientou em como deveríamos proceder com relação as
atividades da célula.
Agradecemos também a Grinaldo, Coordenador
do curso de Sistemas de Informação nas Faculdades Jorge Amado, que nos
cedeu espaço físico e maquinas para que pudéssemos dar continuidade a
esse projeto.
Agradecemos também a Alex Kondera e Ramon Durães
que tiraram duvidas com relação ao processo das células acadêmicas e
nos disponibilizaram esse espaço para publicações.