1.数字型注入
首先还是根据之前的操作先后打开phpstudy,firefox以及burpsuite
在pikachu中选中sql-inject中的数字型注入,然后点击一下1或任意userid,让burpsuite抓到这部操作的数据包
将抓到的数据包传到repeater。
在传入的id处加入数字型注入的关键 id=1 or 1=1.此操作将其默认判断为真
在render处即可发现所有的userid均在页面中显示,即表示注入完成。
2.字符型注入
猜想一下字符型注入在输入时数据库中的执行操作为:
select 字段1,字段2 from 表名 where username=‘kobe’;(其中kobe外的单引号不可少)
可见kobe为一个可用输出,发现此时输出了两个字段。然后我们用sql的语句来进行测试
这段语句共构成了两个闭合,其中输入为字符型字段,则默认的sql中在输入的前后添加了‘’,所以实际输入在sql中的效果则是‘kobe’ or 1=1#‘,其中第一个闭合是上面测试的’kobe‘第二个则是最后引号被注释掉的1=1。
3.搜索型注入
首先先看看它的搜索逻辑
可见其搜索方式,然后了解一下sql中的搜索方式为
’%$name%‘
同之前的模式要构建一个闭合,即:
like ’%xxxx%‘ or 1=1#%’ (其中的删除线 位置即一个闭合)
在此时的payload只要 xxxx%’ or 1=1#%'即可,结果如下图