Hackers desligaram um Jeep remotamente

Dois hackers desenvolveram uma ferramenta capaz de sequestrar um Jeep pela internet. O escritor Sênior da WIRED Andy Greenberg deu uma volta no carro em uma alto pista, enquanto os dois hackers atacaram o carro a quilômetros de distância.

Teste de invasão vs Varredura de Vulnerabilidade

pen-test-vs-vul-scan

O que é Varredura de Vulnerabilidade?

Também conhecidas como avaliações de vulnerabilidade, as varreduras de vulnerabilidade avaliam computadores, sistemas e redes buscando por falhas de segurança, também conhecidos como vulnerabilidades. Essas varreduras são tipicamente automatizadas e dão uma visão inicial daquilo o que poderia ser explorado.

O que é teste de invasão?

Um teste de invasão simula um hacker tentando invadir um sistema através da exploração de vulnerabilidades que possam existir. Analistas atuais, muitas vezes chamados de hackers éticos, tentam provar que vulnerabilidades podem ser exploradas, usando métodos como quebra de senhas, buffer overflow, injeção de SQL dentro outros. Com isso eles tentam comprometer e extrair dados do sistema em questão.

Como hackear um carro

USB Killer uma ameaça de 50 dolares

A 15 anos atrás eu fiz um comentário sobre a possibilidade de alguém criar um pendrive que fritaria seu computador, me chamaram de louco e deram risadas. Hoje isso é uma realidade. O vídeo mostra aparelhos como o novo MacBook Pro, Google Pixel, Galaxy Note 7, iPad Pro, iPhone 2G, GoPro 5 sendo testados.

EX-NSA mostra os perigos de se hackear um carro

Ex-NSA Charles Miller faz uma demonstração para Ben Makuch sobre os perigos de se hackear um carro.

Educa mais dispensa o uso de senha para login

Para quem já utiliza o educa mais, sabe que sempre foi necessário fornecer o CPF e senha na hora de fazer o login, pois bem, hoje pela manhã notei que agora para fazer o login você só precisa do CPF, por algum motivo não é necessário mais informar a senha 🙂

Não sei se a alteração é temporária e muito menos o que eles pretendem alcançar com isso.

Se seu celular for hackeado você nunca vai saber by Edward Snowden

Vulnerabilidade

Vulnerabilidade

Vulnerabilidade

Em segurança de computadores, uma vulnerabilidade é uma fraqueza que permite que um atacante reduza a garantia da informação de um sistema. Vulnerabilidade é a interseção de três elementos: uma suscetibilidade ou falha do sistema, acesso do atacante à falha e a capacidade do atacante de explorar a falha. Para explorar uma vulnerabilidade, uma atacante deve ter pelo menos uma ferramenta ou técnica aplicável que possa conectar a uma fraqueza do sistema. Desta forma, vulnerabilidade também é conhecida como superfície de ataque.

