CTFHub题解-技能树-Web-SQL注入(时间盲注、MySQL结构)【二】
CTFHub题解-技能树-Web(web工具配置-SQL注入)
(五)时间盲注
1.知识点
基于时间的盲注就是在sql注入过程中,sql语句执行的选择后,选择的数据不能回显到前端页面。此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注。
盲注原理:
盲注的本质就是猜解,在没有回显数据的情况下,我们只能靠‘感觉’来体会每次查询时一点点细微的差异,而这差异包括运行时间的差异和页面返回结果的差异。
对于基于布尔的盲注来说,我们可以构造一条注入语句来测试我们输入的布尔表达式,而这布尔表达式结果的真假,决定了每次页面有不同的反应。
对于基于时间的盲注来说,我们构造的语句中,包含了能否影响系统运行时间的函数,根据每次页面返回的时间,判断注入的语句是否被成功执行。
常用函数:
If(exp,v1,v2):如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2 Substring(s,n,len):获取从字符串 s 中的第 n 个位置开始长度为 len 的字符串
Sleep(duration):在duration参数给定的秒数之后运行
(注意:sleep 函数是只要存在一个满足条件的行就会延迟指定的时间,比如sleep(5),但是实际上查找到两个满足条件的行,那么就会延迟10s,这其实是一个非常重要的信息,在真实的渗透测试过程中,我们有时候不清楚整个表的情况的话,可以用这样的方式进行刺探~)
常用的判断语句:
' and if(1=0,1, sleep(10)) --+ " and if(1=0,1, sleep(10)) --+ ) and if(1=0,1, sleep(10)) --+ ') and if(1=0,1, sleep(10)) --+ ") and if(1=0,1, sleep(10)) --+
但是对于笔者这种小菜鸡来说, sqlmap 它不香吗?(偷笑
(主要是对基于时间的盲注的手工注入实验做的还比较少,没什么手工注入的经验心得qwq,希望以后笔者可以学会手工注入!)
2.题解
sqlmap工具法:
(六)MySQL结构
1.知识点
MYSQL的隐式类型转换:
如果两个参数比较,有至少一个NULL,结果就是NULL,除了是用NULL<=>NULL 会返回1,不做类型转换。
两个参数都是字符串,按照字符串比较,不做类型转换。
两个参数都是整数,按照整数比较,不做类型转换。
如果不与数字进行比较,则将十六进制值视为二进制字符串。
有一个参数是 decimal 类型,如果另外一个参数是 decimal 或者整数,会将整数转换为 decimal 后进行比较,如果另外一个参数是浮点数,则会把 decimal 转换为浮点数进行比较
所有其他情况下,两个参数都会被转换为浮点数再进行比较。
利用算术运算符:
实际中我们接触到的语句都是带有引号的,类似于where username='+input+' 这样的,这时候我们就需要做一些处理来构造false注入的利用点。
输入+ 则相当于语句被转化为 where username="+" +,-,*,/,%都是同理。
利用比较运算符:
安全等于:<=> '=0<=>1# 拼接的语句:where username=''=0<=>1#' 不等于<>(!=) '=0<>0# 拼接的语句:where username=''=0<>0#'
注入常用函数与字符:
mid()---从文本字段中提取字符 limit()---返回前几条或者中间某几行数据 concat、concat_ws、group_concat MySQL的concat函数在连接字符串的时候,只要其中一个是NULL,那么将返回NULL group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) rand随机数(产生0,1之间随机数)
假如你和笔者一样,手工注入经验很少的话,那么用sqlmap是最好的选择!
2.题解
完成~
参考资料:
https://blog.csdn.net/m0_38103658/article/details/100160609
https://www.fujieace.com/penetration-test/mysql-injection-process.html
https://www.cnblogs.com/sylover/p/10826899.html
--------------------- ┑( ̄Д  ̄)┍ --------------------------
作者:0yst3r[一只在安全领域努力奋斗的小菜鸡]
来源:博客园[ https://www.cnblogs.com/0yst3r-2046/ ] 引用时请注明来源哦~
(๑•̀ㅂ•́)و✧ヽ(✿゚▽゚)ノ(*^▽^*) φ(≧ω≦*)♪
如果本文对你有用,本人不胜欢喜。
The world is your oyster.