Arquivo de Fevereiro, 2012

Robots.txt forma segura

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)

,

Deixe um Comentário

A culpa é do sistema?

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

, ,

Deixe um Comentário

PHP IDS

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

, ,

1 Comentário

Jogos Security

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

Deixe um Comentário

Criptografia no PHP usando Sha512, Whirlpool e Salsa20

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

, , ,

2 Comentários

Seguir

Get every new post delivered to your Inbox.

Junte-se a 251 outros seguidores