博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验吧登陆一下好吗 WP
阅读量:3948 次
发布时间:2019-05-24

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

分享一下我老师大神的人工智能教程!零基础,通俗易懂!

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                       

登陆一下好吗??()

 username= 1’=’0 
password= 1’=’0 
或者
 username=what’=’
password=what’=’ 
或者
username:admin’=’
password:admin’=’ 
得到ctf{51d1bf8fb65a8c2406513ee8f52283e7} 
好吧,其实我提供的只是万能密码尝试而已,真正的writeup在这里(by wonderkun,侵删):

根据题目的提示,获知该题目的目的使用sql注入来绕过登陆。

猜测后台的sql应该是

select * from table where username= ‘usernameandpassword=password’

进过测试,发现过滤了以下字符

| , – ,  or , union , # , select ,* ,/ 

这写字符没办法绕过。

但是为了登陆成功,需要让  sql语句返回true。

除了pact想到的同双等号绕外,还有一种方法,主要用到以下两个技巧:

第一: mysql的数据类型转换特性。 

这里写图片描述
 通过这个图,应该可以看明白啦, user是一个字符串类型的,当他接受到一个整型值切值为0的时候,就会返回数据库的所有条目。  一个字符串加一个整形,会自动的变量类型转换,变为一个整型。

所以,只需要让sql执行

select * from table where username=’a’+0;

就可以返回一个ture了,但是你会发现注释符全部过滤啦,后面的部分去不掉,这时候你需要知道下面的姿势。

第二: mysql的注释符除了  

– + , # ,/**/ 之外,还有一个 ;%00 ,很多人都不知道最后一个。

所以最后的payload 是这样的: username=a’+0;%00&password= 

这里写图片描述

           

给我老师的人工智能教程打call!

这里写图片描述
你可能感兴趣的文章
Android的Gradle技巧 1.3从命令行执行Gradle构建
查看>>
Android的Gradle技巧 1.4从Android Studio执行Gradle构建
查看>>
Android的Gradle技巧 1.5添加Java库依赖关系
查看>>
Android的Gradle技巧 1.6使用Android Studio添加库依赖关系
查看>>
Android的Gradle技巧 1.7配置存储库
查看>>
android Collections 排序,
查看>>
Android的Gradle技巧 2.1设置项目属性
查看>>
Android的Gradle技巧 2.2将应用程序从Eclipse ADT移植到Android Studio
查看>>
Android的Gradle技巧 2.3从Eclipse移植应用程序ADT使用Eclipse
查看>>
昂山素季 Aung San Suu Kyi
查看>>
AI 人工智能第一课 从贝叶斯定理开始
查看>>
朴素贝叶斯python实现
查看>>
Logistic回归原理及公式推导
查看>>
并发性与并行性 并发性与并行性
查看>>
惰性求值,可组合和模块化的JavaScript
查看>>
How to Extend Django User Model 如何扩展Django用户模型
查看>>
两个行业的故事:编程语言与富裕国家和发展中国家之间的差异
查看>>
15个用于管理MySQL服务器mysqladmin命令
查看>>
服务器端I / O性能:Node,PHP,Java与Go
查看>>
多行文本编辑时,同一行编辑不同类型的字符时自动换行的问题
查看>>