Não deixe de conferir as postagens antigas
nas sessões ao lado!!! --->


terça-feira, 3 de junho de 2014

Gbplugin apronta novamente?

Antes de começar vocês lembram do post Problema após atualização do Windows no dia 10/04/13? Foi um incidente com patch da Microsoft para Windows 7 32bits, um dos causadores deste foi devido a alguma incompatibilidade com o famoso plugin Gbplugin utilizado para acesso a maiorias dos websites de bancos brasileiros (por isso que praticamente só maquinas no Brasil foram afetadas)...

Bom, essa semana fiquei sabendo de um incidente envolvendo estações e notebooks Windows XP de diversos fabricantes, onde as mesmas travavam "aparentemente" logo após finalização da execução do POST da BIOS, ou seja, não aparecia nem o splash-screen.

Pessoal tentou scandisk (chkdsk), me senti um pouco velho agora kkkkk, bom..., tentaram chkdsk, fixmbr, fixboot, antivirus e nada, a máquina não inicializava nem em modo de segurança...

Após este cenário pareceu claro que era a concretização do boato que vi na Internet (começo deste ano) sobre lançamento em massa de malwares específicos para Windows XP após termino de seu suporte pela Microsoft neste ano. Tendo em vista que ainda há varias empresas com este SO em seus ambientes, como profissional da área de segurança da informação é evidente que a primeira recomendação seria a de troca de sistema operacional para um versão com suporte pelo fabricante. Até podemos pensar que poderia ser um bom momento para fazer este upgrade, mas sabemos que não é tão simples assim, no mundo corporativos precisamos vencer varias barreiras e quem trabalha na area de TI sabe como que é...

Nas maquinas afetadas que analisei, as mesmas paravam após carregamento do arquivo:

%SystemRoot%\System32\drivers\ntfs.sys

Primeira solução foi substituir arquivo ntfs.sys... Fiz e não deu certo, logo pensei, será que não pode ser um dos "prometidos" malwares que está corrompendo o "ntfs.sys", ou seja, será que ele não está ofuscado em outro arquivo anterior ao carregamento do "ntfs.sys"? Ou seja, por mais que eu troque o arquivo para uma versão correta o mesmo pode estar sendo substituído a cada boot por uma versão corrompida...  

Próximo passo foi ativar o log de boot do Windows em uma máquina que não foi afetada e percebi que após carregamento do "ntfs.sys" ele carregava um tal de "gbpkm.sys". Aí pensei será que o Windows não pode estar travando ao carregar este arquivo? Usei um liveCD para bootar uma das maquinas afetadas e procurar por este arquivo, quando vejo a pasta me deparo com o tal do "gbpkm.sys" lá, de cara percebo que ele tem ≅ 2,5GB... oloko!!! Logo abaixo dele havia um chamado "gbpkm.sys.off" na hora pensei que só podia em ser um malware, pois comparei o tamanho do "gbpkm.sys.off" da máquina afetada com o "gbpkm.sys" da máquina boa e vi que os dois tinham exatamente o mesmo tamanho em bytes, mas só me recordo do valor em KB que era 45.

Para solução do incidente foi renomeado o "gbpkm.sys" para "old_gbpkm.sys" e renomeado o "gbpkm.sys.off" para "gbpkm.sys" e reiniciado a máquina. Pronto, incidente resolvido! A máquina inicializou normalmente, como se nada tivesse acontecido...

Mas ainda me veio em mente sobre qual era a finalidade do "gbpkm.sys" para o sistema operacional (pois devido ao comportamento parecia claro se tratar de um possível malware), pesquisei na internet e percebi que este arquivo pertence ao plugin Gbplugin. Não teve como não pensar... Mas você de novo?

Bom, deve ser por isso que encontramos várias pessoas na Internet reclamando deste plugin...

NOTA: Uma boa ideia é apagar o arquivo "old_gbpkm.sys" (arquivo com 2,5GB).

sábado, 31 de maio de 2014

XSS War Game

Fiquei sabendo de um site bem bacana para prática de XSS, pelo que eu pude homologar me pareceu bem bacana. Segue abaixo:

https://xss-game.appspot.com

Enjoy!

quinta-feira, 10 de abril de 2014

Vulnerabilidade no OpenSSL (CVE-2014-0160)

Uma vulnerabilidade no OpenSSL foi publicada essa semana e vem abalando o mundo da segurança da informação pela sua criticidade e facilidade de exploração. Muita informação confidencial foi vazada por meio dessa falha, onde podemos citar credenciais de acesso a websites, webmails, certificados privados de webservers, emails, etc...

Quer saber se teu website HTTPS está vulnerável? Use o site abaixo:


Bom, o jeito é por a mão na massa, fazer update do OpenSSL para versão corrigida, trocar alguns certificados (revogar e instalar um novo) e credenciais envolvidas... :)

Mais informações:

quarta-feira, 26 de março de 2014

Analise de Malware – Parte2

Prólogo

Estarei apresentando uma série de artigos voltados para o estudo básico de malware, o meu objetivo não é esgotar o assunto e sim colocar em discussão o que fazer para combater e até mesmo evitar estas pragas virtuais e acredito que a melhor forma de se combater qualquer mal é estudando e debatendo sobre o mesmo, por isso deixo em aberto os comentários. E quero deixar claro que também não sou nenhum especialista, estou em processo de aprendizagem e podemos estar sujeitos a erros.

