De pesquisas adicionais, descobri:
http://dev.mysql.com/doc/refman/5.1/en/news-5-1-11.html
Correção de segurança:
Uma brecha de segurança de injeção de SQL foi encontrada no processamento de codificação multibyte. O bug estava no servidor, interpretando incorretamente a string de escape com a função da API C mysql_real_escape_string ().
Esta vulnerabilidade foi descoberta e relatada por Josh Berkus e Tom Lane como parte da colaboração de segurança entre projetos do consórcio OSDB. Para obter mais informações sobre injeção de SQL, consulte o texto a seguir.
Discussão. Uma falha de segurança de injeção SQL foi encontrada no processamento de codificação multibyte. Uma brecha de segurança de injeção de SQL pode incluir uma situação em que, quando um usuário forneceu dados a serem inseridos em um banco de dados, o usuário pode injetar instruções SQL nos dados que o servidor executará. Com relação a esta vulnerabilidade, quando o escape sem conhecimento do conjunto de caracteres é usado (por exemplo, addslashes () em PHP), é possível contornar o escape em alguns conjuntos de caracteres multibyte (por exemplo, SJIS, BIG5 e GBK). Como resultado, uma função como addslashes () não é capaz de prevenir ataques de injeção de SQL. É impossível consertar isso no lado do servidor. A melhor solução é para os aplicativos usarem o escape ciente de conjunto de caracteres oferecido por uma função como mysql_real_escape_string ().
No entanto, um bug foi detectado em como o servidor MySQL analisa a saída de mysql_real_escape_string (). Como resultado, mesmo quando a função com reconhecimento de conjunto de caracteres mysql_real_escape_string () foi usada, a injeção de SQL foi possível. Este bug foi corrigido.
Soluções alternativas. Se você não conseguir atualizar o MySQL para uma versão que inclua a correção do bug na análise mysql_real_escape_string (), mas execute o MySQL 5.0.1 ou superior, você pode usar o modo SQL NO_BACKSLASH_ESCAPES como uma solução alternativa. (Este modo foi introduzido no MySQL 5.0.1.) NO_BACKSLASH_ESCAPES habilita um modo de compatibilidade padrão SQL, onde a barra invertida não é considerada um caractere especial. O resultado será que as consultas falharão.
Para definir este modo para a conexão atual, insira a seguinte instrução SQL:
SET sql_mode='NO_BACKSLASH_ESCAPES';
Você também pode definir o modo globalmente para todos os clientes:
SET GLOBAL sql_mode='NO_BACKSLASH_ESCAPES';
Este modo SQL também pode ser ativado automaticamente quando o servidor é iniciado usando a opção de linha de comando --sql-mode = NO_BACKSLASH_ESCAPES ou definindo sql-mode = NO_BACKSLASH_ESCAPES no arquivo de opções do servidor (por exemplo, my.cnf ou my.ini , dependendo do seu sistema). (Bug # 8378, CVE-2006-2753)
Veja também Bug # 8303.