php - 允许在 LIKE 中使用反斜杠进行 SQL 注入(inject)

标签 php mysql sql-injection

目前,我正在测试一些代码,我注意到了这一点:

$data = str_replace( array('"', "'") , "", $_GET['input']);
$query = "SELECT * FROM tab WHERE LOWER(title) LIKE '%$data%'";

现在,我没有兴趣询问如何使这段代码安全。我很想知道如何使用反斜杠 (\\) 或其他任何东西在现实世界中引起 SQL 注入(inject)。有什么想法吗?

最佳答案

虽然可能有一些 unicode 技巧可以在 $data 中插入一个 ' 在 php 术语中它不是 ',但被你的数据库解释为 '(我知道这听起来很挑剔)我首先注意到的是这个例如,我无法搜索“it's”或“I'm”之类的短语。

关于php - 允许在 LIKE 中使用反斜杠进行 SQL 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20566322/

相关文章:

php - 如何在 Linux Ubuntu/opt/lampp/etc/php.ini 中增加 max_input_vars

MySQL:如何查询多个表并将 LIMIT 应用于一个表?

php - MySQL - 从多列中选择并忽略重复结果

java - Findbugs 没有发现潜在的 SQL 注入(inject)漏洞

php - 1 个同时下载 + 强制等待时间 + Amazon S3

php - Laravel Eloquent 级联删除

PHP 脚本无法读取 ajax post 值以运行查询

linq-to-sql - Entity Framework 、LinqToSQL 和 sql 注入(inject)

sql - 我如何说服 'developers' 团队这有多糟糕?

php - MySQL ORDER BY 另一个表中用户的总行数