Na parte2 estaremos estudando:
+ Técnicas de análise de malware;
+ Programas Packeado;
+ Portable Executable File Format.

Técnicas de Análise de Malware

Vamos agora verificar os modos de análise de malware, isso não quer dizer que usarei todas as técnicas na série de artigos propostos, não é esse o objetivo, estarei focando em algumas técnicas, aquelas que me ajudam no meu cotidiano, as outras técnicas fica por conta de cada um que pode achar necessário usar em seu estudo de caso em particular.

Analise estática básica: Este é um método que gosto de usar, acho de primordial importância, nesta técnica podemos encontrar muitas informações do malware e a partir dessas informações escolher as ferramentas que usaremos na etapa seguinte, o objetivo é checar o arquivo/programa suspeito e verificar o seu conteúdo, nesta primeira etapa quase sempre, já é possível definir se o arquivo/programa apresenta alguma ameaça.

Analise estática avançada: Consiste na engenharia reversa do arquivo/programa suspeito, checar o seu conteúdo, em assembly, verificar a ordem de execução e descobrir o que ele faz, nesta análise é possível já saber qual é o comportamento que terá quando for executado.

Analise Dinâmica Básica: Esta técnica é a mais divertida, e o meu foco, é onde rodamos o malware e observamos o seu comportamento no sistema operacional, essa observação é realizada por programas auxiliares que checarão parte individuais do sistema colhendo e gerando logs de tudo que acontece, quando terminado a analise, será possível saber todas as alterações realizadas pelo arquivo/programa suspeito.

Analise Dinâmica Avançada: Essa técnica é preciso debugar o código malicioso, para que se possa examinar detalhes de seu interior, com o objetivo de extrair informações detalhadas de seu comportamento e alterações no sistema operacional e na rede local. Essa técnica é usada quando não se consegue obter informações suficientes nas técnicas anteriores.

Programas “Packeado”

O motivo do autor do malware, ofuscar o código malicioso e/ou packear é na verdade para dificultar sua detecção e análise.

Programas Packeado: quando o programa packeado roda, um pequeno subconjunto de programas é descompactado e é executado. Esse método é dificilmente detectado na análise estática.

Figura 1 - O arquivo da esquerda é o arquivo executável original, já do lado direito já podemos verificar "Wrapper Programs", onde está o malware “pakeado” neste programa.
Imagem Ref. “Pratical Malware Analysis – Michael Sikorski e Andrew Honig” pag. 13.

Portable Executable File Format

O formato PE é usado no MS Windows, como arquivo executável, objetct code e DLL. A estrutura do PE contém informações necessárias para o MS Windows carregar e gerenciar o núcleo executável, quase todos os executáveis para MS Windows tem o formato do PE, salvo alguns formatos antigos que raramente conterá um malware, ou talvez sim!
O PE inicia no cabeçalho que inclui informações sobre o código, tipo de aplicação, DLL requeridas e espaço em disco necessário. As informações d cabeçalho do PE é de grande importância para o analista de malware.

Os programadores para não precisar reimplementar uma determinada função já existe em outro programa, cria-se então o import Link, a biblioteca pode ser linkada estaticamente, pela runtime ou de forma dinâmica. Conhecer como o código da biblioteca esta linkada é crucial para entender como as bibliotecas do HEAD PE estão linkadas e assim é possível saber as dependências do malware, em um efeito em escada, é possível saber quais partes do Sistema Operacional é ativado, como por exemplo, interface de rede, alteração de registro e etc.


Por: Edilson Feitoza

Quem sou eu:
Graduado em Redes de Computadores e especialista em Gestão de Projetos em TI.
Atualmente trabalha como Administrador de Redes em uma empresa no ramo de papéis e cadernos e professor universitário nos cursos de Sistema de informação e Analise e Desenvolvimento de Software.

segunda-feira, 17 de março de 2014

Analise de Malware – Parte1

Introdução
Estarei apresentando uma série de artigos voltados para o estudo básico de malware, o meu objetivo não é esgotar o assunto e sim colocar em discussão o que fazer para combater e até mesmo evitar estas pragas virtuais e acredito que a melhor forma de se combater qualquer mal é estudando e debatendo sobre o mesmo, por isso deixo em aberto os comentários. E quero deixar claro que também não sou nenhum especialista, estou em processo de aprendizagem e podemos esta sujeitos a erros.

Motivação
A minha motivação de estudar esse assunto e posteriormente escrever, é devido a grande ocorrência dessas pragas que por muitas vezes consegue burlar até mesmo o antivírus e outras vacinas e ferramentas que deveriam barrar esses vermes, causando desesperos em usuários despreparados e por muitas vezes vieram até mim pedindo ajuda.

Referência:
Todo o estudo desenvolvido, tem como base o livro “Pratical Malware Analysis – Michael Sikorski e Andrew Honig” pode ser encontrado neste link: http://www.amazon.com/Practical-Malware-Analysis-Dissecting-Malicious/dp/1593272901
Essa primeira parte do artigo está voltada fundamentação de alguns conceitos importantes para compreender todo o desenvolvimento dos artigos sequenciais.

