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

    进入题目后是一个登录框,

    我先试了一下

    用户名:admin 密码:admin
    

    然后进入了search.php页面跟我说我密码错误(好家伙,我看了别人的wp,他们都是先进行注入,可能我比较菜还没有这种习惯)

    查看源码给出提示

    MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ2VSVZRNRFHOPJ5
    

    发现这是base32加密,解码后发现又是一段base64编码

    所以知道了sql语句为select * from user where username = '$name',然后用联合查询测试一下字段数

    两个字段的时候报错

    然后测试一下三个字段没有报错

    然后测试一下用户这个字段在哪一个字段当中

    1' union select 'admin',2,3#
    

    用户错误,不是我要找的

    1' union select 1,'admin',3#
    

    密码错误,所以第二个字段是user字段

    然后查看wp知道是MD5加密,接下里就是要绕过密码的md5验证,需要把我们输入的值和数据库里面存放的用户密码的md5值进行比较,可以用联合查询语句用来生成虚拟的表数据。

    我们可以利用联合查询来创建一行admin账户的续集数据,混淆admin用户的密码,将我们自定义的admin用户的密码(123)加进去,这样我们就可以登录admin用户了

    在用户名登录框输入

    1' union select 1,'admin','202cb962ac59075b964b07152d234b70'#
    

    其中202cb962ac59075b964b07152d234b70为123的MD5值,然后在密码登录框中输入123即可登录。

  • 相关阅读:
    localStorage存储数组以及取数组方法
    jq选择CheckBox进行排序
    js定时函数,定时改变字体的大小
    JQuery Datatable用法
    WebSocket实战
    代码段
    黎活明给程序员的忠告 收藏
    雅砻江后勤项目经验总结
    Java泛型方法
    回忆,梦的开始
  • 原文地址:https://www.cnblogs.com/love0017/p/15523751.html
Copyright © 2011-2022 走看看