Vulnerabilidade é definida como uma condição que, quando explorada por um atacante, pode resultar em uma violação de segurança. Exemplos de vulnerabilidades são falhas no projeto, na implementação ou na configuração de programas, serviços ou equipamentos de rede. Um ataque de exploração de vulnerabilidades ocorre quando um atacante, utilizando-se de uma vulnerabilidade, tenta executar ações maliciosas, como invadir um sistema, acessar informações confidenciais, disparar ataques contra outros computadores ou tornar um serviço inacessível.(http://cartilha.cert.br/ataques/)

Gerenciamento de vulnerabilidade é a prática cíclica de identificar, classificar, remediar e mitigar vulnerabilidades. Esta prática geralmente refere-se a vulnerabilidades de software nos sistemas de computador. Esta mesma pode ser explorada em um determinado sistema ou serviço vulnerável que esteja rodando na máquina.

As vulnerabilidades mais exploradas nos dias de hoje, são as do tipo buffer overflow, que muitas vezes pode dar privilégios de administrador para o invasor, rodar códigos maliciosos remotamente, burlar particularidades de cada sistema, ataques de Negação de Serviços (DDoS), e acesso irestrito ao sistema.

Além dessas, outra vulnerabilidade bastante recorrente nos sistemas é a enumeração de usuários. Essa vulnerabilidade será apresentada a seguir.

Vulnerabilidade: enumeração de usuários

A enumeração de usuário é uma prática utilizada para identificar os usuários ativos em um determinado sistema. Geralmente ela é utilizada para viabilizar ataques de Força_bruta. A constatação da vulnerabilidade se dá através da possibilidade de discernir entre usuário válidos e inválidos em uma aplicação. Existem várias falhas nas aplicações que permitem a exploração dos usuários, no entanto, esse tipo de falha é mais comum ser encontradas nos mecanismo de autenticação.

Comumente, um atacante irá interagir com o mecanismo de autenticação da aplicação na tentativa de identificar o comportamento do sistema em resposta às requisições efetuadas em diferentes cenários de autenticação, por exemplo, utilizando um usuário válido e outro inválido. Em alguns casos, as aplicações fornecem respostas que revelam se um determinado usuário existe na base de dados quando uma credencial inválida é utilizada na requisição de autenticação.

Os testes de enumeração de usuários valida se a aplicação fornece, direta ou indiretamente, alguma informação que permita a distinção entre usuários válidos de uma aplicação. Abaixo serão apresentadas algumas abordagens que podem ser utilizadas para nortear os testes no sentido de verificar a vulnerabilidade da aplicação quanto à segurança da informação.

Cenários de teste para a enumeração de usuários com base nas respostas das páginas

  • Autenticação com um usuário válido e senha válida
    Registre a resposta fornecida pela aplicação quando um usuário válido e uma senha correta sejam utilizados no request da autenticação. Verifique o tamanho e a resposta do servidor;
  • Autenticação com um usuário válido e senha inválida
    Nesse cenário, o tester deve utilizar um usuário válido e uma senha inválida e registrar a resposta de erro enviada pelo servidor para analisar o comportamento da aplicação para esse caso. Geralmente as aplicações apresentam mensagens como: “Falha na autenticação”; “Senha inválida”. Verifique o tamanho e a resposta do servidor
  • Autenticação com um usuário inválido
    Nesse outro cenário, o tester deve utilizar um usuário inválido e senha inválida e registrar o response do servidor. Geralmente as aplicações apresentam mensagens como: “Usuário inválido”; “Login não encontrado”; “Conta inválida”. Verifique o tamanho e a resposta do servidor;

Uma aplicação bem implementada deve retornar o mesmo tamanho e a mesma mensagem de erro para requisições de autenticação inválida. Caso o tester perceba que a aplicação apresenta tamanho e códigos de resposta diferentes para cenários de requisições mal sucedidas de autenticação, como nos cenários 2 e 3 acima, é indícios de vulnerabilidade na aplicação

  • Exemplo de indicio de vulnerabilidade:
    • Request: Usuário Válido / Senha Inválida
    • Response: “Senha incorreta” (tamanho: 1500)
    • Request: Usuário Inválido / Senha Inválida
    • Response: “Usuário não encontrado” (tamanho: 1780)

No exemplo acima é perceptível que no primeiro request a aplicação revela que o usuário é válido (portanto existente na base de dados) já que a resposta identifica que apenas a senha estava incorreta. O segundo response também revela claramente que o usuário requisitado não é válido. Com essas informações já é possível a um atacante interagir com a aplicação realizando requests com nomes variados de usuários para verificar qual deles a aplicação irá identificar como usuário válido (com base no response retornado).

Enumeração de usuários com base nos códigos de erros das páginas de login

Algumas aplicações web apresentam códigos de erros ou mensagens específicas que podem ser analisadas pelos atacantes;

Enumeração de usuários com base em URLs

Algumas aplicações web realizam redirecionamento de página quando falhas de autenticação acontecem. As URLs utilizadas para redirecionamentos podem ser analisadas para identificar os usuários válidos.

  • Exemplo de indicio de vulnerabilidade:
    • Usuário Válido / Senha Inválida:
      http:// www.teste.com/err.jsp?User=usuario&Error=0
    • Usuário Inválido / Senha Inválida:
      http:// www.teste.com/err.jsp?User=usuario&Error=2

Enumeração de usuários com base nos códigos de respostas do servidor (Response Code)

Geralmente os servidores de aplicação, quando não são configurados de forma adequada, acabam apresentando mensagem de erro padrão para requisição recursos/diretórios. Esses response na maioria das vezes são:

  • “403 Forbidden”, para indicar que o recurso existe, porém não há permissão suficiente para que a requisição possa acessá-lo;
  • “404 Not found”, para indicar que o recurso não existe.

Algumas aplicações são desenvolvidas utilizando princípios REST, permitindo assim que os recursos da aplicação, como a conta do usuário, possam ser associados à URLs . (Exemplo: A URL http:// www.teste.com.br/usuario01 faz referencia à conta do usuário 01). Dessa forma, um atacante pode utilizar os response code retornado pelo servidor para enumerar os usuários da aplicação.

  • Exemplo de indicio de vulnerabilidade:
    • Usuário Válido:
      Request: http:// www.teste.com/usuario01
      Response: 403 Forbidden
    • Usuário Inválido:
      Request: http:// www.teste.com/usuario01
      Response: 404 Not Found

No primeiro caso o usuário existi mas a página não é exibida visto que o servidor responde com o código ”403 Forbidden”. Já no segundo caso, o código ”404 Not Found” indica que o usuário não existe na base da aplicação. Com essas informações é possível a enumeração dos usuários da aplicação por um atacante.

Nota: Nem sempre o servidor apresenta um response code 404 Not Found quando um recurso não existente for solicitado. Ao invés, ele responde com o response code 200 OK mas com um imagem que representa o erro. Para esses casos, um atacante atente associará a imagem de erro à um usuário não existente. Esse mesmo raciocínio pode ser utilizado para qualquer resposta enviado pelo servidor, bastando diferenciar qual tipo de resposta representa um usuário válido e qual representa um usuário inválido.

Enumeração de usuários com base nas funcionalidades de recuperação de senha

Aplicações que disponibilizam funcionalidades de recuperação de senhas, muitas vezes permitem que os usuários possam ser enumerados com base nas mensagens que apresentam:

  • Exemplo de indicio de vulnerabilidade:
    • Usuário Válido / Senha Inválida:
      Mensagem: “Sua nova senha foi enviada com sucesso para o email cadastrado”
    • Usuário Inválido / Senha Inválida:
      Mensagem: “O email informado não foi encontrado”

Ferramentas para exploração de vulnerabilidades

Existem ferramentas específicas para se explorar as vulnerabilidades, cada ferramenta para a sua respectiva vulnerabilidade a ser explorada (na maioria das vezes escritas em linguagem C e Assembly), essas ferramentas são chamadas de exploits.

Fonte:Wikipedia

Política de senhas

Políticas de Senhas

Política de senhas

A política de senha é um conjunto de regras destinadas a aumentar a segurança de computadores, através do incentivo para os usuários utilizarem senhas fortes e usá-las corretamente. A política de senha faz muitas vezes parte dos regulamentos oficiais da organização e pode ser ensinada como parte do treino de conscientização de segurança. A política de senhas pode ter tanto um carácter de precaução ou ser imposta por meios técnicos. Alguns governos têm estruturas de autenticação nacionais que definem os requisitos para a autenticação do usuário em serviços públicos, incluindo os requisitos para senhas.

Fonte:Wikipedia

Autenticidade

Autenticidade

Autenticidade

Entende-se por autenticidade a certeza de que um objeto (em análise) provém das fontes anunciadas e que não foi alvo de mutações ao longo de um processo. Na telecomunicação, uma mensagem será autêntica se for, de fato, recebida na íntegra, diretamente do emissor.

Outra definição de Autenticidade seria a identificação e a segurança da origem da informação. O nível de segurança desejado, pode se consubstanciar em uma “política de segurança” que é seguida pela organização ou pessoa, para garantir que uma vez estabelecidos os princípios, aquele nível desejado seja perseguido e mantido.

Autenticidade é a garantia de que você é quem diz ser. Em segurança da informação um dos meios de comprovar a autenticidade é através da biometria que esta ligado diretamente com o controle de acesso que reforça a confidencialidade e é garantida pela integridade.

Fonte:Wikipedia