前言
之前复现了一下极客大挑战2019的Havefun感觉非常的简单,应该是我没有参加极客大挑战把,对这些题没啥印象。复现完Havefun之后接着做了做EasySQL发现这也是一道非常基础的题
复现
- 初次相遇
我们打开题目链接发现是一个充满黑客色彩的登录页面
发现没有注册的功能,题目是EasySQL,我们猜测出题人的意思就是想让我们注入进去吧
- 逐步尝试
我们试着加在用户名或密码处加一个单引号,点击登录后我们发现报错了
在报错信息中我们可以看到是字符类的注入,我们可以通过“万能密码”来直接登录进去,在url中这样构造:http://f7c0ad9c-3f3f-443b-a0ef-6faf2b97c32c.node3.buuoj.cn/check.php?username=admin\'or\'1\'=\'1&password=admin\'or\'1\'=\'1
这样我们的账号密码不对(or前面),就会执行or后面的\'1\'=\'1\'这是一个恒真的,我们使用错误的账号密码来达到了登录成功的目的。
flag就在登录成功的页面里
总结
大家在CTF中要掌握sql注入的原理,熟悉常见的几种sql注入方式,还要学会一些绕过姿势