queria entender essa sintaxe de mysql !
Em um artigo sobre sql injection trazia uma query avançada usando algumas funçoes que eunão conheço:
http://server/?id=(1)and(select 1 from(select count(*),concat((select table_name from information_schema.tables limit 1,1),floor(rand(0)*2))x from information_schema.tables+group by x)a)--
executei essa parte:
mysql> floor(rand(0)*2))x from+information_schema.tables group by x
+----+---+
| a | x |
+----+---+
| 37 | 0 |
| 23 | 1 |
+----+---+
2 rows in set (0.00 sec)
Os resultados sempre são 0 ou 1.
Acho que por causa do floor() que 'arredonda' a numero;
sei que a função rand() gera números aleatórios;
Isso tem alguma coisa a ver com binário ou não ?
O que estou procurando é uma explicação!
ficaria muito agradecido em entender essa query!
desde já agradeço!
[]'s
http://server/?id=(1)and(select 1 from(select count(*),concat((select table_name from information_schema.tables limit 1,1),floor(rand(0)*2))x from information_schema.tables+group by x)a)--
executei essa parte:
mysql> floor(rand(0)*2))x from+information_schema.tables group by x
+----+---+
| a | x |
+----+---+
| 37 | 0 |
| 23 | 1 |
+----+---+
2 rows in set (0.00 sec)
Os resultados sempre são 0 ou 1.
Acho que por causa do floor() que 'arredonda' a numero;
sei que a função rand() gera números aleatórios;
Isso tem alguma coisa a ver com binário ou não ?
O que estou procurando é uma explicação!
ficaria muito agradecido em entender essa query!
desde já agradeço!
[]'s
comentários (0)
suspender
Lista de Respostas:
11/08/2011 11:14pm
(~13 anos atrás)
(~13 anos atrás)
Cara
Sem as tabelas não dá pra entender muito bem do que se trata...
O lance é o seguinte
Você tem algo grande
http://server/?id=(1)and(select 1 from(select count(*),concat((select table_name from information_schema.tables limit 1,1),floor(rand(0)*2))x from information_schema.tables+group by x)a)--
E você está com dificuldade de entender o que é.
Então você divide este problema em várias partes e vai tentando entender cada parte isoladamente, para depois tentar entender no contexto geral.
Exemplo, floor() é uma função.
Assim como rand() também é uma função, concat() também é outra e count() também.
Então o que você faz
Você vai lá no google e pesquisa
"MySQL rand()"
Apenas isto, e você vai achar muitas coisas falando a respeito.
Porém, existem outras coisas que não são funções.
Como o SELECT que é uma palavra reservada da qual faz parte da linguagem.
Se você não conhece esta parte, então o jeito é você estudar.
Procurar conhecer um pouco de SQL para saber ao menos o básico, para depois, ir se aprimorando!
Sem as tabelas não dá pra entender muito bem do que se trata...
O lance é o seguinte
Você tem algo grande
http://server/?id=(1)and(select 1 from(select count(*),concat((select table_name from information_schema.tables limit 1,1),floor(rand(0)*2))x from information_schema.tables+group by x)a)--
E você está com dificuldade de entender o que é.
Então você divide este problema em várias partes e vai tentando entender cada parte isoladamente, para depois tentar entender no contexto geral.
Exemplo, floor() é uma função.
Assim como rand() também é uma função, concat() também é outra e count() também.
Então o que você faz
Você vai lá no google e pesquisa
"MySQL rand()"
Apenas isto, e você vai achar muitas coisas falando a respeito.
Porém, existem outras coisas que não são funções.
Como o SELECT que é uma palavra reservada da qual faz parte da linguagem.
Se você não conhece esta parte, então o jeito é você estudar.
Procurar conhecer um pouco de SQL para saber ao menos o básico, para depois, ir se aprimorando!
12/08/2011 9:35am
(~13 anos atrás)
(~13 anos atrás)
Isso eu sei marcos! Eu também trabalho com Banco de Dados!
e como expliquei na pergunta também sei o que o rand() e o floor() fazem,
porem ainda espero uma resposta que me explique exatamente o que ocorre nessa query !
Mais mesmo assim obrigado ^^
e como expliquei na pergunta também sei o que o rand() e o floor() fazem,
porem ainda espero uma resposta que me explique exatamente o que ocorre nessa query !
Mais mesmo assim obrigado ^^