Na parte1 estaremos estudando:
+ O que é malware;
+ Tipos de malware;
+ Detectando o malware na rede;

O que é malware?
Todo software que tem como objetivo causar algum dano, roubo, perda ou lentidão do sistema ou da rede de dados de uma empresa, órgão público, usuário comum ou qualquer um outro, pode ser considerado um “malware”, como podemos observar, não importa muito a sua forma de agir, porque pode ser um vírus, trojan horse, worms, root kits, scareware spyware. A forma ou técnica de analise depende apenas de seu objetivo.

Tipos de malware
Quando e estudo sobre analise de malware, é preciso e necessário, em um determinado momento, separa-los por características comuns para facilitar no momento de escolher o laboratório assim como as ferramentas usadas para cada tipo de malware, segue abaixo uma pequena categoria para nos ajudar a entender os tipos/características existentes, alguns já ossos velhos conhecidos:
Backdoor: Se instala e permite que o atacante tenha acesso para rodar programas no sistema local;
Botnet: Muito semelhante ao Backdoor, permite o atacante ter acesso a máquina local, podendo redirecionar comando em um alvo comum a outro Botnets;
Downloader: Esse é o mais comum entre usuário desavisados, esse código malicioso quando baixado e executado, ele baixa outros programas maliciosos que não precisa necessariamente da autorização do usuário para se instalarem e infectarem o sistema;
Information-Stealing Malware: O objetivo é roubar senhas de e-mail, banco, autenticação de rede, rede social, usando técnicas de sniffers, keyloggers e outros.
Launcher: Objetivo é carregar outros programas maliciosos para a memória, faz de forma não comum mesclando o uso de técnicas stealth para garantir o maior acesso ao sistema;
RootKit: O grande objetivo dele é esconder outros códigos maliciosos, com gatilhos que permitem apenas que o antivírus, por exemplo, apenas cheque os arquivos limpos e ocultando os maliciosos;
Scareware: O objetivo desse é forjar uma infecção ou um outro dano qualquer e dessa forma coagir a pessoa a comprar o software para se livrar da praga;
Spam-Sending: Usa o PC do usuário como um distribuidor de spam;
Worm ou vírus: programa malicioso que pode se reproduzir e infectar várias partes do sistema podendo até mesmo causar danos sérios;
De uma forma geral, os malwares podem pertencer a mais de uma categoria (ou ter mais de uma característica), podem ser classificados de acordo com seu comportamento/ação.

Detectando ação de malware na rede
Para se detectar a ação de malware em uma rede de dados, será preciso desenvolver uma base de assinaturas, que pode ser de 2 formas:

Assinaturas baseado em Host: Também conhecido como “indicador”, é usado pra detectar ações maliciosas em computadores. Os indicadores frequentemente identifica arquivos criados ou modificados por malware ou por mudanças realizadas pelo próprio sistema. Enquanto o antivírus olha o interior dos programas e arquivos em busca de uma assinatura maliciosa, o indicador observa apenas o comportamento do sistema o incomodo dessa técnica é que se tem mito falso positivo, já que o indicador não vai conseguir diferenciar a ação do sistema com a do malware;
Assinaturas baseado em Rede: Essa técnica tem como objetivo de monitorar o trafego de rede, e dessa forma checar detectar comportamento estranhos. Esse técnica ela é muito mais eficiente e oferece uma maior taxa de detecção e pouco falso positivo.

Por: Edilson Feitoza

Quem sou eu:
Graduado em Redes de Computadores e especialista em Gestão de Projetos em TI.
Atualmente trabalha como Administrador de Redes em uma empresa no ramo de papéis e cadernos e professor universitário nos cursos de Sistema de informação e Analise e Desenvolvimento de Software.

terça-feira, 11 de março de 2014

Você sabe como seu PC navega na Internet?

Muitas pessoas já me perguntaram sobre como funciona ou "qual é a magica?" do processo de acesso a um website, abaixo explicarei detalhadamente como seu computador faz para requisitar e receber uma pagina da Internet (através do uso de um sniffer de rede), mas antes segue um overview sobre alguns conceitos técnicos (caso queira pular os conceitos técnicos clique aqui!!!):

Endereço MAC (Media Access Control Address)-> Também conhecido como endereço físico, ele pertence a camada 2 (modelo OSI) e é composto por 6 conjuntos de 2 dígitos hexadecimais, ex: 52:54:00:12:35:02. Esse endereço é gravado na memoria ROM da interface de rede e o sistema operacional lê esse valor e o utiliza. Os primeiros 3 conjuntos identificam o fabricante e os 3 demais identificam a interface. O MAC é um endereço único, ou seja, não deveria existir dois endereços MAC iguais, mas sabemos que existem alguns casos onde o MAC é alterado, como por exemplo, num ataque do tipo MAC spoofing ou porque você simplesmente preferiu altera-lo (já peguei um caso que haviam duas interfaces do mesmo fabricante com MAC iguais e tive de alterar).

