对于基于条件错误的SQLi,我们需要编写to_char( 1/0 ),而不是像MYSQL那样直接编写1/0,这背后的原因是什么?例如,
甲骨文:
SELECT CASE WHEN (YOUR-CONDITION-HERE) THEN TO_CHAR(1/0) ELSE NULL END FROM dual微软:
SELECT CASE WHEN (YOUR-CONDITION-HERE) THEN 1/0 ELSE NULL END参考资料:https://portswigger.net/web-security/sql-injection/cheat-sheet#conditional-errors
发布于 2023-01-23 15:45:12
case when表达式的第一个可能结果决定输出类型。所有潜在的结果都必须符合相同的输出类型。您可以使用to_char或强制转换来告诉甲骨文剩下的选项也是varchar2
https://dba.stackexchange.com/questions/322433
复制相似问题