偏移注入常见问题汇总php
1. Access偏移注入使用场景mysql
一些没法查询的列名,好比权限不足的知道表名殊不知道字段 使用偏移查询主要查询字段及内容等正则表达式
2. 偏移注入是否仅用于Accesssql
不是,mysql也可使用偏移注入数据库
3. 为何能够cookie注入cookie
由于在这里接受参数的时候使用了REQUEST,他能够接受get 和POST 和 COOKIE的传参网站
4. 为何cookie注入能够绕过验证spa
由于早期网站防御只检测GET和POST传参,没有检测COOKIEorm
5. Cookie注入常见吗?图片
老一点的ASP网站常见,PHP看版本,由于高于5.2以上的php版本他的$_REQUEST将再也不接受cookie传参
6. cookie注入时为何要删除URL内的id传参
由于它传参进去会有一个输出,cookie里咱们也传参了一个id数值,他会优先接受GET的传参
7. ".*"的做用
用于代替表内所有字段,在不能用系统自带库查字段名时
8. 与正则表达式中的*有什么不一样
正则中的*表明匹配前面的0或无数次,而这里的*指定表中全部的字段,admin.*是指admin表中全部的字段
9. 偏移注释时联合查询后的一张表为何要小于前一张表
联合查询必需要知足一个条件,就是前面的查询和后面的查询字段数必须相等,由于前面那张表的查询字段数是固定的,后面那张咱们控制,可是当你使用admin.* 表明admin整个表的字段,若是admin表字段比前面那个表多,就不符合联合查询
10. 为何flag的输出点会在图片里出现
数据库里面他保存了图片的连接地址,而后拼凑到了页面上
11. 为何没用到information_schema
access数据库里没有系统自带表,只能猜
12. 前面的sql应该报错而不显示
虽然不显示但仍是占了输出位,只显示了正确的
能查到全部数据吗
看具体环境,有的时候正好能所有查出,有的时候只能查出部分
13. union 联合查询前为何要加and 1=2
由于显示的时候有时只能返回第一行的数据,加上and 1=2后使前面的语句报错,前一行就没用输出了,从而显示后一条语句
14.为何偏移注入要用1,2,admin.*呢
由于咱们不知道这个表中的具体字段名,xxx.*表明全部字段,把表二全部字段字段都显示出来,而后再来找那个具体的字段
15. 能不能直接写*
不能,直接写*的话不知道你这个表明了是那个表
16. xxx.*能够表明任意字段及数量吗
表明XXX表的全部字段
17. 那么能够用select * from代替select 1,admin.*吗?
不能,直接加*的状况下,咱们没法控制Union后的字段输出个数,union是在两个表的字段数要相同的状况下才能够成立的,不然联合查询不能执行
18. 不能查information_schema怎么得知表名
能够靠爆破和尝试一些经常使用表名(例如:news、admin、user)
19. 整个SQL语句都能操控吗
不能,咱们只能在原有的select查询的基础上加上联合查询的语句,咱们不能控制他以前的查询
20. admin.* 表明一个任意字段?
admin.*表明了全部字段
21. and exist(select * from admin) 相似的盲注的语句可否使用
这里主要是涉及偏移注入,那一条的确是access的盲注语句,但在如今的状况下并不适用,由于你不知道字段名,没法盲注
22. 为何access数据库union 联合查询在查字段后要加 from
由于access数据库在报显示位是要肯定一个表名
23. admin是当前表吗
不是,只是指定了admin表