Endereço IP (Internet Protocol Address)-> Também conhecido como endereço lógico, ele está associado a camada 3 (modelo OSI) e no IPv4 é composto por 4 octetos, ou seja, tem 32bits. Em uma rede TCP/IP tem a função de identificar um ativo na rede e encaminhamento dos dados.

ARP (Address Resolution Protocol)-> Protocolo com a função de descobrir um endereço físico baseado num endereço logico, ou seja, descobrir o endereço MAC da interface de rede do IP que será destinado o pacote. Note que o nome do comando que interage com o ARP no sistema operacional é o justamente o nome do protocolo ("arp") em Windows ou unix-like.

TCP (Transmission Control Protocol)-> Protocolo pertencente a camada 4 (modelo OSI), é orientado a conexão, garante a entrega dos pacotes de forma ordenada, faz verificação de erros, etc.

UDP (User Datagram Protocol)-> Protocolo sem orientação a conexão (não usa o three-way handshake), não garante a entrega, ordem ou proteção contra duplicação, sendo responsabilidade da aplicação que usa o UDP fazer estes tratamentos. Para o leitor não achar este protocolo ruim, um bom exemplo de sua utilidade seria em uma transmissão de áudio (dados em tempo real), pois caso o pacote se perca no meio do caminho é melhor continuar reproduzindo o áudio do que tentar recuperar o pacote (por isso que geralmente bom ou ruim é relativo). E como o TCP, ele pertence a camada 4 do modelo OSI.

Three-way handshake-> O protocolo TCP usa o three-way handshake para realizar um processo de conexão entre um cliente (IP e porta de origem) e um servidor (IP e porta de destino).

DNS (Domain Name System)-> Quando o tipo do registro DNS for do tipo "A", sua função é descobrir o endereço IP a partir de um nome (ou seja, um domínio ou subdomínio, ex: www.debian.org). Sem o DNS lembrar-se dos endereços dos websites seria muito mais difícil, pois por exemplo, você precisaria digitar no navegador http://140.211.15.34 ao invés de http://www.debian.org, precisaria decorar um novo IP caso fosse alterado o IP deste website, não conseguiria utilizar o recurso de virtual hosts baseado em URLs de um servidor WEB (ex: apache) etc, ou seja, DNS facilita em muito a nossa vida.

Bom, chega de teoria e vamos analisar algumas informações coletadas em nível de rede...

No ambiente montado para este artigo foi utilizado wireshark para captura dos pacotes enviados/recebidos e uma maquina virtual com as seguintes informações:
IP Fixo: 10.0.2.15/24 com MAC 08:00:27:02:E9:C0
Default GW: 10.0.2.2 com MAC 52:54:00:12:35:02
DNS Server: 208.67.222.222 (OpenDNS)

Abaixo segue os pacotes enviados e recebidos pela maquina virtual (VM) quando solicitou via browser (mais conhecido como navegador) o acesso ao website www.debian.org:

Fig. 1 - Clique na imagem para maximiza-la.

Abaixo segue descrição por pacote, baseado na Fig. 1 acima:

Pacote 1-> Como o website encontra-se hospedado na Internet é necessário que a VM envie as requisições direcionadas a Internet para seu default gateway. Como essa é a primeira vez que a VM irá se comunicar com o gateway ela enviou um pacote do tipo "ARP Request" com origem na camada 2 08:00:27:02:E9:C0 e origem na camada 3 10.0.2.15 e destino na camada 2 FF:FF:FF:FF:FF:FF (Broadcast) e destino na camada 3 10.0.2.2 (veja as 2 origens e os 2 destinos na Fig.2 abaixo), perguntando para a rede interna quem tem o endereço IP 10.0.2.2 (Default GW), ou seja, todos os ativos presentes nessa rede (10.0.2.0/24) receberam esse pacote pelo fato do mesmo ser do tipo broadcast.
Fig. 2 - Mais detalhes do pacote 1.

Pacote 2-> Somente o ativo de rede que detem o IP 10.0.2.2 respondeu para o endereço MAC da VM (através de um "ARP Reply") qual é o endereço MAC da interface configurada com o IP 10.0.2.2. Nesse momento a VM coloca o IP e MAC do Default GW em seu cache de tabela ARP e a mesma já pode enviar as requisições de acesso para a Internet, pois já conhece o MAC do gateway. Nesse caso o pacote tem como origem na camada 2 52:54:00:12:35:02 e na camada 3 10.0.2.2 e destino na camada 2 08:00:27:02:E9:C0 e na camada 3 10.0.2.15 (veja Fig.3 abaixo), o que faz do mesmo um pacote do tipo unicast.
Fig. 3 - Mais detalhes do pacote 2.

Pacote 3-> Como a VM não acessou esse website ainda ela não conhece o endereço IP do mesmo (ou seja, não está em seu cache DNS local), sendo assim ela envia um pacote do tipo "DNS query" para o endereço do DNS Sever 208.67.222.222 perguntando qual é o endereço IP (registro do tipo A) do website www.debian.org. Na Fig. 4 abaixo fica claro como que um pacote é encaminhado (roteado) para a Internet pelo gateway, como podemos observar, a origem na camada 2 e 3 representa a VM, e o pacote é analisado pelo Default GW porque o destino informado na camada 2 é o endereço MAC da interface de rede do Default GW e o mesmo é roteado para a Internet porque o destino na camada 3 é o IP do DNS Server da OpenDNS (esse é um dos motivos de IP ter Internet no nome e o gateway identificar que o pacote deve ser roteado e não tratado localmente, pois para ser tratado localmente o IP de destino deveria ser 10.0.2.2).
Fig. 4 - Mais detalhes do pacote 3.

