Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Site foi hackeado via SQL Injection


Parece um ataque de estouro . Eles UNION -ed com sua consulta existente. substituindo todos os seus %20 com (espaço) já que seu url codificado produz:
=-999.9 UNION ALL SELECT CONCAT(0x7e,0x27,Hex(cast(database() as char)),0x27,0x7e),0x31303235343830303536,0x31303235343830303536,0x31303235343830303536-

divida-o:
  1. o =-999.9 está apenas terminando sua consulta atual
  2. 0x31303235343830303536 é NULL - eles estão apenas correspondendo ao número de colunas em sua consulta existente. Se você tivesse SELECT * FROM users e users tinha 4 colunas, o UNION também deve ter 4 colunas. Como resultado, eles apenas usaram `valores NULL para preencher essas colunas.
  3. a verdadeira confusão está no CONCAT() . Eles estão combinando 126, 39, nome do banco de dados como valor hexadecimal, 39 e 126
  4. -- é um comentário mysql - ele ignora o resto da sua consulta depois

A julgar por este ataque, suspeito que você não esteja envolvendo a entrada em mysql_real_escape_string() , que permitia que os atacados saíssem da sua consulta e executassem a sua própria.

Consulte owasp.org Para maiores informações.