php sprintf函数引起的sql注入

sprintf函数作用:

sprintf() 函数把格式化的字符串写入变量中。

arg1、arg2、++ 参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个 % 符号处,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。

注释:如果 % 符号多于 arg 参数,则您必须使用占位符。占位符位于 % 符号之后,由数字和 "\$" 组成

测试1.php文件:

由于函数处理了$name所以直接单引号是不能被注入的,如图

php sprintf函数引起的sql注入_第1张图片

这个时候就要利用sprintf函数的特性了。

php sprintf函数引起的sql注入_第2张图片

这样单引号就注入成功了。

你可能感兴趣的:(web安全,代码审计)