Pacote 4-> O DNS Server 208.67.222.222 responde a solicitação feita pela VM com um "DNS response" informando que os endereços IP para o nome www.debian.org são: 140.211.15.34 e 128.31.0.51 (a resposta teve 2 IPs devido a utilização de round-robin DNS para o registro www.debian.org, suas vantagens básicas seriam o balanceamento de carga e a alta disponibilidade). 

Pacote 5-> A VM então envia um pacote SYN com destino ao IP 140.211.15.34 e porta 80 TCP para iniciar o three-way handshake.

Pacote 6-> O webserver em execução no IP 140.211.15.34 e porta 80 TCP responde com um SYN+ACK para continuar o processo do three-way handshake.

Pacote 7-> Completando o three-way handshake (processo de conexão) a VM envia um pacote ACK com destino ao IP 140.211.15.34 e porta 80 TCP. A partir deste momento a VM e o webserver em execução no IP 140.211.15.34 podem trocar informações.

Pacote 8-> Em seguida a VM envia um pacote contendo a solicitação (GET / HTTP/1.1) feita pelo browser para o IP 140.211.15.34 na porta 80 TCP, ou seja, finalmente faz o pedido de visualização do conteúdo do diretório raiz (informado por exemplo, pelo parâmetro DocumentRoot do webserver Apache) do website.

Pacote 9 em diante-> É apresentado no browser a pagina central (geralmente o arquivo padrão index.html, mas nesse caso foi index.en.html, pois na solicitação enviada não continha nome de arquivo, quando isso acontece o webserver mostra o conteúdo do arquivo padrão presente no diretório, informado por exemplo, pelo parâmetro DirectoryIndex do Apache) do website www.debian.org com suas respectivas informações, imagens, links para outros setores do website, etc.

Enjoy!...

NOTA: Um leitor atento provavelmente percebeu que este artigo apenas descreveu um exemplo prático do uso e da relação entre IP e MAC numa rede TCP/IP, do protocolo ARP, serviço DNS, roteamento e o three-way handshake.

Para maiores detalhes veja os links abaixo:

quinta-feira, 6 de março de 2014

Descobrindo o fabricante da sua interface de rede pelo MAC

Você pode consultar qual o fabricante (ou empresa subsidiária) da sua interface de rede informando os 3 primeiros conjuntos (sem os ":" ou com os "-") do endereço MAC da mesma no seguinte website:

http://standards.ieee.org/develop/regauth/oui/public.html

Segue abaixo um exemplo de uma consulta onde podemos ver que o fabricante é a Dell:



Enjoy!...

quarta-feira, 10 de julho de 2013

Instalando VirtualBox no Kali Linux

Adicione as seguintes linhas no arquivo /etc/apt/sources.list:

deb http://http.kali.org kali main contrib non-free
deb http://download.virtualbox.org/virtualbox/debian wheezy contrib non-free

Execute os seguintes comandos:
# wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -

# apt-get update

# apt-get install virtualbox-4.2

Is Nuts!!!

quarta-feira, 10 de abril de 2013

Problema após atualização do Windows no dia 10/04/13

No pacote de atualizações do Windows do dia 09/04/13 foi disponibilizado o KB 2823324, o mesmo gera problema na inicialização do sistema operacional Windows 7 32bits.


Referencias e solução de contorno:
http://social.technet.microsoft.com/wiki/pt-br/contents/articles/16843.windows-7-problemas-na-inicializacao-apos-update-kb-2823324.aspx
http://social.technet.microsoft.com/Forums/pt-BR/winvistapt/thread/a8a900f5-a5b2-45bb-8ac5-b1b3afb22ad7

quarta-feira, 13 de março de 2013

Lançamento Kali Linux

Hoje a Offensive Security anunciou o lançamento da distribuição Kali Linux. Ela é uma distro voltada para pentest, e será sucessora do tão famoso BackTrack. A Kali é baseada em Debian e promete ser mais madura, segura e mais preparada para lado coorporativo.

Documentação:

Download:

Agora é fazer download e iniciar as validações... :)

Is Nuts!!!

quinta-feira, 24 de maio de 2012

Procurando por Hosts Zombies

NOTA: Lembre-se que você não deve realizar um scan em qualquer computador ou rede remota sem autorização. Essa pequena dica é destinada a fins acadêmicos.

Quando você pretende utilizar a técnica Idle Scan para fazer analise de um host remoto, você precisa de um host zombie. Certo?

Siga essa pequena dica para encontrar hosts zombies para utilizar no seu Idle Scan.

Abra o metasploit com o comando msfconsole.

Utilize o modulo ipidseq com o seguinte comando:

use auxiliary/scanner/ip/ipidseq

Forneça um range para analise de possíveis hosts zombie configurando o parametro RHOSTS, ex:

