zoukankan      html  css  js  c++  java
  • [GXYCTF2019]BabySQli

    使用单引号测试是否存在注入,发现页面报错
    跑一下字典查看过滤了哪些关键字,函数

     发现过滤了information.schema.tables,应该不是常规的注入

     在响应包中发现了注释的内容

     base32解密后,在使用base64进行解密

     base32 和 base64 的区别

     base32 只有大写字母和数字数字组成,或者后面有三个等号。
     base64 只有大写字母和数字,小写字母组成,后面一般是两个等号。
     base32 解码网站:
     https://www.qqxiuzi.cn/bianma/base.php

     解码后的结果为

    select * from user where username = '$name'

    这个时候就会联想到可以通过联合查询构造一个虚拟的数据,例如

     所以payLoad为:

    name=' union select 1,'admin','202cb962ac59075b964b07152d234b70'#&pw=123

    不能写成这样

    name=admin' union select 1,'admin','202cb962ac59075b964b07152d234b70'#&pw=123

    因为这样会把admin用户的原密码先查询出来

  • 相关阅读:
    Java进阶知识查漏补缺06
    SQL学习记录(concat)
    Restful API学习
    git学习
    获得xmlhttp对象
    vue-cli初接触
    vue初接触
    java使用百度UNIT
    JSON学习
    通用Mapper警告:建议修改基本类型为对应的包装类型!
  • 原文地址:https://www.cnblogs.com/gtx690/p/13259462.html
Copyright © 2011-2022 走看看