sql

SQL Injection (SQLi): Identificando o BD e extraindo dados com UNION

A maioria das técnicas demonstradas na primeira postagem sobre SQLi são efetivas contra todas as plataformas de banco de dados comuns e qualquer divergência podem ser ajustadas facilmente de acordo com a sintaxe. Entretanto, quando começamos a ver técnicas mais avançadas de exploração, as diferenças entre as plataformas começam a ser mais significante e você precisará ampliar seu conhecimento sobre o tipo de banco de dados que está sendo manipulado.

Você já viu como extrair a string de versão da maioria dos tipos de BD. Mesmo que você não consiga por algum motivo, normalmente é possível obter por outros métodos. Um dos mais viáveis é a forma que o BD concatena strings. Em uma consulta onde você controla a string de dados, você pode fornecer um valor particular em uma consulta e então testar diferentes métodos de concatenação para produzir uma string. Quando o mesmo resultado é obtido, você provavelmente identificou o tipo de BD que está sendo usado. Os próximos exemplos mostra como string pode ser construída para a maioria dos tipos de BD: (mais…)

SQL Injection (SQLi): Entendendo e identificando a vulnerabilidade em aplicações

Quase todas as aplicações web utilizam um banco de dados para armazenar os vários tipos de informações de que necessita para operar. Por exemplo, uma aplicação web implantado por um varejista on-line pode usar um banco de dados para armazenar as seguintes informações:

  • As contas de usuário, credenciais e informações pessoais;
  • As descrições e preços dos itens para venda;
  • Ordens de serviços/compras, extratos de conta e detalhes de pagamento;
  • Os privilégios de cada usuário dentro da aplicação.

Os meios de acesso à informação no banco de dados é Structured Query Language (SQL). SQL pode ser usado para ler, atualizar, adicionar e eliminar informações contidas no banco de dados.

SQL é uma linguagem interpretada, e aplicações web comumente constroem instruções SQL que incorporam dados fornecidos pelo usuário. Se isso for feito de maneira insegura, o aplicativo pode ser vulnerável a injeção de SQL. Este é uma das vulnerabilidades mais notórias para afetar aplicações web. Nos casos mais graves, a injeção de SQL pode permitir que um invasor anônimo ler e modificar todos os dados armazenados no banco de dados, e até mesmo assumir o controle total do servidor no qual o banco de dados está em execução. (mais…)

Ataques SQL Injection e DDoS são os mais comuns no Brasil, diz Imperva

Com base em comportamento de clientes ativos e em potencial, companhia explica que hacktivismo é tendência em crescimento no País.

Ataques do tipo SQL Injection ainda são os mais comuns no Brasil, segundo a multinacional Imperva. De acordo com a companhia, que não pode abrir números por motivos estratégicos, as invasões do tipo DDoS (Distributed Denial of Service) ficam em segundo lugar quando o assunto é número de ocorrências de clientes e contratantes em potencial da empresa.

“Vemos um crescimento na tendência de hacktivismo pela internet. A inclusão digital permitiu que protestos contra aquilo que é considerado injustiça migrasse das ruas para a web”, contextualizou, em entrevista ao IT Web, Carolina Bozza, gerente regional de canais para América Latina da companhia. (mais…)

Introdução a Linguagem SQL: Comandos Básicos e Avançados – Parte 2

Continuando o nosso resumão de comandos SQL, vamos ver alguns que estão faltando e em outra postagem irei demonstrar as funções utilizadas. (mais…)

Como criar uma tabela no banco de dados MySQL (Cláusula CREATE TABLE)

Pra começar, o ideal é você entender o conceito de uma tabela de banco de dados. Vou tentar ser o mais simples possível.

É um conjunto de informações organizadas em linhas e colunas. Cada linha recebe a denominação de registro e cada coluna recebe a denominação de campo.

Nossa tabela primeira tabela irá se chamar clientes. (mais…)