set RHOSTS 192.168.254.0/29
Foi utilizado CIDR 29 para procura em somente 8 IPs.

Execute o comando run para inicio da procura por hosts zombie, conforme exeplo abaixo:


Você só poderá utilizar os Hosts que tiver sequence class como Incremental!, caso seja All zeros, tente aumentar faixa de IP para tentar outros hosts.

Enjoy!
Is Nuts!!!

sexta-feira, 4 de maio de 2012

XSS - Cross Site Scripting


A Clavis tem iniciativa de desenvolver mensalmente webminar sobre segurança da informação.

No mês de abril o assunto foi XSS (Cross Site Scripting), aonde foi mostrado três tipos de ataques, que no caso foram: Stored, Reflected e DOM Based.


Links sobre o assunto:

http://cwe.mitre.org/data/definitions/79.html

quinta-feira, 2 de abril de 2009

Curso CISCO - IT Essentials gratis!!!

O CIEE em parceria com a Cisco Systems, Telecon e Ainet está abrindo o processo seletivo para turmas do curso Cisco IT Essentials, com duração de 80 horas - módulo 1 do programa Networking Academy. O curso abordará os seguintes assuntos:

Conceitos Básicos de Tecnologia da Informação: Hardware e Software;
Introdução ao PC – Computador Pessoal;
Utilização de Ferramentas e Procedimentos Seguros de Laboratórios;
Montagem de Computadores passo a passo;
Noções Básicas sobre Solução de Problemas e Manutenção Preventiva;
Fundamentos sobre Sistemas Operacionais;
Fundamentos sobre Laptops e Dispositivos Portáteis;
Fundamentos sobre Impressoras e Scanners;
Fundamentos sobre a Rede;
Fundamentos sobre a Segurança;
Habilidades de Comunicação;
Computadores Pessoais Avançados;
Sistemas Operacionais Avançados;
Laptops e Dispositivos Portáteis Avançados;
Impressoras e Scanners Avançados;
Redes Avançadas.

Para se candidatar basta acessar o site do CIEE, efetuar o cadastro no sistema e após isto ir na área de estudantes/cursos e oficinas e se candidatar neste curso.

Mas para ser aceito neste curso é necessário passar em 2 avaliações que são feitas online, no momento da inscrição no curso.

site CIEE:
www.ciee.org.br
Cursos oferecidos pelo CIEE:
www.ciee.org.br/portal/estudantes/parceiros/index.asp

sábado, 28 de março de 2009

Voucher Microsoft Gratis!!!

Tudo bom pessoal, é isso mesmo que voces estão lendo, a Microsoft esta disponibilizando vouchers gratuitos para suas provas!

Quem me informou sobre isso foi um amigo da faculdade chamado Leonardo Superti que é MSP da Microsoft...

Abaixo envio o email que ele me passou e autorizou a postar neste blog:

Galera, notícia boa pra quem tem interesse em tirar certificação Microsoft da categoria “Technology Specialist”.

A Microsoft esta oferecendo GRATUITAMENTE um voucher para os alunos que tem acesso ao DreamSpark.

Ainda não consegui colocar nossa faculdade na lista das instituições cadastradas do Dream Spark (site onde alunos dessas instituições de ensino podem baixar softwares Microsoft GRATUITAMENTE).

Mas além da faculdade, existem várias outras instituições, então, muitos de vocês conseguirão acesso à ele, eu por exemplo, consegui meu acesso usando a carteirinha de estudante da ISIC, aquela que quase todos os bancos dão para contas universitárias...

Link do Dream Spark:
https://www.dreamspark.com/Products/product.aspx?productid=24
Certificações disponíveis (TS):
http://www.microsoft.com/learning/mcp/mcts/default.mspx
Softwares disponíveis para download no Dream Spark: https://www.dreamspark.com/Products/ProductList.aspx

Email do Leonardo Superti: superti(at)studentpartners(dot)com(dot)br

terça-feira, 24 de março de 2009

Denial of Service no squid3 - DSA-1732-1

Foi descoberto uma vulnerabilidade no squid3 que foi publicada no dia 03/03/09, em que o servidor Proxy/Cache não consegue lidar com algumas solicitações HTTP.

Um ataque com êxito nesta vulnerabilidade permite que atacantes remotos façam com que o serviço do squid caia, ou negue o acesso de usuários legítimos.

Versões afetadas:

Squid Web Proxy Cache 3.1 4
Squid Web Proxy Cache 3.0
Squid Web Proxy Cache 3.1
Squid Web Proxy Cache 3.0.STABLE7
Squid Web Proxy Cache 3.0.STABLE6
Squid Web Proxy Cache 3.0.STABLE5
Squid Web Proxy Cache 3.0.STABLE4
Squid Web Proxy Cache 3.0.STABLE3
Squid Web Proxy Cache 3.0.STABLE2
Squid Web Proxy Cache 3.0.STABLE12
Squid Web Proxy Cache 3.0.STABLE1
Squid Web Proxy Cache 2.7.STABLE5
Squid Web Proxy Cache 2.7

Para se prevenir desta vulnerabilidade caso voce use o Debian ou um de seus derivados, é só atualizar o seu squid, com o apt-get ou aptitude.

