gpt4 book ai didi

mysql - SQL 注入(inject)和多行注释

转载 作者:行者123 更新时间:2023-12-01 00:01:36 26 4
gpt4 key购买 nike

我在测试客户的查询时遇到了一个有趣的问题。恶意黑客 SQL 是否可以注入(inject)以下查询:

SELECT * FROM mytable WHERE 1
AND cfield='0'
AND (
field1 like '%$searchterm%' OR
field2 like '%$searchterm%' OR
)

例如,在我看来,他无法注释掉第一个 $searchterm 之后的内容,而只是插入其他查询:

field1 like '%$searchterm%'

不过,我可能是错的。期待您的意见。提前致谢!

最佳答案

试试这个:

SELECT * FROM mytable WHERE 1
AND cfield='0'
AND (
field1 like '%' || :searchterm || '%' OR
field2 like '%' || :searchterm || '%' OR
)

... 其中 :searchterm 是一个输入参数,填写您喜欢的语言提供的任何功能。

关于mysql - SQL 注入(inject)和多行注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12938703/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com