以下是我在学习sql注入时的一些感想分享,希望能帮助到大家,如有错误,望指出。

万能密码的种类:

①select * from admin where username =“” and password = “”

②admin‘ #

③’+‘   ’+‘

④0

⑤Aaa’ = ‘

在以下的select语句中的username和password可类似看作为字符串变量

select * from user where username = ‘admin’ and password = ‘yi’;

该语句的判断逻辑是什么呢?

就是当username =‘admin’和password=’yi’都为真时执行成功。

那么就是说不管怎么样,只要这两项都为真就行了这就意味着即使用户名和密码都不正确,只要让这两项都为真就能执行成功,该逻辑就是②③条的注入原理

①select * from user where username = ‘chen’ # ‘ and password = ‘qian’;

②select * from user where username = ‘ ‘+’ ‘ and password = ‘ ‘+’ ‘;(有局限) 

select ‘ ‘+’ ‘;

select ‘qian’=0;

select ‘1qian’=0;

仅对于username和password的值为非数字开头的字符串有效。Eg:’q123’

在这里select语句中的username和password可类似看作为字符串变量,那么等于非数字开头字符串的变量在转化为int形式时就为0(这里的=号不是赋值符号,就是数学上=号的作用)

③select * from user where username = 0 and password = 0; 

在这里username和password可类似看作为字符串变量,那么非数字开头的字符串在转化为int形式就为0(和③原理一样,就是表现手法不同而已)

④select * from user where username = ‘aaa’=’ ‘ and password = ‘aaa’=’ ‘; 

select ‘aaa’=’a’;(执行结果为0) 

select ‘aaa’=’a’=’ ‘; 

判断逻辑:username=’aaa’为假,假=’ ‘又变为了真,password一样(前提username与password都不为’aaa’)%e6%b5%85%e6%98%93%e6%b7%b1

⑤select \Nfrom user;(执行成功,在N与from之间没空格)

select 1from;(执行失败,因为1与from之间没空格)

select 1,2,\Nfrom user;(执行成功,在2与from之间没空格) 

该技巧在from的左端不能输空格的时候,可以考虑能不能使用该方法进行绕过。

最新文章

  1. Python 模块学习:os模块
  2. JavaScript Patterns 3.1 Object Literal
  3. hdu 4398 STL
  4. oracle存储过程分页
  5. codeforces #310 div1 A
  6. "无法启动程序,因为计算机中丢失*.dll” 运行exe错误解决方法
  7. JENKINS的远程API调用,然后用PYTHON解析出最新的版本及稳定成功的版本
  8. find()与children()方法的区别
  9. 解决TabActivity中子页面不通过导航跳转到还有一个页面的问题
  10. CSharp设计模式读书笔记(18):中介者模式(学习难度:★★★☆☆,使用频率:★★☆☆☆)
  11. Android ViewDragHelper完全解析 自定义ViewGroup神器
  12. java基础1之引用数据类型
  13. 10.Odoo产品分析 (二) – 商业板块(5) –日历(1)
  14. plink:ped格式转换为bed格式
  15. join,fromkeys(),深浅拷贝
  16. 安卓测试【二】eclipse离线安装ADT
  17. 从零起步做到Linux运维经理,你必须管好的23个细节
  18. 使用djcelery发送邮件
  19. 利用MPMoviePlayerViewController 播放视频 iOS
  20. jenkins或ansible启动应用不成功日志又不报错

热门文章

  1. 攻防世界 pwn welpwn
  2. 2021 中国.NET开发者峰会 今日开幕
  3. [源码解析] PyTorch 分布式(18) --- 使用 RPC 的分布式管道并行
  4. Tornado WEB服务器框架 Epoll
  5. org.apache.jasper.runtime.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl
  6. 【Tools】VS搭建Qt开发环境
  7. ByteBuddy代码生成技术
  8. 【LeetCode】面试题 17.16. 按摩师 解题报告(C++)
  9. 【九度OJ】题目1194:八进制 解题报告
  10. 【LeetCode】863. All Nodes Distance K in Binary Tree 解题报告(Python)