博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Sqli-labs less 34
阅读量:7022 次
发布时间:2019-06-28

本文共 687 字,大约阅读时间需要 2 分钟。

Less-34

本关是post型的注入漏洞,同样的也是将post过来的内容进行了 ' \ 的处理。由上面的例子可以看到我们的方法就是将过滤函数添加的 \ 给吃掉。而get型的方式我们是以url形式提交的,因此数据会通过URLencode,如何将方法用在post型的注入当中,我们此处介绍一个新的方法。将utf-8转换为utf-16或 utf-32,例如将 ' 转为utf-16为 ' 。我们就可以利用这个方式进行尝试。

我们用万能密码的方式的来突破这一关。

例如上图中直接提交username:' or 1=1#

Password:随便乱填

可以看到下面显示正常登陆。

原始的sql语句为

    @$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1";

此时sql语句为

SELECT username, password FROM users WHERE username='' or 1=1#' and password='$passwd' LIMIT 0,1

 

Explain:SELECT username, password FROM users WHERE username='' or 1=1起到作用,后面的则被#注释掉了。而起作用的的语句不论select选择出来的内容是什么与 1=1进行or操作后,始终是1。

转载于:https://www.cnblogs.com/lcamry/p/5762925.html

你可能感兴趣的文章
希尔排序
查看>>
3.2Python的循环结构语句:
查看>>
分享从带头拼死拼活开发软件项目到不去现场异地坐镇远程遥控照样可以把上海的软件项目管理好...
查看>>
Linux运维系统工程师系列---08
查看>>
python eval的常见错误封装及利用原理
查看>>
MySQL主从介绍、准备工作、准备工作、配置从、测试主从同步
查看>>
js中用EL表达式获取模型视图数据
查看>>
IS-IS 中间系统到中间系统的认证
查看>>
大家来看看哦
查看>>
【Animations】属性动画概述(2)
查看>>
C#中pictureBox上如何设置label透明
查看>>
php中的des加密解密函数简介
查看>>
Spring MVC中使用ExtJS上传文件
查看>>
HTTP协议理解与应用总结
查看>>
CentOS安装配置nagios(2)
查看>>
1031 Hello World for U
查看>>
操作系统-北京大学
查看>>
db_homework
查看>>
spring mvc中的@PathVariable
查看>>
linux下定时任务计划的使用
查看>>