Fonte:
http://www.debian.org/security/2009/dsa-1732
http://www.securityfocus.com/bid/33604/info

quinta-feira, 19 de março de 2009

Repositorio de pacotes .deb local no Debian.

Um repositório local de pacotes pode ser util para aqueles que não tem banda-larga em casa, ou que o servidor não tem acesso a internet, pois voce pode baixar os pacotes em uma outra maquina e transferi-los para a maquina que tera o repositório local.

Mas lembre-se de baixar todas as dependências do pacote que voce deseja instalar!!!

Primeiramente crie uma pasta. Por exemplo:

# mkdir /root/apt

Depois coloque todos os arquivos .deb no diretório criado (/root/apt). Entre no diretório /root e digite:

# dpkg-scanpackages apt /dev/null | gzip > apt/Packages.gz

Depois é só editar o arquivo /etc/apt/sources.list e colocar a seguinte linha, de preferência no final do arquivo:

deb file:/root apt/

Agora é só atualizar a base de dados de pacotes do Debian com o seguinte comando:

# apt-get update

Pronto, agora você tem um repositório local de pacotes .deb!

segunda-feira, 16 de março de 2009

Linux Integrado ao AD Windows Server 2003 - parte5

Conclusão

Espero não ter esquecido de mencionar algo crucial para o artigo, mas se fiz isto, espero contar com o pessoal para que informem para podermos solucionar possíveis inconvenientes.

Uma última informação referente à parte de implementação do artigo: se for necessário mudar permissões de arquivos ou pastas, você poderá fazê-lo usando a linha de comando no GNU/Linux ou por alguma máquina Windows 2000 ou posterior que seja membro do domínio. Mas lembre-se de respeitar o antigo e restrito padrão de permissões UNIX, digo isto pois não é possível, por exemplo, especificar mais do que um grupo para um arquivo ou pasta, que acredito que isto possa ser solucionado implantando ACL no GNU/Linux, que não é o foco deste artigo, mas pode ser o de um futuro.

Não acredito que um ambiente de rede só com GNU/Linux ou só com produtos Microsoft seja melhor ou pior, acredito que uma rede heterogênea seja a melhor solução para a maioria das empresas, pois assim podemos desfrutar do melhor que o software livre ou proprietário pode nos oferecer. Pois cada caso é um caso.

Enjoy!

By Loammy P. Lima
LPIC-1 (exames: LPI-101 e LPI-102)
MCP (exame: 70-290)

PS: Artigo publicado por mim na comunidade viva o linux.

Linux Integrado ao AD Windows Server 2003 - parte4

Teste de integração com AD

Para testar e provar a integração podemos criar um grupo no AD pelo GNU/Linux, ex.:

# net group add grupo-teste -U administrator

Este novo grupo criado (grupo-teste) estará localizado no contêiner "Users" do domínio do Windows Server 2003.

Agora veremos o objetivo que eu gostaria de alcançar quando pensei nesta integração, que era poder usar o BD de usuários e grupos do AD para controlar o acesso ao servidor de arquivos Samba.

Podemos prosseguir criando uma pasta compartilhada no GNU/Linux para compartilhá-la pelo Samba, ex.:

# mkdir /home/pasta1
# chmod 2770 /home/pasta1
# chown NATS+administrator.NATS+grupo-teste /home/pasta1

Adicione as linhas abaixo no /etc/samba/smb.conf:

[pasta1]
path = /home/pasta1
writable = yes
browseable = yes
Agora reinicie o Samba e o Winbind.

Agora somente o usuário do domínio "administrator" e os usuários que pertencerem ao grupo do domínio "grupo-teste" terão acesso total à pasta compartilhada pasta1.

Para confirmar, logue-se na máquina3 (WinXP) com qualquer usuário do domínio nats.com, tente acessar a pasta1 compartilhada em membersvr, você não terá acesso a ela!

Para obter acesso a pasta1, inclua seu usuário (como por exemplo user-nat) ao "grupo-teste" do AD, exemplo:

# net rpc group ADDMEM grupo-teste user-nat -S dc-jund -U administrator

Faça logoff na máquina3 (WinXP) e faça logon novamente utilizando o user-nat (pois as associações de grupo só são atualizadas no momento de logon).

Agora provavelmente você poderá ler e criar arquivos no compartilhamento pasta1 no servidor de arquivos Samba.

NOTA: Caso isso não ocorra tente reiniciar novamente o Samba e o Winbind na máquina1 (membersvr).

Link para parte-5 deste artigo!

Linux Integrado ao AD Windows Server 2003 - parte3

Samba + Winbind

Agora precisamos instalar os pacotes Samba e Winbind.

Após instalá-los, adicione ou modifique as linhas da seção [global] do arquivo de configuração do Samba /etc/samba/smb.conf:

