Arquivo de Fevereiro, 2012
Robots.txt forma segura
Publicado por Aldo Silva em Segurança de TI em 28/02/2012
Robô (em informática / WEB) é uma ferramenta automática que fica percorrendo sites e coletando informações, verificando se houveram alterações ou validando suas informações.
A princípio os robôs (robots) podem acessar qualquer página/conteúdo/imagem do seu site sem que você tenha que dar permissão para tal. Mas você pode criar um arquivo chamado robots.txt na raíz do seu site e, dentro dele, escrever algumas regras que te ajudarão a controlar o que os robôs fazem no site.

Imagine o robots.txt como uma lista de convidados para uma festa… Se não tá na lista não entra. A única diferenças é que com o robots.txt não há penetras. Você pode bloquear tanto o site inteiro como documentos e arquivos específicos, facilitando assim o controle de “quem entra” no seu site.
Criando o seu robots.txt
Suponhamos que você tenha um arquivo chamado confidencial.html na raiz do site e você não quer que os indexadores dos sistemas de buscas e nenhum outro tipo de robô tenha acesso a esse arquivo… É só colocar isso aqui no seu robots.txt:
1 User-agent: *
2 Disallow: /confidencial.html
Isso fará com que nenhum robot consiga acessar o arquivo especificado… Mas você também quer bloquear uma pasta do site para que nenhum robozinho possa entrar e ver algum arquivo dentro dela:
1 User-agent: *
2 Disallow: /confidencial.html
3 Disallow: /minhapasta/
Comentários no robots.txt
Se você é organizada e quer colocar comentários no seu robots é só usar o caractere “tralha” (#) para isso, dessa forma:
1 # A regra servirá para todos os tipos de robôs
2 User-agent: *
3 # Meu arquivo de senhas ultra-secretas que ninguém pode saber
4 Disallow: /confidencial.html
5 # Bloqueando a minha pasta cheia de fotos ;X
6 Disallow: /minhapasta/
Bloqueando um site inteiro
Para bloquear o acesso completo de todos os robôs ao seu site? Não precisa tirar ele do ar, e só fazer isso:
1 # Adios~
2 User-agent: *
3 Disallow: /
Criando a lista VIP da festa
Tem gente que prefere bloquear todo mundo e permitir só alguns, e com o robots.txt não é diferente:
1 # Permitindo apenas dois arquivos e uma pasta:
2 User-agent: *
3 Allow: /meu_arquivo.html
4 Allow: /pasta/contato.html
5 Allow: /imagens/
6 Disallow: /
Isso fará com que apenas os dois arquivos especificados e a pasta sejam acessíveis, o restante será bloqueado.Ainda existem outras regras que limitam o acesso dos robôs a um certo horário do dia ou a uma quantidade limite de visitas por dia ou por arquivo
Artigo originalmente publicado em 10 de junho de 2009 por Thiago Belem: Usando o Robots.txt de forma correta
leia também : Passo a Passo para um Teste de Penetração (PenTest)
A culpa é do sistema?
Publicado por Aldo Silva em ITIL em 27/02/2012
Utilizando o Gerenciamento de Mudanças para lidar com demandas de sistemas
Os sistemas de informação apoiam grande parte dos processos de negócio das organizações e portanto são os maiores alvos quando se trata de requisições de mudança para o setor de tecnologia. Se você trabalha com Tecnologia da Informação, com certeza irá se identificar com um ou mais desafios listados a seguir, quando se trata de cuidar da manutenção de sistemas:
- Todos solicitam mudar funcionalidades, porque consideram que algo está errado, está inadequado ou simplesmente a tela “não é amigável e induz a pessoa ao erro”;
- Uma requisição de mudança para o sistema é atendida e após implementá-la, um cenário indesejado surge como impacto da modificação;
- Todos alegam que a sua requisição é “mais urgente”;
- Você chega a um acordo com o solicitante de que aquele pedido é inviável, seis meses depois ele solicita novamente como se nada tivesse acontecido;
- Todos sempre reclamam da demora para implementar novas funcionalidades e relatórios;
- Quando algo da errado, a culpa é atribuída ao sistema: desde inconsistência de informação até mesmo acidentes de trabalho!
Situações como estas ocupam um percentual grande das questões críticas para um gestor de TI, quando se trata de organizar o próprio trabalho, definir prioridades e manter os usuários dos serviços informados. A seguir, disponibilizo algumas dicas de como utilizar o processo de Gerenciamento de Mudanças da ITIL através de atividades simples como registro, aprovação, coordenação de implantação e fechamento e mudanças.
Registro
Evite atender requisições de mudanças verbalmente e concentre-se em registrar todas as necessidades (em potencial). O trabalho inicial é árduo, mas vale a pena e a boa notícia é que diminui com o tempo. Construa um modelo de RDM (Requisição de Mudança) contendo nome, número, solicitante, requisitos, impacto e tudo mais o que for necessário para a mudança. Entreviste os coordenadores responsáveis por cada setor da organização até que tenha certeza de que tudo foi documentado.
Aprovação
Convide os possíveis envolvidos com a mudança para reuniões de Comitê de Controle de Mudanças. Divida com os membros do comitê a responsabilidade de implementá-las ou reprová-las, ou mesmo avaliar suas prioridades e impactos negativos. Demonstre o balanço entre a necessidade e o custo da mudança e questione se há alguma forma de realizar a função desejada sem a necessidade de alterar o sistema.
Coordenação de Implantação e fechamento
Reporte o status de andamento das solicitações de mudança e publique um calendário de mudanças. Crie um relatório mensal para divulgar as mudnaças implementadas / reprovadas / em andamento. Mantenha, assim, as informações alinhadas com todos envolvidos.
Artigo do Fernando Palma do Portal GSTI .O Portal GSTI é um espaço destinado ao compartilhamento de informações, experiências e conteúdo com foco em Gestão de Serviços de TI (GSTI) e Governança de TI, vale a visita
leia também : Implementação de uma Central de Serviços
PHP IDS
Publicado por Aldo Silva em Linux, Segurança de TI em 27/02/2012
PHP IDS, que é uma classe/sistema para a segurança do site. A sua função se resume em vasculhar todas as possíveis entradas de informações do site ($_POST, $_GET, $_COOKIE e etc.) em busca de algo que possa ser uma tentativa de ataque e/ou invasão. Ele foi criado para a proteção de sites que usam e abusam das “funcionalidades” da WEB 2.0.
Se alguém inserir, por exemplo, um código SQL para tentar um SQL Injection no seu site, o PHP IDS vai pegar, vai avisar (ou não) sobre a tentativa de ataque, vai evitar o estrago e ainda te avisa (ou não) por e-mail. No total ele te protege dos seguintes tipos de ataque: XSS, SQL Injection, header injection, directory traversal, RFE/LFI, DoS e LDAP.

Para instalação :
1 – Faça o download dele no site oficial.
2 – Descompacte a pasta ../libs/IDS na raiz (root) no site (mantendo a pasta IDS).
3 – Insira o seguinte bloco de código no começo do site:
01 // Inclui o arquivo do PHPIDS
02 require_once ‘IDS/Init.php’;
03 $request = array(
04 ’REQUEST’ => $_REQUEST,
05 ’GET’ => $_GET,
06 ’POST’ => $_POST,
07 ’COOKIE’ => $_COOKIE
08 );
09 // Inicia o PHPIDS
10 $init = IDS_Init::init(‘IDS/Config/Config.ini’);
11 $ids = new IDS_Monitor($request, $init);
12 $result = $ids->run();
13
14 if (!$result->isEmpty()) {
15 // Exibe resultados caso sejam encontrados
16 echo $result;
17 }
Com isso ele já vai passar a funcionar… Vale lembrar que esse exemplo apenas avisa (mostra) que algo foi encontrado e bloqueia… Você vai precisar adaptá-lo as suas necessidades. Para configurar suas funções e usá-lo da melhor forma, é recomendado que você dê uma olhada no arquivo Config.ini e/ou veja a página de FAQs.
Artigo originalmente publicado em 1 de junho de 2009 por Thiago Belem: Instalando o PHPIDS no seu site
leia também : Scanner KisMAC – WI-FI
Jogos Security
Publicado por Aldo Silva em Segurança de TI em 24/02/2012
Quer se divertir e aprender sobre Segurança da Informação e Perícia Computacional ao mesmo tempo? Você está no lugar certo! A DATA SECURITY apresenta diversos jogos para que você possa se entreter e conhecer mais sobre essas duas áreas fascinantes.
Alguns jogos contêm termos relacionados à Segurança da Informação e Perícia Computacional adaptados pela DATA SECURITY, visando facilitar o aprendizado. Portanto, cuidado ao usar estes mesmos termos em outras áreas do conhecimento, pois elas podem ter significados diferentes!
http://www.datasecurity.com.br/index.php/empresa/jogos-data-security
Criptografia no PHP usando Sha512, Whirlpool e Salsa20
Publicado por Aldo Silva em Segurança de TI em 24/02/2012
Todos os três são criptografias de alto nível que geram strings de 128 caracteres com chances absurdamente remotas de colisão. Todos os três são criptografias de mão única, ou seja, a única coisa que pode fazer com a string depois de criptografada é comparar com outra string para ver as duas são iguais… Não há como “descriptografar” a string gerada por esses algoritmos.
Para usar esses métodos de encriptação precisará usar a função hash( ) do PHP.
SHA-512
O SHA-512 é a versão melhorada do SHA-265, que por sua vez é uma versão muito melhor do SHA-1. Para encriptar uma string usando SHA-512, no PHP, pode fazer assim:
1 <?php
2
3 $string = ‘O rato reu a ropa do rei de Roma’;
4 $codificada = hash(‘sha512′, $string);
5
6 echo “Resultado da codificação usando sha512: ” . $codificada;
7
8 ?>
Ao executar o código acima verá uma string de 128 caracteres, é essa string que deve salvar no banco de dados para manter a senha realmente segura. O resultado dessa encriptação com SHA-512 é algo assim (quebrei em três linhas para ficar “legível):
3b1efb1934a56460904a2ae4782490d06057985a1524
5bb887ed4cda89e82cfa3c4ab2589686cb1828228c8e
6d252aa5272cbf1b1ec44978e302d5f7b7cd4641
Whirlpool
O Whirlpool é um pouco mais lento que o SHA-512 e, consequentemente, mais “entrópico”, ou seja: mais seguro. Para encriptar uma string usando Whirlpool, no PHP, pode ser feito:
1 <?php
2
3 $string = ‘O rato reu a ropa do rei de Roma’;
4 $codificada = hash(‘whirlpool’, $string);
5
6 echo “Resultado da codificação usando whirlpool: ” . $codificada;
7
8 ?>
O resultado desse Whirlpool será algo assim:
f13697ecb3e10789449ed839f224376b633eadbe3739
c07c7843bf91a86f4374d3697924e3c396cfeb777b56
d38700c41e032c21c4fce52d5f59024969536c74
Salsa20
E por fim, mas tão poderoso quanto, o Salsa20 é outro algoritmo de encriptação que irá gerar uma string de 128 caracteres. O Salsa20 foi criado para encriptação de stremings/transmissões, mas pode ser usado com strings simples também.
Para encriptar uma string usando Salsa20, no PHP, pode fazer assim:
1 <?php
2
3 $string = ‘O rato reu a ropa do rei de Roma’;
4 $codificada = hash(‘salsa20′, $string);
5
6 echo “Resultado da codificação usando salsa20: ” . $codificada;
7
8 ?>
O resultado desse Salsa20 será algo assim:
56a296fad140971d0fcd1577bd0c66348e69a835e9f4
56857a0e9f43e8fe540ad4488099875daaf8741df89f9
6abb8c6cd08ed842db33b2ea356737fc2cb0aef
Salvando esses dados no banco de dados
Para salvar esse tipo de dado [criptografado] você pode usar um campo CHAR(128) pois sabemos que sempre teremos 128 caracteres ali.
Encontrando registros criptografados no banco de dados
Suponhamos que você queira encontrar um usuário no seu banco de dados comparando a senha digitada (no formulário de login) com a senha armazenada utilizando o método Whirlpool. O código PHP para montar a consulta SQL seria mais ou menos assim:
01 <?php
02
03 $usuario = ‘thiago’; // Nome do usuario (digitado pelo usuario)
04 $senha = ’12345′; // Senha (digitada pelo usuario)
05
06 // Encripta a senha utilizando Whirlpool
07 $whirlpool = hash(‘whirlpool’, $senha);
08
09 $sql = “SELECT * FROM `usuarios` WHERE `usuario` = ‘{$usuario}’ AND BINARY `senha` = ‘{$whirlpool}’”;
10
11 ?>
Artigo originalmente publicado em 24 de setembro de 2010 por Thiago Belem: Criptografia no PHP usando Sha512, Whirlpool e Salsa20