#Nome Netbios do domínio do AD.
workgroup = NATS
security = ads
encrypt passwords = true
#Adicione as linhas abaixo para a máq. membersvr não competir com a máq. dc-jund como DC da rede.
os level = 18
domain master = no
local master = no
preferred master = no
#As linhas abaixo são as mais importantes para o propósito do artigo, lembre-se de respeitar as caixas altas e baixas das fontes.
realm = NATS.COM
password server = dc-jund.nats.com
clientschannel = no
idmap uid = 15000-30000
idmap gid = 15000-30000
winbind separator = +
winbind enum users = yes
winbind enum groups = yes
Agora adicione "winbind" no fim das linhas do passwd e group no arquivo /etc/nsswitch.conf, para que fique desta forma:

passwd: compact winbind
group: compact winbind
Reinicie o Samba e o Winbind.

Adicione a máquina membersvr no domínio com o seguinte comando:

# net ads join -U administrator

O parâmetro "-U administrator" acima indica um usuário que tem privilégios no domínio para realizar a tarefa de adicionar uma máquina no domínio, isto indica que você pode especificar um outro usuário.

Reinicie o Samba e o Winbind novamente!

Agora teste a conexão da máquina membersvr com o AD com os comandos:

# wbinfo -t

Tem que apresentar a mensagem:

"Checking the trust secret via RPC calls succeeded"

Se aparecer outra mensagem, revise as configurações e reinicie o Samba e o Winbind.

O comando:

# wbinfo -u

ou com parâmetro -g, mostrará todos os usuários ou grupos respectivamente, que conterá uma lista de usuários ou grupos locais juntamente com os do domínio nats.com.

Lembra da linha "winbind separator = +" do smb.conf? Nos comandos acima vemos a sua utilidade, pois: MEMBERSVR+root -> Diz que o usuário root pertence a máquina local (membersvr); NATS+administrator -> Diz que o usuário administrator pertence ao domínio nats.com, ou seja, ao AD. Mas no GNU/Linux é mostrado o nome netbios (NATS), por isso não é apresentado o nome do domino (nats.com).
É possível visualizar também a integração dos usuários e grupos com os seguintes comandos:

# getent passwd
# getent group

Eles mostrarão os usuários ou grupos locais e do AD, respectivamente, com seus respectivos UID e GID que iniciam do 15000, conforme as linhas do smb.conf:

idmap uid = 15000-30000
idmap gid = 15000-30000

NOTA: Se você tiver mais que 15000 usuários e grupos, aumente a faixa especificada acima.

Se você já chegou até aqui é porque a integração entre o GNU/Linux e o Active Directory já esta pronta!

Link para parte-4 deste artigo!

Linux Integrado ao AD Windows Server 2003 - parte2

Configurações iniciais

Logue-se na máquina2 (Windows Server 2003) e adicione um registro do tipo "A" para a máquina membersvr no DNS, que após adicionado ficará mais ou menos assim:

membersvr Host(A) 192.168.10.254

Logue-se na máquina1(Debian) e efetue as seguintes configurações:

Edite /etc/hosts e adicione as linhas abaixo:

192.168.10.254 membersvr.nats.com membersvr
192.168.10.250 dc-jund.nats.com dc-jund
Agora edite o /etc/resolv.conf e adicione o IP do servidor DNS do Windows Server 2003 (se tiver mais que um, faça com que este seja o primário, colocando-o em primeiro na lista):

nameserver 192.168.10.250
Instale os seguintes pacotes: krb5-user e krb5-config

Configure o /etc/krb5.config, mas por medidas de segurança eu costumo fazer uma cópia dos arquivos originais de configuração que vem com os pacotes antes de alterá-los, e costumo renomeá-los com por exemplo /etc/krb5.config.orig.

Então o arquivo /etc/krb5.config deve ficar exatamente assim:

[libdefaults]
default_realm = NATS.COM
dns_lookup_realm = false
dns_lookup_kdc = false

[realms]
NATS.COM = {
kdc = dc-jund.nats.com
default_domain = NATS.COM
}

[domain_realm]
.nats.com = NATS.COM
NOTA: Lembre-se de respeitar quando as letras estão em maiúsculas ou minúsculas (caixa alta ou baixa).

Agora testaremos a conexão com o Kerberos localizado no DC do domínio nats.com (Windows Server 2003) com o seguinte comando:

# kinit user-teste@NATS.COM

O usuário "user-teste" deve estar criado no AD do Windows Server 2003, se você não tiver este usuário pode criá-lo antes ou especificar um usuário que esteja criado na BD do AD.

Após executar o comando acima, digite a senha (lembrando que o user não pode ter senha em branco).

Se for digitado o comando especificando o domínio com letras minúsculas, como por exemplo, user-teste@nats.com, será apresentado o seguinte erro:

Kinit(v5): Cannot find kdc for requested realm while getting initial credentials.

Mas se aparecer o erro:

Kinit(v5): clock skew too great while getting initial credentials.

É provável que a hora entre as duas máquinas (membersvr e dc-jund) está muito dessincronizada. Uma forma de resolver isto é instalar o pacote ntpdate e sincronizar a hora do membersvr baseado na hora do dc-jund, ex.:

# ntpdate dc-jund.nats.com

Se o comando "kinit user-teste@NATS.COM" não apresentar nenhum erro, podemos continuar...

Execute o comando "klist" (sem parâmetros) para confirmar o sucesso do comando "kinit" mencionado acima:

# klist

Link para parte-3 deste artigo!
 
BlogBlogs.Com.Br